16ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh/****************************************************************************
26ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************
36ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***
46ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   This header was automatically generated from a Linux kernel header
56ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   of the same name, to make information necessary for userspace to
66ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   call into the kernel available to libc.  It contains only constants,
76ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   structures, and macros generated from the original header, and thus,
86ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   contains no copyrightable information.
96ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***
106ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************
116ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************/
126ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#ifndef _LINUX_SOCKET_H
136ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define _LINUX_SOCKET_H
146ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
156ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define _K_SS_MAXSIZE 128
166ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define _K_SS_ALIGNSIZE (__alignof__ (struct sockaddr *))
176ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
186ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct __kernel_sockaddr_storage {
196ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh unsigned short ss_family;
206ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
216ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh char __data[_K_SS_MAXSIZE - sizeof(unsigned short)];
226ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
236ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh} __attribute__ ((aligned(_K_SS_ALIGNSIZE)));
246ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
256ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#if !defined(__GLIBC__) || __GLIBC__ < 2
266ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
276ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <asm/socket.h>
286ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/sockios.h>
296ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/uio.h>
306ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/types.h>
316ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/compiler.h>
326ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
336ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehtypedef unsigned short sa_family_t;
346ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
356ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct sockaddr {
366ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh sa_family_t sa_family;
376ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh char sa_data[14];
386ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
396ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
406ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct linger {
416ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int l_onoff;
426ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int l_linger;
436ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
446ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
456ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define sockaddr_storage __kernel_sockaddr_storage
466ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
476ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct msghdr {
486ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh void * msg_name;
496ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int msg_namelen;
506ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh struct iovec * msg_iov;
516ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __kernel_size_t msg_iovlen;
526ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh void * msg_control;
536ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __kernel_size_t msg_controllen;
546ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh unsigned msg_flags;
556ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
566ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
576ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct cmsghdr {
586ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __kernel_size_t cmsg_len;
596ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int cmsg_level;
606ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int cmsg_type;
616ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
626ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
636ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __CMSG_NXTHDR(ctl, len, cmsg) __cmsg_nxthdr((ctl),(len),(cmsg))
646ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_NXTHDR(mhdr, cmsg) cmsg_nxthdr((mhdr), (cmsg))
656ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
666ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_ALIGN(len) ( ((len)+sizeof(long)-1) & ~(sizeof(long)-1) )
676ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
686ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_DATA(cmsg) ((void *)((char *)(cmsg) + CMSG_ALIGN(sizeof(struct cmsghdr))))
696ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_SPACE(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + CMSG_ALIGN(len))
706ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_LEN(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + (len))
716ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
726ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __CMSG_FIRSTHDR(ctl,len) ((len) >= sizeof(struct cmsghdr) ?   (struct cmsghdr *)(ctl) :   (struct cmsghdr *)NULL)
736ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_FIRSTHDR(msg) __CMSG_FIRSTHDR((msg)->msg_control, (msg)->msg_controllen)
746ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) &&   (cmsg)->cmsg_len <= (unsigned long)   ((mhdr)->msg_controllen -   ((char *)(cmsg) - (char *)(mhdr)->msg_control)))
756ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
766ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#ifdef __GNUC__
776ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __KINLINE static __inline__
786ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#elif defined(__cplusplus)
796ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __KINLINE static inline
806ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#else
816ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __KINLINE static
826ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#endif
836ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
846ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh__KINLINE struct cmsghdr * __cmsg_nxthdr(void *__ctl, __kernel_size_t __size,
856ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh struct cmsghdr *__cmsg)
866ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh{
876ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh struct cmsghdr * __ptr;
886ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
896ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __ptr = (struct cmsghdr*)(((unsigned char *) __cmsg) + CMSG_ALIGN(__cmsg->cmsg_len));
906ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh if ((unsigned long)((char*)(__ptr+1) - (char *) __ctl) > __size)
916ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh return (struct cmsghdr *)0;
926ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
936ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh return __ptr;
946ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh}
956ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
966ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh__KINLINE struct cmsghdr * cmsg_nxthdr (struct msghdr *__msg, struct cmsghdr *__cmsg)
976ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh{
986ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh return __cmsg_nxthdr(__msg->msg_control, __msg->msg_controllen, __cmsg);
996ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh}
1006ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1016ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SCM_RIGHTS 0x01
1026ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SCM_CREDENTIALS 0x02
1036ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SCM_SECURITY 0x03
1046ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1056ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct ucred {
1066ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 pid;
1076ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 uid;
1086ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 gid;
1096ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
1106ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1116ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_UNSPEC 0
1126ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_UNIX 1
1136ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_LOCAL 1
1146ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_INET 2
1156ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_AX25 3
1166ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_IPX 4
1176ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_APPLETALK 5
1186ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_NETROM 6
1196ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_BRIDGE 7
1206ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ATMPVC 8
1216ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_X25 9
1226ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_INET6 10
1236ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ROSE 11
1246ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_DECnet 12
1256ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_NETBEUI 13
1266ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_SECURITY 14
1276ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_KEY 15
1286ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_NETLINK 16
1296ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ROUTE AF_NETLINK
1306ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_PACKET 17
1316ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ASH 18
1326ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ECONET 19
1336ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_ATMSVC 20
1346ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_SNA 22
1356ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_IRDA 23
1366ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_PPPOX 24
1376ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_WANPIPE 25
1386ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_LLC 26
1396ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_TIPC 30
1406ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_BLUETOOTH 31
1416ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define AF_MAX 32
1426ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1436ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_UNSPEC AF_UNSPEC
1446ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_UNIX AF_UNIX
1456ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_LOCAL AF_LOCAL
1466ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_INET AF_INET
1476ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_AX25 AF_AX25
1486ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_IPX AF_IPX
1496ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_APPLETALK AF_APPLETALK
1506ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_NETROM AF_NETROM
1516ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_BRIDGE AF_BRIDGE
1526ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ATMPVC AF_ATMPVC
1536ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_X25 AF_X25
1546ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_INET6 AF_INET6
1556ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ROSE AF_ROSE
1566ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_DECnet AF_DECnet
1576ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_NETBEUI AF_NETBEUI
1586ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_SECURITY AF_SECURITY
1596ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_KEY AF_KEY
1606ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_NETLINK AF_NETLINK
1616ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ROUTE AF_ROUTE
1626ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_PACKET AF_PACKET
1636ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ASH AF_ASH
1646ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ECONET AF_ECONET
1656ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_ATMSVC AF_ATMSVC
1666ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_SNA AF_SNA
1676ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_IRDA AF_IRDA
1686ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_PPPOX AF_PPPOX
1696ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_WANPIPE AF_WANPIPE
1706ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_LLC AF_LLC
1716ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_TIPC AF_TIPC
1726ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_BLUETOOTH AF_BLUETOOTH
1736ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define PF_MAX AF_MAX
1746ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1756ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOMAXCONN 128
1766ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1776ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_OOB 1
1786ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_PEEK 2
1796ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_DONTROUTE 4
1806ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_TRYHARD 4
1816ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_CTRUNC 8
1826ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_PROBE 0x10
1836ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_TRUNC 0x20
1846ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_DONTWAIT 0x40
1856ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_EOR 0x80
1866ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_WAITALL 0x100
1876ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_FIN 0x200
1886ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_SYN 0x400
1896ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_CONFIRM 0x800
1906ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_RST 0x1000
1916ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_ERRQUEUE 0x2000
1926ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_NOSIGNAL 0x4000
1936ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_MORE 0x8000
1946ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1956ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_EOF MSG_FIN
1966ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1976ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MSG_CMSG_COMPAT 0
1986ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
1996ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_IP 0
2006ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
2016ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_TCP 6
2026ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_UDP 17
2036ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_IPV6 41
2046ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_ICMPV6 58
2056ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_SCTP 132
2066ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_RAW 255
2076ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_IPX 256
2086ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_AX25 257
2096ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_ATALK 258
2106ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_NETROM 259
2116ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_ROSE 260
2126ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_DECNET 261
2136ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_X25 262
2146ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_PACKET 263
2156ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_ATM 264
2166ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_AAL 265
2176ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_IRDA 266
2186ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_NETBEUI 267
2196ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_LLC 268
2206ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_DCCP 269
2216ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_NETLINK 270
2226ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define SOL_TIPC 271
2236ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
2246ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define IPX_TYPE 1
2256ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
2266ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#endif
2276ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#endif
228