t_free(3) — Subroutines
OSF
NAME
t_free − Frees a library structure
LIBRARY
XTI Library (libtli.a)
SYNOPSIS
#include <xti.h>
int t_free(
char ∗ptr,
int struct_type) ;
PARAMETERS
The t_free() function can be called in all transport provider states. The following table summarizes the relevance of input parameter data before and after t_free() is called:
| Parameters | Before Call | After Call |
| ptr | y | n |
| struct_type | y | n |
Notes to table:
yThis is a meaningful parameter.
nThis is not a meaningful parameter.
ptr Points to one of the seven structure types described for structures previously named by the struct_type parameter of the t_alloc() function, listed below.
struct_type Specifies the structure type for functions for which memory was previously allocated. This parameter must be one of the symbolic names listed in the following table:
| Symbolic Name | Structure | Using Function |
| T_BIND_STR | struct t_bind | t_bind() |
| BT_CALL_STR | struct t_call | t_accept(), t_connect(), t_listen(), t_rcvconnect(), t_snddis() |
| T_OPTMGMT_STR | struct t_optmgmt | t_optmgmt() |
| T_DIS_STR | struct t_discon | t_rcvdis() |
| T_UNITDATA_STR | struct t_unitdata | t_rcvudata(), t_sndudata() |
| T_UDERROR_STR | struct t_uderr | t_rcvuderr() |
| T_INFO_STR | struct t_info | t_info() |
Any structure symbolic name listed in the preceding table may be used as an argument to deallocate previously reserved memory. Each of the structures, except t_info, contains at least one member of type struct netbuf structure, which is defined in the xti.h include file.
This function checks all members of a netbuf structure and deallocates those buffers. When a netbuf structure buf parameter is a null pointer, no memory is deallocated. After all buffers are deallocated, this function frees all memory referenced by the ptr parameter.
DESCRIPTION
The t_free() function is an XTI general utility function used to deallocate memory buffers previously allocated with the t_alloc() function. When executed, t_free() deallocates memory for the named structure and for any buffers referenced by the named structure. When t_free() is executed, undefined results are obtained when structure pointers or buffer pointers point to memory blocks not previously allocated with the t_alloc() function.
RETURN VALUE
Upon successful completion, a value of 0 (zero) is returned. Otherwise, a value of -1 is returned and t_errno is set to indicate the error.
ERRORS
If the t_free() function fails, t_errno may be set to the following value:
[TSYSERR] A system error occurred during execution of this function.
RELATED INFORMATION
Functions: t_alloc(3)