Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ intro(3) — DG/UX 5.4R3.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ar(1)

cc(1)

ld(1)

lint(1)

nm(1)

sde-target(1)

reentrant(3)

cancellation(3)

threads(5)

intro(2)

intro(3M)

intro(3N)

stdio(3S)

math(5)



intro(3)                       DG/UX 5.4R3.00                       intro(3)


NAME
       intro - introduction to subroutines and libraries

DESCRIPTION
       This section describes functions found in various libraries supplied
       with the DG/UX System.  Declarations for some of these functions may
       be obtained from #include files indicated on the appropriate pages.
       The man pages are grouped by using various suffixes after the number
       3.  They are sorted together in the manual.

       (3C) These functions make up the "general" C functions, many of which
            are part of the ANSI C language definition.  The others have
            traditionally been part of libc on AT&T Unix-based systems.
       (3T) POSIX threads implementation.  Obtained with -lthread.
       (3E) These functions constitute the ELF library, libelf.
       (3G) These are general C functions found in libgen.
       (3K) These are kernel programming routines.
       (3M) These functions constitute the math library, libm.  They are not
            automatically loaded by the C compiler, cc(1); however, the link
            editor searches this library under the -lm option.  Declarations
            for these functions may be obtained from the #include file
            <math.h>.  Several generally useful mathematical constants are
            also defined there (see math(5)).
       (3N) These functions constitute the Internet network library, and
            Network Services library.
       (3R) RPC (Remote Procedure Call) related functions.
       (3S) These functions constitute the standard I/O package (see
            stdio(3S)).  Declarations for them may be obtained from the
            #include file <stdio.h>.  The functions themselves live in libc.
       (3W) Multinational Language Set (MNLS) functions - libw.
       (3X) Various specialized libraries.  The library names in which these
            functions are found are given on the appropriate pages.

       The DG/UX System provides a number of Software Development
       Environments, or SDEs.  An SDE represents a target binary or object
       interface.  It is made up of a set of libraries (object and binary
       interfaces) and header files (constants, data structures, types) that
       may be used together to create applications that adhere to a
       particular binary or object interface standard.

       See sde(5) and sde-target(1) for how to select SDEs.  The function
       groupings described above may not be available in all the SDEs.  Some
       functions even appear in different libraries from one SDE to another.

       The DG/UX system supports two object formats, commonly known as COFF
       and ELF.  The COFF format is associated with pre-V.4 Unix systems
       from AT&T.  The ELF format originates with V.4 Unix systems.  In
       general, the SDEs deal with one specific object file format.
       However, the tools in the ELF SDE are capable of reading COFF
       objects.

       The following SDEs are available:

       m88kdguxelf   This is the System V Release 4 ELF environment.  This



Licensed material--property of copyright holder(s)                         1




intro(3)                       DG/UX 5.4R3.00                       intro(3)


                     environment contains ELF shared libraries, as well as
                     several ELF static libraries.  In order to avoid
                     duplication, some libraries in this environment are
                     COFF libraries that are shared with the COFF
                     environments.

       m88kdguxcoff  This is the System V Release 3 COFF development
                     environment.  This environment corresponds to m88kdgux
                     on DG/UX 4.3x systems.  It is provided for development
                     of COFF-based applications to run on DG/UX Release 5.4
                     or later.

       m88kocs       This COFF environment provides the 88open OCS standard
                     interface.  It should be used for developing
                     applications which include object files and libraries
                     that are intended to be OCS-compliant.

       m88kbcs       The m88kbcs environment is essentially unchanged from
                     DG/UX 4.3x.  It is intended for developing applications
                     consisting entirely of statically linked COFF
                     executables that adhere to the 88open BCS.  It provides
                     a libc compatible with the System V Interface
                     Definition, Edition 2, and containing BSD, POSIX, and
                     ANSI extensions.

       m88kdgux      This environment is a synonym for one of the other
                     environments.  It provides the default if no other
                     environment is explicitly requested.  In DG/UX 4.3x,
                     this was a synonym for what is now m88kdguxcoff.  In
                     DG/UX Release 5.4 this is a synonym for m88kdguxelf.

       All of the above environments are intended to provide the set of
       interfaces specified by the OCS standard.  In the ELF environments,
       these interfaces may not appear in the same libraries specified by
       the OCS.  This is due to restructuring by AT&T in System V Release 4.
       See below for more information.

       A few functions are located in different libraries in the ELF
       environments than in the COFF environments.  The regex and regcmp
       functions are available in libPW in the COFF environments, and in
       libgen in the ELF environments.  The nlist function is available in
       libc in the COFF environments, and in libelf in the ELF environments.

       Under the COFF environments, the default floating point environment
       enables the divide by zero, floating point overflow, and invalid
       operation exceptions.  These exceptions would be disabled if
       <ieeefp.h> is included.  Under the ELF environment, the default
       floating point environment does not enable any of the exceptions,
       except invalid operation exceptions upon attempted operations on
       Signaling NaNs.

       In addition, many functions found in libc in the COFF environments
       are found in libdgc in the DG/UX Release 5.4 ELF environment.  The
       reason for this split is to facilitate ABI compliance in the future.



