Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_free(3) — Macintosh Execution Environment 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

t_alloc(3)

t_free(3)

NAME

t_free − free a library structure

SYNOPSIS

#include <xti.h>     (for XTI)

or

#include <tiuser.h>  (for TLI)

 
int t_free (ptr, struct_type)
char *ptr;
int struct_type;

 

DESCRIPTION

The t_free function frees memory previously allocated by t_alloc (3).  This function will free memory for the specified structure, and will also free memory for buffers referenced by the structure. 

The argument ptr points to one of the seven structure types described for t_alloc (3), and struct_type identifies the type of that structure which must be one of the following:

For XTI:
 

T_BIND_STR struct t_bind
T_CALL_STR struct t_call
T_OPTMGMT_STR struct t_optmgmt
T_DIS_STR struct t_discon
T_UNITDATA_STR struct t_unitdata
T_UDERROR_STR struct t_uderr
T_INFO_STR struct t_info

For TLI:
 

T_BIND struct t_bind
T_CALL struct t_call
T_OPTMGMT struct t_optmgmt
T_DIS struct t_discon
T_UNITDATA struct t_unitdata
T_UDERROR struct t_uderr
T_INFO struct t_info

where each of these structures is used as an argument to one or more transport functions. 

t_free will check the addr, opt, and udata fields of the given structure (as appropriate) and free the buffers pointed to by the buf field of the netbuf structure.  If buf is a null pointer, t_free will not attempt to free memory.  After all buffers are freed, t_free will free the memory associated with the structure pointed to by ptr. 

Undefined results will occur if ptr or any of the buf pointers points to a block of memory that was not previously allocated by t_alloc (3). 

ERRORS

On failure, t_errno is set to the following:

­[TSYSERR] A system error has occurred during execution of this function. 

­[TNOTSUPPORT] (XTI only) This function is not supported by the underlying transport provider. 

RETURN VALUE

Upon successful completion, a value of 0 is returned.  Otherwise, a value of -1 is returned, and t_errno is set to indicate the error. 

NOTE

In HP-UX 9.0, XTI (X/Open Transport Interface) supports only OSI as a transport provider, and is available only as part of the OSI Transport Services 9000 product. Users of this product can access XTI versions of the t_* routines by linking with /usr/lib/libxti.a.  For more information on XTI, see "HP-UX/9000 XTI Programmer’s Guide". 

In HP-UX 9.0, TLI (Transport Layer Interface) supports any transport provider which is compliant with TPI (Transport Provider Interface).  TLI is available only as part of the STREAMS product.  Users of this product can access TLI versions of the t_* routines by linking with /usr/lib/libnsl_s.a.  For more information on TLI, see the TLI section of "STREAMS/UX for HP 9000 Reference Manual". 

SEE ALSO

t_alloc(3). 

Hewlett-Packard Company  —  HP-UX Release 9.0: October 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026