Formerly posix/sys/utsname.h.~2~
[kopensolaris-gnu/glibc.git] / posix / sys / utsname.h
1 /* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public License as
6 published by the Free Software Foundation; either version 2 of the
7 License, or (at your option) any later version.
8
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public
15 License along with the GNU C Library; see the file COPYING.LIB.  If
16 not, write to the, 1992 Free Software Foundation, Inc., 675 Mass Ave,
17 Cambridge, MA 02139, USA.  */
18
19 /*
20  *      POSIX Standard: 4.4 System Identification       <sys/utsname.h>
21  */
22
23 #ifndef _SYS_UTSNAME_H
24
25 #define _SYS_UTSNAME_H  1
26 #include <features.h>
27
28 __BEGIN_DECLS
29
30
31 /* The size of the character arrays used to hold the information
32    in a `struct utsname'.  Enlarge this as necessary.  */
33 #define _UTSNAME_LENGTH 100
34
35
36 /* Structure describing the system and machine.  */
37 struct utsname
38 {
39   /* Name of the implementation of the operating system.  */
40   char sysname[_UTSNAME_LENGTH];
41
42   /* Name of this node on the network.  */
43   char nodename[_UTSNAME_LENGTH];
44
45   /* Current release level of this implementation.  */
46   char release[_UTSNAME_LENGTH];
47   /* Current version level of this release.  */
48   char version[_UTSNAME_LENGTH];
49
50   /* Name of the hardware type the system is running on.  */
51   char machine[_UTSNAME_LENGTH];
52 };
53
54
55 /* Put information about the system in NAME.  */
56 extern int uname __P ((struct utsname * __name));
57
58
59 /* Store the nodename in NAME, writing no more than LEN characters.  */
60 extern int __uname_getnode __P ((char *__name, unsigned int __len));
61
62
63 __END_DECLS
64
65 #endif /* sys/utsname.h  */