Licensed material--property of copyright holder(s)                         2




intro(3)                       DG/UX 5.4R3.00                       intro(3)


       The general classes that have been moved are the RPC/YP (3N)
       functions, socket/internet functions (3N), domain name service
       functions (3N), Berkeley 4.2 and 4.3 extensions, and miscellaneous DG
       extensions.

       This is the list of symbols in libdgc in the ELF environment.  Most
       of these symbols are also located in libc in the COFF environments
       (symbols new to System V.4 and recent DG enhancements are not, for
       example).  Symbols denoted with an * are available ONLY in the ELF
       environment.
       accept                            addexportent
       addmntent                         addsev *
       alphasort                         authdescreate
       authdesgetucred                  authnonecreate
       authunixcreate                   authunixcreatedefault
       backref                           bcmp
       bcopy                             berksignal
       berksigpause                     bind
       bindresvport                      bsdreaddir
       bzero                             callrpc
       cbccrypt                         cclass
       clntbroadcast                    clntbroadcastexp
       clntcreate                       clntpcreateerror
       clntperrno                       clntperror
       clntspcreateerror                clntsperrno
       clntsperror                      clntrawcreate
       clnttcpcreate                    clntudpbufcreate
       clntudpcreate                    closelog
       connect                           dbmclearerr
       dbmclose                         dbmdelete
       dbmdirfno                        dbmerror
       dbmfetch                         dbmfirstkey
       dbmforder                        dbmnextkey
       dbmopen                          dbmpagfno
       dbmrdonly                        dbmstore
       dessetparity                     dgallowshareddescriptorattach
       dgattachtoshareddescriptors   dgauditctl *
       dgauditwrite *                   dgblockseek *
       dgcvttoimplicit *              dgdecryptsessionkey
       dgencryptsessionkey              dgexterrno
       dgfileinfo                      dgflock
       dgfstat                          dggetauid *
       dggetauthid *                    dggetauthinfo *
       dggetdirmode *                   dggetftamattrs *
       dggetoacl *                      dggetomac *
       dggetomask *                     dggetopriv *
       dggetorange *                    dggetrootkey
       dggetsmask *                     dggetspriv *
       dggetsrange *                    dggetufia *
       dgipcinfo                       dgisno *
       dgisyes *                        dglcntl
       dglockkill                      dglockreset
       dglockwait                      dgmacaccess *




Licensed material--property of copyright holder(s)                         3




intro(3)                       DG/UX 5.4R3.00                       intro(3)


       dgmkmldir *                      dgmknod
       dgmount                          dgmstat
       dgpaginginfo *                  dgprocessinfo
       dgreceivenotification           dgrequestnotification
       dgrunningwithaa *              dgrunningwithacl *
       dgrunningwithaudit *           dgrunningwithmac *
       dgrunningwithpriv *            dgsecstat *
       dgseek *                         dgsemgetid *
       dgsempend *                     dgsempost *
       dgsemreleaseid *               dgsetcpdlimits
       dgsetauid *                      dgsetauthid *
       dgsetauthinfo *                  dgsetdirmode *
       dgsetftamattrs *                 dgsetoacl *
       dgsetomac *                      dgsetomaconly *
       dgsetomask *                     dgsetopriv *
       dgsetorange *                    dgsetsecretkey
       dgsetsmask *                     dgsetspriv *
       dgsetsrange *                    dgsettmpomac *
       dgsetufia *                      dgstat
       dgstrsignal *                    dgsysinfo
       dgsysctl *                       dgunbufferedread
       dgunbufferedwrite               dgxtrace
       dncomp                           dnexpand
       dnskipname                       ecbcrypt
       ehgethostbyaddr                  ehgethostbyname
       endexportent                      endfsent
       endhostent                        endmntent
       endnetent                         endnetgrent
       endprotoent                       endrpcent
       endservent                        errorcodetotext
       etheraton                        etherhostton
       etherline                        etherntoa
       etherntohost                     extendedperror
       extendedstrerror *               fpquery
       ftime                             getmyaddress
       getdomainname                     getdtablesize
       getexportent                      getexportopt
       getfh                             getfsent
       getfsfile                         getfsspec
       getfstype                         gethostbyaddr
       gethostbyname                     gethostent
       gethostid                         gethostname
       getmntent                         getnetbyaddr
       getnetbyname                      getnetent
       getnetgrent                       getnetname
       getpagesize                       getpeername
       getpgrp2                          getpriority
       getprotobyname                    getprotobynumber
       getprotoent                       getrpcbyname
       getrpcbynumber                    getrpcent
       getrpcport                        getrusage
       getservbyname                     getservbyport
       getservent                        getsockname




