1 /* 2 * This file is auto-generated. Modifications will be lost. 3 * 4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5 * for more information. 6 */ 7 #ifndef _UAPI_VM_SOCKETS_H 8 #define _UAPI_VM_SOCKETS_H 9 #include <linux/socket.h> 10 #include <linux/types.h> 11 #define SO_VM_SOCKETS_BUFFER_SIZE 0 12 #define SO_VM_SOCKETS_BUFFER_MIN_SIZE 1 13 #define SO_VM_SOCKETS_BUFFER_MAX_SIZE 2 14 #define SO_VM_SOCKETS_PEER_HOST_VM_ID 3 15 #define SO_VM_SOCKETS_TRUSTED 5 16 #define SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD 6 17 #define SO_VM_SOCKETS_NONBLOCK_TXRX 7 18 #define SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW 8 19 #if __BITS_PER_LONG == 64 || defined(__x86_64__) && defined(__ILP32__) 20 #define SO_VM_SOCKETS_CONNECT_TIMEOUT SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD 21 #else 22 #define SO_VM_SOCKETS_CONNECT_TIMEOUT (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD : SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW) 23 #endif 24 #define VMADDR_CID_ANY - 1U 25 #define VMADDR_PORT_ANY - 1U 26 #define VMADDR_CID_HYPERVISOR 0 27 #define VMADDR_CID_LOCAL 1 28 #define VMADDR_CID_HOST 2 29 #define VMADDR_FLAG_TO_HOST 0x01 30 #define VM_SOCKETS_INVALID_VERSION - 1U 31 #define VM_SOCKETS_VERSION_EPOCH(_v) (((_v) & 0xFF000000) >> 24) 32 #define VM_SOCKETS_VERSION_MAJOR(_v) (((_v) & 0x00FF0000) >> 16) 33 #define VM_SOCKETS_VERSION_MINOR(_v) (((_v) & 0x0000FFFF)) 34 struct sockaddr_vm { 35 __kernel_sa_family_t svm_family; 36 unsigned short svm_reserved1; 37 unsigned int svm_port; 38 unsigned int svm_cid; 39 __u8 svm_flags; 40 unsigned char svm_zero[sizeof(struct sockaddr) - sizeof(sa_family_t) - sizeof(unsigned short) - sizeof(unsigned int) - sizeof(unsigned int) - sizeof(__u8)]; 41 }; 42 #define IOCTL_VM_SOCKETS_GET_LOCAL_CID _IO(7, 0xb9) 43 #define SOL_VSOCK 287 44 #define VSOCK_RECVERR 1 45 #endif 46