xref: /netbsd-src/external/mit/xorg/lib/libxcb/files/xselinux.c (revision b1c86f5f087524e68db12794ee9c3e3da1ab17a0)
1 /*
2  * This file generated automatically from xselinux.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
6 #include <string.h>
7 #include <assert.h>
8 #include "xcbext.h"
9 #include "xselinux.h"
10 #include "xproto.h"
11 
12 xcb_extension_t xcb_selinux_id = { "SELinux", 0 };
13 
14 
15 /*****************************************************************************
16  **
17  ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version
18  **
19  ** @param xcb_connection_t *c
20  ** @param uint8_t           client_major
21  ** @param uint8_t           client_minor
22  ** @returns xcb_selinux_query_version_cookie_t
23  **
24  *****************************************************************************/
25 
26 xcb_selinux_query_version_cookie_t
27 xcb_selinux_query_version (xcb_connection_t *c  /**< */,
28                            uint8_t           client_major  /**< */,
29                            uint8_t           client_minor  /**< */)
30 {
31     static const xcb_protocol_request_t xcb_req = {
32         /* count */ 2,
33         /* ext */ &xcb_selinux_id,
34         /* opcode */ XCB_SELINUX_QUERY_VERSION,
35         /* isvoid */ 0
36     };
37 
38     struct iovec xcb_parts[4];
39     xcb_selinux_query_version_cookie_t xcb_ret;
40     xcb_selinux_query_version_request_t xcb_out;
41 
42     xcb_out.client_major = client_major;
43     xcb_out.client_minor = client_minor;
44 
45     xcb_parts[2].iov_base = (char *) &xcb_out;
46     xcb_parts[2].iov_len = sizeof(xcb_out);
47     xcb_parts[3].iov_base = 0;
48     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
49     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
50     return xcb_ret;
51 }
52 
53 
54 /*****************************************************************************
55  **
56  ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version_unchecked
57  **
58  ** @param xcb_connection_t *c
59  ** @param uint8_t           client_major
60  ** @param uint8_t           client_minor
61  ** @returns xcb_selinux_query_version_cookie_t
62  **
63  *****************************************************************************/
64 
65 xcb_selinux_query_version_cookie_t
66 xcb_selinux_query_version_unchecked (xcb_connection_t *c  /**< */,
67                                      uint8_t           client_major  /**< */,
68                                      uint8_t           client_minor  /**< */)
69 {
70     static const xcb_protocol_request_t xcb_req = {
71         /* count */ 2,
72         /* ext */ &xcb_selinux_id,
73         /* opcode */ XCB_SELINUX_QUERY_VERSION,
74         /* isvoid */ 0
75     };
76 
77     struct iovec xcb_parts[4];
78     xcb_selinux_query_version_cookie_t xcb_ret;
79     xcb_selinux_query_version_request_t xcb_out;
80 
81     xcb_out.client_major = client_major;
82     xcb_out.client_minor = client_minor;
83 
84     xcb_parts[2].iov_base = (char *) &xcb_out;
85     xcb_parts[2].iov_len = sizeof(xcb_out);
86     xcb_parts[3].iov_base = 0;
87     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
88     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
89     return xcb_ret;
90 }
91 
92 
93 /*****************************************************************************
94  **
95  ** xcb_selinux_query_version_reply_t * xcb_selinux_query_version_reply
96  **
97  ** @param xcb_connection_t                    *c
98  ** @param xcb_selinux_query_version_cookie_t   cookie
99  ** @param xcb_generic_error_t                **e
100  ** @returns xcb_selinux_query_version_reply_t *
101  **
102  *****************************************************************************/
103 
104 xcb_selinux_query_version_reply_t *
105 xcb_selinux_query_version_reply (xcb_connection_t                    *c  /**< */,
106                                  xcb_selinux_query_version_cookie_t   cookie  /**< */,
107                                  xcb_generic_error_t                **e  /**< */)
108 {
109     return (xcb_selinux_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
110 }
111 
112 
113 /*****************************************************************************
114  **
115  ** xcb_void_cookie_t xcb_selinux_set_device_create_context_checked
116  **
117  ** @param xcb_connection_t *c
118  ** @param uint32_t          context_len
119  ** @param const char       *context
120  ** @returns xcb_void_cookie_t
121  **
122  *****************************************************************************/
123 
124 xcb_void_cookie_t
125 xcb_selinux_set_device_create_context_checked (xcb_connection_t *c  /**< */,
126                                                uint32_t          context_len  /**< */,
127                                                const char       *context  /**< */)
128 {
129     static const xcb_protocol_request_t xcb_req = {
130         /* count */ 4,
131         /* ext */ &xcb_selinux_id,
132         /* opcode */ XCB_SELINUX_SET_DEVICE_CREATE_CONTEXT,
133         /* isvoid */ 1
134     };
135 
136     struct iovec xcb_parts[6];
137     xcb_void_cookie_t xcb_ret;
138     xcb_selinux_set_device_create_context_request_t xcb_out;
139 
140     xcb_out.context_len = context_len;
141 
142     xcb_parts[2].iov_base = (char *) &xcb_out;
143     xcb_parts[2].iov_len = sizeof(xcb_out);
144     xcb_parts[3].iov_base = 0;
145     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
146     xcb_parts[4].iov_base = (char *) context;
147     xcb_parts[4].iov_len = context_len * sizeof(char);
148     xcb_parts[5].iov_base = 0;
149     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
150     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
151     return xcb_ret;
152 }
153 
154 
155 /*****************************************************************************
156  **
157  ** xcb_void_cookie_t xcb_selinux_set_device_create_context
158  **
159  ** @param xcb_connection_t *c
160  ** @param uint32_t          context_len
161  ** @param const char       *context
162  ** @returns xcb_void_cookie_t
163  **
164  *****************************************************************************/
165 
166 xcb_void_cookie_t
167 xcb_selinux_set_device_create_context (xcb_connection_t *c  /**< */,
168                                        uint32_t          context_len  /**< */,
169                                        const char       *context  /**< */)
170 {
171     static const xcb_protocol_request_t xcb_req = {
172         /* count */ 4,
173         /* ext */ &xcb_selinux_id,
174         /* opcode */ XCB_SELINUX_SET_DEVICE_CREATE_CONTEXT,
175         /* isvoid */ 1
176     };
177 
178     struct iovec xcb_parts[6];
179     xcb_void_cookie_t xcb_ret;
180     xcb_selinux_set_device_create_context_request_t xcb_out;
181 
182     xcb_out.context_len = context_len;
183 
184     xcb_parts[2].iov_base = (char *) &xcb_out;
185     xcb_parts[2].iov_len = sizeof(xcb_out);
186     xcb_parts[3].iov_base = 0;
187     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
188     xcb_parts[4].iov_base = (char *) context;
189     xcb_parts[4].iov_len = context_len * sizeof(char);
190     xcb_parts[5].iov_base = 0;
191     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
192     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
193     return xcb_ret;
194 }
195 
196 
197 /*****************************************************************************
198  **
199  ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context
200  **
201  ** @param xcb_connection_t *c
202  ** @returns xcb_selinux_get_device_create_context_cookie_t
203  **
204  *****************************************************************************/
205 
206 xcb_selinux_get_device_create_context_cookie_t
207 xcb_selinux_get_device_create_context (xcb_connection_t *c  /**< */)
208 {
209     static const xcb_protocol_request_t xcb_req = {
210         /* count */ 2,
211         /* ext */ &xcb_selinux_id,
212         /* opcode */ XCB_SELINUX_GET_DEVICE_CREATE_CONTEXT,
213         /* isvoid */ 0
214     };
215 
216     struct iovec xcb_parts[4];
217     xcb_selinux_get_device_create_context_cookie_t xcb_ret;
218     xcb_selinux_get_device_create_context_request_t xcb_out;
219 
220 
221     xcb_parts[2].iov_base = (char *) &xcb_out;
222     xcb_parts[2].iov_len = sizeof(xcb_out);
223     xcb_parts[3].iov_base = 0;
224     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
225     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
226     return xcb_ret;
227 }
228 
229 
230 /*****************************************************************************
231  **
232  ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context_unchecked
233  **
234  ** @param xcb_connection_t *c
235  ** @returns xcb_selinux_get_device_create_context_cookie_t
236  **
237  *****************************************************************************/
238 
239 xcb_selinux_get_device_create_context_cookie_t
240 xcb_selinux_get_device_create_context_unchecked (xcb_connection_t *c  /**< */)
241 {
242     static const xcb_protocol_request_t xcb_req = {
243         /* count */ 2,
244         /* ext */ &xcb_selinux_id,
245         /* opcode */ XCB_SELINUX_GET_DEVICE_CREATE_CONTEXT,
246         /* isvoid */ 0
247     };
248 
249     struct iovec xcb_parts[4];
250     xcb_selinux_get_device_create_context_cookie_t xcb_ret;
251     xcb_selinux_get_device_create_context_request_t xcb_out;
252 
253 
254     xcb_parts[2].iov_base = (char *) &xcb_out;
255     xcb_parts[2].iov_len = sizeof(xcb_out);
256     xcb_parts[3].iov_base = 0;
257     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
258     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
259     return xcb_ret;
260 }
261 
262 
263 /*****************************************************************************
264  **
265  ** char * xcb_selinux_get_device_create_context_context
266  **
267  ** @param const xcb_selinux_get_device_create_context_reply_t *R
268  ** @returns char *
269  **
270  *****************************************************************************/
271 
272 char *
273 xcb_selinux_get_device_create_context_context (const xcb_selinux_get_device_create_context_reply_t *R  /**< */)
274 {
275     return (char *) (R + 1);
276 }
277 
278 
279 /*****************************************************************************
280  **
281  ** int xcb_selinux_get_device_create_context_context_length
282  **
283  ** @param const xcb_selinux_get_device_create_context_reply_t *R
284  ** @returns int
285  **
286  *****************************************************************************/
287 
288 int
289 xcb_selinux_get_device_create_context_context_length (const xcb_selinux_get_device_create_context_reply_t *R  /**< */)
290 {
291     return R->context_len;
292 }
293 
294 
295 /*****************************************************************************
296  **
297  ** xcb_generic_iterator_t xcb_selinux_get_device_create_context_context_end
298  **
299  ** @param const xcb_selinux_get_device_create_context_reply_t *R
300  ** @returns xcb_generic_iterator_t
301  **
302  *****************************************************************************/
303 
304 xcb_generic_iterator_t
305 xcb_selinux_get_device_create_context_context_end (const xcb_selinux_get_device_create_context_reply_t *R  /**< */)
306 {
307     xcb_generic_iterator_t i;
308     i.data = ((char *) (R + 1)) + (R->context_len);
309     i.rem = 0;
310     i.index = (char *) i.data - (char *) R;
311     return i;
312 }
313 
314 
315 /*****************************************************************************
316  **
317  ** xcb_selinux_get_device_create_context_reply_t * xcb_selinux_get_device_create_context_reply
318  **
319  ** @param xcb_connection_t                                *c
320  ** @param xcb_selinux_get_device_create_context_cookie_t   cookie
321  ** @param xcb_generic_error_t                            **e
322  ** @returns xcb_selinux_get_device_create_context_reply_t *
323  **
324  *****************************************************************************/
325 
326 xcb_selinux_get_device_create_context_reply_t *
327 xcb_selinux_get_device_create_context_reply (xcb_connection_t                                *c  /**< */,
328                                              xcb_selinux_get_device_create_context_cookie_t   cookie  /**< */,
329                                              xcb_generic_error_t                            **e  /**< */)
330 {
331     return (xcb_selinux_get_device_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
332 }
333 
334 
335 /*****************************************************************************
336  **
337  ** xcb_void_cookie_t xcb_selinux_set_device_context_checked
338  **
339  ** @param xcb_connection_t *c
340  ** @param uint32_t          device
341  ** @param uint32_t          context_len
342  ** @param const char       *context
343  ** @returns xcb_void_cookie_t
344  **
345  *****************************************************************************/
346 
347 xcb_void_cookie_t
348 xcb_selinux_set_device_context_checked (xcb_connection_t *c  /**< */,
349                                         uint32_t          device  /**< */,
350                                         uint32_t          context_len  /**< */,
351                                         const char       *context  /**< */)
352 {
353     static const xcb_protocol_request_t xcb_req = {
354         /* count */ 4,
355         /* ext */ &xcb_selinux_id,
356         /* opcode */ XCB_SELINUX_SET_DEVICE_CONTEXT,
357         /* isvoid */ 1
358     };
359 
360     struct iovec xcb_parts[6];
361     xcb_void_cookie_t xcb_ret;
362     xcb_selinux_set_device_context_request_t xcb_out;
363 
364     xcb_out.device = device;
365     xcb_out.context_len = context_len;
366 
367     xcb_parts[2].iov_base = (char *) &xcb_out;
368     xcb_parts[2].iov_len = sizeof(xcb_out);
369     xcb_parts[3].iov_base = 0;
370     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
371     xcb_parts[4].iov_base = (char *) context;
372     xcb_parts[4].iov_len = context_len * sizeof(char);
373     xcb_parts[5].iov_base = 0;
374     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
375     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
376     return xcb_ret;
377 }
378 
379 
380 /*****************************************************************************
381  **
382  ** xcb_void_cookie_t xcb_selinux_set_device_context
383  **
384  ** @param xcb_connection_t *c
385  ** @param uint32_t          device
386  ** @param uint32_t          context_len
387  ** @param const char       *context
388  ** @returns xcb_void_cookie_t
389  **
390  *****************************************************************************/
391 
392 xcb_void_cookie_t
393 xcb_selinux_set_device_context (xcb_connection_t *c  /**< */,
394                                 uint32_t          device  /**< */,
395                                 uint32_t          context_len  /**< */,
396                                 const char       *context  /**< */)
397 {
398     static const xcb_protocol_request_t xcb_req = {
399         /* count */ 4,
400         /* ext */ &xcb_selinux_id,
401         /* opcode */ XCB_SELINUX_SET_DEVICE_CONTEXT,
402         /* isvoid */ 1
403     };
404 
405     struct iovec xcb_parts[6];
406     xcb_void_cookie_t xcb_ret;
407     xcb_selinux_set_device_context_request_t xcb_out;
408 
409     xcb_out.device = device;
410     xcb_out.context_len = context_len;
411 
412     xcb_parts[2].iov_base = (char *) &xcb_out;
413     xcb_parts[2].iov_len = sizeof(xcb_out);
414     xcb_parts[3].iov_base = 0;
415     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
416     xcb_parts[4].iov_base = (char *) context;
417     xcb_parts[4].iov_len = context_len * sizeof(char);
418     xcb_parts[5].iov_base = 0;
419     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
420     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
421     return xcb_ret;
422 }
423 
424 
425 /*****************************************************************************
426  **
427  ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context
428  **
429  ** @param xcb_connection_t *c
430  ** @param uint32_t          device
431  ** @returns xcb_selinux_get_device_context_cookie_t
432  **
433  *****************************************************************************/
434 
435 xcb_selinux_get_device_context_cookie_t
436 xcb_selinux_get_device_context (xcb_connection_t *c  /**< */,
437                                 uint32_t          device  /**< */)
438 {
439     static const xcb_protocol_request_t xcb_req = {
440         /* count */ 2,
441         /* ext */ &xcb_selinux_id,
442         /* opcode */ XCB_SELINUX_GET_DEVICE_CONTEXT,
443         /* isvoid */ 0
444     };
445 
446     struct iovec xcb_parts[4];
447     xcb_selinux_get_device_context_cookie_t xcb_ret;
448     xcb_selinux_get_device_context_request_t xcb_out;
449 
450     xcb_out.device = device;
451 
452     xcb_parts[2].iov_base = (char *) &xcb_out;
453     xcb_parts[2].iov_len = sizeof(xcb_out);
454     xcb_parts[3].iov_base = 0;
455     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
456     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
457     return xcb_ret;
458 }
459 
460 
461 /*****************************************************************************
462  **
463  ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context_unchecked
464  **
465  ** @param xcb_connection_t *c
466  ** @param uint32_t          device
467  ** @returns xcb_selinux_get_device_context_cookie_t
468  **
469  *****************************************************************************/
470 
471 xcb_selinux_get_device_context_cookie_t
472 xcb_selinux_get_device_context_unchecked (xcb_connection_t *c  /**< */,
473                                           uint32_t          device  /**< */)
474 {
475     static const xcb_protocol_request_t xcb_req = {
476         /* count */ 2,
477         /* ext */ &xcb_selinux_id,
478         /* opcode */ XCB_SELINUX_GET_DEVICE_CONTEXT,
479         /* isvoid */ 0
480     };
481 
482     struct iovec xcb_parts[4];
483     xcb_selinux_get_device_context_cookie_t xcb_ret;
484     xcb_selinux_get_device_context_request_t xcb_out;
485 
486     xcb_out.device = device;
487 
488     xcb_parts[2].iov_base = (char *) &xcb_out;
489     xcb_parts[2].iov_len = sizeof(xcb_out);
490     xcb_parts[3].iov_base = 0;
491     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
492     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
493     return xcb_ret;
494 }
495 
496 
497 /*****************************************************************************
498  **
499  ** char * xcb_selinux_get_device_context_context
500  **
501  ** @param const xcb_selinux_get_device_context_reply_t *R
502  ** @returns char *
503  **
504  *****************************************************************************/
505 
506 char *
507 xcb_selinux_get_device_context_context (const xcb_selinux_get_device_context_reply_t *R  /**< */)
508 {
509     return (char *) (R + 1);
510 }
511 
512 
513 /*****************************************************************************
514  **
515  ** int xcb_selinux_get_device_context_context_length
516  **
517  ** @param const xcb_selinux_get_device_context_reply_t *R
518  ** @returns int
519  **
520  *****************************************************************************/
521 
522 int
523 xcb_selinux_get_device_context_context_length (const xcb_selinux_get_device_context_reply_t *R  /**< */)
524 {
525     return R->context_len;
526 }
527 
528 
529 /*****************************************************************************
530  **
531  ** xcb_generic_iterator_t xcb_selinux_get_device_context_context_end
532  **
533  ** @param const xcb_selinux_get_device_context_reply_t *R
534  ** @returns xcb_generic_iterator_t
535  **
536  *****************************************************************************/
537 
538 xcb_generic_iterator_t
539 xcb_selinux_get_device_context_context_end (const xcb_selinux_get_device_context_reply_t *R  /**< */)
540 {
541     xcb_generic_iterator_t i;
542     i.data = ((char *) (R + 1)) + (R->context_len);
543     i.rem = 0;
544     i.index = (char *) i.data - (char *) R;
545     return i;
546 }
547 
548 
549 /*****************************************************************************
550  **
551  ** xcb_selinux_get_device_context_reply_t * xcb_selinux_get_device_context_reply
552  **
553  ** @param xcb_connection_t                         *c
554  ** @param xcb_selinux_get_device_context_cookie_t   cookie
555  ** @param xcb_generic_error_t                     **e
556  ** @returns xcb_selinux_get_device_context_reply_t *
557  **
558  *****************************************************************************/
559 
560 xcb_selinux_get_device_context_reply_t *
561 xcb_selinux_get_device_context_reply (xcb_connection_t                         *c  /**< */,
562                                       xcb_selinux_get_device_context_cookie_t   cookie  /**< */,
563                                       xcb_generic_error_t                     **e  /**< */)
564 {
565     return (xcb_selinux_get_device_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
566 }
567 
568 
569 /*****************************************************************************
570  **
571  ** xcb_void_cookie_t xcb_selinux_set_window_create_context_checked
572  **
573  ** @param xcb_connection_t *c
574  ** @param uint32_t          context_len
575  ** @param const char       *context
576  ** @returns xcb_void_cookie_t
577  **
578  *****************************************************************************/
579 
580 xcb_void_cookie_t
581 xcb_selinux_set_window_create_context_checked (xcb_connection_t *c  /**< */,
582                                                uint32_t          context_len  /**< */,
583                                                const char       *context  /**< */)
584 {
585     static const xcb_protocol_request_t xcb_req = {
586         /* count */ 4,
587         /* ext */ &xcb_selinux_id,
588         /* opcode */ XCB_SELINUX_SET_WINDOW_CREATE_CONTEXT,
589         /* isvoid */ 1
590     };
591 
592     struct iovec xcb_parts[6];
593     xcb_void_cookie_t xcb_ret;
594     xcb_selinux_set_window_create_context_request_t xcb_out;
595 
596     xcb_out.context_len = context_len;
597 
598     xcb_parts[2].iov_base = (char *) &xcb_out;
599     xcb_parts[2].iov_len = sizeof(xcb_out);
600     xcb_parts[3].iov_base = 0;
601     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
602     xcb_parts[4].iov_base = (char *) context;
603     xcb_parts[4].iov_len = context_len * sizeof(char);
604     xcb_parts[5].iov_base = 0;
605     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
606     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
607     return xcb_ret;
608 }
609 
610 
611 /*****************************************************************************
612  **
613  ** xcb_void_cookie_t xcb_selinux_set_window_create_context
614  **
615  ** @param xcb_connection_t *c
616  ** @param uint32_t          context_len
617  ** @param const char       *context
618  ** @returns xcb_void_cookie_t
619  **
620  *****************************************************************************/
621 
622 xcb_void_cookie_t
623 xcb_selinux_set_window_create_context (xcb_connection_t *c  /**< */,
624                                        uint32_t          context_len  /**< */,
625                                        const char       *context  /**< */)
626 {
627     static const xcb_protocol_request_t xcb_req = {
628         /* count */ 4,
629         /* ext */ &xcb_selinux_id,
630         /* opcode */ XCB_SELINUX_SET_WINDOW_CREATE_CONTEXT,
631         /* isvoid */ 1
632     };
633 
634     struct iovec xcb_parts[6];
635     xcb_void_cookie_t xcb_ret;
636     xcb_selinux_set_window_create_context_request_t xcb_out;
637 
638     xcb_out.context_len = context_len;
639 
640     xcb_parts[2].iov_base = (char *) &xcb_out;
641     xcb_parts[2].iov_len = sizeof(xcb_out);
642     xcb_parts[3].iov_base = 0;
643     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
644     xcb_parts[4].iov_base = (char *) context;
645     xcb_parts[4].iov_len = context_len * sizeof(char);
646     xcb_parts[5].iov_base = 0;
647     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
648     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
649     return xcb_ret;
650 }
651 
652 
653 /*****************************************************************************
654  **
655  ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context
656  **
657  ** @param xcb_connection_t *c
658  ** @returns xcb_selinux_get_window_create_context_cookie_t
659  **
660  *****************************************************************************/
661 
662 xcb_selinux_get_window_create_context_cookie_t
663 xcb_selinux_get_window_create_context (xcb_connection_t *c  /**< */)
664 {
665     static const xcb_protocol_request_t xcb_req = {
666         /* count */ 2,
667         /* ext */ &xcb_selinux_id,
668         /* opcode */ XCB_SELINUX_GET_WINDOW_CREATE_CONTEXT,
669         /* isvoid */ 0
670     };
671 
672     struct iovec xcb_parts[4];
673     xcb_selinux_get_window_create_context_cookie_t xcb_ret;
674     xcb_selinux_get_window_create_context_request_t xcb_out;
675 
676 
677     xcb_parts[2].iov_base = (char *) &xcb_out;
678     xcb_parts[2].iov_len = sizeof(xcb_out);
679     xcb_parts[3].iov_base = 0;
680     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
681     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
682     return xcb_ret;
683 }
684 
685 
686 /*****************************************************************************
687  **
688  ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context_unchecked
689  **
690  ** @param xcb_connection_t *c
691  ** @returns xcb_selinux_get_window_create_context_cookie_t
692  **
693  *****************************************************************************/
694 
695 xcb_selinux_get_window_create_context_cookie_t
696 xcb_selinux_get_window_create_context_unchecked (xcb_connection_t *c  /**< */)
697 {
698     static const xcb_protocol_request_t xcb_req = {
699         /* count */ 2,
700         /* ext */ &xcb_selinux_id,
701         /* opcode */ XCB_SELINUX_GET_WINDOW_CREATE_CONTEXT,
702         /* isvoid */ 0
703     };
704 
705     struct iovec xcb_parts[4];
706     xcb_selinux_get_window_create_context_cookie_t xcb_ret;
707     xcb_selinux_get_window_create_context_request_t xcb_out;
708 
709 
710     xcb_parts[2].iov_base = (char *) &xcb_out;
711     xcb_parts[2].iov_len = sizeof(xcb_out);
712     xcb_parts[3].iov_base = 0;
713     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
714     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
715     return xcb_ret;
716 }
717 
718 
719 /*****************************************************************************
720  **
721  ** char * xcb_selinux_get_window_create_context_context
722  **
723  ** @param const xcb_selinux_get_window_create_context_reply_t *R
724  ** @returns char *
725  **
726  *****************************************************************************/
727 
728 char *
729 xcb_selinux_get_window_create_context_context (const xcb_selinux_get_window_create_context_reply_t *R  /**< */)
730 {
731     return (char *) (R + 1);
732 }
733 
734 
735 /*****************************************************************************
736  **
737  ** int xcb_selinux_get_window_create_context_context_length
738  **
739  ** @param const xcb_selinux_get_window_create_context_reply_t *R
740  ** @returns int
741  **
742  *****************************************************************************/
743 
744 int
745 xcb_selinux_get_window_create_context_context_length (const xcb_selinux_get_window_create_context_reply_t *R  /**< */)
746 {
747     return R->context_len;
748 }
749 
750 
751 /*****************************************************************************
752  **
753  ** xcb_generic_iterator_t xcb_selinux_get_window_create_context_context_end
754  **
755  ** @param const xcb_selinux_get_window_create_context_reply_t *R
756  ** @returns xcb_generic_iterator_t
757  **
758  *****************************************************************************/
759 
760 xcb_generic_iterator_t
761 xcb_selinux_get_window_create_context_context_end (const xcb_selinux_get_window_create_context_reply_t *R  /**< */)
762 {
763     xcb_generic_iterator_t i;
764     i.data = ((char *) (R + 1)) + (R->context_len);
765     i.rem = 0;
766     i.index = (char *) i.data - (char *) R;
767     return i;
768 }
769 
770 
771 /*****************************************************************************
772  **
773  ** xcb_selinux_get_window_create_context_reply_t * xcb_selinux_get_window_create_context_reply
774  **
775  ** @param xcb_connection_t                                *c
776  ** @param xcb_selinux_get_window_create_context_cookie_t   cookie
777  ** @param xcb_generic_error_t                            **e
778  ** @returns xcb_selinux_get_window_create_context_reply_t *
779  **
780  *****************************************************************************/
781 
782 xcb_selinux_get_window_create_context_reply_t *
783 xcb_selinux_get_window_create_context_reply (xcb_connection_t                                *c  /**< */,
784                                              xcb_selinux_get_window_create_context_cookie_t   cookie  /**< */,
785                                              xcb_generic_error_t                            **e  /**< */)
786 {
787     return (xcb_selinux_get_window_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
788 }
789 
790 
791 /*****************************************************************************
792  **
793  ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context
794  **
795  ** @param xcb_connection_t *c
796  ** @param xcb_window_t      window
797  ** @returns xcb_selinux_get_window_context_cookie_t
798  **
799  *****************************************************************************/
800 
801 xcb_selinux_get_window_context_cookie_t
802 xcb_selinux_get_window_context (xcb_connection_t *c  /**< */,
803                                 xcb_window_t      window  /**< */)
804 {
805     static const xcb_protocol_request_t xcb_req = {
806         /* count */ 2,
807         /* ext */ &xcb_selinux_id,
808         /* opcode */ XCB_SELINUX_GET_WINDOW_CONTEXT,
809         /* isvoid */ 0
810     };
811 
812     struct iovec xcb_parts[4];
813     xcb_selinux_get_window_context_cookie_t xcb_ret;
814     xcb_selinux_get_window_context_request_t xcb_out;
815 
816     xcb_out.window = window;
817 
818     xcb_parts[2].iov_base = (char *) &xcb_out;
819     xcb_parts[2].iov_len = sizeof(xcb_out);
820     xcb_parts[3].iov_base = 0;
821     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
822     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
823     return xcb_ret;
824 }
825 
826 
827 /*****************************************************************************
828  **
829  ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context_unchecked
830  **
831  ** @param xcb_connection_t *c
832  ** @param xcb_window_t      window
833  ** @returns xcb_selinux_get_window_context_cookie_t
834  **
835  *****************************************************************************/
836 
837 xcb_selinux_get_window_context_cookie_t
838 xcb_selinux_get_window_context_unchecked (xcb_connection_t *c  /**< */,
839                                           xcb_window_t      window  /**< */)
840 {
841     static const xcb_protocol_request_t xcb_req = {
842         /* count */ 2,
843         /* ext */ &xcb_selinux_id,
844         /* opcode */ XCB_SELINUX_GET_WINDOW_CONTEXT,
845         /* isvoid */ 0
846     };
847 
848     struct iovec xcb_parts[4];
849     xcb_selinux_get_window_context_cookie_t xcb_ret;
850     xcb_selinux_get_window_context_request_t xcb_out;
851 
852     xcb_out.window = window;
853 
854     xcb_parts[2].iov_base = (char *) &xcb_out;
855     xcb_parts[2].iov_len = sizeof(xcb_out);
856     xcb_parts[3].iov_base = 0;
857     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
858     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
859     return xcb_ret;
860 }
861 
862 
863 /*****************************************************************************
864  **
865  ** char * xcb_selinux_get_window_context_context
866  **
867  ** @param const xcb_selinux_get_window_context_reply_t *R
868  ** @returns char *
869  **
870  *****************************************************************************/
871 
872 char *
873 xcb_selinux_get_window_context_context (const xcb_selinux_get_window_context_reply_t *R  /**< */)
874 {
875     return (char *) (R + 1);
876 }
877 
878 
879 /*****************************************************************************
880  **
881  ** int xcb_selinux_get_window_context_context_length
882  **
883  ** @param const xcb_selinux_get_window_context_reply_t *R
884  ** @returns int
885  **
886  *****************************************************************************/
887 
888 int
889 xcb_selinux_get_window_context_context_length (const xcb_selinux_get_window_context_reply_t *R  /**< */)
890 {
891     return R->context_len;
892 }
893 
894 
895 /*****************************************************************************
896  **
897  ** xcb_generic_iterator_t xcb_selinux_get_window_context_context_end
898  **
899  ** @param const xcb_selinux_get_window_context_reply_t *R
900  ** @returns xcb_generic_iterator_t
901  **
902  *****************************************************************************/
903 
904 xcb_generic_iterator_t
905 xcb_selinux_get_window_context_context_end (const xcb_selinux_get_window_context_reply_t *R  /**< */)
906 {
907     xcb_generic_iterator_t i;
908     i.data = ((char *) (R + 1)) + (R->context_len);
909     i.rem = 0;
910     i.index = (char *) i.data - (char *) R;
911     return i;
912 }
913 
914 
915 /*****************************************************************************
916  **
917  ** xcb_selinux_get_window_context_reply_t * xcb_selinux_get_window_context_reply
918  **
919  ** @param xcb_connection_t                         *c
920  ** @param xcb_selinux_get_window_context_cookie_t   cookie
921  ** @param xcb_generic_error_t                     **e
922  ** @returns xcb_selinux_get_window_context_reply_t *
923  **
924  *****************************************************************************/
925 
926 xcb_selinux_get_window_context_reply_t *
927 xcb_selinux_get_window_context_reply (xcb_connection_t                         *c  /**< */,
928                                       xcb_selinux_get_window_context_cookie_t   cookie  /**< */,
929                                       xcb_generic_error_t                     **e  /**< */)
930 {
931     return (xcb_selinux_get_window_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
932 }
933 
934 
935 /*****************************************************************************
936  **
937  ** char * xcb_selinux_list_item_object_context
938  **
939  ** @param const xcb_selinux_list_item_t *R
940  ** @returns char *
941  **
942  *****************************************************************************/
943 
944 char *
945 xcb_selinux_list_item_object_context (const xcb_selinux_list_item_t *R  /**< */)
946 {
947     return (char *) (R + 1);
948 }
949 
950 
951 /*****************************************************************************
952  **
953  ** int xcb_selinux_list_item_object_context_length
954  **
955  ** @param const xcb_selinux_list_item_t *R
956  ** @returns int
957  **
958  *****************************************************************************/
959 
960 int
961 xcb_selinux_list_item_object_context_length (const xcb_selinux_list_item_t *R  /**< */)
962 {
963     return R->object_context_len;
964 }
965 
966 
967 /*****************************************************************************
968  **
969  ** xcb_generic_iterator_t xcb_selinux_list_item_object_context_end
970  **
971  ** @param const xcb_selinux_list_item_t *R
972  ** @returns xcb_generic_iterator_t
973  **
974  *****************************************************************************/
975 
976 xcb_generic_iterator_t
977 xcb_selinux_list_item_object_context_end (const xcb_selinux_list_item_t *R  /**< */)
978 {
979     xcb_generic_iterator_t i;
980     i.data = ((char *) (R + 1)) + (R->object_context_len);
981     i.rem = 0;
982     i.index = (char *) i.data - (char *) R;
983     return i;
984 }
985 
986 
987 /*****************************************************************************
988  **
989  ** char * xcb_selinux_list_item_data_context
990  **
991  ** @param const xcb_selinux_list_item_t *R
992  ** @returns char *
993  **
994  *****************************************************************************/
995 
996 char *
997 xcb_selinux_list_item_data_context (const xcb_selinux_list_item_t *R  /**< */)
998 {
999     xcb_generic_iterator_t prev = xcb_selinux_list_item_object_context_end(R);
1000     return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0);
1001 }
1002 
1003 
1004 /*****************************************************************************
1005  **
1006  ** int xcb_selinux_list_item_data_context_length
1007  **
1008  ** @param const xcb_selinux_list_item_t *R
1009  ** @returns int
1010  **
1011  *****************************************************************************/
1012 
1013 int
1014 xcb_selinux_list_item_data_context_length (const xcb_selinux_list_item_t *R  /**< */)
1015 {
1016     return R->data_context_len;
1017 }
1018 
1019 
1020 /*****************************************************************************
1021  **
1022  ** xcb_generic_iterator_t xcb_selinux_list_item_data_context_end
1023  **
1024  ** @param const xcb_selinux_list_item_t *R
1025  ** @returns xcb_generic_iterator_t
1026  **
1027  *****************************************************************************/
1028 
1029 xcb_generic_iterator_t
1030 xcb_selinux_list_item_data_context_end (const xcb_selinux_list_item_t *R  /**< */)
1031 {
1032     xcb_generic_iterator_t i;
1033     xcb_generic_iterator_t child = xcb_selinux_list_item_object_context_end(R);
1034     i.data = ((char *) child.data) + (R->data_context_len);
1035     i.rem = 0;
1036     i.index = (char *) i.data - (char *) R;
1037     return i;
1038 }
1039 
1040 
1041 /*****************************************************************************
1042  **
1043  ** void xcb_selinux_list_item_next
1044  **
1045  ** @param xcb_selinux_list_item_iterator_t *i
1046  ** @returns void
1047  **
1048  *****************************************************************************/
1049 
1050 void
1051 xcb_selinux_list_item_next (xcb_selinux_list_item_iterator_t *i  /**< */)
1052 {
1053     xcb_selinux_list_item_t *R = i->data;
1054     xcb_generic_iterator_t child = xcb_selinux_list_item_data_context_end(R);
1055     --i->rem;
1056     i->data = (xcb_selinux_list_item_t *) child.data;
1057     i->index = child.index;
1058 }
1059 
1060 
1061 /*****************************************************************************
1062  **
1063  ** xcb_generic_iterator_t xcb_selinux_list_item_end
1064  **
1065  ** @param xcb_selinux_list_item_iterator_t i
1066  ** @returns xcb_generic_iterator_t
1067  **
1068  *****************************************************************************/
1069 
1070 xcb_generic_iterator_t
1071 xcb_selinux_list_item_end (xcb_selinux_list_item_iterator_t i  /**< */)
1072 {
1073     xcb_generic_iterator_t ret;
1074     while(i.rem > 0)
1075         xcb_selinux_list_item_next(&i);
1076     ret.data = i.data;
1077     ret.rem = i.rem;
1078     ret.index = i.index;
1079     return ret;
1080 }
1081 
1082 
1083 /*****************************************************************************
1084  **
1085  ** xcb_void_cookie_t xcb_selinux_set_property_create_context_checked
1086  **
1087  ** @param xcb_connection_t *c
1088  ** @param uint32_t          context_len
1089  ** @param const char       *context
1090  ** @returns xcb_void_cookie_t
1091  **
1092  *****************************************************************************/
1093 
1094 xcb_void_cookie_t
1095 xcb_selinux_set_property_create_context_checked (xcb_connection_t *c  /**< */,
1096                                                  uint32_t          context_len  /**< */,
1097                                                  const char       *context  /**< */)
1098 {
1099     static const xcb_protocol_request_t xcb_req = {
1100         /* count */ 4,
1101         /* ext */ &xcb_selinux_id,
1102         /* opcode */ XCB_SELINUX_SET_PROPERTY_CREATE_CONTEXT,
1103         /* isvoid */ 1
1104     };
1105 
1106     struct iovec xcb_parts[6];
1107     xcb_void_cookie_t xcb_ret;
1108     xcb_selinux_set_property_create_context_request_t xcb_out;
1109 
1110     xcb_out.context_len = context_len;
1111 
1112     xcb_parts[2].iov_base = (char *) &xcb_out;
1113     xcb_parts[2].iov_len = sizeof(xcb_out);
1114     xcb_parts[3].iov_base = 0;
1115     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1116     xcb_parts[4].iov_base = (char *) context;
1117     xcb_parts[4].iov_len = context_len * sizeof(char);
1118     xcb_parts[5].iov_base = 0;
1119     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
1120     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1121     return xcb_ret;
1122 }
1123 
1124 
1125 /*****************************************************************************
1126  **
1127  ** xcb_void_cookie_t xcb_selinux_set_property_create_context
1128  **
1129  ** @param xcb_connection_t *c
1130  ** @param uint32_t          context_len
1131  ** @param const char       *context
1132  ** @returns xcb_void_cookie_t
1133  **
1134  *****************************************************************************/
1135 
1136 xcb_void_cookie_t
1137 xcb_selinux_set_property_create_context (xcb_connection_t *c  /**< */,
1138                                          uint32_t          context_len  /**< */,
1139                                          const char       *context  /**< */)
1140 {
1141     static const xcb_protocol_request_t xcb_req = {
1142         /* count */ 4,
1143         /* ext */ &xcb_selinux_id,
1144         /* opcode */ XCB_SELINUX_SET_PROPERTY_CREATE_CONTEXT,
1145         /* isvoid */ 1
1146     };
1147 
1148     struct iovec xcb_parts[6];
1149     xcb_void_cookie_t xcb_ret;
1150     xcb_selinux_set_property_create_context_request_t xcb_out;
1151 
1152     xcb_out.context_len = context_len;
1153 
1154     xcb_parts[2].iov_base = (char *) &xcb_out;
1155     xcb_parts[2].iov_len = sizeof(xcb_out);
1156     xcb_parts[3].iov_base = 0;
1157     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1158     xcb_parts[4].iov_base = (char *) context;
1159     xcb_parts[4].iov_len = context_len * sizeof(char);
1160     xcb_parts[5].iov_base = 0;
1161     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
1162     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1163     return xcb_ret;
1164 }
1165 
1166 
1167 /*****************************************************************************
1168  **
1169  ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context
1170  **
1171  ** @param xcb_connection_t *c
1172  ** @returns xcb_selinux_get_property_create_context_cookie_t
1173  **
1174  *****************************************************************************/
1175 
1176 xcb_selinux_get_property_create_context_cookie_t
1177 xcb_selinux_get_property_create_context (xcb_connection_t *c  /**< */)
1178 {
1179     static const xcb_protocol_request_t xcb_req = {
1180         /* count */ 2,
1181         /* ext */ &xcb_selinux_id,
1182         /* opcode */ XCB_SELINUX_GET_PROPERTY_CREATE_CONTEXT,
1183         /* isvoid */ 0
1184     };
1185 
1186     struct iovec xcb_parts[4];
1187     xcb_selinux_get_property_create_context_cookie_t xcb_ret;
1188     xcb_selinux_get_property_create_context_request_t xcb_out;
1189 
1190 
1191     xcb_parts[2].iov_base = (char *) &xcb_out;
1192     xcb_parts[2].iov_len = sizeof(xcb_out);
1193     xcb_parts[3].iov_base = 0;
1194     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1195     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1196     return xcb_ret;
1197 }
1198 
1199 
1200 /*****************************************************************************
1201  **
1202  ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context_unchecked
1203  **
1204  ** @param xcb_connection_t *c
1205  ** @returns xcb_selinux_get_property_create_context_cookie_t
1206  **
1207  *****************************************************************************/
1208 
1209 xcb_selinux_get_property_create_context_cookie_t
1210 xcb_selinux_get_property_create_context_unchecked (xcb_connection_t *c  /**< */)
1211 {
1212     static const xcb_protocol_request_t xcb_req = {
1213         /* count */ 2,
1214         /* ext */ &xcb_selinux_id,
1215         /* opcode */ XCB_SELINUX_GET_PROPERTY_CREATE_CONTEXT,
1216         /* isvoid */ 0
1217     };
1218 
1219     struct iovec xcb_parts[4];
1220     xcb_selinux_get_property_create_context_cookie_t xcb_ret;
1221     xcb_selinux_get_property_create_context_request_t xcb_out;
1222 
1223 
1224     xcb_parts[2].iov_base = (char *) &xcb_out;
1225     xcb_parts[2].iov_len = sizeof(xcb_out);
1226     xcb_parts[3].iov_base = 0;
1227     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1228     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1229     return xcb_ret;
1230 }
1231 
1232 
1233 /*****************************************************************************
1234  **
1235  ** char * xcb_selinux_get_property_create_context_context
1236  **
1237  ** @param const xcb_selinux_get_property_create_context_reply_t *R
1238  ** @returns char *
1239  **
1240  *****************************************************************************/
1241 
1242 char *
1243 xcb_selinux_get_property_create_context_context (const xcb_selinux_get_property_create_context_reply_t *R  /**< */)
1244 {
1245     return (char *) (R + 1);
1246 }
1247 
1248 
1249 /*****************************************************************************
1250  **
1251  ** int xcb_selinux_get_property_create_context_context_length
1252  **
1253  ** @param const xcb_selinux_get_property_create_context_reply_t *R
1254  ** @returns int
1255  **
1256  *****************************************************************************/
1257 
1258 int
1259 xcb_selinux_get_property_create_context_context_length (const xcb_selinux_get_property_create_context_reply_t *R  /**< */)
1260 {
1261     return R->context_len;
1262 }
1263 
1264 
1265 /*****************************************************************************
1266  **
1267  ** xcb_generic_iterator_t xcb_selinux_get_property_create_context_context_end
1268  **
1269  ** @param const xcb_selinux_get_property_create_context_reply_t *R
1270  ** @returns xcb_generic_iterator_t
1271  **
1272  *****************************************************************************/
1273 
1274 xcb_generic_iterator_t
1275 xcb_selinux_get_property_create_context_context_end (const xcb_selinux_get_property_create_context_reply_t *R  /**< */)
1276 {
1277     xcb_generic_iterator_t i;
1278     i.data = ((char *) (R + 1)) + (R->context_len);
1279     i.rem = 0;
1280     i.index = (char *) i.data - (char *) R;
1281     return i;
1282 }
1283 
1284 
1285 /*****************************************************************************
1286  **
1287  ** xcb_selinux_get_property_create_context_reply_t * xcb_selinux_get_property_create_context_reply
1288  **
1289  ** @param xcb_connection_t                                  *c
1290  ** @param xcb_selinux_get_property_create_context_cookie_t   cookie
1291  ** @param xcb_generic_error_t                              **e
1292  ** @returns xcb_selinux_get_property_create_context_reply_t *
1293  **
1294  *****************************************************************************/
1295 
1296 xcb_selinux_get_property_create_context_reply_t *
1297 xcb_selinux_get_property_create_context_reply (xcb_connection_t                                  *c  /**< */,
1298                                                xcb_selinux_get_property_create_context_cookie_t   cookie  /**< */,
1299                                                xcb_generic_error_t                              **e  /**< */)
1300 {
1301     return (xcb_selinux_get_property_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1302 }
1303 
1304 
1305 /*****************************************************************************
1306  **
1307  ** xcb_void_cookie_t xcb_selinux_set_property_use_context_checked
1308  **
1309  ** @param xcb_connection_t *c
1310  ** @param uint32_t          context_len
1311  ** @param const char       *context
1312  ** @returns xcb_void_cookie_t
1313  **
1314  *****************************************************************************/
1315 
1316 xcb_void_cookie_t
1317 xcb_selinux_set_property_use_context_checked (xcb_connection_t *c  /**< */,
1318                                               uint32_t          context_len  /**< */,
1319                                               const char       *context  /**< */)
1320 {
1321     static const xcb_protocol_request_t xcb_req = {
1322         /* count */ 4,
1323         /* ext */ &xcb_selinux_id,
1324         /* opcode */ XCB_SELINUX_SET_PROPERTY_USE_CONTEXT,
1325         /* isvoid */ 1
1326     };
1327 
1328     struct iovec xcb_parts[6];
1329     xcb_void_cookie_t xcb_ret;
1330     xcb_selinux_set_property_use_context_request_t xcb_out;
1331 
1332     xcb_out.context_len = context_len;
1333 
1334     xcb_parts[2].iov_base = (char *) &xcb_out;
1335     xcb_parts[2].iov_len = sizeof(xcb_out);
1336     xcb_parts[3].iov_base = 0;
1337     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1338     xcb_parts[4].iov_base = (char *) context;
1339     xcb_parts[4].iov_len = context_len * sizeof(char);
1340     xcb_parts[5].iov_base = 0;
1341     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
1342     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1343     return xcb_ret;
1344 }
1345 
1346 
1347 /*****************************************************************************
1348  **
1349  ** xcb_void_cookie_t xcb_selinux_set_property_use_context
1350  **
1351  ** @param xcb_connection_t *c
1352  ** @param uint32_t          context_len
1353  ** @param const char       *context
1354  ** @returns xcb_void_cookie_t
1355  **
1356  *****************************************************************************/
1357 
1358 xcb_void_cookie_t
1359 xcb_selinux_set_property_use_context (xcb_connection_t *c  /**< */,
1360                                       uint32_t          context_len  /**< */,
1361                                       const char       *context  /**< */)
1362 {
1363     static const xcb_protocol_request_t xcb_req = {
1364         /* count */ 4,
1365         /* ext */ &xcb_selinux_id,
1366         /* opcode */ XCB_SELINUX_SET_PROPERTY_USE_CONTEXT,
1367         /* isvoid */ 1
1368     };
1369 
1370     struct iovec xcb_parts[6];
1371     xcb_void_cookie_t xcb_ret;
1372     xcb_selinux_set_property_use_context_request_t xcb_out;
1373 
1374     xcb_out.context_len = context_len;
1375 
1376     xcb_parts[2].iov_base = (char *) &xcb_out;
1377     xcb_parts[2].iov_len = sizeof(xcb_out);
1378     xcb_parts[3].iov_base = 0;
1379     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1380     xcb_parts[4].iov_base = (char *) context;
1381     xcb_parts[4].iov_len = context_len * sizeof(char);
1382     xcb_parts[5].iov_base = 0;
1383     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
1384     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1385     return xcb_ret;
1386 }
1387 
1388 
1389 /*****************************************************************************
1390  **
1391  ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context
1392  **
1393  ** @param xcb_connection_t *c
1394  ** @returns xcb_selinux_get_property_use_context_cookie_t
1395  **
1396  *****************************************************************************/
1397 
1398 xcb_selinux_get_property_use_context_cookie_t
1399 xcb_selinux_get_property_use_context (xcb_connection_t *c  /**< */)
1400 {
1401     static const xcb_protocol_request_t xcb_req = {
1402         /* count */ 2,
1403         /* ext */ &xcb_selinux_id,
1404         /* opcode */ XCB_SELINUX_GET_PROPERTY_USE_CONTEXT,
1405         /* isvoid */ 0
1406     };
1407 
1408     struct iovec xcb_parts[4];
1409     xcb_selinux_get_property_use_context_cookie_t xcb_ret;
1410     xcb_selinux_get_property_use_context_request_t xcb_out;
1411 
1412 
1413     xcb_parts[2].iov_base = (char *) &xcb_out;
1414     xcb_parts[2].iov_len = sizeof(xcb_out);
1415     xcb_parts[3].iov_base = 0;
1416     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1417     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1418     return xcb_ret;
1419 }
1420 
1421 
1422 /*****************************************************************************
1423  **
1424  ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context_unchecked
1425  **
1426  ** @param xcb_connection_t *c
1427  ** @returns xcb_selinux_get_property_use_context_cookie_t
1428  **
1429  *****************************************************************************/
1430 
1431 xcb_selinux_get_property_use_context_cookie_t
1432 xcb_selinux_get_property_use_context_unchecked (xcb_connection_t *c  /**< */)
1433 {
1434     static const xcb_protocol_request_t xcb_req = {
1435         /* count */ 2,
1436         /* ext */ &xcb_selinux_id,
1437         /* opcode */ XCB_SELINUX_GET_PROPERTY_USE_CONTEXT,
1438         /* isvoid */ 0
1439     };
1440 
1441     struct iovec xcb_parts[4];
1442     xcb_selinux_get_property_use_context_cookie_t xcb_ret;
1443     xcb_selinux_get_property_use_context_request_t xcb_out;
1444 
1445 
1446     xcb_parts[2].iov_base = (char *) &xcb_out;
1447     xcb_parts[2].iov_len = sizeof(xcb_out);
1448     xcb_parts[3].iov_base = 0;
1449     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1450     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1451     return xcb_ret;
1452 }
1453 
1454 
1455 /*****************************************************************************
1456  **
1457  ** char * xcb_selinux_get_property_use_context_context
1458  **
1459  ** @param const xcb_selinux_get_property_use_context_reply_t *R
1460  ** @returns char *
1461  **
1462  *****************************************************************************/
1463 
1464 char *
1465 xcb_selinux_get_property_use_context_context (const xcb_selinux_get_property_use_context_reply_t *R  /**< */)
1466 {
1467     return (char *) (R + 1);
1468 }
1469 
1470 
1471 /*****************************************************************************
1472  **
1473  ** int xcb_selinux_get_property_use_context_context_length
1474  **
1475  ** @param const xcb_selinux_get_property_use_context_reply_t *R
1476  ** @returns int
1477  **
1478  *****************************************************************************/
1479 
1480 int
1481 xcb_selinux_get_property_use_context_context_length (const xcb_selinux_get_property_use_context_reply_t *R  /**< */)
1482 {
1483     return R->context_len;
1484 }
1485 
1486 
1487 /*****************************************************************************
1488  **
1489  ** xcb_generic_iterator_t xcb_selinux_get_property_use_context_context_end
1490  **
1491  ** @param const xcb_selinux_get_property_use_context_reply_t *R
1492  ** @returns xcb_generic_iterator_t
1493  **
1494  *****************************************************************************/
1495 
1496 xcb_generic_iterator_t
1497 xcb_selinux_get_property_use_context_context_end (const xcb_selinux_get_property_use_context_reply_t *R  /**< */)
1498 {
1499     xcb_generic_iterator_t i;
1500     i.data = ((char *) (R + 1)) + (R->context_len);
1501     i.rem = 0;
1502     i.index = (char *) i.data - (char *) R;
1503     return i;
1504 }
1505 
1506 
1507 /*****************************************************************************
1508  **
1509  ** xcb_selinux_get_property_use_context_reply_t * xcb_selinux_get_property_use_context_reply
1510  **
1511  ** @param xcb_connection_t                               *c
1512  ** @param xcb_selinux_get_property_use_context_cookie_t   cookie
1513  ** @param xcb_generic_error_t                           **e
1514  ** @returns xcb_selinux_get_property_use_context_reply_t *
1515  **
1516  *****************************************************************************/
1517 
1518 xcb_selinux_get_property_use_context_reply_t *
1519 xcb_selinux_get_property_use_context_reply (xcb_connection_t                               *c  /**< */,
1520                                             xcb_selinux_get_property_use_context_cookie_t   cookie  /**< */,
1521                                             xcb_generic_error_t                           **e  /**< */)
1522 {
1523     return (xcb_selinux_get_property_use_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1524 }
1525 
1526 
1527 /*****************************************************************************
1528  **
1529  ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context
1530  **
1531  ** @param xcb_connection_t *c
1532  ** @param xcb_window_t      window
1533  ** @param xcb_atom_t        property
1534  ** @returns xcb_selinux_get_property_context_cookie_t
1535  **
1536  *****************************************************************************/
1537 
1538 xcb_selinux_get_property_context_cookie_t
1539 xcb_selinux_get_property_context (xcb_connection_t *c  /**< */,
1540                                   xcb_window_t      window  /**< */,
1541                                   xcb_atom_t        property  /**< */)
1542 {
1543     static const xcb_protocol_request_t xcb_req = {
1544         /* count */ 2,
1545         /* ext */ &xcb_selinux_id,
1546         /* opcode */ XCB_SELINUX_GET_PROPERTY_CONTEXT,
1547         /* isvoid */ 0
1548     };
1549 
1550     struct iovec xcb_parts[4];
1551     xcb_selinux_get_property_context_cookie_t xcb_ret;
1552     xcb_selinux_get_property_context_request_t xcb_out;
1553 
1554     xcb_out.window = window;
1555     xcb_out.property = property;
1556 
1557     xcb_parts[2].iov_base = (char *) &xcb_out;
1558     xcb_parts[2].iov_len = sizeof(xcb_out);
1559     xcb_parts[3].iov_base = 0;
1560     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1561     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1562     return xcb_ret;
1563 }
1564 
1565 
1566 /*****************************************************************************
1567  **
1568  ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context_unchecked
1569  **
1570  ** @param xcb_connection_t *c
1571  ** @param xcb_window_t      window
1572  ** @param xcb_atom_t        property
1573  ** @returns xcb_selinux_get_property_context_cookie_t
1574  **
1575  *****************************************************************************/
1576 
1577 xcb_selinux_get_property_context_cookie_t
1578 xcb_selinux_get_property_context_unchecked (xcb_connection_t *c  /**< */,
1579                                             xcb_window_t      window  /**< */,
1580                                             xcb_atom_t        property  /**< */)
1581 {
1582     static const xcb_protocol_request_t xcb_req = {
1583         /* count */ 2,
1584         /* ext */ &xcb_selinux_id,
1585         /* opcode */ XCB_SELINUX_GET_PROPERTY_CONTEXT,
1586         /* isvoid */ 0
1587     };
1588 
1589     struct iovec xcb_parts[4];
1590     xcb_selinux_get_property_context_cookie_t xcb_ret;
1591     xcb_selinux_get_property_context_request_t xcb_out;
1592 
1593     xcb_out.window = window;
1594     xcb_out.property = property;
1595 
1596     xcb_parts[2].iov_base = (char *) &xcb_out;
1597     xcb_parts[2].iov_len = sizeof(xcb_out);
1598     xcb_parts[3].iov_base = 0;
1599     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1600     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1601     return xcb_ret;
1602 }
1603 
1604 
1605 /*****************************************************************************
1606  **
1607  ** char * xcb_selinux_get_property_context_context
1608  **
1609  ** @param const xcb_selinux_get_property_context_reply_t *R
1610  ** @returns char *
1611  **
1612  *****************************************************************************/
1613 
1614 char *
1615 xcb_selinux_get_property_context_context (const xcb_selinux_get_property_context_reply_t *R  /**< */)
1616 {
1617     return (char *) (R + 1);
1618 }
1619 
1620 
1621 /*****************************************************************************
1622  **
1623  ** int xcb_selinux_get_property_context_context_length
1624  **
1625  ** @param const xcb_selinux_get_property_context_reply_t *R
1626  ** @returns int
1627  **
1628  *****************************************************************************/
1629 
1630 int
1631 xcb_selinux_get_property_context_context_length (const xcb_selinux_get_property_context_reply_t *R  /**< */)
1632 {
1633     return R->context_len;
1634 }
1635 
1636 
1637 /*****************************************************************************
1638  **
1639  ** xcb_generic_iterator_t xcb_selinux_get_property_context_context_end
1640  **
1641  ** @param const xcb_selinux_get_property_context_reply_t *R
1642  ** @returns xcb_generic_iterator_t
1643  **
1644  *****************************************************************************/
1645 
1646 xcb_generic_iterator_t
1647 xcb_selinux_get_property_context_context_end (const xcb_selinux_get_property_context_reply_t *R  /**< */)
1648 {
1649     xcb_generic_iterator_t i;
1650     i.data = ((char *) (R + 1)) + (R->context_len);
1651     i.rem = 0;
1652     i.index = (char *) i.data - (char *) R;
1653     return i;
1654 }
1655 
1656 
1657 /*****************************************************************************
1658  **
1659  ** xcb_selinux_get_property_context_reply_t * xcb_selinux_get_property_context_reply
1660  **
1661  ** @param xcb_connection_t                           *c
1662  ** @param xcb_selinux_get_property_context_cookie_t   cookie
1663  ** @param xcb_generic_error_t                       **e
1664  ** @returns xcb_selinux_get_property_context_reply_t *
1665  **
1666  *****************************************************************************/
1667 
1668 xcb_selinux_get_property_context_reply_t *
1669 xcb_selinux_get_property_context_reply (xcb_connection_t                           *c  /**< */,
1670                                         xcb_selinux_get_property_context_cookie_t   cookie  /**< */,
1671                                         xcb_generic_error_t                       **e  /**< */)
1672 {
1673     return (xcb_selinux_get_property_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1674 }
1675 
1676 
1677 /*****************************************************************************
1678  **
1679  ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context
1680  **
1681  ** @param xcb_connection_t *c
1682  ** @param xcb_window_t      window
1683  ** @param xcb_atom_t        property
1684  ** @returns xcb_selinux_get_property_data_context_cookie_t
1685  **
1686  *****************************************************************************/
1687 
1688 xcb_selinux_get_property_data_context_cookie_t
1689 xcb_selinux_get_property_data_context (xcb_connection_t *c  /**< */,
1690                                        xcb_window_t      window  /**< */,
1691                                        xcb_atom_t        property  /**< */)
1692 {
1693     static const xcb_protocol_request_t xcb_req = {
1694         /* count */ 2,
1695         /* ext */ &xcb_selinux_id,
1696         /* opcode */ XCB_SELINUX_GET_PROPERTY_DATA_CONTEXT,
1697         /* isvoid */ 0
1698     };
1699 
1700     struct iovec xcb_parts[4];
1701     xcb_selinux_get_property_data_context_cookie_t xcb_ret;
1702     xcb_selinux_get_property_data_context_request_t xcb_out;
1703 
1704     xcb_out.window = window;
1705     xcb_out.property = property;
1706 
1707     xcb_parts[2].iov_base = (char *) &xcb_out;
1708     xcb_parts[2].iov_len = sizeof(xcb_out);
1709     xcb_parts[3].iov_base = 0;
1710     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1711     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1712     return xcb_ret;
1713 }
1714 
1715 
1716 /*****************************************************************************
1717  **
1718  ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context_unchecked
1719  **
1720  ** @param xcb_connection_t *c
1721  ** @param xcb_window_t      window
1722  ** @param xcb_atom_t        property
1723  ** @returns xcb_selinux_get_property_data_context_cookie_t
1724  **
1725  *****************************************************************************/
1726 
1727 xcb_selinux_get_property_data_context_cookie_t
1728 xcb_selinux_get_property_data_context_unchecked (xcb_connection_t *c  /**< */,
1729                                                  xcb_window_t      window  /**< */,
1730                                                  xcb_atom_t        property  /**< */)
1731 {
1732     static const xcb_protocol_request_t xcb_req = {
1733         /* count */ 2,
1734         /* ext */ &xcb_selinux_id,
1735         /* opcode */ XCB_SELINUX_GET_PROPERTY_DATA_CONTEXT,
1736         /* isvoid */ 0
1737     };
1738 
1739     struct iovec xcb_parts[4];
1740     xcb_selinux_get_property_data_context_cookie_t xcb_ret;
1741     xcb_selinux_get_property_data_context_request_t xcb_out;
1742 
1743     xcb_out.window = window;
1744     xcb_out.property = property;
1745 
1746     xcb_parts[2].iov_base = (char *) &xcb_out;
1747     xcb_parts[2].iov_len = sizeof(xcb_out);
1748     xcb_parts[3].iov_base = 0;
1749     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1750     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1751     return xcb_ret;
1752 }
1753 
1754 
1755 /*****************************************************************************
1756  **
1757  ** char * xcb_selinux_get_property_data_context_context
1758  **
1759  ** @param const xcb_selinux_get_property_data_context_reply_t *R
1760  ** @returns char *
1761  **
1762  *****************************************************************************/
1763 
1764 char *
1765 xcb_selinux_get_property_data_context_context (const xcb_selinux_get_property_data_context_reply_t *R  /**< */)
1766 {
1767     return (char *) (R + 1);
1768 }
1769 
1770 
1771 /*****************************************************************************
1772  **
1773  ** int xcb_selinux_get_property_data_context_context_length
1774  **
1775  ** @param const xcb_selinux_get_property_data_context_reply_t *R
1776  ** @returns int
1777  **
1778  *****************************************************************************/
1779 
1780 int
1781 xcb_selinux_get_property_data_context_context_length (const xcb_selinux_get_property_data_context_reply_t *R  /**< */)
1782 {
1783     return R->context_len;
1784 }
1785 
1786 
1787 /*****************************************************************************
1788  **
1789  ** xcb_generic_iterator_t xcb_selinux_get_property_data_context_context_end
1790  **
1791  ** @param const xcb_selinux_get_property_data_context_reply_t *R
1792  ** @returns xcb_generic_iterator_t
1793  **
1794  *****************************************************************************/
1795 
1796 xcb_generic_iterator_t
1797 xcb_selinux_get_property_data_context_context_end (const xcb_selinux_get_property_data_context_reply_t *R  /**< */)
1798 {
1799     xcb_generic_iterator_t i;
1800     i.data = ((char *) (R + 1)) + (R->context_len);
1801     i.rem = 0;
1802     i.index = (char *) i.data - (char *) R;
1803     return i;
1804 }
1805 
1806 
1807 /*****************************************************************************
1808  **
1809  ** xcb_selinux_get_property_data_context_reply_t * xcb_selinux_get_property_data_context_reply
1810  **
1811  ** @param xcb_connection_t                                *c
1812  ** @param xcb_selinux_get_property_data_context_cookie_t   cookie
1813  ** @param xcb_generic_error_t                            **e
1814  ** @returns xcb_selinux_get_property_data_context_reply_t *
1815  **
1816  *****************************************************************************/
1817 
1818 xcb_selinux_get_property_data_context_reply_t *
1819 xcb_selinux_get_property_data_context_reply (xcb_connection_t                                *c  /**< */,
1820                                              xcb_selinux_get_property_data_context_cookie_t   cookie  /**< */,
1821                                              xcb_generic_error_t                            **e  /**< */)
1822 {
1823     return (xcb_selinux_get_property_data_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1824 }
1825 
1826 
1827 /*****************************************************************************
1828  **
1829  ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties
1830  **
1831  ** @param xcb_connection_t *c
1832  ** @param xcb_window_t      window
1833  ** @returns xcb_selinux_list_properties_cookie_t
1834  **
1835  *****************************************************************************/
1836 
1837 xcb_selinux_list_properties_cookie_t
1838 xcb_selinux_list_properties (xcb_connection_t *c  /**< */,
1839                              xcb_window_t      window  /**< */)
1840 {
1841     static const xcb_protocol_request_t xcb_req = {
1842         /* count */ 2,
1843         /* ext */ &xcb_selinux_id,
1844         /* opcode */ XCB_SELINUX_LIST_PROPERTIES,
1845         /* isvoid */ 0
1846     };
1847 
1848     struct iovec xcb_parts[4];
1849     xcb_selinux_list_properties_cookie_t xcb_ret;
1850     xcb_selinux_list_properties_request_t xcb_out;
1851 
1852     xcb_out.window = window;
1853 
1854     xcb_parts[2].iov_base = (char *) &xcb_out;
1855     xcb_parts[2].iov_len = sizeof(xcb_out);
1856     xcb_parts[3].iov_base = 0;
1857     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1858     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1859     return xcb_ret;
1860 }
1861 
1862 
1863 /*****************************************************************************
1864  **
1865  ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties_unchecked
1866  **
1867  ** @param xcb_connection_t *c
1868  ** @param xcb_window_t      window
1869  ** @returns xcb_selinux_list_properties_cookie_t
1870  **
1871  *****************************************************************************/
1872 
1873 xcb_selinux_list_properties_cookie_t
1874 xcb_selinux_list_properties_unchecked (xcb_connection_t *c  /**< */,
1875                                        xcb_window_t      window  /**< */)
1876 {
1877     static const xcb_protocol_request_t xcb_req = {
1878         /* count */ 2,
1879         /* ext */ &xcb_selinux_id,
1880         /* opcode */ XCB_SELINUX_LIST_PROPERTIES,
1881         /* isvoid */ 0
1882     };
1883 
1884     struct iovec xcb_parts[4];
1885     xcb_selinux_list_properties_cookie_t xcb_ret;
1886     xcb_selinux_list_properties_request_t xcb_out;
1887 
1888     xcb_out.window = window;
1889 
1890     xcb_parts[2].iov_base = (char *) &xcb_out;
1891     xcb_parts[2].iov_len = sizeof(xcb_out);
1892     xcb_parts[3].iov_base = 0;
1893     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1894     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1895     return xcb_ret;
1896 }
1897 
1898 
1899 /*****************************************************************************
1900  **
1901  ** int xcb_selinux_list_properties_properties_length
1902  **
1903  ** @param const xcb_selinux_list_properties_reply_t *R
1904  ** @returns int
1905  **
1906  *****************************************************************************/
1907 
1908 int
1909 xcb_selinux_list_properties_properties_length (const xcb_selinux_list_properties_reply_t *R  /**< */)
1910 {
1911     return R->properties_len;
1912 }
1913 
1914 
1915 /*****************************************************************************
1916  **
1917  ** xcb_selinux_list_item_iterator_t xcb_selinux_list_properties_properties_iterator
1918  **
1919  ** @param const xcb_selinux_list_properties_reply_t *R
1920  ** @returns xcb_selinux_list_item_iterator_t
1921  **
1922  *****************************************************************************/
1923 
1924 xcb_selinux_list_item_iterator_t
1925 xcb_selinux_list_properties_properties_iterator (const xcb_selinux_list_properties_reply_t *R  /**< */)
1926 {
1927     xcb_selinux_list_item_iterator_t i;
1928     i.data = (xcb_selinux_list_item_t *) (R + 1);
1929     i.rem = R->properties_len;
1930     i.index = (char *) i.data - (char *) R;
1931     return i;
1932 }
1933 
1934 
1935 /*****************************************************************************
1936  **
1937  ** xcb_selinux_list_properties_reply_t * xcb_selinux_list_properties_reply
1938  **
1939  ** @param xcb_connection_t                      *c
1940  ** @param xcb_selinux_list_properties_cookie_t   cookie
1941  ** @param xcb_generic_error_t                  **e
1942  ** @returns xcb_selinux_list_properties_reply_t *
1943  **
1944  *****************************************************************************/
1945 
1946 xcb_selinux_list_properties_reply_t *
1947 xcb_selinux_list_properties_reply (xcb_connection_t                      *c  /**< */,
1948                                    xcb_selinux_list_properties_cookie_t   cookie  /**< */,
1949                                    xcb_generic_error_t                  **e  /**< */)
1950 {
1951     return (xcb_selinux_list_properties_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1952 }
1953 
1954 
1955 /*****************************************************************************
1956  **
1957  ** xcb_void_cookie_t xcb_selinux_set_selection_create_context_checked
1958  **
1959  ** @param xcb_connection_t *c
1960  ** @param uint32_t          context_len
1961  ** @param const char       *context
1962  ** @returns xcb_void_cookie_t
1963  **
1964  *****************************************************************************/
1965 
1966 xcb_void_cookie_t
1967 xcb_selinux_set_selection_create_context_checked (xcb_connection_t *c  /**< */,
1968                                                   uint32_t          context_len  /**< */,
1969                                                   const char       *context  /**< */)
1970 {
1971     static const xcb_protocol_request_t xcb_req = {
1972         /* count */ 4,
1973         /* ext */ &xcb_selinux_id,
1974         /* opcode */ XCB_SELINUX_SET_SELECTION_CREATE_CONTEXT,
1975         /* isvoid */ 1
1976     };
1977 
1978     struct iovec xcb_parts[6];
1979     xcb_void_cookie_t xcb_ret;
1980     xcb_selinux_set_selection_create_context_request_t xcb_out;
1981 
1982     xcb_out.context_len = context_len;
1983 
1984     xcb_parts[2].iov_base = (char *) &xcb_out;
1985     xcb_parts[2].iov_len = sizeof(xcb_out);
1986     xcb_parts[3].iov_base = 0;
1987     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1988     xcb_parts[4].iov_base = (char *) context;
1989     xcb_parts[4].iov_len = context_len * sizeof(char);
1990     xcb_parts[5].iov_base = 0;
1991     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
1992     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1993     return xcb_ret;
1994 }
1995 
1996 
1997 /*****************************************************************************
1998  **
1999  ** xcb_void_cookie_t xcb_selinux_set_selection_create_context
2000  **
2001  ** @param xcb_connection_t *c
2002  ** @param uint32_t          context_len
2003  ** @param const char       *context
2004  ** @returns xcb_void_cookie_t
2005  **
2006  *****************************************************************************/
2007 
2008 xcb_void_cookie_t
2009 xcb_selinux_set_selection_create_context (xcb_connection_t *c  /**< */,
2010                                           uint32_t          context_len  /**< */,
2011                                           const char       *context  /**< */)
2012 {
2013     static const xcb_protocol_request_t xcb_req = {
2014         /* count */ 4,
2015         /* ext */ &xcb_selinux_id,
2016         /* opcode */ XCB_SELINUX_SET_SELECTION_CREATE_CONTEXT,
2017         /* isvoid */ 1
2018     };
2019 
2020     struct iovec xcb_parts[6];
2021     xcb_void_cookie_t xcb_ret;
2022     xcb_selinux_set_selection_create_context_request_t xcb_out;
2023 
2024     xcb_out.context_len = context_len;
2025 
2026     xcb_parts[2].iov_base = (char *) &xcb_out;
2027     xcb_parts[2].iov_len = sizeof(xcb_out);
2028     xcb_parts[3].iov_base = 0;
2029     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2030     xcb_parts[4].iov_base = (char *) context;
2031     xcb_parts[4].iov_len = context_len * sizeof(char);
2032     xcb_parts[5].iov_base = 0;
2033     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
2034     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2035     return xcb_ret;
2036 }
2037 
2038 
2039 /*****************************************************************************
2040  **
2041  ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context
2042  **
2043  ** @param xcb_connection_t *c
2044  ** @returns xcb_selinux_get_selection_create_context_cookie_t
2045  **
2046  *****************************************************************************/
2047 
2048 xcb_selinux_get_selection_create_context_cookie_t
2049 xcb_selinux_get_selection_create_context (xcb_connection_t *c  /**< */)
2050 {
2051     static const xcb_protocol_request_t xcb_req = {
2052         /* count */ 2,
2053         /* ext */ &xcb_selinux_id,
2054         /* opcode */ XCB_SELINUX_GET_SELECTION_CREATE_CONTEXT,
2055         /* isvoid */ 0
2056     };
2057 
2058     struct iovec xcb_parts[4];
2059     xcb_selinux_get_selection_create_context_cookie_t xcb_ret;
2060     xcb_selinux_get_selection_create_context_request_t xcb_out;
2061 
2062 
2063     xcb_parts[2].iov_base = (char *) &xcb_out;
2064     xcb_parts[2].iov_len = sizeof(xcb_out);
2065     xcb_parts[3].iov_base = 0;
2066     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2067     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2068     return xcb_ret;
2069 }
2070 
2071 
2072 /*****************************************************************************
2073  **
2074  ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context_unchecked
2075  **
2076  ** @param xcb_connection_t *c
2077  ** @returns xcb_selinux_get_selection_create_context_cookie_t
2078  **
2079  *****************************************************************************/
2080 
2081 xcb_selinux_get_selection_create_context_cookie_t
2082 xcb_selinux_get_selection_create_context_unchecked (xcb_connection_t *c  /**< */)
2083 {
2084     static const xcb_protocol_request_t xcb_req = {
2085         /* count */ 2,
2086         /* ext */ &xcb_selinux_id,
2087         /* opcode */ XCB_SELINUX_GET_SELECTION_CREATE_CONTEXT,
2088         /* isvoid */ 0
2089     };
2090 
2091     struct iovec xcb_parts[4];
2092     xcb_selinux_get_selection_create_context_cookie_t xcb_ret;
2093     xcb_selinux_get_selection_create_context_request_t xcb_out;
2094 
2095 
2096     xcb_parts[2].iov_base = (char *) &xcb_out;
2097     xcb_parts[2].iov_len = sizeof(xcb_out);
2098     xcb_parts[3].iov_base = 0;
2099     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2100     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2101     return xcb_ret;
2102 }
2103 
2104 
2105 /*****************************************************************************
2106  **
2107  ** char * xcb_selinux_get_selection_create_context_context
2108  **
2109  ** @param const xcb_selinux_get_selection_create_context_reply_t *R
2110  ** @returns char *
2111  **
2112  *****************************************************************************/
2113 
2114 char *
2115 xcb_selinux_get_selection_create_context_context (const xcb_selinux_get_selection_create_context_reply_t *R  /**< */)
2116 {
2117     return (char *) (R + 1);
2118 }
2119 
2120 
2121 /*****************************************************************************
2122  **
2123  ** int xcb_selinux_get_selection_create_context_context_length
2124  **
2125  ** @param const xcb_selinux_get_selection_create_context_reply_t *R
2126  ** @returns int
2127  **
2128  *****************************************************************************/
2129 
2130 int
2131 xcb_selinux_get_selection_create_context_context_length (const xcb_selinux_get_selection_create_context_reply_t *R  /**< */)
2132 {
2133     return R->context_len;
2134 }
2135 
2136 
2137 /*****************************************************************************
2138  **
2139  ** xcb_generic_iterator_t xcb_selinux_get_selection_create_context_context_end
2140  **
2141  ** @param const xcb_selinux_get_selection_create_context_reply_t *R
2142  ** @returns xcb_generic_iterator_t
2143  **
2144  *****************************************************************************/
2145 
2146 xcb_generic_iterator_t
2147 xcb_selinux_get_selection_create_context_context_end (const xcb_selinux_get_selection_create_context_reply_t *R  /**< */)
2148 {
2149     xcb_generic_iterator_t i;
2150     i.data = ((char *) (R + 1)) + (R->context_len);
2151     i.rem = 0;
2152     i.index = (char *) i.data - (char *) R;
2153     return i;
2154 }
2155 
2156 
2157 /*****************************************************************************
2158  **
2159  ** xcb_selinux_get_selection_create_context_reply_t * xcb_selinux_get_selection_create_context_reply
2160  **
2161  ** @param xcb_connection_t                                   *c
2162  ** @param xcb_selinux_get_selection_create_context_cookie_t   cookie
2163  ** @param xcb_generic_error_t                               **e
2164  ** @returns xcb_selinux_get_selection_create_context_reply_t *
2165  **
2166  *****************************************************************************/
2167 
2168 xcb_selinux_get_selection_create_context_reply_t *
2169 xcb_selinux_get_selection_create_context_reply (xcb_connection_t                                   *c  /**< */,
2170                                                 xcb_selinux_get_selection_create_context_cookie_t   cookie  /**< */,
2171                                                 xcb_generic_error_t                               **e  /**< */)
2172 {
2173     return (xcb_selinux_get_selection_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2174 }
2175 
2176 
2177 /*****************************************************************************
2178  **
2179  ** xcb_void_cookie_t xcb_selinux_set_selection_use_context_checked
2180  **
2181  ** @param xcb_connection_t *c
2182  ** @param uint32_t          context_len
2183  ** @param const char       *context
2184  ** @returns xcb_void_cookie_t
2185  **
2186  *****************************************************************************/
2187 
2188 xcb_void_cookie_t
2189 xcb_selinux_set_selection_use_context_checked (xcb_connection_t *c  /**< */,
2190                                                uint32_t          context_len  /**< */,
2191                                                const char       *context  /**< */)
2192 {
2193     static const xcb_protocol_request_t xcb_req = {
2194         /* count */ 4,
2195         /* ext */ &xcb_selinux_id,
2196         /* opcode */ XCB_SELINUX_SET_SELECTION_USE_CONTEXT,
2197         /* isvoid */ 1
2198     };
2199 
2200     struct iovec xcb_parts[6];
2201     xcb_void_cookie_t xcb_ret;
2202     xcb_selinux_set_selection_use_context_request_t xcb_out;
2203 
2204     xcb_out.context_len = context_len;
2205 
2206     xcb_parts[2].iov_base = (char *) &xcb_out;
2207     xcb_parts[2].iov_len = sizeof(xcb_out);
2208     xcb_parts[3].iov_base = 0;
2209     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2210     xcb_parts[4].iov_base = (char *) context;
2211     xcb_parts[4].iov_len = context_len * sizeof(char);
2212     xcb_parts[5].iov_base = 0;
2213     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
2214     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2215     return xcb_ret;
2216 }
2217 
2218 
2219 /*****************************************************************************
2220  **
2221  ** xcb_void_cookie_t xcb_selinux_set_selection_use_context
2222  **
2223  ** @param xcb_connection_t *c
2224  ** @param uint32_t          context_len
2225  ** @param const char       *context
2226  ** @returns xcb_void_cookie_t
2227  **
2228  *****************************************************************************/
2229 
2230 xcb_void_cookie_t
2231 xcb_selinux_set_selection_use_context (xcb_connection_t *c  /**< */,
2232                                        uint32_t          context_len  /**< */,
2233                                        const char       *context  /**< */)
2234 {
2235     static const xcb_protocol_request_t xcb_req = {
2236         /* count */ 4,
2237         /* ext */ &xcb_selinux_id,
2238         /* opcode */ XCB_SELINUX_SET_SELECTION_USE_CONTEXT,
2239         /* isvoid */ 1
2240     };
2241 
2242     struct iovec xcb_parts[6];
2243     xcb_void_cookie_t xcb_ret;
2244     xcb_selinux_set_selection_use_context_request_t xcb_out;
2245 
2246     xcb_out.context_len = context_len;
2247 
2248     xcb_parts[2].iov_base = (char *) &xcb_out;
2249     xcb_parts[2].iov_len = sizeof(xcb_out);
2250     xcb_parts[3].iov_base = 0;
2251     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2252     xcb_parts[4].iov_base = (char *) context;
2253     xcb_parts[4].iov_len = context_len * sizeof(char);
2254     xcb_parts[5].iov_base = 0;
2255     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
2256     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2257     return xcb_ret;
2258 }
2259 
2260 
2261 /*****************************************************************************
2262  **
2263  ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context
2264  **
2265  ** @param xcb_connection_t *c
2266  ** @returns xcb_selinux_get_selection_use_context_cookie_t
2267  **
2268  *****************************************************************************/
2269 
2270 xcb_selinux_get_selection_use_context_cookie_t
2271 xcb_selinux_get_selection_use_context (xcb_connection_t *c  /**< */)
2272 {
2273     static const xcb_protocol_request_t xcb_req = {
2274         /* count */ 2,
2275         /* ext */ &xcb_selinux_id,
2276         /* opcode */ XCB_SELINUX_GET_SELECTION_USE_CONTEXT,
2277         /* isvoid */ 0
2278     };
2279 
2280     struct iovec xcb_parts[4];
2281     xcb_selinux_get_selection_use_context_cookie_t xcb_ret;
2282     xcb_selinux_get_selection_use_context_request_t xcb_out;
2283 
2284 
2285     xcb_parts[2].iov_base = (char *) &xcb_out;
2286     xcb_parts[2].iov_len = sizeof(xcb_out);
2287     xcb_parts[3].iov_base = 0;
2288     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2289     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2290     return xcb_ret;
2291 }
2292 
2293 
2294 /*****************************************************************************
2295  **
2296  ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context_unchecked
2297  **
2298  ** @param xcb_connection_t *c
2299  ** @returns xcb_selinux_get_selection_use_context_cookie_t
2300  **
2301  *****************************************************************************/
2302 
2303 xcb_selinux_get_selection_use_context_cookie_t
2304 xcb_selinux_get_selection_use_context_unchecked (xcb_connection_t *c  /**< */)
2305 {
2306     static const xcb_protocol_request_t xcb_req = {
2307         /* count */ 2,
2308         /* ext */ &xcb_selinux_id,
2309         /* opcode */ XCB_SELINUX_GET_SELECTION_USE_CONTEXT,
2310         /* isvoid */ 0
2311     };
2312 
2313     struct iovec xcb_parts[4];
2314     xcb_selinux_get_selection_use_context_cookie_t xcb_ret;
2315     xcb_selinux_get_selection_use_context_request_t xcb_out;
2316 
2317 
2318     xcb_parts[2].iov_base = (char *) &xcb_out;
2319     xcb_parts[2].iov_len = sizeof(xcb_out);
2320     xcb_parts[3].iov_base = 0;
2321     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2322     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2323     return xcb_ret;
2324 }
2325 
2326 
2327 /*****************************************************************************
2328  **
2329  ** char * xcb_selinux_get_selection_use_context_context
2330  **
2331  ** @param const xcb_selinux_get_selection_use_context_reply_t *R
2332  ** @returns char *
2333  **
2334  *****************************************************************************/
2335 
2336 char *
2337 xcb_selinux_get_selection_use_context_context (const xcb_selinux_get_selection_use_context_reply_t *R  /**< */)
2338 {
2339     return (char *) (R + 1);
2340 }
2341 
2342 
2343 /*****************************************************************************
2344  **
2345  ** int xcb_selinux_get_selection_use_context_context_length
2346  **
2347  ** @param const xcb_selinux_get_selection_use_context_reply_t *R
2348  ** @returns int
2349  **
2350  *****************************************************************************/
2351 
2352 int
2353 xcb_selinux_get_selection_use_context_context_length (const xcb_selinux_get_selection_use_context_reply_t *R  /**< */)
2354 {
2355     return R->context_len;
2356 }
2357 
2358 
2359 /*****************************************************************************
2360  **
2361  ** xcb_generic_iterator_t xcb_selinux_get_selection_use_context_context_end
2362  **
2363  ** @param const xcb_selinux_get_selection_use_context_reply_t *R
2364  ** @returns xcb_generic_iterator_t
2365  **
2366  *****************************************************************************/
2367 
2368 xcb_generic_iterator_t
2369 xcb_selinux_get_selection_use_context_context_end (const xcb_selinux_get_selection_use_context_reply_t *R  /**< */)
2370 {
2371     xcb_generic_iterator_t i;
2372     i.data = ((char *) (R + 1)) + (R->context_len);
2373     i.rem = 0;
2374     i.index = (char *) i.data - (char *) R;
2375     return i;
2376 }
2377 
2378 
2379 /*****************************************************************************
2380  **
2381  ** xcb_selinux_get_selection_use_context_reply_t * xcb_selinux_get_selection_use_context_reply
2382  **
2383  ** @param xcb_connection_t                                *c
2384  ** @param xcb_selinux_get_selection_use_context_cookie_t   cookie
2385  ** @param xcb_generic_error_t                            **e
2386  ** @returns xcb_selinux_get_selection_use_context_reply_t *
2387  **
2388  *****************************************************************************/
2389 
2390 xcb_selinux_get_selection_use_context_reply_t *
2391 xcb_selinux_get_selection_use_context_reply (xcb_connection_t                                *c  /**< */,
2392                                              xcb_selinux_get_selection_use_context_cookie_t   cookie  /**< */,
2393                                              xcb_generic_error_t                            **e  /**< */)
2394 {
2395     return (xcb_selinux_get_selection_use_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2396 }
2397 
2398 
2399 /*****************************************************************************
2400  **
2401  ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context
2402  **
2403  ** @param xcb_connection_t *c
2404  ** @param xcb_atom_t        selection
2405  ** @returns xcb_selinux_get_selection_context_cookie_t
2406  **
2407  *****************************************************************************/
2408 
2409 xcb_selinux_get_selection_context_cookie_t
2410 xcb_selinux_get_selection_context (xcb_connection_t *c  /**< */,
2411                                    xcb_atom_t        selection  /**< */)
2412 {
2413     static const xcb_protocol_request_t xcb_req = {
2414         /* count */ 2,
2415         /* ext */ &xcb_selinux_id,
2416         /* opcode */ XCB_SELINUX_GET_SELECTION_CONTEXT,
2417         /* isvoid */ 0
2418     };
2419 
2420     struct iovec xcb_parts[4];
2421     xcb_selinux_get_selection_context_cookie_t xcb_ret;
2422     xcb_selinux_get_selection_context_request_t xcb_out;
2423 
2424     xcb_out.selection = selection;
2425 
2426     xcb_parts[2].iov_base = (char *) &xcb_out;
2427     xcb_parts[2].iov_len = sizeof(xcb_out);
2428     xcb_parts[3].iov_base = 0;
2429     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2430     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2431     return xcb_ret;
2432 }
2433 
2434 
2435 /*****************************************************************************
2436  **
2437  ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context_unchecked
2438  **
2439  ** @param xcb_connection_t *c
2440  ** @param xcb_atom_t        selection
2441  ** @returns xcb_selinux_get_selection_context_cookie_t
2442  **
2443  *****************************************************************************/
2444 
2445 xcb_selinux_get_selection_context_cookie_t
2446 xcb_selinux_get_selection_context_unchecked (xcb_connection_t *c  /**< */,
2447                                              xcb_atom_t        selection  /**< */)
2448 {
2449     static const xcb_protocol_request_t xcb_req = {
2450         /* count */ 2,
2451         /* ext */ &xcb_selinux_id,
2452         /* opcode */ XCB_SELINUX_GET_SELECTION_CONTEXT,
2453         /* isvoid */ 0
2454     };
2455 
2456     struct iovec xcb_parts[4];
2457     xcb_selinux_get_selection_context_cookie_t xcb_ret;
2458     xcb_selinux_get_selection_context_request_t xcb_out;
2459 
2460     xcb_out.selection = selection;
2461 
2462     xcb_parts[2].iov_base = (char *) &xcb_out;
2463     xcb_parts[2].iov_len = sizeof(xcb_out);
2464     xcb_parts[3].iov_base = 0;
2465     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2466     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2467     return xcb_ret;
2468 }
2469 
2470 
2471 /*****************************************************************************
2472  **
2473  ** char * xcb_selinux_get_selection_context_context
2474  **
2475  ** @param const xcb_selinux_get_selection_context_reply_t *R
2476  ** @returns char *
2477  **
2478  *****************************************************************************/
2479 
2480 char *
2481 xcb_selinux_get_selection_context_context (const xcb_selinux_get_selection_context_reply_t *R  /**< */)
2482 {
2483     return (char *) (R + 1);
2484 }
2485 
2486 
2487 /*****************************************************************************
2488  **
2489  ** int xcb_selinux_get_selection_context_context_length
2490  **
2491  ** @param const xcb_selinux_get_selection_context_reply_t *R
2492  ** @returns int
2493  **
2494  *****************************************************************************/
2495 
2496 int
2497 xcb_selinux_get_selection_context_context_length (const xcb_selinux_get_selection_context_reply_t *R  /**< */)
2498 {
2499     return R->context_len;
2500 }
2501 
2502 
2503 /*****************************************************************************
2504  **
2505  ** xcb_generic_iterator_t xcb_selinux_get_selection_context_context_end
2506  **
2507  ** @param const xcb_selinux_get_selection_context_reply_t *R
2508  ** @returns xcb_generic_iterator_t
2509  **
2510  *****************************************************************************/
2511 
2512 xcb_generic_iterator_t
2513 xcb_selinux_get_selection_context_context_end (const xcb_selinux_get_selection_context_reply_t *R  /**< */)
2514 {
2515     xcb_generic_iterator_t i;
2516     i.data = ((char *) (R + 1)) + (R->context_len);
2517     i.rem = 0;
2518     i.index = (char *) i.data - (char *) R;
2519     return i;
2520 }
2521 
2522 
2523 /*****************************************************************************
2524  **
2525  ** xcb_selinux_get_selection_context_reply_t * xcb_selinux_get_selection_context_reply
2526  **
2527  ** @param xcb_connection_t                            *c
2528  ** @param xcb_selinux_get_selection_context_cookie_t   cookie
2529  ** @param xcb_generic_error_t                        **e
2530  ** @returns xcb_selinux_get_selection_context_reply_t *
2531  **
2532  *****************************************************************************/
2533 
2534 xcb_selinux_get_selection_context_reply_t *
2535 xcb_selinux_get_selection_context_reply (xcb_connection_t                            *c  /**< */,
2536                                          xcb_selinux_get_selection_context_cookie_t   cookie  /**< */,
2537                                          xcb_generic_error_t                        **e  /**< */)
2538 {
2539     return (xcb_selinux_get_selection_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2540 }
2541 
2542 
2543 /*****************************************************************************
2544  **
2545  ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context
2546  **
2547  ** @param xcb_connection_t *c
2548  ** @param xcb_atom_t        selection
2549  ** @returns xcb_selinux_get_selection_data_context_cookie_t
2550  **
2551  *****************************************************************************/
2552 
2553 xcb_selinux_get_selection_data_context_cookie_t
2554 xcb_selinux_get_selection_data_context (xcb_connection_t *c  /**< */,
2555                                         xcb_atom_t        selection  /**< */)
2556 {
2557     static const xcb_protocol_request_t xcb_req = {
2558         /* count */ 2,
2559         /* ext */ &xcb_selinux_id,
2560         /* opcode */ XCB_SELINUX_GET_SELECTION_DATA_CONTEXT,
2561         /* isvoid */ 0
2562     };
2563 
2564     struct iovec xcb_parts[4];
2565     xcb_selinux_get_selection_data_context_cookie_t xcb_ret;
2566     xcb_selinux_get_selection_data_context_request_t xcb_out;
2567 
2568     xcb_out.selection = selection;
2569 
2570     xcb_parts[2].iov_base = (char *) &xcb_out;
2571     xcb_parts[2].iov_len = sizeof(xcb_out);
2572     xcb_parts[3].iov_base = 0;
2573     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2574     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2575     return xcb_ret;
2576 }
2577 
2578 
2579 /*****************************************************************************
2580  **
2581  ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context_unchecked
2582  **
2583  ** @param xcb_connection_t *c
2584  ** @param xcb_atom_t        selection
2585  ** @returns xcb_selinux_get_selection_data_context_cookie_t
2586  **
2587  *****************************************************************************/
2588 
2589 xcb_selinux_get_selection_data_context_cookie_t
2590 xcb_selinux_get_selection_data_context_unchecked (xcb_connection_t *c  /**< */,
2591                                                   xcb_atom_t        selection  /**< */)
2592 {
2593     static const xcb_protocol_request_t xcb_req = {
2594         /* count */ 2,
2595         /* ext */ &xcb_selinux_id,
2596         /* opcode */ XCB_SELINUX_GET_SELECTION_DATA_CONTEXT,
2597         /* isvoid */ 0
2598     };
2599 
2600     struct iovec xcb_parts[4];
2601     xcb_selinux_get_selection_data_context_cookie_t xcb_ret;
2602     xcb_selinux_get_selection_data_context_request_t xcb_out;
2603 
2604     xcb_out.selection = selection;
2605 
2606     xcb_parts[2].iov_base = (char *) &xcb_out;
2607     xcb_parts[2].iov_len = sizeof(xcb_out);
2608     xcb_parts[3].iov_base = 0;
2609     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2610     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2611     return xcb_ret;
2612 }
2613 
2614 
2615 /*****************************************************************************
2616  **
2617  ** char * xcb_selinux_get_selection_data_context_context
2618  **
2619  ** @param const xcb_selinux_get_selection_data_context_reply_t *R
2620  ** @returns char *
2621  **
2622  *****************************************************************************/
2623 
2624 char *
2625 xcb_selinux_get_selection_data_context_context (const xcb_selinux_get_selection_data_context_reply_t *R  /**< */)
2626 {
2627     return (char *) (R + 1);
2628 }
2629 
2630 
2631 /*****************************************************************************
2632  **
2633  ** int xcb_selinux_get_selection_data_context_context_length
2634  **
2635  ** @param const xcb_selinux_get_selection_data_context_reply_t *R
2636  ** @returns int
2637  **
2638  *****************************************************************************/
2639 
2640 int
2641 xcb_selinux_get_selection_data_context_context_length (const xcb_selinux_get_selection_data_context_reply_t *R  /**< */)
2642 {
2643     return R->context_len;
2644 }
2645 
2646 
2647 /*****************************************************************************
2648  **
2649  ** xcb_generic_iterator_t xcb_selinux_get_selection_data_context_context_end
2650  **
2651  ** @param const xcb_selinux_get_selection_data_context_reply_t *R
2652  ** @returns xcb_generic_iterator_t
2653  **
2654  *****************************************************************************/
2655 
2656 xcb_generic_iterator_t
2657 xcb_selinux_get_selection_data_context_context_end (const xcb_selinux_get_selection_data_context_reply_t *R  /**< */)
2658 {
2659     xcb_generic_iterator_t i;
2660     i.data = ((char *) (R + 1)) + (R->context_len);
2661     i.rem = 0;
2662     i.index = (char *) i.data - (char *) R;
2663     return i;
2664 }
2665 
2666 
2667 /*****************************************************************************
2668  **
2669  ** xcb_selinux_get_selection_data_context_reply_t * xcb_selinux_get_selection_data_context_reply
2670  **
2671  ** @param xcb_connection_t                                 *c
2672  ** @param xcb_selinux_get_selection_data_context_cookie_t   cookie
2673  ** @param xcb_generic_error_t                             **e
2674  ** @returns xcb_selinux_get_selection_data_context_reply_t *
2675  **
2676  *****************************************************************************/
2677 
2678 xcb_selinux_get_selection_data_context_reply_t *
2679 xcb_selinux_get_selection_data_context_reply (xcb_connection_t                                 *c  /**< */,
2680                                               xcb_selinux_get_selection_data_context_cookie_t   cookie  /**< */,
2681                                               xcb_generic_error_t                             **e  /**< */)
2682 {
2683     return (xcb_selinux_get_selection_data_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2684 }
2685 
2686 
2687 /*****************************************************************************
2688  **
2689  ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections
2690  **
2691  ** @param xcb_connection_t *c
2692  ** @returns xcb_selinux_list_selections_cookie_t
2693  **
2694  *****************************************************************************/
2695 
2696 xcb_selinux_list_selections_cookie_t
2697 xcb_selinux_list_selections (xcb_connection_t *c  /**< */)
2698 {
2699     static const xcb_protocol_request_t xcb_req = {
2700         /* count */ 2,
2701         /* ext */ &xcb_selinux_id,
2702         /* opcode */ XCB_SELINUX_LIST_SELECTIONS,
2703         /* isvoid */ 0
2704     };
2705 
2706     struct iovec xcb_parts[4];
2707     xcb_selinux_list_selections_cookie_t xcb_ret;
2708     xcb_selinux_list_selections_request_t xcb_out;
2709 
2710 
2711     xcb_parts[2].iov_base = (char *) &xcb_out;
2712     xcb_parts[2].iov_len = sizeof(xcb_out);
2713     xcb_parts[3].iov_base = 0;
2714     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2715     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2716     return xcb_ret;
2717 }
2718 
2719 
2720 /*****************************************************************************
2721  **
2722  ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections_unchecked
2723  **
2724  ** @param xcb_connection_t *c
2725  ** @returns xcb_selinux_list_selections_cookie_t
2726  **
2727  *****************************************************************************/
2728 
2729 xcb_selinux_list_selections_cookie_t
2730 xcb_selinux_list_selections_unchecked (xcb_connection_t *c  /**< */)
2731 {
2732     static const xcb_protocol_request_t xcb_req = {
2733         /* count */ 2,
2734         /* ext */ &xcb_selinux_id,
2735         /* opcode */ XCB_SELINUX_LIST_SELECTIONS,
2736         /* isvoid */ 0
2737     };
2738 
2739     struct iovec xcb_parts[4];
2740     xcb_selinux_list_selections_cookie_t xcb_ret;
2741     xcb_selinux_list_selections_request_t xcb_out;
2742 
2743 
2744     xcb_parts[2].iov_base = (char *) &xcb_out;
2745     xcb_parts[2].iov_len = sizeof(xcb_out);
2746     xcb_parts[3].iov_base = 0;
2747     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2748     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2749     return xcb_ret;
2750 }
2751 
2752 
2753 /*****************************************************************************
2754  **
2755  ** int xcb_selinux_list_selections_selections_length
2756  **
2757  ** @param const xcb_selinux_list_selections_reply_t *R
2758  ** @returns int
2759  **
2760  *****************************************************************************/
2761 
2762 int
2763 xcb_selinux_list_selections_selections_length (const xcb_selinux_list_selections_reply_t *R  /**< */)
2764 {
2765     return R->selections_len;
2766 }
2767 
2768 
2769 /*****************************************************************************
2770  **
2771  ** xcb_selinux_list_item_iterator_t xcb_selinux_list_selections_selections_iterator
2772  **
2773  ** @param const xcb_selinux_list_selections_reply_t *R
2774  ** @returns xcb_selinux_list_item_iterator_t
2775  **
2776  *****************************************************************************/
2777 
2778 xcb_selinux_list_item_iterator_t
2779 xcb_selinux_list_selections_selections_iterator (const xcb_selinux_list_selections_reply_t *R  /**< */)
2780 {
2781     xcb_selinux_list_item_iterator_t i;
2782     i.data = (xcb_selinux_list_item_t *) (R + 1);
2783     i.rem = R->selections_len;
2784     i.index = (char *) i.data - (char *) R;
2785     return i;
2786 }
2787 
2788 
2789 /*****************************************************************************
2790  **
2791  ** xcb_selinux_list_selections_reply_t * xcb_selinux_list_selections_reply
2792  **
2793  ** @param xcb_connection_t                      *c
2794  ** @param xcb_selinux_list_selections_cookie_t   cookie
2795  ** @param xcb_generic_error_t                  **e
2796  ** @returns xcb_selinux_list_selections_reply_t *
2797  **
2798  *****************************************************************************/
2799 
2800 xcb_selinux_list_selections_reply_t *
2801 xcb_selinux_list_selections_reply (xcb_connection_t                      *c  /**< */,
2802                                    xcb_selinux_list_selections_cookie_t   cookie  /**< */,
2803                                    xcb_generic_error_t                  **e  /**< */)
2804 {
2805     return (xcb_selinux_list_selections_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2806 }
2807 
2808 
2809 /*****************************************************************************
2810  **
2811  ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context
2812  **
2813  ** @param xcb_connection_t *c
2814  ** @param uint32_t          resource
2815  ** @returns xcb_selinux_get_client_context_cookie_t
2816  **
2817  *****************************************************************************/
2818 
2819 xcb_selinux_get_client_context_cookie_t
2820 xcb_selinux_get_client_context (xcb_connection_t *c  /**< */,
2821                                 uint32_t          resource  /**< */)
2822 {
2823     static const xcb_protocol_request_t xcb_req = {
2824         /* count */ 2,
2825         /* ext */ &xcb_selinux_id,
2826         /* opcode */ XCB_SELINUX_GET_CLIENT_CONTEXT,
2827         /* isvoid */ 0
2828     };
2829 
2830     struct iovec xcb_parts[4];
2831     xcb_selinux_get_client_context_cookie_t xcb_ret;
2832     xcb_selinux_get_client_context_request_t xcb_out;
2833 
2834     xcb_out.resource = resource;
2835 
2836     xcb_parts[2].iov_base = (char *) &xcb_out;
2837     xcb_parts[2].iov_len = sizeof(xcb_out);
2838     xcb_parts[3].iov_base = 0;
2839     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2840     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
2841     return xcb_ret;
2842 }
2843 
2844 
2845 /*****************************************************************************
2846  **
2847  ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context_unchecked
2848  **
2849  ** @param xcb_connection_t *c
2850  ** @param uint32_t          resource
2851  ** @returns xcb_selinux_get_client_context_cookie_t
2852  **
2853  *****************************************************************************/
2854 
2855 xcb_selinux_get_client_context_cookie_t
2856 xcb_selinux_get_client_context_unchecked (xcb_connection_t *c  /**< */,
2857                                           uint32_t          resource  /**< */)
2858 {
2859     static const xcb_protocol_request_t xcb_req = {
2860         /* count */ 2,
2861         /* ext */ &xcb_selinux_id,
2862         /* opcode */ XCB_SELINUX_GET_CLIENT_CONTEXT,
2863         /* isvoid */ 0
2864     };
2865 
2866     struct iovec xcb_parts[4];
2867     xcb_selinux_get_client_context_cookie_t xcb_ret;
2868     xcb_selinux_get_client_context_request_t xcb_out;
2869 
2870     xcb_out.resource = resource;
2871 
2872     xcb_parts[2].iov_base = (char *) &xcb_out;
2873     xcb_parts[2].iov_len = sizeof(xcb_out);
2874     xcb_parts[3].iov_base = 0;
2875     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
2876     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
2877     return xcb_ret;
2878 }
2879 
2880 
2881 /*****************************************************************************
2882  **
2883  ** char * xcb_selinux_get_client_context_context
2884  **
2885  ** @param const xcb_selinux_get_client_context_reply_t *R
2886  ** @returns char *
2887  **
2888  *****************************************************************************/
2889 
2890 char *
2891 xcb_selinux_get_client_context_context (const xcb_selinux_get_client_context_reply_t *R  /**< */)
2892 {
2893     return (char *) (R + 1);
2894 }
2895 
2896 
2897 /*****************************************************************************
2898  **
2899  ** int xcb_selinux_get_client_context_context_length
2900  **
2901  ** @param const xcb_selinux_get_client_context_reply_t *R
2902  ** @returns int
2903  **
2904  *****************************************************************************/
2905 
2906 int
2907 xcb_selinux_get_client_context_context_length (const xcb_selinux_get_client_context_reply_t *R  /**< */)
2908 {
2909     return R->context_len;
2910 }
2911 
2912 
2913 /*****************************************************************************
2914  **
2915  ** xcb_generic_iterator_t xcb_selinux_get_client_context_context_end
2916  **
2917  ** @param const xcb_selinux_get_client_context_reply_t *R
2918  ** @returns xcb_generic_iterator_t
2919  **
2920  *****************************************************************************/
2921 
2922 xcb_generic_iterator_t
2923 xcb_selinux_get_client_context_context_end (const xcb_selinux_get_client_context_reply_t *R  /**< */)
2924 {
2925     xcb_generic_iterator_t i;
2926     i.data = ((char *) (R + 1)) + (R->context_len);
2927     i.rem = 0;
2928     i.index = (char *) i.data - (char *) R;
2929     return i;
2930 }
2931 
2932 
2933 /*****************************************************************************
2934  **
2935  ** xcb_selinux_get_client_context_reply_t * xcb_selinux_get_client_context_reply
2936  **
2937  ** @param xcb_connection_t                         *c
2938  ** @param xcb_selinux_get_client_context_cookie_t   cookie
2939  ** @param xcb_generic_error_t                     **e
2940  ** @returns xcb_selinux_get_client_context_reply_t *
2941  **
2942  *****************************************************************************/
2943 
2944 xcb_selinux_get_client_context_reply_t *
2945 xcb_selinux_get_client_context_reply (xcb_connection_t                         *c  /**< */,
2946                                       xcb_selinux_get_client_context_cookie_t   cookie  /**< */,
2947                                       xcb_generic_error_t                     **e  /**< */)
2948 {
2949     return (xcb_selinux_get_client_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
2950 }
2951 
2952