epoc32/include/stdapis/sys/un.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     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_ */