Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ intro(3) — Tru64 UNIX 4.0f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cc(1)

ld(1)

nm(1)

intro(2)

intro(3)  —  Subroutines

NAME

intro − Introduction to library functions

DESCRIPTION

Section 3 reference pages describe functions that may be found in various libraries.  The library functions are those other than the functions that directly invoke Tru64 UNIX system primitives, described in Section 2 reference pages. 

Some reference pages in Section 3 may contain suffixes to allow their files to exist with those of other reference pages having the same base name and section number. When used, suffixes are made up of one to four letters. See the man(1) reference page for more information on suffixes. 

To use the reentrant functions and data structures identified as “obsolete” in Section 3 reference pages, it is necessary to define the preprocessor symbol _REENTRANT prior to including the associated include file.  If this is not done, prototypes and supplementary data structures for these functions may not be defined.  This symbol is defined for you if you use the -threads or -pthread switches to the cc or c89 command. 

All libc functions are threadsafe unless otherwise indicated on their respective reference pages.  The following table lists non-threadsafe libc functions and their threadsafe equivalents (which are provided in libc.so for use in multithreaded applications):

Not Threadsafe Threadsafe Equivalent
asctime asctime_r
ctime ctime_r
endpwent endpwent_r
fgetgrent fgetgrent_r
fgetpwent fgetpwent_r
getgrent getgrent_r
getgrgid getgrgid_r
getgrname getgrname_r
getpwent getpwent_r
getpwnam getpwnam_r
getpwuid getpwuid_r
gmtime gmtime_r
localtime localtime_r
rand rand_r
readdir readdir_r
setpwent setpwent_r
strtok strtok_r

The following functions are not threadsafe and do not have threadsafe equivalents:

registerrpc, svc_destroy, svc_freeargs, svc_getargs, svc_getcaller, svc_getreq, svc_getreqset, svc_register, svc_run, svc_sendreply, svc_unregister, svcerr_auth, svcerr_decode, svcerr_noproc, svcerr_noprog, svcerr_progvers, svcerr_systemerr, svcerr_weakauth, svcfd_create, svcraw_create, svctcp_create, svcudp_create, xprt_register, xprt_unregister

ERRORS

Functions in the math library may return conventional values when the function is undefined for the given arguments or when the value is not representable.  In these cases, the external variable errno is set to the value of EDOM (domain error) or ERANGE (range error).  For further information, see intro(2).  The values of EDOM and ERANGE are defined in the include file <math.h>. 

FILES

/usr/lib/libc.a

/usr/lib/libcP.a

/usr/lib/libm.a

/usr/lib/libcV.a

RELATED INFORMATION

cc(1), ld(1), nm(1), intro(2)

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