Licensed material--property of copyright holder(s)                         4




intro(3)                       DG/UX 5.4R3.00                       intro(3)


       getsockopt                        getwd
       herrlist                         herrno
       hnerr                            hasmntopt
       herror                            host2netname
       hostalias                         index
       inetaddr                         inetlnaof
       inetmakeaddr                     inetnetof
       inetnetwork                      inetntoa
       inetntoabstr                    initstate
       innetgr                           isalphanum
       ishex                             itoa
       keydecryptsession                keyencryptsession
       keygendes                        keysetsecret
       killpg                            lfmt *
       listen                            memctl
       mkpwclear                         mkpwunclear
       mkstemp                           msgsys
       netname2host                      netname2user
       openlog                           pcdname
       pclass                           pquery
       prr                              ptype
       pfmt *                            pmapgetmaps
       pmapgetport                      pmaprmtcall
       pmapset                          pmapunset
       putlong                           putshort
       random                            rcmd
       recomp                           reexec
       reboot                            recv
       recvfrom                          recvmsg
       registerrpc                       remexportent
       resgethostbyaddr                 resgethostbyname
       resinit                          resmkquery
       resquery                         resquerydomain
       ressearch                        resselwait
       ressend                          resvcread
       rexec                             rindex
       rpccreateerr                     rpcsuppressnoneterrors
       rresvport                         rtime
       ruserok                           ruserpass
       scandir                           select
       semsys                            send
       sendmsg                           sendto
       setcat *                          setdomainname
       setegid                           seteuid
       setexportent                      setfsent
       sethostent                        sethostfile
       sethostid                         sethostname
       setlabel *                        setlogmask
       setmntent                         setnetent
       setnetgrent                       setpgrp2
       setpriority                       setprotoent
       setpwfile                         setregid
       setreuid                          setrgid




Licensed material--property of copyright holder(s)                         5




intro(3)                       DG/UX 5.4R3.00                       intro(3)


       setrpcent                         setruid
       setservent                        setsockopt
       setstate                          shmsys
       shutdown                          sigblock
       sigret                            sigsetmask
       sigstack                          socket
       socketpair                        srandom
       stkexec                           strcasecmp
       strncasecmp                       strnsave
       strsave                           svcfdset
       svcgetreq                        svcgetreqset
       svcregister                      svcrun
       svcsendreply                     svcunregister
       svcauthdesstats                  svcerrauth
       svcerrdecode                     svcerrnoproc
       svcerrnoprog                     svcerrprogvers
       svcerrsystemerr                  svcerrweakauth
       svcfdcreate                      svcrawcreate
       svctcpcreate                     svcudpbufcreate
       svcudpcreate                     svcudpenablecache
       swapon                            syslocal
       syslog                            sysv3cuserid
       user2netname                      usingypmap
       usrgethostbyaddr                 usrgethostbyname
       utimes                            vfscanf
       vhangup                           vlfmt *
       vlimit                            vpfmt *
       vscanf                            vsscanf
       vtimes                            wait3
       wait4                             xdracceptedreply
       xdrarray                         xdrauthdescred
       xdrauthdesverf                  xdrauthunixparms
       xdrbool                          xdrbytes
       xdrcallhdr                       xdrcallmsg
       xdrchar                          xdrcryptkeyarg
       xdrcryptkeyres                   xdrdatum
       xdrdesblock                     xdrdouble
       xdrenum                          xdrfloat
       xdrfree                          xdrgetcredres
       xdrint                           xdrkeybuf
       xdrkeystatus                     xdrlong
       xdrnetnamestr                    xdrnetobj
       xdropaque                        xdropaqueauth
       xdrpmap                          xdrpmaplist
       xdrpointer                       xdrreference
       xdrrejectedreply                xdrreplymsg
       xdrrmtcallargs                  xdrrmtcallres
       xdrshort                         xdrstring
       xdruchar                        xdruint
       xdrulong                        xdrushort
       xdrunion                         xdrunixcred
       xdrvector                        xdrvoid
       xdrwrapstring                    xdrypbinding




Licensed material--property of copyright holder(s)                         6




