Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ sysinfo(2) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

uname(2)

sysconf(3C)

gethostname(3)

gethostid(3)



sysinfo(2)                       UNIX System V                       sysinfo(2)


NAME
      sysinfo - get and set system information strings

SYNOPSIS
      #include <sys/systeminfo.h>

      long sysinfo (int command, char *buf, long count);

DESCRIPTION
      sysinfo copies information relating to the UNIX system on which the
      process is executing into the buffer pointed to by buf; sysinfo can also
      set certain information where appropriate commands are available.  count
      is the size of the buffer.

      The POSIX P1003.1 interface sysconf [see sysconf(2)] provides a similar
      class of configuration information, but returns an integer rather than a
      string.

      The commands available are:

     SI_SYSNAME
             Copy into the array pointed to by buf the string that would be
             returned by uname [see uname(2)] in the sysname field.  This is
             the name of the implementation of the operating system, e.g.,
             System V or UTS.

     SI_HOSTNAME
             Copy into the array pointed to by buf a string that names the
             present host machine.  This is the string that would be returned
             by uname [see uname(2)] in the nodename field.  This hostname or
             nodename is often the name the machine is known by locally.

             The hostname is the name of this machine as a node in some
             network; different networks may have different names for the node,
             but presenting the nodename to the appropriate network Directory
             or name-to-address mapping service should produce a transport end
             point address.  The name may not be fully qualified.

             Internet host names may be up to 256 bytes in length (plus the
             terminating null).

     SI_SET_HOSTNAME
             Copy the null-terminated contents of the array pointed to by buf
             into the string maintained by the kernel whose value will be
             returned by succeeding calls to sysinfo with the command
             SIHOSTNAME.  This command requires that the effective-user-id be
             super-user.

     SI_RELEASE
             Copy into the array pointed to by buf the string that would be
             returned by uname  [see uname(2)] in the release field.  Typical
             values might be 4.0 or 3.2.


10/89                                                                    Page 1







sysinfo(2)                       UNIX System V                       sysinfo(2)


     SI_VERSION
             Copy into the array pointed to by buf the string that would be
             returned by uname [see uname(2)] in the version field.  The syntax
             and semantics of this string are defined by the system provider.

     SI_MACHINE
             Copy into the array pointed to by buf the string that would be
             returned by uname [see uname(2)] in the machine field, e.g., 3b2
             or 580.

     SI_ARCHITECTURE
             Copy into the array pointed to by buf a string describing the
             instruction set architecture of the current system, e.g., mc68030,
             m32100, or i80486.  These names may not match predefined names in
             the C language compilation system.

     SI_HW_PROVIDER
             Copies the name of the hardware manufacturer into the array
             pointed to by buf.

     SI_HW_SERIAL
             Copy into the array pointed to by buf a string which is the ASCII
             representation of the hardware-specific serial number of the
             physical machine on which the system call is executed.  Note that
             this may be implemented in Read-Only Memory, via software
             constants set when building the operating system, or by other
             means, and may contain non-numeric characters.  It is anticipated
             that manufacturers will not issue the same ``serial number'' to
             more than one physical machine.  The pair of strings returned by
             SIHWPROVIDER and SIHWSERIAL is likely to be unique across all
             vendor's System V implementations.

     SI_SRPC_DOMAIN
             Copies the Secure Remote Procedure Call domain name into the array
             pointed to by buf.

     SI_SET_SRPC_DOMAIN
             Set the string to be returned by sysinfo with the SI_SRPC_DOMAIN
             command to the value contained in the array pointed to by buf.
             This command requires that the effective-user-id be super-user.

      sysinfo will fail if one or both of the following are true:

      EPERM The process does not have appropriate privilege for a SET commands.

      EINVAL
            buf does not point to a valid address, or the data for a SET
            command exceeds the limits established by the implementation.

DIAGNOSTICS
      Upon successful completion, the value returned indicates the buffer size
      in bytes required to hold the complete value and the terminating null


Page 2                                                                    10/89







sysinfo(2)                       UNIX System V                       sysinfo(2)


      character.  If this value is no greater than the value passed in count,
      the entire string was copied; if this value is greater than count, the
      string copied into buf has been truncated to count-1 bytes plus a
      terminating null character.

      Otherwise, a value of -1 is returned and errno is set to indicate the
      error.

USAGE
      There is in many cases no corresponding programmatic interface to set
      these values; such strings are typically settable only by the system
      administrator modifying entries in the master.d directory or the code
      provided by the particular OEM reading a serial number or code out of
      read-only memory, or hard-coded in the version of the operating system.

      A good starting guess for count is 257, which is likely to cover all
      strings returned by this interface in typical installations.

SEE ALSO
      uname(2), sysconf(3C).
      BSD compatibility package interfaces gethostname(3), gethostid(3).

































10/89                                                                    Page 3





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