genericopenlibs/openenvcore/include/sys/un.h
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 /*-
       
     2  * Copyright (c) 1982, 1986, 1993
       
     3  *	The Regents of the University of California.  All rights reserved.
       
     4  *
       
     5  * Redistribution and use in source and binary forms, with or without
       
     6  * modification, are permitted provided that the following conditions
       
     7  * are met:
       
     8  * 1. Redistributions of source code must retain the above copyright
       
     9  *    notice, this list of conditions and the following disclaimer.
       
    10  * 2. Redistributions in binary form must reproduce the above copyright
       
    11  *    notice, this list of conditions and the following disclaimer in the
       
    12  *    documentation and/or other materials provided with the distribution.
       
    13  * 4. Neither the name of the University nor the names of its contributors
       
    14  *    may be used to endorse or promote products derived from this software
       
    15  *    without specific prior written permission.
       
    16  *
       
    17  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
       
    18  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
       
    19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
       
    20  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
       
    21  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
       
    22  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
       
    23  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
       
    24  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
       
    25  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
       
    26  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
       
    27  * SUCH DAMAGE.
       
    28  * © * Portions Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
       
    29  *	@(#)un.h	8.3 (Berkeley) 2/19/95
       
    30  * $FreeBSD: src/sys/sys/un.h,v 1.29 2005/04/13 00:01:46 mdodd Exp $
       
    31  */
       
    32 
       
    33 #ifndef _SYS_UN_H_
       
    34 #define _SYS_UN_H_
       
    35 
       
    36 #include <sys/cdefs.h>
       
    37 #include <sys/_types.h>
       
    38 
       
    39 #ifndef _SA_FAMILY_T_DECLARED
       
    40 typedef	__sa_family_t	sa_family_t;
       
    41 #define	_SA_FAMILY_T_DECLARED
       
    42 #endif
       
    43 
       
    44 /*
       
    45  * Definitions for UNIX IPC domain.
       
    46  */
       
    47 #ifndef __SYMBIAN32__
       
    48 struct sockaddr_un {
       
    49 	unsigned char	sun_len;	/* sockaddr len including null */
       
    50 	sa_family_t	sun_family;	/* AF_UNIX */
       
    51 	char	sun_path[104];		/* path name (gag) */
       
    52 };
       
    53 #else
       
    54 struct sockaddr_un
       
    55 	{
       
    56 	u_short sun_family;
       
    57 	char sun_path[255];
       
    58 	unsigned char sun_len;
       
    59 	};
       
    60 #endif		// __SYMBIAN32__
       
    61 
       
    62 #if __BSD_VISIBLE
       
    63 
       
    64 /* Socket options. */
       
    65 #define	LOCAL_PEERCRED		0x001	/* retrieve peer credentials */
       
    66 #define	LOCAL_CREDS		0x002	/* pass credentials to receiver */
       
    67 #define	LOCAL_CONNWAIT		0x004	/* connects block until accepted */
       
    68 
       
    69 #ifdef _KERNEL
       
    70 struct mbuf;
       
    71 struct socket;
       
    72 struct sockopt;
       
    73 
       
    74 extern	struct pr_usrreqs uipc_usrreqs;
       
    75 
       
    76 #else /* !_KERNEL */
       
    77 
       
    78 /* actual length of an initialized sockaddr_un */
       
    79 #define SUN_LEN(su) \
       
    80 	(sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path))
       
    81 
       
    82 #endif /* _KERNEL */
       
    83 
       
    84 #endif /* __BSD_VISIBLE */
       
    85 
       
    86 #endif /* !_SYS_UN_H_ */