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 ROSE_KERNEL_H 8*8d67ca89SAndroid Build Coastguard Worker #define ROSE_KERNEL_H 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/socket.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <linux/ax25.h> 11*8d67ca89SAndroid Build Coastguard Worker #define ROSE_MTU 251 12*8d67ca89SAndroid Build Coastguard Worker #define ROSE_MAX_DIGIS 6 13*8d67ca89SAndroid Build Coastguard Worker #define ROSE_DEFER 1 14*8d67ca89SAndroid Build Coastguard Worker #define ROSE_T1 2 15*8d67ca89SAndroid Build Coastguard Worker #define ROSE_T2 3 16*8d67ca89SAndroid Build Coastguard Worker #define ROSE_T3 4 17*8d67ca89SAndroid Build Coastguard Worker #define ROSE_IDLE 5 18*8d67ca89SAndroid Build Coastguard Worker #define ROSE_QBITINCL 6 19*8d67ca89SAndroid Build Coastguard Worker #define ROSE_HOLDBACK 7 20*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSGCAUSE (SIOCPROTOPRIVATE + 0) 21*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSSCAUSE (SIOCPROTOPRIVATE + 1) 22*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSL2CALL (SIOCPROTOPRIVATE + 2) 23*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSSL2CALL (SIOCPROTOPRIVATE + 2) 24*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSACCEPT (SIOCPROTOPRIVATE + 3) 25*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSCLRRT (SIOCPROTOPRIVATE + 4) 26*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSGL2CALL (SIOCPROTOPRIVATE + 5) 27*8d67ca89SAndroid Build Coastguard Worker #define SIOCRSGFACILITIES (SIOCPROTOPRIVATE + 6) 28*8d67ca89SAndroid Build Coastguard Worker #define ROSE_DTE_ORIGINATED 0x00 29*8d67ca89SAndroid Build Coastguard Worker #define ROSE_NUMBER_BUSY 0x01 30*8d67ca89SAndroid Build Coastguard Worker #define ROSE_INVALID_FACILITY 0x03 31*8d67ca89SAndroid Build Coastguard Worker #define ROSE_NETWORK_CONGESTION 0x05 32*8d67ca89SAndroid Build Coastguard Worker #define ROSE_OUT_OF_ORDER 0x09 33*8d67ca89SAndroid Build Coastguard Worker #define ROSE_ACCESS_BARRED 0x0B 34*8d67ca89SAndroid Build Coastguard Worker #define ROSE_NOT_OBTAINABLE 0x0D 35*8d67ca89SAndroid Build Coastguard Worker #define ROSE_REMOTE_PROCEDURE 0x11 36*8d67ca89SAndroid Build Coastguard Worker #define ROSE_LOCAL_PROCEDURE 0x13 37*8d67ca89SAndroid Build Coastguard Worker #define ROSE_SHIP_ABSENT 0x39 38*8d67ca89SAndroid Build Coastguard Worker typedef struct { 39*8d67ca89SAndroid Build Coastguard Worker char rose_addr[5]; 40*8d67ca89SAndroid Build Coastguard Worker } rose_address; 41*8d67ca89SAndroid Build Coastguard Worker struct sockaddr_rose { 42*8d67ca89SAndroid Build Coastguard Worker __kernel_sa_family_t srose_family; 43*8d67ca89SAndroid Build Coastguard Worker rose_address srose_addr; 44*8d67ca89SAndroid Build Coastguard Worker ax25_address srose_call; 45*8d67ca89SAndroid Build Coastguard Worker int srose_ndigis; 46*8d67ca89SAndroid Build Coastguard Worker ax25_address srose_digi; 47*8d67ca89SAndroid Build Coastguard Worker }; 48*8d67ca89SAndroid Build Coastguard Worker struct full_sockaddr_rose { 49*8d67ca89SAndroid Build Coastguard Worker __kernel_sa_family_t srose_family; 50*8d67ca89SAndroid Build Coastguard Worker rose_address srose_addr; 51*8d67ca89SAndroid Build Coastguard Worker ax25_address srose_call; 52*8d67ca89SAndroid Build Coastguard Worker unsigned int srose_ndigis; 53*8d67ca89SAndroid Build Coastguard Worker ax25_address srose_digis[ROSE_MAX_DIGIS]; 54*8d67ca89SAndroid Build Coastguard Worker }; 55*8d67ca89SAndroid Build Coastguard Worker struct rose_route_struct { 56*8d67ca89SAndroid Build Coastguard Worker rose_address address; 57*8d67ca89SAndroid Build Coastguard Worker unsigned short mask; 58*8d67ca89SAndroid Build Coastguard Worker ax25_address neighbour; 59*8d67ca89SAndroid Build Coastguard Worker char device[16]; 60*8d67ca89SAndroid Build Coastguard Worker unsigned char ndigis; 61*8d67ca89SAndroid Build Coastguard Worker ax25_address digipeaters[AX25_MAX_DIGIS]; 62*8d67ca89SAndroid Build Coastguard Worker }; 63*8d67ca89SAndroid Build Coastguard Worker struct rose_cause_struct { 64*8d67ca89SAndroid Build Coastguard Worker unsigned char cause; 65*8d67ca89SAndroid Build Coastguard Worker unsigned char diagnostic; 66*8d67ca89SAndroid Build Coastguard Worker }; 67*8d67ca89SAndroid Build Coastguard Worker struct rose_facilities_struct { 68*8d67ca89SAndroid Build Coastguard Worker rose_address source_addr, dest_addr; 69*8d67ca89SAndroid Build Coastguard Worker ax25_address source_call, dest_call; 70*8d67ca89SAndroid Build Coastguard Worker unsigned char source_ndigis, dest_ndigis; 71*8d67ca89SAndroid Build Coastguard Worker ax25_address source_digis[ROSE_MAX_DIGIS]; 72*8d67ca89SAndroid Build Coastguard Worker ax25_address dest_digis[ROSE_MAX_DIGIS]; 73*8d67ca89SAndroid Build Coastguard Worker unsigned int rand; 74*8d67ca89SAndroid Build Coastguard Worker rose_address fail_addr; 75*8d67ca89SAndroid Build Coastguard Worker ax25_address fail_call; 76*8d67ca89SAndroid Build Coastguard Worker }; 77*8d67ca89SAndroid Build Coastguard Worker #endif 78