modernc.org/cc@v1.0.1/v2/headers/linux_386/usr/include/i386-linux-gnu/sys/un.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  #ifndef	_SYS_UN_H
    19  #define	_SYS_UN_H	1
    20  
    21  #include <sys/cdefs.h>
    22  
    23  /* Get the definition of the macro to define the common sockaddr members.  */
    24  #include <bits/sockaddr.h>
    25  
    26  __BEGIN_DECLS
    27  /* Structure describing the address of an AF_LOCAL (aka AF_UNIX) socket.  */
    28      struct sockaddr_un {
    29  	__SOCKADDR_COMMON(sun_);
    30  	char sun_path[108];	/* Path name.  */
    31  };
    32  
    33  #ifdef __USE_MISC
    34  # include <string.h>		/* For prototype of `strlen'.  */
    35  
    36  /* Evaluate to actual length of the `sockaddr_un' structure.  */
    37  # define SUN_LEN(ptr) ((size_t) (((struct sockaddr_un *) 0)->sun_path)	      \
    38  		      + strlen ((ptr)->sun_path))
    39  #endif
    40  
    41  __END_DECLS
    42  #endif				/* sys/un.h  */