1*8d67ca89SAndroid Build Coastguard Worker /* 2*8d67ca89SAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*8d67ca89SAndroid Build Coastguard Worker * 4*8d67ca89SAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*8d67ca89SAndroid Build Coastguard Worker * for more information. 6*8d67ca89SAndroid Build Coastguard Worker */ 7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPILINUX_PHONET_H 8*8d67ca89SAndroid Build Coastguard Worker #define _UAPILINUX_PHONET_H 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <linux/socket.h> 11*8d67ca89SAndroid Build Coastguard Worker #define PN_PROTO_TRANSPORT 0 12*8d67ca89SAndroid Build Coastguard Worker #define PN_PROTO_PHONET 1 13*8d67ca89SAndroid Build Coastguard Worker #define PN_PROTO_PIPE 2 14*8d67ca89SAndroid Build Coastguard Worker #define PHONET_NPROTO 3 15*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_ENCAP 1 16*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_IFINDEX 2 17*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_HANDLE 3 18*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_INITSTATE 4 19*8d67ca89SAndroid Build Coastguard Worker #define PNADDR_ANY 0 20*8d67ca89SAndroid Build Coastguard Worker #define PNADDR_BROADCAST 0xFC 21*8d67ca89SAndroid Build Coastguard Worker #define PNPORT_RESOURCE_ROUTING 0 22*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_ENCAP_NONE 0 23*8d67ca89SAndroid Build Coastguard Worker #define PNPIPE_ENCAP_IP 1 24*8d67ca89SAndroid Build Coastguard Worker #define SIOCPNGETOBJECT (SIOCPROTOPRIVATE + 0) 25*8d67ca89SAndroid Build Coastguard Worker #define SIOCPNENABLEPIPE (SIOCPROTOPRIVATE + 13) 26*8d67ca89SAndroid Build Coastguard Worker #define SIOCPNADDRESOURCE (SIOCPROTOPRIVATE + 14) 27*8d67ca89SAndroid Build Coastguard Worker #define SIOCPNDELRESOURCE (SIOCPROTOPRIVATE + 15) 28*8d67ca89SAndroid Build Coastguard Worker struct phonethdr { 29*8d67ca89SAndroid Build Coastguard Worker __u8 pn_rdev; 30*8d67ca89SAndroid Build Coastguard Worker __u8 pn_sdev; 31*8d67ca89SAndroid Build Coastguard Worker __u8 pn_res; 32*8d67ca89SAndroid Build Coastguard Worker __be16 pn_length; 33*8d67ca89SAndroid Build Coastguard Worker __u8 pn_robj; 34*8d67ca89SAndroid Build Coastguard Worker __u8 pn_sobj; 35*8d67ca89SAndroid Build Coastguard Worker } __attribute__((packed)); 36*8d67ca89SAndroid Build Coastguard Worker struct phonetmsg { 37*8d67ca89SAndroid Build Coastguard Worker __u8 pn_trans_id; 38*8d67ca89SAndroid Build Coastguard Worker __u8 pn_msg_id; 39*8d67ca89SAndroid Build Coastguard Worker union { 40*8d67ca89SAndroid Build Coastguard Worker struct { 41*8d67ca89SAndroid Build Coastguard Worker __u8 pn_submsg_id; 42*8d67ca89SAndroid Build Coastguard Worker __u8 pn_data[5]; 43*8d67ca89SAndroid Build Coastguard Worker } base; 44*8d67ca89SAndroid Build Coastguard Worker struct { 45*8d67ca89SAndroid Build Coastguard Worker __u16 pn_e_res_id; 46*8d67ca89SAndroid Build Coastguard Worker __u8 pn_e_submsg_id; 47*8d67ca89SAndroid Build Coastguard Worker __u8 pn_e_data[3]; 48*8d67ca89SAndroid Build Coastguard Worker } ext; 49*8d67ca89SAndroid Build Coastguard Worker } pn_msg_u; 50*8d67ca89SAndroid Build Coastguard Worker }; 51*8d67ca89SAndroid Build Coastguard Worker #define PN_COMMON_MESSAGE 0xF0 52*8d67ca89SAndroid Build Coastguard Worker #define PN_COMMGR 0x10 53*8d67ca89SAndroid Build Coastguard Worker #define PN_PREFIX 0xE0 54*8d67ca89SAndroid Build Coastguard Worker #define pn_submsg_id pn_msg_u.base.pn_submsg_id 55*8d67ca89SAndroid Build Coastguard Worker #define pn_e_submsg_id pn_msg_u.ext.pn_e_submsg_id 56*8d67ca89SAndroid Build Coastguard Worker #define pn_e_res_id pn_msg_u.ext.pn_e_res_id 57*8d67ca89SAndroid Build Coastguard Worker #define pn_data pn_msg_u.base.pn_data 58*8d67ca89SAndroid Build Coastguard Worker #define pn_e_data pn_msg_u.ext.pn_e_data 59*8d67ca89SAndroid Build Coastguard Worker #define PN_COMM_SERVICE_NOT_IDENTIFIED_RESP 0x01 60*8d67ca89SAndroid Build Coastguard Worker #define PN_COMM_ISA_ENTITY_NOT_REACHABLE_RESP 0x14 61*8d67ca89SAndroid Build Coastguard Worker #define pn_orig_msg_id pn_data[0] 62*8d67ca89SAndroid Build Coastguard Worker #define pn_status pn_data[1] 63*8d67ca89SAndroid Build Coastguard Worker #define pn_e_orig_msg_id pn_e_data[0] 64*8d67ca89SAndroid Build Coastguard Worker #define pn_e_status pn_e_data[1] 65*8d67ca89SAndroid Build Coastguard Worker struct sockaddr_pn { 66*8d67ca89SAndroid Build Coastguard Worker __kernel_sa_family_t spn_family; 67*8d67ca89SAndroid Build Coastguard Worker __u8 spn_obj; 68*8d67ca89SAndroid Build Coastguard Worker __u8 spn_dev; 69*8d67ca89SAndroid Build Coastguard Worker __u8 spn_resource; 70*8d67ca89SAndroid Build Coastguard Worker __u8 spn_zero[sizeof(struct sockaddr) - sizeof(__kernel_sa_family_t) - 3]; 71*8d67ca89SAndroid Build Coastguard Worker } __attribute__((packed)); 72*8d67ca89SAndroid Build Coastguard Worker #define PN_DEV_PC 0x10 73*8d67ca89SAndroid Build Coastguard Worker #endif 74