1*cda5da8dSAndroid Build Coastguard Worker #ifndef _STROPTS_H 2*cda5da8dSAndroid Build Coastguard Worker #define _STROPTS_H 3*cda5da8dSAndroid Build Coastguard Worker 4*cda5da8dSAndroid Build Coastguard Worker #ifdef __cplusplus 5*cda5da8dSAndroid Build Coastguard Worker extern "C" { 6*cda5da8dSAndroid Build Coastguard Worker #endif 7*cda5da8dSAndroid Build Coastguard Worker 8*cda5da8dSAndroid Build Coastguard Worker #define __SID ('S' << 8) 9*cda5da8dSAndroid Build Coastguard Worker 10*cda5da8dSAndroid Build Coastguard Worker #define I_NREAD (__SID | 1) 11*cda5da8dSAndroid Build Coastguard Worker #define I_PUSH (__SID | 2) 12*cda5da8dSAndroid Build Coastguard Worker #define I_POP (__SID | 3) 13*cda5da8dSAndroid Build Coastguard Worker #define I_LOOK (__SID | 4) 14*cda5da8dSAndroid Build Coastguard Worker #define I_FLUSH (__SID | 5) 15*cda5da8dSAndroid Build Coastguard Worker #define I_SRDOPT (__SID | 6) 16*cda5da8dSAndroid Build Coastguard Worker #define I_GRDOPT (__SID | 7) 17*cda5da8dSAndroid Build Coastguard Worker #define I_STR (__SID | 8) 18*cda5da8dSAndroid Build Coastguard Worker #define I_SETSIG (__SID | 9) 19*cda5da8dSAndroid Build Coastguard Worker #define I_GETSIG (__SID |10) 20*cda5da8dSAndroid Build Coastguard Worker #define I_FIND (__SID |11) 21*cda5da8dSAndroid Build Coastguard Worker #define I_LINK (__SID |12) 22*cda5da8dSAndroid Build Coastguard Worker #define I_UNLINK (__SID |13) 23*cda5da8dSAndroid Build Coastguard Worker #define I_PEEK (__SID |15) 24*cda5da8dSAndroid Build Coastguard Worker #define I_FDINSERT (__SID |16) 25*cda5da8dSAndroid Build Coastguard Worker #define I_SENDFD (__SID |17) 26*cda5da8dSAndroid Build Coastguard Worker #define I_RECVFD (__SID |14) 27*cda5da8dSAndroid Build Coastguard Worker #define I_SWROPT (__SID |19) 28*cda5da8dSAndroid Build Coastguard Worker #define I_GWROPT (__SID |20) 29*cda5da8dSAndroid Build Coastguard Worker #define I_LIST (__SID |21) 30*cda5da8dSAndroid Build Coastguard Worker #define I_PLINK (__SID |22) 31*cda5da8dSAndroid Build Coastguard Worker #define I_PUNLINK (__SID |23) 32*cda5da8dSAndroid Build Coastguard Worker #define I_FLUSHBAND (__SID |28) 33*cda5da8dSAndroid Build Coastguard Worker #define I_CKBAND (__SID |29) 34*cda5da8dSAndroid Build Coastguard Worker #define I_GETBAND (__SID |30) 35*cda5da8dSAndroid Build Coastguard Worker #define I_ATMARK (__SID |31) 36*cda5da8dSAndroid Build Coastguard Worker #define I_SETCLTIME (__SID |32) 37*cda5da8dSAndroid Build Coastguard Worker #define I_GETCLTIME (__SID |33) 38*cda5da8dSAndroid Build Coastguard Worker #define I_CANPUT (__SID |34) 39*cda5da8dSAndroid Build Coastguard Worker 40*cda5da8dSAndroid Build Coastguard Worker #define FMNAMESZ 8 41*cda5da8dSAndroid Build Coastguard Worker 42*cda5da8dSAndroid Build Coastguard Worker #define FLUSHR 0x01 43*cda5da8dSAndroid Build Coastguard Worker #define FLUSHW 0x02 44*cda5da8dSAndroid Build Coastguard Worker #define FLUSHRW 0x03 45*cda5da8dSAndroid Build Coastguard Worker #define FLUSHBAND 0x04 46*cda5da8dSAndroid Build Coastguard Worker 47*cda5da8dSAndroid Build Coastguard Worker #define S_INPUT 0x0001 48*cda5da8dSAndroid Build Coastguard Worker #define S_HIPRI 0x0002 49*cda5da8dSAndroid Build Coastguard Worker #define S_OUTPUT 0x0004 50*cda5da8dSAndroid Build Coastguard Worker #define S_MSG 0x0008 51*cda5da8dSAndroid Build Coastguard Worker #define S_ERROR 0x0010 52*cda5da8dSAndroid Build Coastguard Worker #define S_HANGUP 0x0020 53*cda5da8dSAndroid Build Coastguard Worker #define S_RDNORM 0x0040 54*cda5da8dSAndroid Build Coastguard Worker #define S_WRNORM S_OUTPUT 55*cda5da8dSAndroid Build Coastguard Worker #define S_RDBAND 0x0080 56*cda5da8dSAndroid Build Coastguard Worker #define S_WRBAND 0x0100 57*cda5da8dSAndroid Build Coastguard Worker #define S_BANDURG 0x0200 58*cda5da8dSAndroid Build Coastguard Worker 59*cda5da8dSAndroid Build Coastguard Worker #define RS_HIPRI 0x01 60*cda5da8dSAndroid Build Coastguard Worker 61*cda5da8dSAndroid Build Coastguard Worker #define RNORM 0x0000 62*cda5da8dSAndroid Build Coastguard Worker #define RMSGD 0x0001 63*cda5da8dSAndroid Build Coastguard Worker #define RMSGN 0x0002 64*cda5da8dSAndroid Build Coastguard Worker #define RPROTDAT 0x0004 65*cda5da8dSAndroid Build Coastguard Worker #define RPROTDIS 0x0008 66*cda5da8dSAndroid Build Coastguard Worker #define RPROTNORM 0x0010 67*cda5da8dSAndroid Build Coastguard Worker #define RPROTMASK 0x001C 68*cda5da8dSAndroid Build Coastguard Worker 69*cda5da8dSAndroid Build Coastguard Worker #define SNDZERO 0x001 70*cda5da8dSAndroid Build Coastguard Worker #define SNDPIPE 0x002 71*cda5da8dSAndroid Build Coastguard Worker 72*cda5da8dSAndroid Build Coastguard Worker #define ANYMARK 0x01 73*cda5da8dSAndroid Build Coastguard Worker #define LASTMARK 0x02 74*cda5da8dSAndroid Build Coastguard Worker 75*cda5da8dSAndroid Build Coastguard Worker #define MUXID_ALL (-1) 76*cda5da8dSAndroid Build Coastguard Worker 77*cda5da8dSAndroid Build Coastguard Worker #define MSG_HIPRI 0x01 78*cda5da8dSAndroid Build Coastguard Worker #define MSG_ANY 0x02 79*cda5da8dSAndroid Build Coastguard Worker #define MSG_BAND 0x04 80*cda5da8dSAndroid Build Coastguard Worker 81*cda5da8dSAndroid Build Coastguard Worker #define MORECTL 1 82*cda5da8dSAndroid Build Coastguard Worker #define MOREDATA 2 83*cda5da8dSAndroid Build Coastguard Worker 84*cda5da8dSAndroid Build Coastguard Worker struct bandinfo { 85*cda5da8dSAndroid Build Coastguard Worker unsigned char bi_pri; 86*cda5da8dSAndroid Build Coastguard Worker int bi_flag; 87*cda5da8dSAndroid Build Coastguard Worker }; 88*cda5da8dSAndroid Build Coastguard Worker 89*cda5da8dSAndroid Build Coastguard Worker struct strbuf { 90*cda5da8dSAndroid Build Coastguard Worker int maxlen; 91*cda5da8dSAndroid Build Coastguard Worker int len; 92*cda5da8dSAndroid Build Coastguard Worker char *buf; 93*cda5da8dSAndroid Build Coastguard Worker }; 94*cda5da8dSAndroid Build Coastguard Worker 95*cda5da8dSAndroid Build Coastguard Worker struct strpeek { 96*cda5da8dSAndroid Build Coastguard Worker struct strbuf ctlbuf; 97*cda5da8dSAndroid Build Coastguard Worker struct strbuf databuf; 98*cda5da8dSAndroid Build Coastguard Worker unsigned flags; 99*cda5da8dSAndroid Build Coastguard Worker }; 100*cda5da8dSAndroid Build Coastguard Worker 101*cda5da8dSAndroid Build Coastguard Worker struct strfdinsert { 102*cda5da8dSAndroid Build Coastguard Worker struct strbuf ctlbuf; 103*cda5da8dSAndroid Build Coastguard Worker struct strbuf databuf; 104*cda5da8dSAndroid Build Coastguard Worker unsigned flags; 105*cda5da8dSAndroid Build Coastguard Worker int fildes; 106*cda5da8dSAndroid Build Coastguard Worker int offset; 107*cda5da8dSAndroid Build Coastguard Worker }; 108*cda5da8dSAndroid Build Coastguard Worker 109*cda5da8dSAndroid Build Coastguard Worker struct strioctl { 110*cda5da8dSAndroid Build Coastguard Worker int ic_cmd; 111*cda5da8dSAndroid Build Coastguard Worker int ic_timout; 112*cda5da8dSAndroid Build Coastguard Worker int ic_len; 113*cda5da8dSAndroid Build Coastguard Worker char *ic_dp; 114*cda5da8dSAndroid Build Coastguard Worker }; 115*cda5da8dSAndroid Build Coastguard Worker 116*cda5da8dSAndroid Build Coastguard Worker struct strrecvfd { 117*cda5da8dSAndroid Build Coastguard Worker int fd; 118*cda5da8dSAndroid Build Coastguard Worker int uid; 119*cda5da8dSAndroid Build Coastguard Worker int gid; 120*cda5da8dSAndroid Build Coastguard Worker char __fill[8]; 121*cda5da8dSAndroid Build Coastguard Worker }; 122*cda5da8dSAndroid Build Coastguard Worker 123*cda5da8dSAndroid Build Coastguard Worker struct str_mlist { 124*cda5da8dSAndroid Build Coastguard Worker char l_name[FMNAMESZ + 1]; 125*cda5da8dSAndroid Build Coastguard Worker }; 126*cda5da8dSAndroid Build Coastguard Worker 127*cda5da8dSAndroid Build Coastguard Worker struct str_list { 128*cda5da8dSAndroid Build Coastguard Worker int sl_nmods; 129*cda5da8dSAndroid Build Coastguard Worker struct str_mlist *sl_modlist; 130*cda5da8dSAndroid Build Coastguard Worker }; 131*cda5da8dSAndroid Build Coastguard Worker 132*cda5da8dSAndroid Build Coastguard Worker int isastream(int); 133*cda5da8dSAndroid Build Coastguard Worker int ioctl(int, int, ...); 134*cda5da8dSAndroid Build Coastguard Worker 135*cda5da8dSAndroid Build Coastguard Worker #ifdef __cplusplus 136*cda5da8dSAndroid Build Coastguard Worker } 137*cda5da8dSAndroid Build Coastguard Worker #endif 138*cda5da8dSAndroid Build Coastguard Worker 139*cda5da8dSAndroid Build Coastguard Worker #endif 140