Merge branch 'vendor/BZIP'
[dragonfly.git] / lib / libc / gen / uname.3
1 .\" Copyright (c) 1994
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)uname.3     8.1 (Berkeley) 1/4/94
29 .\" $FreeBSD: src/lib/libc/gen/uname.3,v 1.6.2.4 2001/12/14 18:33:51 ru Exp $
30 .\"
31 .Dd March 1, 2016
32 .Dt UNAME 3
33 .Os
34 .Sh NAME
35 .Nm uname
36 .Nd get system identification
37 .Sh LIBRARY
38 .Lb libc
39 .Sh SYNOPSIS
40 .In sys/utsname.h
41 .Ft int
42 .Fn uname "struct utsname *name"
43 .Sh DESCRIPTION
44 The
45 .Fn uname
46 function stores nul-terminated strings of information identifying
47 the current system into the structure referenced by
48 .Fa name .
49 .Pp
50 The
51 .Vt utsname
52 structure is defined in the
53 .In sys/utsname.h
54 header file, and contains the following members:
55 .Bl -tag -width nodenameXXXX -offset indent
56 .It sysname
57 Name of the operating system implementation.
58 .It nodename
59 Network name of this machine.
60 .It release
61 Release level of the operating system.
62 .It version
63 Version level of the operating system.
64 .It machine
65 Machine hardware platform.
66 .El
67 .Sh RETURN VALUES
68 .Rv -std uname
69 .Sh ENVIRONMENT
70 .Bl -tag -width ".Ev UNAME_s"
71 .It Ev UNAME_s
72 If the environment or varsym variable
73 .Ev UNAME_s
74 is set, it will override the
75 .Va sysname
76 member.
77 .It Ev UNAME_r
78 If the environment or varsym variable
79 .Ev UNAME_r
80 is set, it will override the
81 .Va release
82 member.
83 .It Ev UNAME_v
84 If the environment or varsym variable
85 .Ev UNAME_v
86 is set, it will override the
87 .Va version
88 member.
89 .It Ev UNAME_m
90 If the environment or varsym variable
91 .Ev UNAME_m
92 is set, it will override the
93 .Va machine
94 member.
95 .El
96 .Pp
97 Environment variables have priority over varsym variables.
98 .Sh ERRORS
99 The
100 .Fn uname
101 function may fail and set
102 .Va errno
103 for any of the errors specified for the library functions
104 .Xr sysctl 3 .
105 .Sh SEE ALSO
106 .Xr uname 1 ,
107 .Xr varsym 1 ,
108 .Xr sysctl 3
109 .Sh STANDARDS
110 The
111 .Fn uname
112 function conforms to
113 .St -p1003.1-88 .
114 .Sh HISTORY
115 The
116 .Fn uname
117 function first appeared in
118 .Bx 4.4 .