linux_socket.h (283413) | linux_socket.h (283487) |
---|---|
1/*- 2 * Copyright (c) 2000 Assar Westerlund 3 * 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 --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * | 1/*- 2 * Copyright (c) 2000 Assar Westerlund 3 * 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 --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/sys/compat/linux/linux_socket.h 283413 2015-05-24 15:41:27Z dchagin $ | 28 * $FreeBSD: head/sys/compat/linux/linux_socket.h 283487 2015-05-24 18:03:14Z dchagin $ |
29 */ 30 31#ifndef _LINUX_SOCKET_H_ 32#define _LINUX_SOCKET_H_ 33 34/* msg flags in recvfrom/recvmsg */ 35 36#define LINUX_MSG_OOB 0x01 --- 13 unchanged lines hidden (view full) --- 50#define LINUX_MSG_NOSIGNAL 0x4000 51#define LINUX_MSG_CMSG_CLOEXEC 0x40000000 52 53/* Socket-level control message types */ 54 55#define LINUX_SCM_RIGHTS 0x01 56#define LINUX_SCM_CREDENTIALS 0x02 57 | 29 */ 30 31#ifndef _LINUX_SOCKET_H_ 32#define _LINUX_SOCKET_H_ 33 34/* msg flags in recvfrom/recvmsg */ 35 36#define LINUX_MSG_OOB 0x01 --- 13 unchanged lines hidden (view full) --- 50#define LINUX_MSG_NOSIGNAL 0x4000 51#define LINUX_MSG_CMSG_CLOEXEC 0x40000000 52 53/* Socket-level control message types */ 54 55#define LINUX_SCM_RIGHTS 0x01 56#define LINUX_SCM_CREDENTIALS 0x02 57 |
58struct l_msghdr { 59 l_uintptr_t msg_name; 60 l_int msg_namelen; 61 l_uintptr_t msg_iov; 62 l_size_t msg_iovlen; 63 l_uintptr_t msg_control; 64 l_size_t msg_controllen; 65 l_uint msg_flags; 66}; 67 68struct l_cmsghdr { 69 l_size_t cmsg_len; 70 l_int cmsg_level; 71 l_int cmsg_type; 72}; 73 |
|
58/* Ancilliary data object information macros */ 59 60#define LINUX_CMSG_ALIGN(len) roundup2(len, sizeof(l_ulong)) 61#define LINUX_CMSG_DATA(cmsg) ((void *)((char *)(cmsg) + \ 62 LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)))) 63#define LINUX_CMSG_SPACE(len) (LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)) + \ 64 LINUX_CMSG_ALIGN(len)) 65#define LINUX_CMSG_LEN(len) (LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)) + \ --- 221 unchanged lines hidden --- | 74/* Ancilliary data object information macros */ 75 76#define LINUX_CMSG_ALIGN(len) roundup2(len, sizeof(l_ulong)) 77#define LINUX_CMSG_DATA(cmsg) ((void *)((char *)(cmsg) + \ 78 LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)))) 79#define LINUX_CMSG_SPACE(len) (LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)) + \ 80 LINUX_CMSG_ALIGN(len)) 81#define LINUX_CMSG_LEN(len) (LINUX_CMSG_ALIGN(sizeof(struct l_cmsghdr)) + \ --- 221 unchanged lines hidden --- |