modernc.org/cc@v1.0.1/v2/headers/linux_386/usr/include/i386-linux-gnu/sys/utsname.h (about)

     1  /* Copyright (C) 1991-2018 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 Lesser General Public
     6     License as published by the Free Software Foundation; either
     7     version 2.1 of the 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     Lesser General Public License for more details.
    13  
    14     You should have received a copy of the GNU Lesser General Public
    15     License along with the GNU C Library; if not, see
    16     <http://www.gnu.org/licenses/>.  */
    17  
    18  /*
    19   *	POSIX Standard: 4.4 System Identification	<sys/utsname.h>
    20   */
    21  
    22  #ifndef	_SYS_UTSNAME_H
    23  #define	_SYS_UTSNAME_H	1
    24  
    25  #include <features.h>
    26  
    27  __BEGIN_DECLS
    28  #include <bits/utsname.h>
    29  #ifndef _UTSNAME_SYSNAME_LENGTH
    30  # define _UTSNAME_SYSNAME_LENGTH _UTSNAME_LENGTH
    31  #endif
    32  #ifndef _UTSNAME_NODENAME_LENGTH
    33  # define _UTSNAME_NODENAME_LENGTH _UTSNAME_LENGTH
    34  #endif
    35  #ifndef _UTSNAME_RELEASE_LENGTH
    36  # define _UTSNAME_RELEASE_LENGTH _UTSNAME_LENGTH
    37  #endif
    38  #ifndef _UTSNAME_VERSION_LENGTH
    39  # define _UTSNAME_VERSION_LENGTH _UTSNAME_LENGTH
    40  #endif
    41  #ifndef _UTSNAME_MACHINE_LENGTH
    42  # define _UTSNAME_MACHINE_LENGTH _UTSNAME_LENGTH
    43  #endif
    44  /* Structure describing the system and machine.  */
    45      struct utsname {
    46  	/* Name of the implementation of the operating system.  */
    47  	char sysname[_UTSNAME_SYSNAME_LENGTH];
    48  
    49  	/* Name of this node on the network.  */
    50  	char nodename[_UTSNAME_NODENAME_LENGTH];
    51  
    52  	/* Current release level of this implementation.  */
    53  	char release[_UTSNAME_RELEASE_LENGTH];
    54  	/* Current version level of this release.  */
    55  	char version[_UTSNAME_VERSION_LENGTH];
    56  
    57  	/* Name of the hardware type the system is running on.  */
    58  	char machine[_UTSNAME_MACHINE_LENGTH];
    59  
    60  #if _UTSNAME_DOMAIN_LENGTH - 0
    61  	/* Name of the domain of this node on the network.  */
    62  # ifdef __USE_GNU
    63  	char domainname[_UTSNAME_DOMAIN_LENGTH];
    64  # else
    65  	char __domainname[_UTSNAME_DOMAIN_LENGTH];
    66  # endif
    67  #endif
    68  };
    69  
    70  #ifdef __USE_MISC
    71  /* Note that SVID assumes all members have the same size.  */
    72  # define SYS_NMLN  _UTSNAME_LENGTH
    73  #endif
    74  
    75  /* Put information about the system in NAME.  */
    76  extern int uname(struct utsname *__name) __THROW;
    77  
    78  __END_DECLS
    79  #endif				/* sys/utsname.h  */