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