UNAME(3)

NAME
uname - get system identification

LIBRARY
libc

SYNOPSIS
#include <sys/utsname.h>
int
uname(struct utsname *name);

DESCRIPTION
The uname() function stores nul-terminated strings of information identifying the current system into the structure referenced by name.

The utsname structure is defined in the <sys/utsname.h> header file, and contains the following members:

sysname
    Name of the operating system implementation. Equivalent to the sysctl(7) kern.ostype variable.

nodename
    Network name of this machine. Equivalent to the sysctl(7) kern.hostname variable.

release
    Release level of the operating system. Equivalent to the sysctl(7) kern.osrelease variable.

version
    Version level of the operating system. Equivalent to the sysctl(7) kern.version variable, except that very long values are truncated, and newlines are converted to spaces.

machine
    Machine hardware platform. Equivalent to the sysctl(7) hw.machine variable.

RETURN VALUES
If uname is successful, 0 is returned, otherwise, -1 is returned and errno is set appropriately.

ERRORS
The uname() function may fail and set errno for any of the errors specified for the library functions sysctl(3).

SEE ALSO
uname(1), sysctl(3)

STANDARDS
The uname() function conforms to p1003.1-90.

HISTORY
The uname function first appeared in 4.4BSD.