intro(3)                       DG/UX 5.4R3.00                       intro(3)


       xdrypbuf                        xdrypinaddr
       xdrypall                         xdrypbindresp
       xdrypbindsetdom                 xdrypdeleteargs
       xdrypdomainwrapstring          xdrypmapparms
       xdrypmapwrapstring             xdrypmaplist
       xdrypmaplistwrapstring         xdrypownerwrapstring
       xdryppushrespxfr                xdrypreqkey
       xdrypreqnokey                   xdrypreqxfr
       xdryprespkeyval                xdryprespmaplist
       xdryprespmaster                 xdrypresporder
       xdryprespval                    xdrypupdateargs
       xdrmemcreate                     xdrreccreate
       xdrrecendofrecord                xdrreceof
       xdrrecskiprecord                 xdrstdiocreate
       xprtregister                     xprtunregister
       ypall                            ypbind
       ypfirst                          ypgetdefaultdomain
       ypgethostbyaddr                  ypgethostbyname
       ypmaster                         ypmatch
       ypnext                           yporder
       ypunbind                         ypupdate
       ypbindresparms                  yperrstring
       ypproterr

       Many of the internationalization features, such as message catalog
       facilities (see gettxt(3C)) that are available in the m88kdguxelf
       environment are absent from the m88kdguxcoff, m88kbcs, and m88kocs
       environments.  Many other internationalization features, such as
       strcoll(3C), are present, but offer only C locale behavior.

       With the introduction of threads, reentrancy of library functions
       becomes more important.  See reentrant(3) and cancellation(3), as
       well as individual man pages, for information on using library
       functions from threads.

   Definitions
       character       Any bit pattern able to fit into a byte on the
                       machine.

       null character  A character with value 0, represented in the C
                       language as '\0'.

       character array A sequence of characters.

       null-terminated character array
                       A sequence of characters, the last of which is the
                       null character.

       string          is a designation for a null-terminated character
                       array.

       null string     A character array containing only the null character.

       NULL pointer    The value that is obtained by casting 0 into a



Licensed material--property of copyright holder(s)                         7




intro(3)                       DG/UX 5.4R3.00                       intro(3)


                       pointer.  The C language guarantees that this value
                       will not match that of any legitimate pointer, so
                       many functions that return pointers return it to
                       indicate an error.

       NULL            Defined as 0 in <stdio.h>; the user may include an
                       appropriate definition if not using <stdio.h>.

FILES
       /usr/lib/libc.so      ELF Shared C Library Link Time Object
       /usr/dglib/libc.so.1  ELF Shared C Library Run Time Object
       /usr/lib/libthread.so POSIX Threads library (threads(5))
       /usr/lib/libc.a       Standard C library
       /usr/lib/libcrypt.a   Alternate encryption library
       /usr/lib/libdbm.a     Database access library
       /lib/libcurses.a      Terminal screen handling library
       /usr/lib/libm.a       Math library
       /usr/lib/libmalloc.a  Alternate memory management library
       /usr/lib/libmp.a      Multi-precision integer math library
       /usr/lib/libnsls.a   Network Services library
       /lib/libtermcap.a     termcap access library
       /usr/lib/libPW.a      Programmer Workbench library
       /usr/sde/*/lib/*      Any SDE-specific components linked via elinks
       /usr/lib/libdl.a      Dynamic linking interfaces (ELF)
       /usr/lib/libdgc.a     Non-AT&T based portion of libc (ELF)
       /usr/lib/libelf.a     Object format interfaces (COFF)
       /usr/lib/libgen.a     General library functions (COFF)
       /usr/lib/libmail.a    Mail file interfaces (ELF)

DIAGNOSTICS
       Functions in the C and math Libraries (3C and 3M) may return the
       conventional values 0 or ±HUGE when the function is undefined for the
       given arguments or when the value is not representable.  These are
       the largest-magnitude single-precision floating-point numbers; HUGE
       is defined in the <math.h> header file.  In these cases, the external
       variable errno (see intro(2)) is set to the value EDOM or ERANGE.

SEE ALSO
       ar(1), cc(1), ld(1), lint(1), nm(1), sde-target(1), reentrant(3),
       cancellation(3), threads(5), intro(2), intro(3M), intro(3N),
       stdio(3S), math(5).

CAUTION
       Many of the functions in the libraries call and/or refer to other
       functions and external variables described in this section and in
       Chapter 2 (System Calls).  If a program inadvertently defines a
       function or external variable with the same name, the presumed
       library version of the function or external variable may not be
       loaded.  The lint(1) program checker reports name conflicts of this
       kind as multiple declarations of the names in question.  Definitions
       for sections 2, 3C, 3N, 3R and 3S are checked automatically.  Other
       definitions can be included by using the-l option (for example, -lm
       includes definitions for the math library, section 3M).  Use of lint
       is highly recommended.



Licensed material--property of copyright holder(s)                         8


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