UNAME(3) Library Functions Manual UNAME(3)

unameget system identification

Standard C Library (libc, -lc)

#include <sys/utsname.h>

int
uname(struct utsname *name);

The () 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.
nodename
Network name of this machine.
release
Release level of the operating system.
version
Version level of the operating system.
machine
Machine hardware platform.

The uname() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

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

uname(1), sysctl(3)

The uname() function conforms to IEEE Std 1003.1-1988 (“POSIX.1”).

The uname() function first appeared in 4.4BSD.

January 4, 1994 macOS 15.2