Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ domain(3) — sys5 — Apollo Domain/OS SR10.3.5

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

domain(2)

abs(3C)

ctime(3C)

difftime(3C)

div(3C)

floor(3M)

fseek(3S)

getgrent(3C)

getorgent(3C)

getpwent(3C)

ldgetarname(3X)

ldgetstring(3X)

ldsgetname(3X)

locale(3C)

memory(3C)

mktime(3C)

perror(3C)

raise(3C)

remove(3C)

string(3C)

strtoul(3C)

wctomb(3C)

a.out(4)

domain(4)

domain(5)

DOMAIN(3)                       Domain/OS SysV                       DOMAIN(3)



NAME
     domain - Domain/OS-specific C library subroutines

DESCRIPTION
     While providing a SVID-compliant version of UNIX System V, Release 3,
     Domain/OS SysV actually represents only a subset of the greater
     functionality of Domain/OS.  Furthermore, Domain/OS SysV omits some
     features of System V Release 3 that are irrelevant to Apollo
     workstations.  The following paragraphs describe aspects of that greater
     functionality that are visible to the Domain/OS SysV applications
     programmer and summarize features of System V Release 3 not implemented
     under Domain/OS SysV.


     Domain/OS Calls.  All of the interfaces giving applications access to the
     greater functionality of Domain/OS can be called from Domain/OS SysV.
     The declarations for these calls have been prototyped according to ANSI
     standard C and placed in /usr/include/apollo.  See the Domain/OS Call
     Reference for more information on these interfaces.


     Organization File.  In addition to the /etc/passwd and /etc/group files
     for storing information about user and group accounts, Domain/OS SysV
     provides a file for storing information about organization accounts,
     /etc/org.  See org(4) and "Creating and Maintaining the Registry" in
     Managing SysV System Software for more information about the organization
     file.

     Domain/OS SysV also provides six subroutines that constitute a C-language
     interface to the organization file:

                  _______________________________________________
                  |_____________Unique_Subroutines_______________|
                  |   Name    |     Function     |   Reference   |
                  ||||
                  |getorgent  |                  |               |
                  |getorgid   |                  |               |
                  |getorgnam  | get organization | getorgent(3C) |
                  |setorgent  | file entry       |               |
                  |endorgent  |                  |               |
                  |setorgfile_|__________________|_______________|


     Registry Server.  Under Domain/OS SysV, /etc/passwd is a read-only object
     of the type "passwd," and /etc/group is a read-only object of the type
     "group," both maintained by the registry server (see rgyd(1M) and
     "Creating and Maintaining the Registry" in Managing SysV System
     Software).  The conventional C-language interfaces to these files
     (described in and getpwent(3C)) interact with the registry server
     transparently.

     For those desiring more control, however, Domain/OS SysV provides two
     additional subroutines:  setpwfile and setgrfile.  These allow you to
     specify the password file and group file, respectively.  In this case,
     the subroutines interact with the named file in ways determined by its
     type manager.


     COFF Interfaces.  Apollo compilers and the Domain/OS SysV link editor
     (ld(1)) produce output in common object file format (COFF).  The
     interfaces to COFF objects conventionally provided by UNIX System V
     Release 3 are also available in Domain/OS SysV.  Domain/OS SysV, however,
     provides three additional interfaces:

               ____________________________________________________
               |________________Unique_Subroutines_________________|
               |   Name     |      Function      |    Reference    |
               ||||
               |ldgetarname | retrieve the       | ldgetarname(3X) |
               |            | filename of a      |                 |
               |            | member of an       |                 |
               |____________|_archive_file_______|_________________|
               |ldgetstring | retrieve string    | ldgetstring(3X) |
               |            | from common object |                 |
               |            | file string table  |                 |
               |____________|____________________|_________________|
               |ldsgetname  | retrieve section   | ldsgetname(3X)  |
               |            | name for common    |                 |
               |____________|_object_file_entry__|_________________|


     Support for Standard C.  The Domain/OS SysV C library complies fully with
     the semantics and syntax of ANSI standard C.  The new functions that come
     with this support include atexit, described in exit(2), and the
     following:

              _______________________________________________________
              |_________________Unique_Subroutines___________________|
              |   Name    |         Function          |  Reference   |
              ||||
              |labs       | return integer absolute   | abs(3C)      |
              |___________|_value_____________________|______________|
              |strftime   | convert date and time to  | ctime(3C)    |
              |           | string                    |              |
              |___________|___________________________|______________|
              |difftime   | compute the difference    | difftime(3C) |
              |           | between two calendar      |              |
              |___________|_times_____________________|______________|
              |div        |                           |              |
              |ldiv       | integer division          | div(3C)      |
              |___________|___________________________|______________|
              |ceil       | floor, ceiling,           |              |
              |fabs       | remainder, absolute value | floor(3M)    |
              |___________|_functions_________________|______________|
              |fgetpos    | reposition a file pointer |              |
              |fsetpos    | in a stream               | fseek(3S)    |
              |___________|___________________________|______________|
              |lconv      | set or get locale or      |              |
              |locale     | numerical formatting      | locale(3C)   |
              |localeconv | information               |              |
              |setlocale__|___________________________|______________|
              |memmove    | memory operations         | memory(3C)   |
              |___________|___________________________|______________|
              |mktime     | convert broken-down time  | mktime(3C)   |
              |___________|_to_calendar_time__________|______________|
              |strerror   | system error messages     | perror(3C)   |
              |___________|___________________________|______________|
              |raise______|_send_a_signal_____________|_raise(3C)____|
              |remove     | remove a file             | remove(3C)   |
              |___________|___________________________|______________|
              |strstr     |                           |              |
              |strtok     | string operations         | string(3C)   |
              |strxfrm____|___________________________|______________|
              |strtoul    | convert string to integer | strtoul(3C)  |
              |___________|___________________________|______________|
              |mblen      | convert multibyte         |              |
              |mbstowcs   | characters and strings to |              |
              |mbtowc     | wide characters and       | wctomb(3C)   |
              |wcstombs   | strings and back          |              |
              |wctomb_____|___________________________|______________|


     Domain/OS SysV omits the following C-language subroutines, implemented in
     UNIX System V, Release 3:

          _______________________________________________________________
          |___________________Unsupported_Subroutines____________________|
          |   Name     |      Function       | Reference (UNIX System V, |
          |            |                     |    Release 3 manuals)     |
          ||||
          |crypt       | password and file   | crypt(3X)                 |
          |            | encryption          |                           |
          |____________|_functions___________|___________________________|
          |fpgetround  |                     |                           |
          |fpsetround  |                     |                           |
          |fpgetmask   | IEEE floating point |                           |
          |fpsetmask   | environment control | fpgetround(3C)            |
          |fpgetsticky |                     |                           |
          |fpsetsticky |                     |                           |
          |____________|_____________________|___________________________|
          |isnand      | test for floating   |                           |
          |isnanf      | point NaN (Not-A-   | isnan(3C)                 |
          |____________|_Number)_____________|___________________________|
          |libwindows  | windowing terminal  | libwindows(3X)            |
          |            | function library    |                           |
          |____________|_____________________|___________________________|

     Domain/OS SysV provides no /lib/libm.a.  It places its math subroutines
     in /lib/libc.  There also are no /lib/libc.a or shared libraries.

     Domain/OS SysV Manual pages describing specific features may point out
     other differences.  These descriptions usually appear in the "Notes"
     section.

SEE ALSO
     domain(2), abs(3C), ctime(3C), difftime(3C), div(3C), floor(3M),
     fseek(3S), getgrent(3C), getorgent(3C), getpwent(3C), ldgetarname(3X),
     ldgetstring(3X), ldsgetname(3X), locale(3C), memory(3C), mktime(3C),
     perror(3C), raise(3C), remove(3C), string(3C), strtoul(3C), wctomb(3C),
     a.out(4), domain(4), domain(5).
     Domain/OS Call Reference.
     Managing SysV System Software.

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