PURPOSE

tptypes - routine to determine information about a typed buffer

SYNOPSIS


#include <atmi.h>
long tptypes(char *ptr, char *type, char *subtype)

DESCRIPTION

tptypes() takes as its first argument a pointer to a data buffer and returns the type and subtype of that buffer in its second and third arguments, respectively. ptr must point to a buffer gotten from tpalloc(3c). If type and subtype are non-NULL, then the function populates the character arrays to which they point with the names of the buffer's type and subtype, respectively. If the names are of their maximum length (8 for type, 16 for subtype), the character array is not null-terminated. If no subtype exists, then the array pointed to by subtype will contain a NULL string.

Note that only the first eight bytes of type and the first 16 bytes of subtype are populated.

RETURN VALUES

Upon success, tptypes() returns the size of the buffer; otherwise it returns -1 upon failure and sets tperrno to indicate the error condition.

ERRORS

Under the following conditions, tptypes() fails and sets tperrno to:

[TPEINVAL]
Invalid arguments were given (for example, ptr does not point to a buffer gotten from tpalloc(3c)).
[TPEPROTO]
tptypes() was called in an improper context.
[TPESYSTEM]
A System/T error has occurred. The exact nature of the error is written to a log file.
[TPEOS]
An operating system error has occurred.

SEE ALSO

tpalloc(3c),
tpfree(3c),
tprealloc(3c)