1 /* Do not modify this file. */
2 /* It was automatically generated by ../../tools/process-x11-xcb.pl
3 using xcbproto version xcb-proto-1.17.0 */
5 * Copyright 2008, 2009, 2013, 2014 Open Text Corporation <pharris[AT]opentext.com>
7 * Wireshark - Network traffic analyzer
8 * By Gerald Combs <gerald[AT]wireshark.org>
9 * Copyright 1998 Gerald Combs
11 * SPDX-License-Identifier: GPL-2.0-or-later
14 #include "x11-glx-render-enum.h"
16 static void mesa_CallList(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18 proto_tree_add_item(t
, hf_x11_glx_render_CallList_list
, tvb
, *offsetp
, 4, byte_order
);
22 static void mesa_CallLists(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
26 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27 proto_tree_add_item(t
, hf_x11_glx_render_CallLists_n
, tvb
, *offsetp
, 4, byte_order
);
29 type
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
30 proto_tree_add_item(t
, hf_x11_glx_render_CallLists_type
, tvb
, *offsetp
, 4, byte_order
);
33 case 0x1400: /* BYTE */
34 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists_signed
, n
, byte_order
);
35 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - n
), ENC_NA
);
36 *offsetp
+= (length
- 8 - n
);
38 case 0x1401: /* UNSIGNED_BYTE */
39 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists_unsigned
, n
, byte_order
);
40 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - n
), ENC_NA
);
41 *offsetp
+= (length
- 8 - n
);
43 case 0x1402: /* SHORT */
44 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_int16
, n
, byte_order
);
45 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - 2 * n
), ENC_NA
);
46 *offsetp
+= (length
- 8 - 2 * n
);
48 case 0x1403: /* UNSIGNED_SHORT */
49 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_card16
, n
, byte_order
);
50 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - 2 * n
), ENC_NA
);
51 *offsetp
+= (length
- 8 - 2 * n
);
53 case 0x1404: /* INT */
54 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_int32
, n
, byte_order
);
56 case 0x1405: /* UNSIGNED_INT */
57 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_card32
, n
, byte_order
);
59 case 0x1406: /* FLOAT */
60 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_float
, n
, byte_order
);
62 case 0x1407: /* 2_BYTES */
63 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_card16
, n
, ENC_BIG_ENDIAN
);
64 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - 2 * n
), ENC_NA
);
65 *offsetp
+= (length
- 8 - 2 * n
);
67 case 0x1408: /* 3_BYTES */
69 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - 3 * n
), ENC_NA
);
70 *offsetp
+= (length
- 8 - 3 * n
);
72 case 0x1409: /* 4_BYTES */
73 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_CallLists_lists
, hf_x11_glx_render_CallLists_lists_item_card32
, n
, ENC_BIG_ENDIAN
);
75 case 0x140B: /* HALF_FLOAT */
77 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (length
- 8 - 2 * n
), ENC_NA
);
78 *offsetp
+= (length
- 8 - 2 * n
);
80 default: /* Unknown */
81 UNDECODED(length
- 8);
86 static void mesa_ListBase(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
88 proto_tree_add_item(t
, hf_x11_glx_render_ListBase_base
, tvb
, *offsetp
, 4, byte_order
);
92 static void mesa_Begin(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
94 proto_tree_add_item(t
, hf_x11_glx_render_Begin_mode
, tvb
, *offsetp
, 4, byte_order
);
98 static void mesa_Bitmap(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
100 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
102 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
104 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
106 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_rowlength
, tvb
, *offsetp
, 4, byte_order
);
108 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_skiprows
, tvb
, *offsetp
, 4, byte_order
);
110 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_skippixels
, tvb
, *offsetp
, 4, byte_order
);
112 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_alignment
, tvb
, *offsetp
, 4, byte_order
);
114 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_width
, tvb
, *offsetp
, 4, byte_order
);
116 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_height
, tvb
, *offsetp
, 4, byte_order
);
118 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_xorig
, tvb
, *offsetp
, 4, byte_order
);
120 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_yorig
, tvb
, *offsetp
, 4, byte_order
);
122 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_xmove
, tvb
, *offsetp
, 4, byte_order
);
124 proto_tree_add_item(t
, hf_x11_glx_render_Bitmap_ymove
, tvb
, *offsetp
, 4, byte_order
);
126 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Bitmap_bitmap
, (length
- 44) / 1, byte_order
);
129 static void mesa_Color3bv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
131 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Color3bv_v
, 3, byte_order
);
134 static void mesa_Color3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
136 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Color3dv_v
, hf_x11_glx_render_Color3dv_v_item
, 3, byte_order
);
139 static void mesa_Color3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
141 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Color3fv_v
, hf_x11_glx_render_Color3fv_v_item
, 3, byte_order
);
144 static void mesa_Color3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
146 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Color3iv_v
, hf_x11_glx_render_Color3iv_v_item
, 3, byte_order
);
149 static void mesa_Color3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
151 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Color3sv_v
, hf_x11_glx_render_Color3sv_v_item
, 3, byte_order
);
154 static void mesa_Color3ubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
156 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Color3ubv_v
, 3, byte_order
);
159 static void mesa_Color3uiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
161 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_Color3uiv_v
, hf_x11_glx_render_Color3uiv_v_item
, 3, byte_order
);
164 static void mesa_Color3usv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
166 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_Color3usv_v
, hf_x11_glx_render_Color3usv_v_item
, 3, byte_order
);
169 static void mesa_Color4bv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
171 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Color4bv_v
, 4, byte_order
);
174 static void mesa_Color4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
176 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Color4dv_v
, hf_x11_glx_render_Color4dv_v_item
, 4, byte_order
);
179 static void mesa_Color4fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
181 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Color4fv_v
, hf_x11_glx_render_Color4fv_v_item
, 4, byte_order
);
184 static void mesa_Color4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
186 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Color4iv_v
, hf_x11_glx_render_Color4iv_v_item
, 4, byte_order
);
189 static void mesa_Color4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
191 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Color4sv_v
, hf_x11_glx_render_Color4sv_v_item
, 4, byte_order
);
194 static void mesa_Color4ubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
196 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Color4ubv_v
, 4, byte_order
);
199 static void mesa_Color4uiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
201 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_Color4uiv_v
, hf_x11_glx_render_Color4uiv_v_item
, 4, byte_order
);
204 static void mesa_Color4usv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
206 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_Color4usv_v
, hf_x11_glx_render_Color4usv_v_item
, 4, byte_order
);
209 static void mesa_EdgeFlagv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
211 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_EdgeFlagv_flag
, 1, byte_order
);
214 static void mesa_End(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
218 static void mesa_Indexdv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
220 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Indexdv_c
, hf_x11_glx_render_Indexdv_c_item
, 1, byte_order
);
223 static void mesa_Indexfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
225 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Indexfv_c
, hf_x11_glx_render_Indexfv_c_item
, 1, byte_order
);
228 static void mesa_Indexiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
230 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Indexiv_c
, hf_x11_glx_render_Indexiv_c_item
, 1, byte_order
);
233 static void mesa_Indexsv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
235 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Indexsv_c
, hf_x11_glx_render_Indexsv_c_item
, 1, byte_order
);
238 static void mesa_Normal3bv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
240 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Normal3bv_v
, 3, byte_order
);
243 static void mesa_Normal3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
245 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Normal3dv_v
, hf_x11_glx_render_Normal3dv_v_item
, 3, byte_order
);
248 static void mesa_Normal3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
250 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Normal3fv_v
, hf_x11_glx_render_Normal3fv_v_item
, 3, byte_order
);
253 static void mesa_Normal3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
255 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Normal3iv_v
, hf_x11_glx_render_Normal3iv_v_item
, 3, byte_order
);
258 static void mesa_Normal3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
260 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Normal3sv_v
, hf_x11_glx_render_Normal3sv_v_item
, 3, byte_order
);
263 static void mesa_RasterPos2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
265 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos2dv_v
, hf_x11_glx_render_RasterPos2dv_v_item
, 2, byte_order
);
268 static void mesa_RasterPos2fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
270 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos2fv_v
, hf_x11_glx_render_RasterPos2fv_v_item
, 2, byte_order
);
273 static void mesa_RasterPos2iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
275 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos2iv_v
, hf_x11_glx_render_RasterPos2iv_v_item
, 2, byte_order
);
278 static void mesa_RasterPos2sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
280 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos2sv_v
, hf_x11_glx_render_RasterPos2sv_v_item
, 2, byte_order
);
283 static void mesa_RasterPos3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
285 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos3dv_v
, hf_x11_glx_render_RasterPos3dv_v_item
, 3, byte_order
);
288 static void mesa_RasterPos3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
290 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos3fv_v
, hf_x11_glx_render_RasterPos3fv_v_item
, 3, byte_order
);
293 static void mesa_RasterPos3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
295 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos3iv_v
, hf_x11_glx_render_RasterPos3iv_v_item
, 3, byte_order
);
298 static void mesa_RasterPos3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
300 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos3sv_v
, hf_x11_glx_render_RasterPos3sv_v_item
, 3, byte_order
);
303 static void mesa_RasterPos4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
305 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos4dv_v
, hf_x11_glx_render_RasterPos4dv_v_item
, 4, byte_order
);
308 static void mesa_RasterPos4fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
310 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos4fv_v
, hf_x11_glx_render_RasterPos4fv_v_item
, 4, byte_order
);
313 static void mesa_RasterPos4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
315 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos4iv_v
, hf_x11_glx_render_RasterPos4iv_v_item
, 4, byte_order
);
318 static void mesa_RasterPos4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
320 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_RasterPos4sv_v
, hf_x11_glx_render_RasterPos4sv_v_item
, 4, byte_order
);
323 static void mesa_Rectdv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
325 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Rectdv_v1
, hf_x11_glx_render_Rectdv_v1_item
, 2, byte_order
);
326 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Rectdv_v2
, hf_x11_glx_render_Rectdv_v2_item
, 2, byte_order
);
329 static void mesa_Rectfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
331 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Rectfv_v1
, hf_x11_glx_render_Rectfv_v1_item
, 2, byte_order
);
332 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Rectfv_v2
, hf_x11_glx_render_Rectfv_v2_item
, 2, byte_order
);
335 static void mesa_Rectiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
337 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Rectiv_v1
, hf_x11_glx_render_Rectiv_v1_item
, 2, byte_order
);
338 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Rectiv_v2
, hf_x11_glx_render_Rectiv_v2_item
, 2, byte_order
);
341 static void mesa_Rectsv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
343 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Rectsv_v1
, hf_x11_glx_render_Rectsv_v1_item
, 2, byte_order
);
344 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Rectsv_v2
, hf_x11_glx_render_Rectsv_v2_item
, 2, byte_order
);
347 static void mesa_TexCoord1dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
349 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord1dv_v
, hf_x11_glx_render_TexCoord1dv_v_item
, 1, byte_order
);
352 static void mesa_TexCoord1fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
354 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord1fv_v
, hf_x11_glx_render_TexCoord1fv_v_item
, 1, byte_order
);
357 static void mesa_TexCoord1iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
359 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord1iv_v
, hf_x11_glx_render_TexCoord1iv_v_item
, 1, byte_order
);
362 static void mesa_TexCoord1sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
364 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord1sv_v
, hf_x11_glx_render_TexCoord1sv_v_item
, 1, byte_order
);
367 static void mesa_TexCoord2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
369 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord2dv_v
, hf_x11_glx_render_TexCoord2dv_v_item
, 2, byte_order
);
372 static void mesa_TexCoord2fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
374 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord2fv_v
, hf_x11_glx_render_TexCoord2fv_v_item
, 2, byte_order
);
377 static void mesa_TexCoord2iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
379 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord2iv_v
, hf_x11_glx_render_TexCoord2iv_v_item
, 2, byte_order
);
382 static void mesa_TexCoord2sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
384 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord2sv_v
, hf_x11_glx_render_TexCoord2sv_v_item
, 2, byte_order
);
387 static void mesa_TexCoord3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
389 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord3dv_v
, hf_x11_glx_render_TexCoord3dv_v_item
, 3, byte_order
);
392 static void mesa_TexCoord3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
394 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord3fv_v
, hf_x11_glx_render_TexCoord3fv_v_item
, 3, byte_order
);
397 static void mesa_TexCoord3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
399 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord3iv_v
, hf_x11_glx_render_TexCoord3iv_v_item
, 3, byte_order
);
402 static void mesa_TexCoord3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
404 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord3sv_v
, hf_x11_glx_render_TexCoord3sv_v_item
, 3, byte_order
);
407 static void mesa_TexCoord4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
409 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord4dv_v
, hf_x11_glx_render_TexCoord4dv_v_item
, 4, byte_order
);
412 static void mesa_TexCoord4fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
414 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord4fv_v
, hf_x11_glx_render_TexCoord4fv_v_item
, 4, byte_order
);
417 static void mesa_TexCoord4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
419 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord4iv_v
, hf_x11_glx_render_TexCoord4iv_v_item
, 4, byte_order
);
422 static void mesa_TexCoord4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
424 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_TexCoord4sv_v
, hf_x11_glx_render_TexCoord4sv_v_item
, 4, byte_order
);
427 static void mesa_Vertex2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
429 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex2dv_v
, hf_x11_glx_render_Vertex2dv_v_item
, 2, byte_order
);
432 static void mesa_Vertex2fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
434 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex2fv_v
, hf_x11_glx_render_Vertex2fv_v_item
, 2, byte_order
);
437 static void mesa_Vertex2iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
439 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex2iv_v
, hf_x11_glx_render_Vertex2iv_v_item
, 2, byte_order
);
442 static void mesa_Vertex2sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
444 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex2sv_v
, hf_x11_glx_render_Vertex2sv_v_item
, 2, byte_order
);
447 static void mesa_Vertex3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
449 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex3dv_v
, hf_x11_glx_render_Vertex3dv_v_item
, 3, byte_order
);
452 static void mesa_Vertex3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
454 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex3fv_v
, hf_x11_glx_render_Vertex3fv_v_item
, 3, byte_order
);
457 static void mesa_Vertex3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
459 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex3iv_v
, hf_x11_glx_render_Vertex3iv_v_item
, 3, byte_order
);
462 static void mesa_Vertex3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
464 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex3sv_v
, hf_x11_glx_render_Vertex3sv_v_item
, 3, byte_order
);
467 static void mesa_Vertex4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
469 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex4dv_v
, hf_x11_glx_render_Vertex4dv_v_item
, 4, byte_order
);
472 static void mesa_Vertex4fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
474 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex4fv_v
, hf_x11_glx_render_Vertex4fv_v_item
, 4, byte_order
);
477 static void mesa_Vertex4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
479 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex4iv_v
, hf_x11_glx_render_Vertex4iv_v_item
, 4, byte_order
);
482 static void mesa_Vertex4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
484 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_Vertex4sv_v
, hf_x11_glx_render_Vertex4sv_v_item
, 4, byte_order
);
487 static void mesa_ClipPlane(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
489 proto_tree_add_item(t
, hf_x11_glx_render_ClipPlane_plane
, tvb
, *offsetp
, 4, byte_order
);
491 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ClipPlane_equation
, hf_x11_glx_render_ClipPlane_equation_item
, 4, byte_order
);
494 static void mesa_ColorMaterial(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
496 proto_tree_add_item(t
, hf_x11_glx_render_ColorMaterial_face
, tvb
, *offsetp
, 4, byte_order
);
498 proto_tree_add_item(t
, hf_x11_glx_render_ColorMaterial_mode
, tvb
, *offsetp
, 4, byte_order
);
502 static void mesa_CullFace(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
504 proto_tree_add_item(t
, hf_x11_glx_render_CullFace_mode
, tvb
, *offsetp
, 4, byte_order
);
508 static void mesa_Fogf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
510 proto_tree_add_item(t
, hf_x11_glx_render_Fogf_pname
, tvb
, *offsetp
, 4, byte_order
);
512 proto_tree_add_item(t
, hf_x11_glx_render_Fogf_param
, tvb
, *offsetp
, 4, byte_order
);
516 static void mesa_Fogfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
518 proto_tree_add_item(t
, hf_x11_glx_render_Fogfv_pname
, tvb
, *offsetp
, 4, byte_order
);
520 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Fogfv_params
, hf_x11_glx_render_Fogfv_params_item
, (length
- 4) / 4, byte_order
);
523 static void mesa_Fogi(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
525 proto_tree_add_item(t
, hf_x11_glx_render_Fogi_pname
, tvb
, *offsetp
, 4, byte_order
);
527 proto_tree_add_item(t
, hf_x11_glx_render_Fogi_param
, tvb
, *offsetp
, 4, byte_order
);
531 static void mesa_Fogiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
533 proto_tree_add_item(t
, hf_x11_glx_render_Fogiv_pname
, tvb
, *offsetp
, 4, byte_order
);
535 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Fogiv_params
, hf_x11_glx_render_Fogiv_params_item
, (length
- 4) / 4, byte_order
);
538 static void mesa_FrontFace(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
540 proto_tree_add_item(t
, hf_x11_glx_render_FrontFace_mode
, tvb
, *offsetp
, 4, byte_order
);
544 static void mesa_Hint(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
546 proto_tree_add_item(t
, hf_x11_glx_render_Hint_target
, tvb
, *offsetp
, 4, byte_order
);
548 proto_tree_add_item(t
, hf_x11_glx_render_Hint_mode
, tvb
, *offsetp
, 4, byte_order
);
552 static void mesa_Lightf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
554 proto_tree_add_item(t
, hf_x11_glx_render_Lightf_light
, tvb
, *offsetp
, 4, byte_order
);
556 proto_tree_add_item(t
, hf_x11_glx_render_Lightf_pname
, tvb
, *offsetp
, 4, byte_order
);
558 proto_tree_add_item(t
, hf_x11_glx_render_Lightf_param
, tvb
, *offsetp
, 4, byte_order
);
562 static void mesa_Lightfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
564 proto_tree_add_item(t
, hf_x11_glx_render_Lightfv_light
, tvb
, *offsetp
, 4, byte_order
);
566 proto_tree_add_item(t
, hf_x11_glx_render_Lightfv_pname
, tvb
, *offsetp
, 4, byte_order
);
568 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Lightfv_params
, hf_x11_glx_render_Lightfv_params_item
, (length
- 8) / 4, byte_order
);
571 static void mesa_Lighti(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
573 proto_tree_add_item(t
, hf_x11_glx_render_Lighti_light
, tvb
, *offsetp
, 4, byte_order
);
575 proto_tree_add_item(t
, hf_x11_glx_render_Lighti_pname
, tvb
, *offsetp
, 4, byte_order
);
577 proto_tree_add_item(t
, hf_x11_glx_render_Lighti_param
, tvb
, *offsetp
, 4, byte_order
);
581 static void mesa_Lightiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
583 proto_tree_add_item(t
, hf_x11_glx_render_Lightiv_light
, tvb
, *offsetp
, 4, byte_order
);
585 proto_tree_add_item(t
, hf_x11_glx_render_Lightiv_pname
, tvb
, *offsetp
, 4, byte_order
);
587 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Lightiv_params
, hf_x11_glx_render_Lightiv_params_item
, (length
- 8) / 4, byte_order
);
590 static void mesa_LightModelf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
592 proto_tree_add_item(t
, hf_x11_glx_render_LightModelf_pname
, tvb
, *offsetp
, 4, byte_order
);
594 proto_tree_add_item(t
, hf_x11_glx_render_LightModelf_param
, tvb
, *offsetp
, 4, byte_order
);
598 static void mesa_LightModelfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
600 proto_tree_add_item(t
, hf_x11_glx_render_LightModelfv_pname
, tvb
, *offsetp
, 4, byte_order
);
602 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_LightModelfv_params
, hf_x11_glx_render_LightModelfv_params_item
, (length
- 4) / 4, byte_order
);
605 static void mesa_LightModeli(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
607 proto_tree_add_item(t
, hf_x11_glx_render_LightModeli_pname
, tvb
, *offsetp
, 4, byte_order
);
609 proto_tree_add_item(t
, hf_x11_glx_render_LightModeli_param
, tvb
, *offsetp
, 4, byte_order
);
613 static void mesa_LightModeliv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
615 proto_tree_add_item(t
, hf_x11_glx_render_LightModeliv_pname
, tvb
, *offsetp
, 4, byte_order
);
617 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_LightModeliv_params
, hf_x11_glx_render_LightModeliv_params_item
, (length
- 4) / 4, byte_order
);
620 static void mesa_LineStipple(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
622 proto_tree_add_item(t
, hf_x11_glx_render_LineStipple_factor
, tvb
, *offsetp
, 4, byte_order
);
624 proto_tree_add_item(t
, hf_x11_glx_render_LineStipple_pattern
, tvb
, *offsetp
, 2, byte_order
);
628 static void mesa_LineWidth(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
630 proto_tree_add_item(t
, hf_x11_glx_render_LineWidth_width
, tvb
, *offsetp
, 4, byte_order
);
634 static void mesa_Materialf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
636 proto_tree_add_item(t
, hf_x11_glx_render_Materialf_face
, tvb
, *offsetp
, 4, byte_order
);
638 proto_tree_add_item(t
, hf_x11_glx_render_Materialf_pname
, tvb
, *offsetp
, 4, byte_order
);
640 proto_tree_add_item(t
, hf_x11_glx_render_Materialf_param
, tvb
, *offsetp
, 4, byte_order
);
644 static void mesa_Materialfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
646 proto_tree_add_item(t
, hf_x11_glx_render_Materialfv_face
, tvb
, *offsetp
, 4, byte_order
);
648 proto_tree_add_item(t
, hf_x11_glx_render_Materialfv_pname
, tvb
, *offsetp
, 4, byte_order
);
650 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Materialfv_params
, hf_x11_glx_render_Materialfv_params_item
, (length
- 8) / 4, byte_order
);
653 static void mesa_Materiali(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
655 proto_tree_add_item(t
, hf_x11_glx_render_Materiali_face
, tvb
, *offsetp
, 4, byte_order
);
657 proto_tree_add_item(t
, hf_x11_glx_render_Materiali_pname
, tvb
, *offsetp
, 4, byte_order
);
659 proto_tree_add_item(t
, hf_x11_glx_render_Materiali_param
, tvb
, *offsetp
, 4, byte_order
);
663 static void mesa_Materialiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
665 proto_tree_add_item(t
, hf_x11_glx_render_Materialiv_face
, tvb
, *offsetp
, 4, byte_order
);
667 proto_tree_add_item(t
, hf_x11_glx_render_Materialiv_pname
, tvb
, *offsetp
, 4, byte_order
);
669 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_Materialiv_params
, hf_x11_glx_render_Materialiv_params_item
, (length
- 8) / 4, byte_order
);
672 static void mesa_PointSize(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
674 proto_tree_add_item(t
, hf_x11_glx_render_PointSize_size
, tvb
, *offsetp
, 4, byte_order
);
678 static void mesa_PolygonMode(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
680 proto_tree_add_item(t
, hf_x11_glx_render_PolygonMode_face
, tvb
, *offsetp
, 4, byte_order
);
682 proto_tree_add_item(t
, hf_x11_glx_render_PolygonMode_mode
, tvb
, *offsetp
, 4, byte_order
);
686 static void mesa_PolygonStipple(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
688 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
690 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
692 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
694 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_rowlength
, tvb
, *offsetp
, 4, byte_order
);
696 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_skiprows
, tvb
, *offsetp
, 4, byte_order
);
698 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_skippixels
, tvb
, *offsetp
, 4, byte_order
);
700 proto_tree_add_item(t
, hf_x11_glx_render_PolygonStipple_alignment
, tvb
, *offsetp
, 4, byte_order
);
702 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_PolygonStipple_mask
, (length
- 20) / 1, byte_order
);
705 static void mesa_Scissor(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
707 proto_tree_add_item(t
, hf_x11_glx_render_Scissor_x
, tvb
, *offsetp
, 4, byte_order
);
709 proto_tree_add_item(t
, hf_x11_glx_render_Scissor_y
, tvb
, *offsetp
, 4, byte_order
);
711 proto_tree_add_item(t
, hf_x11_glx_render_Scissor_width
, tvb
, *offsetp
, 4, byte_order
);
713 proto_tree_add_item(t
, hf_x11_glx_render_Scissor_height
, tvb
, *offsetp
, 4, byte_order
);
717 static void mesa_ShadeModel(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
719 proto_tree_add_item(t
, hf_x11_glx_render_ShadeModel_mode
, tvb
, *offsetp
, 4, byte_order
);
723 static void mesa_TexParameterf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
725 proto_tree_add_item(t
, hf_x11_glx_render_TexParameterf_target
, tvb
, *offsetp
, 4, byte_order
);
727 proto_tree_add_item(t
, hf_x11_glx_render_TexParameterf_pname
, tvb
, *offsetp
, 4, byte_order
);
729 proto_tree_add_item(t
, hf_x11_glx_render_TexParameterf_param
, tvb
, *offsetp
, 4, byte_order
);
733 static void mesa_TexParameterfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
735 proto_tree_add_item(t
, hf_x11_glx_render_TexParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
737 proto_tree_add_item(t
, hf_x11_glx_render_TexParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
739 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexParameterfv_params
, hf_x11_glx_render_TexParameterfv_params_item
, (length
- 8) / 4, byte_order
);
742 static void mesa_TexParameteri(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
744 proto_tree_add_item(t
, hf_x11_glx_render_TexParameteri_target
, tvb
, *offsetp
, 4, byte_order
);
746 proto_tree_add_item(t
, hf_x11_glx_render_TexParameteri_pname
, tvb
, *offsetp
, 4, byte_order
);
748 proto_tree_add_item(t
, hf_x11_glx_render_TexParameteri_param
, tvb
, *offsetp
, 4, byte_order
);
752 static void mesa_TexParameteriv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
754 proto_tree_add_item(t
, hf_x11_glx_render_TexParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
756 proto_tree_add_item(t
, hf_x11_glx_render_TexParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
758 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexParameteriv_params
, hf_x11_glx_render_TexParameteriv_params_item
, (length
- 8) / 4, byte_order
);
761 static void mesa_TexImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
763 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
765 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
767 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
769 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
771 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
773 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
775 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_alignment
, tvb
, *offsetp
, 4, byte_order
);
777 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
779 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
781 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
783 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
785 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_border
, tvb
, *offsetp
, 4, byte_order
);
787 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_format
, tvb
, *offsetp
, 4, byte_order
);
789 proto_tree_add_item(t
, hf_x11_glx_render_TexImage1D_type
, tvb
, *offsetp
, 4, byte_order
);
791 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexImage1D_pixels
, (length
- 48) / 1, byte_order
);
794 static void mesa_TexImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
796 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
798 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
800 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
802 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
804 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
806 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
808 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_alignment
, tvb
, *offsetp
, 4, byte_order
);
810 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
812 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
814 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
816 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
818 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
820 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_border
, tvb
, *offsetp
, 4, byte_order
);
822 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_format
, tvb
, *offsetp
, 4, byte_order
);
824 proto_tree_add_item(t
, hf_x11_glx_render_TexImage2D_type
, tvb
, *offsetp
, 4, byte_order
);
826 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexImage2D_pixels
, (length
- 52) / 1, byte_order
);
829 static void mesa_TexEnvf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
831 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvf_target
, tvb
, *offsetp
, 4, byte_order
);
833 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvf_pname
, tvb
, *offsetp
, 4, byte_order
);
835 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvf_param
, tvb
, *offsetp
, 4, byte_order
);
839 static void mesa_TexEnvfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
841 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvfv_target
, tvb
, *offsetp
, 4, byte_order
);
843 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvfv_pname
, tvb
, *offsetp
, 4, byte_order
);
845 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexEnvfv_params
, hf_x11_glx_render_TexEnvfv_params_item
, (length
- 8) / 4, byte_order
);
848 static void mesa_TexEnvi(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
850 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvi_target
, tvb
, *offsetp
, 4, byte_order
);
852 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvi_pname
, tvb
, *offsetp
, 4, byte_order
);
854 proto_tree_add_item(t
, hf_x11_glx_render_TexEnvi_param
, tvb
, *offsetp
, 4, byte_order
);
858 static void mesa_TexEnviv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
860 proto_tree_add_item(t
, hf_x11_glx_render_TexEnviv_target
, tvb
, *offsetp
, 4, byte_order
);
862 proto_tree_add_item(t
, hf_x11_glx_render_TexEnviv_pname
, tvb
, *offsetp
, 4, byte_order
);
864 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexEnviv_params
, hf_x11_glx_render_TexEnviv_params_item
, (length
- 8) / 4, byte_order
);
867 static void mesa_TexGend(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
869 proto_tree_add_item(t
, hf_x11_glx_render_TexGend_coord
, tvb
, *offsetp
, 4, byte_order
);
871 proto_tree_add_item(t
, hf_x11_glx_render_TexGend_pname
, tvb
, *offsetp
, 4, byte_order
);
873 proto_tree_add_item(t
, hf_x11_glx_render_TexGend_param
, tvb
, *offsetp
, 8, byte_order
);
877 static void mesa_TexGendv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
879 proto_tree_add_item(t
, hf_x11_glx_render_TexGendv_coord
, tvb
, *offsetp
, 4, byte_order
);
881 proto_tree_add_item(t
, hf_x11_glx_render_TexGendv_pname
, tvb
, *offsetp
, 4, byte_order
);
883 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_TexGendv_params
, hf_x11_glx_render_TexGendv_params_item
, (length
- 8) / 8, byte_order
);
886 static void mesa_TexGenf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
888 proto_tree_add_item(t
, hf_x11_glx_render_TexGenf_coord
, tvb
, *offsetp
, 4, byte_order
);
890 proto_tree_add_item(t
, hf_x11_glx_render_TexGenf_pname
, tvb
, *offsetp
, 4, byte_order
);
892 proto_tree_add_item(t
, hf_x11_glx_render_TexGenf_param
, tvb
, *offsetp
, 4, byte_order
);
896 static void mesa_TexGenfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
898 proto_tree_add_item(t
, hf_x11_glx_render_TexGenfv_coord
, tvb
, *offsetp
, 4, byte_order
);
900 proto_tree_add_item(t
, hf_x11_glx_render_TexGenfv_pname
, tvb
, *offsetp
, 4, byte_order
);
902 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexGenfv_params
, hf_x11_glx_render_TexGenfv_params_item
, (length
- 8) / 4, byte_order
);
905 static void mesa_TexGeni(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
907 proto_tree_add_item(t
, hf_x11_glx_render_TexGeni_coord
, tvb
, *offsetp
, 4, byte_order
);
909 proto_tree_add_item(t
, hf_x11_glx_render_TexGeni_pname
, tvb
, *offsetp
, 4, byte_order
);
911 proto_tree_add_item(t
, hf_x11_glx_render_TexGeni_param
, tvb
, *offsetp
, 4, byte_order
);
915 static void mesa_TexGeniv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
917 proto_tree_add_item(t
, hf_x11_glx_render_TexGeniv_coord
, tvb
, *offsetp
, 4, byte_order
);
919 proto_tree_add_item(t
, hf_x11_glx_render_TexGeniv_pname
, tvb
, *offsetp
, 4, byte_order
);
921 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_TexGeniv_params
, hf_x11_glx_render_TexGeniv_params_item
, (length
- 8) / 4, byte_order
);
924 static void mesa_InitNames(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
928 static void mesa_LoadName(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
930 proto_tree_add_item(t
, hf_x11_glx_render_LoadName_name
, tvb
, *offsetp
, 4, byte_order
);
934 static void mesa_PassThrough(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
936 proto_tree_add_item(t
, hf_x11_glx_render_PassThrough_token
, tvb
, *offsetp
, 4, byte_order
);
940 static void mesa_PopName(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
944 static void mesa_PushName(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
946 proto_tree_add_item(t
, hf_x11_glx_render_PushName_name
, tvb
, *offsetp
, 4, byte_order
);
950 static void mesa_DrawBuffer(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
952 proto_tree_add_item(t
, hf_x11_glx_render_DrawBuffer_mode
, tvb
, *offsetp
, 4, byte_order
);
956 static void mesa_Clear(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
958 proto_tree_add_item(t
, hf_x11_glx_render_Clear_mask
, tvb
, *offsetp
, 4, byte_order
);
962 static void mesa_ClearAccum(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
964 proto_tree_add_item(t
, hf_x11_glx_render_ClearAccum_red
, tvb
, *offsetp
, 4, byte_order
);
966 proto_tree_add_item(t
, hf_x11_glx_render_ClearAccum_green
, tvb
, *offsetp
, 4, byte_order
);
968 proto_tree_add_item(t
, hf_x11_glx_render_ClearAccum_blue
, tvb
, *offsetp
, 4, byte_order
);
970 proto_tree_add_item(t
, hf_x11_glx_render_ClearAccum_alpha
, tvb
, *offsetp
, 4, byte_order
);
974 static void mesa_ClearIndex(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
976 proto_tree_add_item(t
, hf_x11_glx_render_ClearIndex_c
, tvb
, *offsetp
, 4, byte_order
);
980 static void mesa_ClearColor(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
982 proto_tree_add_item(t
, hf_x11_glx_render_ClearColor_red
, tvb
, *offsetp
, 4, byte_order
);
984 proto_tree_add_item(t
, hf_x11_glx_render_ClearColor_green
, tvb
, *offsetp
, 4, byte_order
);
986 proto_tree_add_item(t
, hf_x11_glx_render_ClearColor_blue
, tvb
, *offsetp
, 4, byte_order
);
988 proto_tree_add_item(t
, hf_x11_glx_render_ClearColor_alpha
, tvb
, *offsetp
, 4, byte_order
);
992 static void mesa_ClearStencil(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
994 proto_tree_add_item(t
, hf_x11_glx_render_ClearStencil_s
, tvb
, *offsetp
, 4, byte_order
);
998 static void mesa_ClearDepth(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1000 proto_tree_add_item(t
, hf_x11_glx_render_ClearDepth_depth
, tvb
, *offsetp
, 8, byte_order
);
1004 static void mesa_StencilMask(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1006 proto_tree_add_item(t
, hf_x11_glx_render_StencilMask_mask
, tvb
, *offsetp
, 4, byte_order
);
1010 static void mesa_ColorMask(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1012 proto_tree_add_item(t
, hf_x11_glx_render_ColorMask_red
, tvb
, *offsetp
, 1, byte_order
);
1014 proto_tree_add_item(t
, hf_x11_glx_render_ColorMask_green
, tvb
, *offsetp
, 1, byte_order
);
1016 proto_tree_add_item(t
, hf_x11_glx_render_ColorMask_blue
, tvb
, *offsetp
, 1, byte_order
);
1018 proto_tree_add_item(t
, hf_x11_glx_render_ColorMask_alpha
, tvb
, *offsetp
, 1, byte_order
);
1022 static void mesa_DepthMask(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1024 proto_tree_add_item(t
, hf_x11_glx_render_DepthMask_flag
, tvb
, *offsetp
, 1, byte_order
);
1028 static void mesa_IndexMask(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1030 proto_tree_add_item(t
, hf_x11_glx_render_IndexMask_mask
, tvb
, *offsetp
, 4, byte_order
);
1034 static void mesa_Accum(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1036 proto_tree_add_item(t
, hf_x11_glx_render_Accum_op
, tvb
, *offsetp
, 4, byte_order
);
1038 proto_tree_add_item(t
, hf_x11_glx_render_Accum_value
, tvb
, *offsetp
, 4, byte_order
);
1042 static void mesa_Disable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1044 proto_tree_add_item(t
, hf_x11_glx_render_Disable_cap
, tvb
, *offsetp
, 4, byte_order
);
1048 static void mesa_Enable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1050 proto_tree_add_item(t
, hf_x11_glx_render_Enable_cap
, tvb
, *offsetp
, 4, byte_order
);
1054 static void mesa_PopAttrib(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
1058 static void mesa_PushAttrib(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1060 proto_tree_add_item(t
, hf_x11_glx_render_PushAttrib_mask
, tvb
, *offsetp
, 4, byte_order
);
1064 static void mesa_Map1d(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1066 proto_tree_add_item(t
, hf_x11_glx_render_Map1d_target
, tvb
, *offsetp
, 4, byte_order
);
1068 proto_tree_add_item(t
, hf_x11_glx_render_Map1d_u1
, tvb
, *offsetp
, 8, byte_order
);
1070 proto_tree_add_item(t
, hf_x11_glx_render_Map1d_u2
, tvb
, *offsetp
, 8, byte_order
);
1072 proto_tree_add_item(t
, hf_x11_glx_render_Map1d_stride
, tvb
, *offsetp
, 4, byte_order
);
1074 proto_tree_add_item(t
, hf_x11_glx_render_Map1d_order
, tvb
, *offsetp
, 4, byte_order
);
1076 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Map1d_points
, hf_x11_glx_render_Map1d_points_item
, (length
- 28) / 8, byte_order
);
1079 static void mesa_Map1f(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1081 proto_tree_add_item(t
, hf_x11_glx_render_Map1f_target
, tvb
, *offsetp
, 4, byte_order
);
1083 proto_tree_add_item(t
, hf_x11_glx_render_Map1f_u1
, tvb
, *offsetp
, 4, byte_order
);
1085 proto_tree_add_item(t
, hf_x11_glx_render_Map1f_u2
, tvb
, *offsetp
, 4, byte_order
);
1087 proto_tree_add_item(t
, hf_x11_glx_render_Map1f_stride
, tvb
, *offsetp
, 4, byte_order
);
1089 proto_tree_add_item(t
, hf_x11_glx_render_Map1f_order
, tvb
, *offsetp
, 4, byte_order
);
1091 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Map1f_points
, hf_x11_glx_render_Map1f_points_item
, (length
- 20) / 4, byte_order
);
1094 static void mesa_Map2d(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1096 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_target
, tvb
, *offsetp
, 4, byte_order
);
1098 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_u1
, tvb
, *offsetp
, 8, byte_order
);
1100 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_u2
, tvb
, *offsetp
, 8, byte_order
);
1102 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_ustride
, tvb
, *offsetp
, 4, byte_order
);
1104 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_uorder
, tvb
, *offsetp
, 4, byte_order
);
1106 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_v1
, tvb
, *offsetp
, 8, byte_order
);
1108 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_v2
, tvb
, *offsetp
, 8, byte_order
);
1110 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_vstride
, tvb
, *offsetp
, 4, byte_order
);
1112 proto_tree_add_item(t
, hf_x11_glx_render_Map2d_vorder
, tvb
, *offsetp
, 4, byte_order
);
1114 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_Map2d_points
, hf_x11_glx_render_Map2d_points_item
, (length
- 52) / 8, byte_order
);
1117 static void mesa_Map2f(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1119 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_target
, tvb
, *offsetp
, 4, byte_order
);
1121 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_u1
, tvb
, *offsetp
, 4, byte_order
);
1123 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_u2
, tvb
, *offsetp
, 4, byte_order
);
1125 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_ustride
, tvb
, *offsetp
, 4, byte_order
);
1127 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_uorder
, tvb
, *offsetp
, 4, byte_order
);
1129 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_v1
, tvb
, *offsetp
, 4, byte_order
);
1131 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_v2
, tvb
, *offsetp
, 4, byte_order
);
1133 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_vstride
, tvb
, *offsetp
, 4, byte_order
);
1135 proto_tree_add_item(t
, hf_x11_glx_render_Map2f_vorder
, tvb
, *offsetp
, 4, byte_order
);
1137 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_Map2f_points
, hf_x11_glx_render_Map2f_points_item
, (length
- 36) / 4, byte_order
);
1140 static void mesa_MapGrid1d(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1142 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1d_un
, tvb
, *offsetp
, 4, byte_order
);
1144 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1d_u1
, tvb
, *offsetp
, 8, byte_order
);
1146 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1d_u2
, tvb
, *offsetp
, 8, byte_order
);
1150 static void mesa_MapGrid1f(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1152 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1f_un
, tvb
, *offsetp
, 4, byte_order
);
1154 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1f_u1
, tvb
, *offsetp
, 4, byte_order
);
1156 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid1f_u2
, tvb
, *offsetp
, 4, byte_order
);
1160 static void mesa_MapGrid2d(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1162 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_un
, tvb
, *offsetp
, 4, byte_order
);
1164 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_u1
, tvb
, *offsetp
, 8, byte_order
);
1166 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_u2
, tvb
, *offsetp
, 8, byte_order
);
1168 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_vn
, tvb
, *offsetp
, 4, byte_order
);
1170 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_v1
, tvb
, *offsetp
, 8, byte_order
);
1172 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2d_v2
, tvb
, *offsetp
, 8, byte_order
);
1176 static void mesa_MapGrid2f(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1178 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_un
, tvb
, *offsetp
, 4, byte_order
);
1180 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_u1
, tvb
, *offsetp
, 4, byte_order
);
1182 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_u2
, tvb
, *offsetp
, 4, byte_order
);
1184 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_vn
, tvb
, *offsetp
, 4, byte_order
);
1186 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_v1
, tvb
, *offsetp
, 4, byte_order
);
1188 proto_tree_add_item(t
, hf_x11_glx_render_MapGrid2f_v2
, tvb
, *offsetp
, 4, byte_order
);
1192 static void mesa_EvalCoord1dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1194 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_EvalCoord1dv_u
, hf_x11_glx_render_EvalCoord1dv_u_item
, 1, byte_order
);
1197 static void mesa_EvalCoord1fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1199 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_EvalCoord1fv_u
, hf_x11_glx_render_EvalCoord1fv_u_item
, 1, byte_order
);
1202 static void mesa_EvalCoord2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1204 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_EvalCoord2dv_u
, hf_x11_glx_render_EvalCoord2dv_u_item
, 2, byte_order
);
1207 static void mesa_EvalCoord2fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1209 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_EvalCoord2fv_u
, hf_x11_glx_render_EvalCoord2fv_u_item
, 2, byte_order
);
1212 static void mesa_EvalMesh1(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1214 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh1_mode
, tvb
, *offsetp
, 4, byte_order
);
1216 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh1_i1
, tvb
, *offsetp
, 4, byte_order
);
1218 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh1_i2
, tvb
, *offsetp
, 4, byte_order
);
1222 static void mesa_EvalPoint1(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1224 proto_tree_add_item(t
, hf_x11_glx_render_EvalPoint1_i
, tvb
, *offsetp
, 4, byte_order
);
1228 static void mesa_EvalMesh2(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1230 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh2_mode
, tvb
, *offsetp
, 4, byte_order
);
1232 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh2_i1
, tvb
, *offsetp
, 4, byte_order
);
1234 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh2_i2
, tvb
, *offsetp
, 4, byte_order
);
1236 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh2_j1
, tvb
, *offsetp
, 4, byte_order
);
1238 proto_tree_add_item(t
, hf_x11_glx_render_EvalMesh2_j2
, tvb
, *offsetp
, 4, byte_order
);
1242 static void mesa_EvalPoint2(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1244 proto_tree_add_item(t
, hf_x11_glx_render_EvalPoint2_i
, tvb
, *offsetp
, 4, byte_order
);
1246 proto_tree_add_item(t
, hf_x11_glx_render_EvalPoint2_j
, tvb
, *offsetp
, 4, byte_order
);
1250 static void mesa_AlphaFunc(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1252 proto_tree_add_item(t
, hf_x11_glx_render_AlphaFunc_func
, tvb
, *offsetp
, 4, byte_order
);
1254 proto_tree_add_item(t
, hf_x11_glx_render_AlphaFunc_ref
, tvb
, *offsetp
, 4, byte_order
);
1258 static void mesa_BlendFunc(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1260 proto_tree_add_item(t
, hf_x11_glx_render_BlendFunc_sfactor
, tvb
, *offsetp
, 4, byte_order
);
1262 proto_tree_add_item(t
, hf_x11_glx_render_BlendFunc_dfactor
, tvb
, *offsetp
, 4, byte_order
);
1266 static void mesa_LogicOp(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1268 proto_tree_add_item(t
, hf_x11_glx_render_LogicOp_opcode
, tvb
, *offsetp
, 4, byte_order
);
1272 static void mesa_StencilFunc(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1274 proto_tree_add_item(t
, hf_x11_glx_render_StencilFunc_func
, tvb
, *offsetp
, 4, byte_order
);
1276 proto_tree_add_item(t
, hf_x11_glx_render_StencilFunc_ref
, tvb
, *offsetp
, 4, byte_order
);
1278 proto_tree_add_item(t
, hf_x11_glx_render_StencilFunc_mask
, tvb
, *offsetp
, 4, byte_order
);
1282 static void mesa_StencilOp(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1284 proto_tree_add_item(t
, hf_x11_glx_render_StencilOp_fail
, tvb
, *offsetp
, 4, byte_order
);
1286 proto_tree_add_item(t
, hf_x11_glx_render_StencilOp_zfail
, tvb
, *offsetp
, 4, byte_order
);
1288 proto_tree_add_item(t
, hf_x11_glx_render_StencilOp_zpass
, tvb
, *offsetp
, 4, byte_order
);
1292 static void mesa_DepthFunc(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1294 proto_tree_add_item(t
, hf_x11_glx_render_DepthFunc_func
, tvb
, *offsetp
, 4, byte_order
);
1298 static void mesa_PixelZoom(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1300 proto_tree_add_item(t
, hf_x11_glx_render_PixelZoom_xfactor
, tvb
, *offsetp
, 4, byte_order
);
1302 proto_tree_add_item(t
, hf_x11_glx_render_PixelZoom_yfactor
, tvb
, *offsetp
, 4, byte_order
);
1306 static void mesa_PixelTransferf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1308 proto_tree_add_item(t
, hf_x11_glx_render_PixelTransferf_pname
, tvb
, *offsetp
, 4, byte_order
);
1310 proto_tree_add_item(t
, hf_x11_glx_render_PixelTransferf_param
, tvb
, *offsetp
, 4, byte_order
);
1314 static void mesa_PixelTransferi(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1316 proto_tree_add_item(t
, hf_x11_glx_render_PixelTransferi_pname
, tvb
, *offsetp
, 4, byte_order
);
1318 proto_tree_add_item(t
, hf_x11_glx_render_PixelTransferi_param
, tvb
, *offsetp
, 4, byte_order
);
1322 static void mesa_PixelMapfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1325 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapfv_map
, tvb
, *offsetp
, 4, byte_order
);
1327 mapsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
1328 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapfv_mapsize
, tvb
, *offsetp
, 4, byte_order
);
1330 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_PixelMapfv_values
, hf_x11_glx_render_PixelMapfv_values_item
, mapsize
, byte_order
);
1333 static void mesa_PixelMapuiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1336 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapuiv_map
, tvb
, *offsetp
, 4, byte_order
);
1338 mapsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
1339 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapuiv_mapsize
, tvb
, *offsetp
, 4, byte_order
);
1341 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_PixelMapuiv_values
, hf_x11_glx_render_PixelMapuiv_values_item
, mapsize
, byte_order
);
1344 static void mesa_PixelMapusv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1347 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapusv_map
, tvb
, *offsetp
, 4, byte_order
);
1349 mapsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
1350 proto_tree_add_item(t
, hf_x11_glx_render_PixelMapusv_mapsize
, tvb
, *offsetp
, 4, byte_order
);
1352 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_PixelMapusv_values
, hf_x11_glx_render_PixelMapusv_values_item
, mapsize
, byte_order
);
1355 static void mesa_ReadBuffer(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1357 proto_tree_add_item(t
, hf_x11_glx_render_ReadBuffer_mode
, tvb
, *offsetp
, 4, byte_order
);
1361 static void mesa_CopyPixels(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1363 proto_tree_add_item(t
, hf_x11_glx_render_CopyPixels_x
, tvb
, *offsetp
, 4, byte_order
);
1365 proto_tree_add_item(t
, hf_x11_glx_render_CopyPixels_y
, tvb
, *offsetp
, 4, byte_order
);
1367 proto_tree_add_item(t
, hf_x11_glx_render_CopyPixels_width
, tvb
, *offsetp
, 4, byte_order
);
1369 proto_tree_add_item(t
, hf_x11_glx_render_CopyPixels_height
, tvb
, *offsetp
, 4, byte_order
);
1371 proto_tree_add_item(t
, hf_x11_glx_render_CopyPixels_type
, tvb
, *offsetp
, 4, byte_order
);
1375 static void mesa_DrawPixels(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1377 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1379 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1381 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1383 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1385 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1387 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1389 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_alignment
, tvb
, *offsetp
, 4, byte_order
);
1391 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_width
, tvb
, *offsetp
, 4, byte_order
);
1393 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_height
, tvb
, *offsetp
, 4, byte_order
);
1395 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_format
, tvb
, *offsetp
, 4, byte_order
);
1397 proto_tree_add_item(t
, hf_x11_glx_render_DrawPixels_type
, tvb
, *offsetp
, 4, byte_order
);
1399 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_DrawPixels_pixels
, (length
- 36) / 1, byte_order
);
1402 static void mesa_DepthRange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1404 proto_tree_add_item(t
, hf_x11_glx_render_DepthRange_zNear
, tvb
, *offsetp
, 8, byte_order
);
1406 proto_tree_add_item(t
, hf_x11_glx_render_DepthRange_zFar
, tvb
, *offsetp
, 8, byte_order
);
1410 static void mesa_Frustum(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1412 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_left
, tvb
, *offsetp
, 8, byte_order
);
1414 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_right
, tvb
, *offsetp
, 8, byte_order
);
1416 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_bottom
, tvb
, *offsetp
, 8, byte_order
);
1418 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_top
, tvb
, *offsetp
, 8, byte_order
);
1420 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_zNear
, tvb
, *offsetp
, 8, byte_order
);
1422 proto_tree_add_item(t
, hf_x11_glx_render_Frustum_zFar
, tvb
, *offsetp
, 8, byte_order
);
1426 static void mesa_LoadIdentity(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
1430 static void mesa_LoadMatrixf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1432 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_LoadMatrixf_m
, hf_x11_glx_render_LoadMatrixf_m_item
, 16, byte_order
);
1435 static void mesa_LoadMatrixd(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1437 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_LoadMatrixd_m
, hf_x11_glx_render_LoadMatrixd_m_item
, 16, byte_order
);
1440 static void mesa_MatrixMode(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1442 proto_tree_add_item(t
, hf_x11_glx_render_MatrixMode_mode
, tvb
, *offsetp
, 4, byte_order
);
1446 static void mesa_MultMatrixf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1448 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_MultMatrixf_m
, hf_x11_glx_render_MultMatrixf_m_item
, 16, byte_order
);
1451 static void mesa_MultMatrixd(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1453 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_MultMatrixd_m
, hf_x11_glx_render_MultMatrixd_m_item
, 16, byte_order
);
1456 static void mesa_Ortho(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1458 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_left
, tvb
, *offsetp
, 8, byte_order
);
1460 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_right
, tvb
, *offsetp
, 8, byte_order
);
1462 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_bottom
, tvb
, *offsetp
, 8, byte_order
);
1464 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_top
, tvb
, *offsetp
, 8, byte_order
);
1466 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_zNear
, tvb
, *offsetp
, 8, byte_order
);
1468 proto_tree_add_item(t
, hf_x11_glx_render_Ortho_zFar
, tvb
, *offsetp
, 8, byte_order
);
1472 static void mesa_PopMatrix(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
1476 static void mesa_PushMatrix(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
1480 static void mesa_Rotated(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1482 proto_tree_add_item(t
, hf_x11_glx_render_Rotated_angle
, tvb
, *offsetp
, 8, byte_order
);
1484 proto_tree_add_item(t
, hf_x11_glx_render_Rotated_x
, tvb
, *offsetp
, 8, byte_order
);
1486 proto_tree_add_item(t
, hf_x11_glx_render_Rotated_y
, tvb
, *offsetp
, 8, byte_order
);
1488 proto_tree_add_item(t
, hf_x11_glx_render_Rotated_z
, tvb
, *offsetp
, 8, byte_order
);
1492 static void mesa_Rotatef(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1494 proto_tree_add_item(t
, hf_x11_glx_render_Rotatef_angle
, tvb
, *offsetp
, 4, byte_order
);
1496 proto_tree_add_item(t
, hf_x11_glx_render_Rotatef_x
, tvb
, *offsetp
, 4, byte_order
);
1498 proto_tree_add_item(t
, hf_x11_glx_render_Rotatef_y
, tvb
, *offsetp
, 4, byte_order
);
1500 proto_tree_add_item(t
, hf_x11_glx_render_Rotatef_z
, tvb
, *offsetp
, 4, byte_order
);
1504 static void mesa_Scaled(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1506 proto_tree_add_item(t
, hf_x11_glx_render_Scaled_x
, tvb
, *offsetp
, 8, byte_order
);
1508 proto_tree_add_item(t
, hf_x11_glx_render_Scaled_y
, tvb
, *offsetp
, 8, byte_order
);
1510 proto_tree_add_item(t
, hf_x11_glx_render_Scaled_z
, tvb
, *offsetp
, 8, byte_order
);
1514 static void mesa_Scalef(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1516 proto_tree_add_item(t
, hf_x11_glx_render_Scalef_x
, tvb
, *offsetp
, 4, byte_order
);
1518 proto_tree_add_item(t
, hf_x11_glx_render_Scalef_y
, tvb
, *offsetp
, 4, byte_order
);
1520 proto_tree_add_item(t
, hf_x11_glx_render_Scalef_z
, tvb
, *offsetp
, 4, byte_order
);
1524 static void mesa_Translated(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1526 proto_tree_add_item(t
, hf_x11_glx_render_Translated_x
, tvb
, *offsetp
, 8, byte_order
);
1528 proto_tree_add_item(t
, hf_x11_glx_render_Translated_y
, tvb
, *offsetp
, 8, byte_order
);
1530 proto_tree_add_item(t
, hf_x11_glx_render_Translated_z
, tvb
, *offsetp
, 8, byte_order
);
1534 static void mesa_Translatef(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1536 proto_tree_add_item(t
, hf_x11_glx_render_Translatef_x
, tvb
, *offsetp
, 4, byte_order
);
1538 proto_tree_add_item(t
, hf_x11_glx_render_Translatef_y
, tvb
, *offsetp
, 4, byte_order
);
1540 proto_tree_add_item(t
, hf_x11_glx_render_Translatef_z
, tvb
, *offsetp
, 4, byte_order
);
1544 static void mesa_Viewport(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1546 proto_tree_add_item(t
, hf_x11_glx_render_Viewport_x
, tvb
, *offsetp
, 4, byte_order
);
1548 proto_tree_add_item(t
, hf_x11_glx_render_Viewport_y
, tvb
, *offsetp
, 4, byte_order
);
1550 proto_tree_add_item(t
, hf_x11_glx_render_Viewport_width
, tvb
, *offsetp
, 4, byte_order
);
1552 proto_tree_add_item(t
, hf_x11_glx_render_Viewport_height
, tvb
, *offsetp
, 4, byte_order
);
1556 static void mesa_DrawArrays(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1558 proto_tree_add_item(t
, hf_x11_glx_render_DrawArrays_mode
, tvb
, *offsetp
, 4, byte_order
);
1560 proto_tree_add_item(t
, hf_x11_glx_render_DrawArrays_first
, tvb
, *offsetp
, 4, byte_order
);
1562 proto_tree_add_item(t
, hf_x11_glx_render_DrawArrays_count
, tvb
, *offsetp
, 4, byte_order
);
1566 static void mesa_PolygonOffset(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1568 proto_tree_add_item(t
, hf_x11_glx_render_PolygonOffset_factor
, tvb
, *offsetp
, 4, byte_order
);
1570 proto_tree_add_item(t
, hf_x11_glx_render_PolygonOffset_units
, tvb
, *offsetp
, 4, byte_order
);
1574 static void mesa_CopyTexImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1576 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
1578 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
1580 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1582 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_x
, tvb
, *offsetp
, 4, byte_order
);
1584 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_y
, tvb
, *offsetp
, 4, byte_order
);
1586 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
1588 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage1D_border
, tvb
, *offsetp
, 4, byte_order
);
1592 static void mesa_CopyTexImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1594 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
1596 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
1598 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1600 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_x
, tvb
, *offsetp
, 4, byte_order
);
1602 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_y
, tvb
, *offsetp
, 4, byte_order
);
1604 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
1606 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
1608 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexImage2D_border
, tvb
, *offsetp
, 4, byte_order
);
1612 static void mesa_CopyTexSubImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1614 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
1616 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
1618 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
1620 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_x
, tvb
, *offsetp
, 4, byte_order
);
1622 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_y
, tvb
, *offsetp
, 4, byte_order
);
1624 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
1628 static void mesa_CopyTexSubImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1630 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
1632 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
1634 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
1636 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
1638 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_x
, tvb
, *offsetp
, 4, byte_order
);
1640 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_y
, tvb
, *offsetp
, 4, byte_order
);
1642 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
1644 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
1648 static void mesa_TexSubImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1650 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1652 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1654 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1656 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1658 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1660 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1662 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_alignment
, tvb
, *offsetp
, 4, byte_order
);
1664 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
1666 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
1668 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
1670 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
1672 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_format
, tvb
, *offsetp
, 4, byte_order
);
1674 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_type
, tvb
, *offsetp
, 4, byte_order
);
1676 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage1D_UNUSED
, tvb
, *offsetp
, 4, byte_order
);
1678 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexSubImage1D_pixels
, (length
- 48) / 1, byte_order
);
1681 static void mesa_TexSubImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1683 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1685 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1687 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1689 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1691 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1693 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1695 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_alignment
, tvb
, *offsetp
, 4, byte_order
);
1697 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
1699 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
1701 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
1703 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
1705 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
1707 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
1709 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_format
, tvb
, *offsetp
, 4, byte_order
);
1711 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_type
, tvb
, *offsetp
, 4, byte_order
);
1713 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage2D_UNUSED
, tvb
, *offsetp
, 4, byte_order
);
1715 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexSubImage2D_pixels
, (length
- 56) / 1, byte_order
);
1718 static void mesa_BindTexture(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1720 proto_tree_add_item(t
, hf_x11_glx_render_BindTexture_target
, tvb
, *offsetp
, 4, byte_order
);
1722 proto_tree_add_item(t
, hf_x11_glx_render_BindTexture_texture
, tvb
, *offsetp
, 4, byte_order
);
1726 static void mesa_PrioritizeTextures(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1729 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
1730 proto_tree_add_item(t
, hf_x11_glx_render_PrioritizeTextures_n
, tvb
, *offsetp
, 4, byte_order
);
1732 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_PrioritizeTextures_textures
, hf_x11_glx_render_PrioritizeTextures_textures_item
, n
, byte_order
);
1733 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_PrioritizeTextures_priorities
, hf_x11_glx_render_PrioritizeTextures_priorities_item
, n
, byte_order
);
1736 static void mesa_Indexubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1738 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_Indexubv_c
, 1, byte_order
);
1741 static void mesa_BlendColor(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1743 proto_tree_add_item(t
, hf_x11_glx_render_BlendColor_red
, tvb
, *offsetp
, 4, byte_order
);
1745 proto_tree_add_item(t
, hf_x11_glx_render_BlendColor_green
, tvb
, *offsetp
, 4, byte_order
);
1747 proto_tree_add_item(t
, hf_x11_glx_render_BlendColor_blue
, tvb
, *offsetp
, 4, byte_order
);
1749 proto_tree_add_item(t
, hf_x11_glx_render_BlendColor_alpha
, tvb
, *offsetp
, 4, byte_order
);
1753 static void mesa_BlendEquation(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1755 proto_tree_add_item(t
, hf_x11_glx_render_BlendEquation_mode
, tvb
, *offsetp
, 4, byte_order
);
1759 static void mesa_ColorTable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1761 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1763 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1765 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1767 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1769 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1771 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1773 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_alignment
, tvb
, *offsetp
, 4, byte_order
);
1775 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_target
, tvb
, *offsetp
, 4, byte_order
);
1777 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1779 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_width
, tvb
, *offsetp
, 4, byte_order
);
1781 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_format
, tvb
, *offsetp
, 4, byte_order
);
1783 proto_tree_add_item(t
, hf_x11_glx_render_ColorTable_type
, tvb
, *offsetp
, 4, byte_order
);
1785 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ColorTable_table
, (length
- 40) / 1, byte_order
);
1788 static void mesa_ColorTableParameterfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1790 proto_tree_add_item(t
, hf_x11_glx_render_ColorTableParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
1792 proto_tree_add_item(t
, hf_x11_glx_render_ColorTableParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
1794 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ColorTableParameterfv_params
, hf_x11_glx_render_ColorTableParameterfv_params_item
, (length
- 8) / 4, byte_order
);
1797 static void mesa_ColorTableParameteriv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1799 proto_tree_add_item(t
, hf_x11_glx_render_ColorTableParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
1801 proto_tree_add_item(t
, hf_x11_glx_render_ColorTableParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
1803 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_ColorTableParameteriv_params
, hf_x11_glx_render_ColorTableParameteriv_params_item
, (length
- 8) / 4, byte_order
);
1806 static void mesa_CopyColorTable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1808 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorTable_target
, tvb
, *offsetp
, 4, byte_order
);
1810 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorTable_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1812 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorTable_x
, tvb
, *offsetp
, 4, byte_order
);
1814 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorTable_y
, tvb
, *offsetp
, 4, byte_order
);
1816 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorTable_width
, tvb
, *offsetp
, 4, byte_order
);
1820 static void mesa_ColorSubTable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1822 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1824 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1826 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1828 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1830 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1832 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1834 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_alignment
, tvb
, *offsetp
, 4, byte_order
);
1836 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_target
, tvb
, *offsetp
, 4, byte_order
);
1838 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_start
, tvb
, *offsetp
, 4, byte_order
);
1840 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_count
, tvb
, *offsetp
, 4, byte_order
);
1842 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_format
, tvb
, *offsetp
, 4, byte_order
);
1844 proto_tree_add_item(t
, hf_x11_glx_render_ColorSubTable_type
, tvb
, *offsetp
, 4, byte_order
);
1846 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ColorSubTable_data
, (length
- 40) / 1, byte_order
);
1849 static void mesa_CopyColorSubTable(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1851 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorSubTable_target
, tvb
, *offsetp
, 4, byte_order
);
1853 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorSubTable_start
, tvb
, *offsetp
, 4, byte_order
);
1855 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorSubTable_x
, tvb
, *offsetp
, 4, byte_order
);
1857 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorSubTable_y
, tvb
, *offsetp
, 4, byte_order
);
1859 proto_tree_add_item(t
, hf_x11_glx_render_CopyColorSubTable_width
, tvb
, *offsetp
, 4, byte_order
);
1863 static void mesa_ConvolutionFilter1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1865 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1867 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1869 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1871 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1873 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1875 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1877 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_alignment
, tvb
, *offsetp
, 4, byte_order
);
1879 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_target
, tvb
, *offsetp
, 4, byte_order
);
1881 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1883 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_width
, tvb
, *offsetp
, 4, byte_order
);
1885 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_format
, tvb
, *offsetp
, 4, byte_order
);
1887 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter1D_type
, tvb
, *offsetp
, 4, byte_order
);
1889 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ConvolutionFilter1D_image
, (length
- 40) / 1, byte_order
);
1892 static void mesa_ConvolutionFilter2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1894 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
1896 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
1898 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
1900 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
1902 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
1904 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
1906 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_alignment
, tvb
, *offsetp
, 4, byte_order
);
1908 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_target
, tvb
, *offsetp
, 4, byte_order
);
1910 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1912 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_width
, tvb
, *offsetp
, 4, byte_order
);
1914 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_height
, tvb
, *offsetp
, 4, byte_order
);
1916 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_format
, tvb
, *offsetp
, 4, byte_order
);
1918 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionFilter2D_type
, tvb
, *offsetp
, 4, byte_order
);
1920 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ConvolutionFilter2D_image
, (length
- 44) / 1, byte_order
);
1923 static void mesa_ConvolutionParameterf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1925 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameterf_target
, tvb
, *offsetp
, 4, byte_order
);
1927 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameterf_pname
, tvb
, *offsetp
, 4, byte_order
);
1929 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameterf_params
, tvb
, *offsetp
, 4, byte_order
);
1933 static void mesa_ConvolutionParameterfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1935 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
1937 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
1939 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ConvolutionParameterfv_params
, hf_x11_glx_render_ConvolutionParameterfv_params_item
, (length
- 8) / 4, byte_order
);
1942 static void mesa_ConvolutionParameteri(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1944 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameteri_target
, tvb
, *offsetp
, 4, byte_order
);
1946 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameteri_pname
, tvb
, *offsetp
, 4, byte_order
);
1948 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameteri_params
, tvb
, *offsetp
, 4, byte_order
);
1952 static void mesa_ConvolutionParameteriv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1954 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
1956 proto_tree_add_item(t
, hf_x11_glx_render_ConvolutionParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
1958 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_ConvolutionParameteriv_params
, hf_x11_glx_render_ConvolutionParameteriv_params_item
, (length
- 8) / 4, byte_order
);
1961 static void mesa_CopyConvolutionFilter1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1963 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter1D_target
, tvb
, *offsetp
, 4, byte_order
);
1965 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter1D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1967 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter1D_x
, tvb
, *offsetp
, 4, byte_order
);
1969 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter1D_y
, tvb
, *offsetp
, 4, byte_order
);
1971 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter1D_width
, tvb
, *offsetp
, 4, byte_order
);
1975 static void mesa_CopyConvolutionFilter2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1977 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_target
, tvb
, *offsetp
, 4, byte_order
);
1979 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1981 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_x
, tvb
, *offsetp
, 4, byte_order
);
1983 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_y
, tvb
, *offsetp
, 4, byte_order
);
1985 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_width
, tvb
, *offsetp
, 4, byte_order
);
1987 proto_tree_add_item(t
, hf_x11_glx_render_CopyConvolutionFilter2D_height
, tvb
, *offsetp
, 4, byte_order
);
1991 static void mesa_SeparableFilter2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
1993 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_target
, tvb
, *offsetp
, 4, byte_order
);
1995 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
1997 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_width
, tvb
, *offsetp
, 4, byte_order
);
1999 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_height
, tvb
, *offsetp
, 4, byte_order
);
2001 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_format
, tvb
, *offsetp
, 4, byte_order
);
2003 proto_tree_add_item(t
, hf_x11_glx_render_SeparableFilter2D_type
, tvb
, *offsetp
, 4, byte_order
);
2005 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_SeparableFilter2D_row
, (length
- 24) / 1, byte_order
);
2006 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_SeparableFilter2D_column
, (length
- 24) / 1, byte_order
);
2009 static void mesa_Histogram(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2011 proto_tree_add_item(t
, hf_x11_glx_render_Histogram_target
, tvb
, *offsetp
, 4, byte_order
);
2013 proto_tree_add_item(t
, hf_x11_glx_render_Histogram_width
, tvb
, *offsetp
, 4, byte_order
);
2015 proto_tree_add_item(t
, hf_x11_glx_render_Histogram_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2017 proto_tree_add_item(t
, hf_x11_glx_render_Histogram_sink
, tvb
, *offsetp
, 1, byte_order
);
2021 static void mesa_Minmax(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2023 proto_tree_add_item(t
, hf_x11_glx_render_Minmax_target
, tvb
, *offsetp
, 4, byte_order
);
2025 proto_tree_add_item(t
, hf_x11_glx_render_Minmax_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2027 proto_tree_add_item(t
, hf_x11_glx_render_Minmax_sink
, tvb
, *offsetp
, 1, byte_order
);
2031 static void mesa_ResetHistogram(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2033 proto_tree_add_item(t
, hf_x11_glx_render_ResetHistogram_target
, tvb
, *offsetp
, 4, byte_order
);
2037 static void mesa_ResetMinmax(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2039 proto_tree_add_item(t
, hf_x11_glx_render_ResetMinmax_target
, tvb
, *offsetp
, 4, byte_order
);
2043 static void mesa_TexImage3D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2045 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
2047 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
2049 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
2051 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
2053 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
2055 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
2057 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_alignment
, tvb
, *offsetp
, 4, byte_order
);
2059 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_target
, tvb
, *offsetp
, 4, byte_order
);
2061 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_level
, tvb
, *offsetp
, 4, byte_order
);
2063 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2065 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_width
, tvb
, *offsetp
, 4, byte_order
);
2067 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_height
, tvb
, *offsetp
, 4, byte_order
);
2069 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_depth
, tvb
, *offsetp
, 4, byte_order
);
2071 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_border
, tvb
, *offsetp
, 4, byte_order
);
2073 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_format
, tvb
, *offsetp
, 4, byte_order
);
2075 proto_tree_add_item(t
, hf_x11_glx_render_TexImage3D_type
, tvb
, *offsetp
, 4, byte_order
);
2077 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexImage3D_pixels
, (length
- 56) / 1, byte_order
);
2080 static void mesa_TexSubImage3D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2082 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
2084 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
2086 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
2088 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_rowlength
, tvb
, *offsetp
, 4, byte_order
);
2090 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_skiprows
, tvb
, *offsetp
, 4, byte_order
);
2092 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_skippixels
, tvb
, *offsetp
, 4, byte_order
);
2094 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_alignment
, tvb
, *offsetp
, 4, byte_order
);
2096 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_target
, tvb
, *offsetp
, 4, byte_order
);
2098 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_level
, tvb
, *offsetp
, 4, byte_order
);
2100 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2102 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
2104 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_zoffset
, tvb
, *offsetp
, 4, byte_order
);
2106 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_width
, tvb
, *offsetp
, 4, byte_order
);
2108 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_height
, tvb
, *offsetp
, 4, byte_order
);
2110 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_depth
, tvb
, *offsetp
, 4, byte_order
);
2112 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_format
, tvb
, *offsetp
, 4, byte_order
);
2114 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_type
, tvb
, *offsetp
, 4, byte_order
);
2116 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage3D_UNUSED
, tvb
, *offsetp
, 4, byte_order
);
2118 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexSubImage3D_pixels
, (length
- 64) / 1, byte_order
);
2121 static void mesa_CopyTexSubImage3D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2123 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_target
, tvb
, *offsetp
, 4, byte_order
);
2125 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_level
, tvb
, *offsetp
, 4, byte_order
);
2127 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2129 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
2131 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_zoffset
, tvb
, *offsetp
, 4, byte_order
);
2133 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_x
, tvb
, *offsetp
, 4, byte_order
);
2135 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_y
, tvb
, *offsetp
, 4, byte_order
);
2137 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_width
, tvb
, *offsetp
, 4, byte_order
);
2139 proto_tree_add_item(t
, hf_x11_glx_render_CopyTexSubImage3D_height
, tvb
, *offsetp
, 4, byte_order
);
2143 static void mesa_ActiveTexture(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2145 proto_tree_add_item(t
, hf_x11_glx_render_ActiveTexture_texture
, tvb
, *offsetp
, 4, byte_order
);
2149 static void mesa_MultiTexCoord1dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2151 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord1dv_target
, tvb
, *offsetp
, 4, byte_order
);
2153 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord1dv_v
, hf_x11_glx_render_MultiTexCoord1dv_v_item
, 1, byte_order
);
2156 static void mesa_MultiTexCoord1iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2158 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord1iv_target
, tvb
, *offsetp
, 4, byte_order
);
2160 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord1iv_v
, hf_x11_glx_render_MultiTexCoord1iv_v_item
, 1, byte_order
);
2163 static void mesa_MultiTexCoord1sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2165 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord1sv_target
, tvb
, *offsetp
, 4, byte_order
);
2167 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord1sv_v
, hf_x11_glx_render_MultiTexCoord1sv_v_item
, 1, byte_order
);
2170 static void mesa_MultiTexCoord2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2172 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord2dv_target
, tvb
, *offsetp
, 4, byte_order
);
2174 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord2dv_v
, hf_x11_glx_render_MultiTexCoord2dv_v_item
, 2, byte_order
);
2177 static void mesa_MultiTexCoord2iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2179 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord2iv_target
, tvb
, *offsetp
, 4, byte_order
);
2181 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord2iv_v
, hf_x11_glx_render_MultiTexCoord2iv_v_item
, 2, byte_order
);
2184 static void mesa_MultiTexCoord2sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2186 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord2sv_target
, tvb
, *offsetp
, 4, byte_order
);
2188 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord2sv_v
, hf_x11_glx_render_MultiTexCoord2sv_v_item
, 2, byte_order
);
2191 static void mesa_MultiTexCoord3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2193 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord3dv_target
, tvb
, *offsetp
, 4, byte_order
);
2195 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord3dv_v
, hf_x11_glx_render_MultiTexCoord3dv_v_item
, 3, byte_order
);
2198 static void mesa_MultiTexCoord3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2200 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord3iv_target
, tvb
, *offsetp
, 4, byte_order
);
2202 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord3iv_v
, hf_x11_glx_render_MultiTexCoord3iv_v_item
, 3, byte_order
);
2205 static void mesa_MultiTexCoord3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2207 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord3sv_target
, tvb
, *offsetp
, 4, byte_order
);
2209 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord3sv_v
, hf_x11_glx_render_MultiTexCoord3sv_v_item
, 3, byte_order
);
2212 static void mesa_MultiTexCoord4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2214 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord4dv_target
, tvb
, *offsetp
, 4, byte_order
);
2216 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord4dv_v
, hf_x11_glx_render_MultiTexCoord4dv_v_item
, 4, byte_order
);
2219 static void mesa_MultiTexCoord4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2221 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord4iv_target
, tvb
, *offsetp
, 4, byte_order
);
2223 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord4iv_v
, hf_x11_glx_render_MultiTexCoord4iv_v_item
, 4, byte_order
);
2226 static void mesa_MultiTexCoord4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2228 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord4sv_target
, tvb
, *offsetp
, 4, byte_order
);
2230 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord4sv_v
, hf_x11_glx_render_MultiTexCoord4sv_v_item
, 4, byte_order
);
2233 static void mesa_SampleCoverage(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2235 proto_tree_add_item(t
, hf_x11_glx_render_SampleCoverage_value
, tvb
, *offsetp
, 4, byte_order
);
2237 proto_tree_add_item(t
, hf_x11_glx_render_SampleCoverage_invert
, tvb
, *offsetp
, 1, byte_order
);
2241 static void mesa_CompressedTexImage3D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2244 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_target
, tvb
, *offsetp
, 4, byte_order
);
2246 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_level
, tvb
, *offsetp
, 4, byte_order
);
2248 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2250 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_width
, tvb
, *offsetp
, 4, byte_order
);
2252 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_height
, tvb
, *offsetp
, 4, byte_order
);
2254 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_depth
, tvb
, *offsetp
, 4, byte_order
);
2256 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_border
, tvb
, *offsetp
, 4, byte_order
);
2258 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2259 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage3D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2261 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexImage3D_data
, imageSize
, byte_order
);
2264 static void mesa_CompressedTexImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2267 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
2269 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
2271 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2273 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
2275 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
2277 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_border
, tvb
, *offsetp
, 4, byte_order
);
2279 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2280 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage2D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2282 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexImage2D_data
, imageSize
, byte_order
);
2285 static void mesa_CompressedTexImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2288 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
2290 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
2292 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2294 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
2296 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_border
, tvb
, *offsetp
, 4, byte_order
);
2298 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2299 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexImage1D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2301 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexImage1D_data
, imageSize
, byte_order
);
2304 static void mesa_CompressedTexSubImage3D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2307 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_target
, tvb
, *offsetp
, 4, byte_order
);
2309 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_level
, tvb
, *offsetp
, 4, byte_order
);
2311 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2313 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
2315 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_zoffset
, tvb
, *offsetp
, 4, byte_order
);
2317 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_width
, tvb
, *offsetp
, 4, byte_order
);
2319 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_height
, tvb
, *offsetp
, 4, byte_order
);
2321 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_depth
, tvb
, *offsetp
, 4, byte_order
);
2323 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_format
, tvb
, *offsetp
, 4, byte_order
);
2325 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2326 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage3D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2328 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexSubImage3D_data
, imageSize
, byte_order
);
2331 static void mesa_CompressedTexSubImage2D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2334 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_target
, tvb
, *offsetp
, 4, byte_order
);
2336 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_level
, tvb
, *offsetp
, 4, byte_order
);
2338 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2340 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_yoffset
, tvb
, *offsetp
, 4, byte_order
);
2342 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_width
, tvb
, *offsetp
, 4, byte_order
);
2344 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_height
, tvb
, *offsetp
, 4, byte_order
);
2346 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_format
, tvb
, *offsetp
, 4, byte_order
);
2348 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2349 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage2D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2351 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexSubImage2D_data
, imageSize
, byte_order
);
2354 static void mesa_CompressedTexSubImage1D(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2357 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_target
, tvb
, *offsetp
, 4, byte_order
);
2359 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_level
, tvb
, *offsetp
, 4, byte_order
);
2361 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2363 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_width
, tvb
, *offsetp
, 4, byte_order
);
2365 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_format
, tvb
, *offsetp
, 4, byte_order
);
2367 imageSize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2368 proto_tree_add_item(t
, hf_x11_glx_render_CompressedTexSubImage1D_imageSize
, tvb
, *offsetp
, 4, byte_order
);
2370 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_CompressedTexSubImage1D_data
, imageSize
, byte_order
);
2373 static void mesa_BlendFuncSeparate(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2375 proto_tree_add_item(t
, hf_x11_glx_render_BlendFuncSeparate_sfactorRGB
, tvb
, *offsetp
, 4, byte_order
);
2377 proto_tree_add_item(t
, hf_x11_glx_render_BlendFuncSeparate_dfactorRGB
, tvb
, *offsetp
, 4, byte_order
);
2379 proto_tree_add_item(t
, hf_x11_glx_render_BlendFuncSeparate_sfactorAlpha
, tvb
, *offsetp
, 4, byte_order
);
2381 proto_tree_add_item(t
, hf_x11_glx_render_BlendFuncSeparate_dfactorAlpha
, tvb
, *offsetp
, 4, byte_order
);
2385 static void mesa_FogCoorddv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2387 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_FogCoorddv_coord
, hf_x11_glx_render_FogCoorddv_coord_item
, 1, byte_order
);
2390 static void mesa_PointParameterf(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2392 proto_tree_add_item(t
, hf_x11_glx_render_PointParameterf_pname
, tvb
, *offsetp
, 4, byte_order
);
2394 proto_tree_add_item(t
, hf_x11_glx_render_PointParameterf_param
, tvb
, *offsetp
, 4, byte_order
);
2398 static void mesa_PointParameterfv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2400 proto_tree_add_item(t
, hf_x11_glx_render_PointParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
2402 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_PointParameterfv_params
, hf_x11_glx_render_PointParameterfv_params_item
, (length
- 4) / 4, byte_order
);
2405 static void mesa_PointParameteri(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2407 proto_tree_add_item(t
, hf_x11_glx_render_PointParameteri_pname
, tvb
, *offsetp
, 4, byte_order
);
2409 proto_tree_add_item(t
, hf_x11_glx_render_PointParameteri_param
, tvb
, *offsetp
, 4, byte_order
);
2413 static void mesa_PointParameteriv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2415 proto_tree_add_item(t
, hf_x11_glx_render_PointParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
2417 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_PointParameteriv_params
, hf_x11_glx_render_PointParameteriv_params_item
, (length
- 4) / 4, byte_order
);
2420 static void mesa_SecondaryColor3bv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2422 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3bv_v
, 3, byte_order
);
2425 static void mesa_SecondaryColor3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2427 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3dv_v
, hf_x11_glx_render_SecondaryColor3dv_v_item
, 3, byte_order
);
2430 static void mesa_SecondaryColor3iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2432 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3iv_v
, hf_x11_glx_render_SecondaryColor3iv_v_item
, 3, byte_order
);
2435 static void mesa_SecondaryColor3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2437 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3sv_v
, hf_x11_glx_render_SecondaryColor3sv_v_item
, 3, byte_order
);
2440 static void mesa_SecondaryColor3ubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2442 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3ubv_v
, 3, byte_order
);
2445 static void mesa_SecondaryColor3uiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2447 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3uiv_v
, hf_x11_glx_render_SecondaryColor3uiv_v_item
, 3, byte_order
);
2450 static void mesa_SecondaryColor3usv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2452 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3usv_v
, hf_x11_glx_render_SecondaryColor3usv_v_item
, 3, byte_order
);
2455 static void mesa_WindowPos3fv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2457 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_WindowPos3fv_v
, hf_x11_glx_render_WindowPos3fv_v_item
, 3, byte_order
);
2460 static void mesa_BeginQuery(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2462 proto_tree_add_item(t
, hf_x11_glx_render_BeginQuery_target
, tvb
, *offsetp
, 4, byte_order
);
2464 proto_tree_add_item(t
, hf_x11_glx_render_BeginQuery_id
, tvb
, *offsetp
, 4, byte_order
);
2468 static void mesa_EndQuery(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2470 proto_tree_add_item(t
, hf_x11_glx_render_EndQuery_target
, tvb
, *offsetp
, 4, byte_order
);
2474 static void mesa_BlendEquationSeparate(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2476 proto_tree_add_item(t
, hf_x11_glx_render_BlendEquationSeparate_modeRGB
, tvb
, *offsetp
, 4, byte_order
);
2478 proto_tree_add_item(t
, hf_x11_glx_render_BlendEquationSeparate_modeA
, tvb
, *offsetp
, 4, byte_order
);
2482 static void mesa_DrawBuffers(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2485 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2486 proto_tree_add_item(t
, hf_x11_glx_render_DrawBuffers_n
, tvb
, *offsetp
, 4, byte_order
);
2488 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_DrawBuffers_bufs
, hf_x11_glx_render_DrawBuffers_bufs_item
, n
, byte_order
);
2491 static void mesa_VertexAttrib1dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2493 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1dv_index
, tvb
, *offsetp
, 4, byte_order
);
2495 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1dv_v
, hf_x11_glx_render_VertexAttrib1dv_v_item
, 1, byte_order
);
2498 static void mesa_VertexAttrib1sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2500 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1sv_index
, tvb
, *offsetp
, 4, byte_order
);
2502 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1sv_v
, hf_x11_glx_render_VertexAttrib1sv_v_item
, 1, byte_order
);
2505 static void mesa_VertexAttrib2dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2507 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2dv_index
, tvb
, *offsetp
, 4, byte_order
);
2509 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2dv_v
, hf_x11_glx_render_VertexAttrib2dv_v_item
, 2, byte_order
);
2512 static void mesa_VertexAttrib2sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2514 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2sv_index
, tvb
, *offsetp
, 4, byte_order
);
2516 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2sv_v
, hf_x11_glx_render_VertexAttrib2sv_v_item
, 2, byte_order
);
2519 static void mesa_VertexAttrib3dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2521 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3dv_index
, tvb
, *offsetp
, 4, byte_order
);
2523 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3dv_v
, hf_x11_glx_render_VertexAttrib3dv_v_item
, 3, byte_order
);
2526 static void mesa_VertexAttrib3sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2528 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3sv_index
, tvb
, *offsetp
, 4, byte_order
);
2530 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3sv_v
, hf_x11_glx_render_VertexAttrib3sv_v_item
, 3, byte_order
);
2533 static void mesa_VertexAttrib4Nbv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2535 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Nbv_index
, tvb
, *offsetp
, 4, byte_order
);
2537 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Nbv_v
, 4, byte_order
);
2540 static void mesa_VertexAttrib4Niv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2542 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Niv_index
, tvb
, *offsetp
, 4, byte_order
);
2544 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Niv_v
, hf_x11_glx_render_VertexAttrib4Niv_v_item
, 4, byte_order
);
2547 static void mesa_VertexAttrib4Nsv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2549 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Nsv_index
, tvb
, *offsetp
, 4, byte_order
);
2551 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Nsv_v
, hf_x11_glx_render_VertexAttrib4Nsv_v_item
, 4, byte_order
);
2554 static void mesa_VertexAttrib4Nubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2556 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Nubv_index
, tvb
, *offsetp
, 4, byte_order
);
2558 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Nubv_v
, 4, byte_order
);
2561 static void mesa_VertexAttrib4Nuiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2563 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Nuiv_index
, tvb
, *offsetp
, 4, byte_order
);
2565 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Nuiv_v
, hf_x11_glx_render_VertexAttrib4Nuiv_v_item
, 4, byte_order
);
2568 static void mesa_VertexAttrib4Nusv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2570 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4Nusv_index
, tvb
, *offsetp
, 4, byte_order
);
2572 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4Nusv_v
, hf_x11_glx_render_VertexAttrib4Nusv_v_item
, 4, byte_order
);
2575 static void mesa_VertexAttrib4bv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2577 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4bv_index
, tvb
, *offsetp
, 4, byte_order
);
2579 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4bv_v
, 4, byte_order
);
2582 static void mesa_VertexAttrib4dv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2584 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4dv_index
, tvb
, *offsetp
, 4, byte_order
);
2586 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4dv_v
, hf_x11_glx_render_VertexAttrib4dv_v_item
, 4, byte_order
);
2589 static void mesa_VertexAttrib4iv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2591 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4iv_index
, tvb
, *offsetp
, 4, byte_order
);
2593 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4iv_v
, hf_x11_glx_render_VertexAttrib4iv_v_item
, 4, byte_order
);
2596 static void mesa_VertexAttrib4sv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2598 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4sv_index
, tvb
, *offsetp
, 4, byte_order
);
2600 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4sv_v
, hf_x11_glx_render_VertexAttrib4sv_v_item
, 4, byte_order
);
2603 static void mesa_VertexAttrib4ubv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2605 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4ubv_index
, tvb
, *offsetp
, 4, byte_order
);
2607 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4ubv_v
, 4, byte_order
);
2610 static void mesa_VertexAttrib4uiv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2612 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4uiv_index
, tvb
, *offsetp
, 4, byte_order
);
2614 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4uiv_v
, hf_x11_glx_render_VertexAttrib4uiv_v_item
, 4, byte_order
);
2617 static void mesa_VertexAttrib4usv(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2619 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4usv_index
, tvb
, *offsetp
, 4, byte_order
);
2621 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4usv_v
, hf_x11_glx_render_VertexAttrib4usv_v_item
, 4, byte_order
);
2624 static void mesa_MultiTexCoord1fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2626 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord1fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2628 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord1fvARB_v
, hf_x11_glx_render_MultiTexCoord1fvARB_v_item
, 1, byte_order
);
2631 static void mesa_MultiTexCoord2fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2633 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord2fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2635 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord2fvARB_v
, hf_x11_glx_render_MultiTexCoord2fvARB_v_item
, 2, byte_order
);
2638 static void mesa_MultiTexCoord3fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2640 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord3fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2642 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord3fvARB_v
, hf_x11_glx_render_MultiTexCoord3fvARB_v_item
, 3, byte_order
);
2645 static void mesa_MultiTexCoord4fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2647 proto_tree_add_item(t
, hf_x11_glx_render_MultiTexCoord4fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2649 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_MultiTexCoord4fvARB_v
, hf_x11_glx_render_MultiTexCoord4fvARB_v_item
, 4, byte_order
);
2652 static void mesa_CurrentPaletteMatrixARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2654 proto_tree_add_item(t
, hf_x11_glx_render_CurrentPaletteMatrixARB_index
, tvb
, *offsetp
, 4, byte_order
);
2658 static void mesa_MatrixIndexubvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2661 size
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2662 proto_tree_add_item(t
, hf_x11_glx_render_MatrixIndexubvARB_size
, tvb
, *offsetp
, 4, byte_order
);
2664 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_MatrixIndexubvARB_indices
, size
, byte_order
);
2667 static void mesa_MatrixIndexusvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2670 size
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2671 proto_tree_add_item(t
, hf_x11_glx_render_MatrixIndexusvARB_size
, tvb
, *offsetp
, 4, byte_order
);
2673 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_render_MatrixIndexusvARB_indices
, hf_x11_glx_render_MatrixIndexusvARB_indices_item
, size
, byte_order
);
2676 static void mesa_MatrixIndexuivARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2679 size
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2680 proto_tree_add_item(t
, hf_x11_glx_render_MatrixIndexuivARB_size
, tvb
, *offsetp
, 4, byte_order
);
2682 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_MatrixIndexuivARB_indices
, hf_x11_glx_render_MatrixIndexuivARB_indices_item
, size
, byte_order
);
2685 static void mesa_VertexAttrib1fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2687 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2689 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1fvARB_v
, hf_x11_glx_render_VertexAttrib1fvARB_v_item
, 1, byte_order
);
2692 static void mesa_VertexAttrib2fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2694 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2696 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2fvARB_v
, hf_x11_glx_render_VertexAttrib2fvARB_v_item
, 2, byte_order
);
2699 static void mesa_VertexAttrib3fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2701 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2703 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3fvARB_v
, hf_x11_glx_render_VertexAttrib3fvARB_v_item
, 3, byte_order
);
2706 static void mesa_VertexAttrib4fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2708 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2710 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4fvARB_v
, hf_x11_glx_render_VertexAttrib4fvARB_v_item
, 4, byte_order
);
2713 static void mesa_ProgramStringARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2716 proto_tree_add_item(t
, hf_x11_glx_render_ProgramStringARB_target
, tvb
, *offsetp
, 4, byte_order
);
2718 proto_tree_add_item(t
, hf_x11_glx_render_ProgramStringARB_format
, tvb
, *offsetp
, 4, byte_order
);
2720 len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2721 proto_tree_add_item(t
, hf_x11_glx_render_ProgramStringARB_len
, tvb
, *offsetp
, 4, byte_order
);
2723 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramStringARB_string
, len
, byte_order
);
2726 static void mesa_BindProgramARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2728 proto_tree_add_item(t
, hf_x11_glx_render_BindProgramARB_target
, tvb
, *offsetp
, 4, byte_order
);
2730 proto_tree_add_item(t
, hf_x11_glx_render_BindProgramARB_program
, tvb
, *offsetp
, 4, byte_order
);
2734 static void mesa_ProgramEnvParameter4dvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2736 proto_tree_add_item(t
, hf_x11_glx_render_ProgramEnvParameter4dvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2738 proto_tree_add_item(t
, hf_x11_glx_render_ProgramEnvParameter4dvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2740 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramEnvParameter4dvARB_params
, hf_x11_glx_render_ProgramEnvParameter4dvARB_params_item
, 4, byte_order
);
2743 static void mesa_ProgramEnvParameter4fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2745 proto_tree_add_item(t
, hf_x11_glx_render_ProgramEnvParameter4fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2747 proto_tree_add_item(t
, hf_x11_glx_render_ProgramEnvParameter4fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2749 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramEnvParameter4fvARB_params
, hf_x11_glx_render_ProgramEnvParameter4fvARB_params_item
, 4, byte_order
);
2752 static void mesa_ProgramLocalParameter4dvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2754 proto_tree_add_item(t
, hf_x11_glx_render_ProgramLocalParameter4dvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2756 proto_tree_add_item(t
, hf_x11_glx_render_ProgramLocalParameter4dvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2758 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramLocalParameter4dvARB_params
, hf_x11_glx_render_ProgramLocalParameter4dvARB_params_item
, 4, byte_order
);
2761 static void mesa_ProgramLocalParameter4fvARB(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2763 proto_tree_add_item(t
, hf_x11_glx_render_ProgramLocalParameter4fvARB_target
, tvb
, *offsetp
, 4, byte_order
);
2765 proto_tree_add_item(t
, hf_x11_glx_render_ProgramLocalParameter4fvARB_index
, tvb
, *offsetp
, 4, byte_order
);
2767 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramLocalParameter4fvARB_params
, hf_x11_glx_render_ProgramLocalParameter4fvARB_params_item
, 4, byte_order
);
2770 static void mesa_TexFilterFuncSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2773 proto_tree_add_item(t
, hf_x11_glx_render_TexFilterFuncSGIS_target
, tvb
, *offsetp
, 4, byte_order
);
2775 proto_tree_add_item(t
, hf_x11_glx_render_TexFilterFuncSGIS_filter
, tvb
, *offsetp
, 4, byte_order
);
2777 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2778 proto_tree_add_item(t
, hf_x11_glx_render_TexFilterFuncSGIS_n
, tvb
, *offsetp
, 4, byte_order
);
2780 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_TexFilterFuncSGIS_weights
, hf_x11_glx_render_TexFilterFuncSGIS_weights_item
, n
, byte_order
);
2783 static void mesa_TexImage4DSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2785 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
2787 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
2789 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
2791 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_rowlength
, tvb
, *offsetp
, 4, byte_order
);
2793 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_skiprows
, tvb
, *offsetp
, 4, byte_order
);
2795 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_skippixels
, tvb
, *offsetp
, 4, byte_order
);
2797 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_alignment
, tvb
, *offsetp
, 4, byte_order
);
2799 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_target
, tvb
, *offsetp
, 4, byte_order
);
2801 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_level
, tvb
, *offsetp
, 4, byte_order
);
2803 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_internalformat
, tvb
, *offsetp
, 4, byte_order
);
2805 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_width
, tvb
, *offsetp
, 4, byte_order
);
2807 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_height
, tvb
, *offsetp
, 4, byte_order
);
2809 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_depth
, tvb
, *offsetp
, 4, byte_order
);
2811 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_size4d
, tvb
, *offsetp
, 4, byte_order
);
2813 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_border
, tvb
, *offsetp
, 4, byte_order
);
2815 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_format
, tvb
, *offsetp
, 4, byte_order
);
2817 proto_tree_add_item(t
, hf_x11_glx_render_TexImage4DSGIS_type
, tvb
, *offsetp
, 4, byte_order
);
2819 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexImage4DSGIS_pixels
, (length
- 60) / 1, byte_order
);
2822 static void mesa_TexSubImage4DSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2824 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_swapbytes
, tvb
, *offsetp
, 1, byte_order
);
2826 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_lsbfirst
, tvb
, *offsetp
, 1, byte_order
);
2828 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
2830 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_rowlength
, tvb
, *offsetp
, 4, byte_order
);
2832 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_skiprows
, tvb
, *offsetp
, 4, byte_order
);
2834 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_skippixels
, tvb
, *offsetp
, 4, byte_order
);
2836 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_alignment
, tvb
, *offsetp
, 4, byte_order
);
2838 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_target
, tvb
, *offsetp
, 4, byte_order
);
2840 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_level
, tvb
, *offsetp
, 4, byte_order
);
2842 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_xoffset
, tvb
, *offsetp
, 4, byte_order
);
2844 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_yoffset
, tvb
, *offsetp
, 4, byte_order
);
2846 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_zoffset
, tvb
, *offsetp
, 4, byte_order
);
2848 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_woffset
, tvb
, *offsetp
, 4, byte_order
);
2850 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_width
, tvb
, *offsetp
, 4, byte_order
);
2852 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_height
, tvb
, *offsetp
, 4, byte_order
);
2854 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_depth
, tvb
, *offsetp
, 4, byte_order
);
2856 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_size4d
, tvb
, *offsetp
, 4, byte_order
);
2858 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_format
, tvb
, *offsetp
, 4, byte_order
);
2860 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_type
, tvb
, *offsetp
, 4, byte_order
);
2862 proto_tree_add_item(t
, hf_x11_glx_render_TexSubImage4DSGIS_UNUSED
, tvb
, *offsetp
, 4, byte_order
);
2864 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_TexSubImage4DSGIS_pixels
, (length
- 72) / 1, byte_order
);
2867 static void mesa_DetailTexFuncSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2870 proto_tree_add_item(t
, hf_x11_glx_render_DetailTexFuncSGIS_target
, tvb
, *offsetp
, 4, byte_order
);
2872 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2873 proto_tree_add_item(t
, hf_x11_glx_render_DetailTexFuncSGIS_n
, tvb
, *offsetp
, 4, byte_order
);
2875 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_DetailTexFuncSGIS_points
, hf_x11_glx_render_DetailTexFuncSGIS_points_item
, n
, byte_order
);
2878 static void mesa_SharpenTexFuncSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2881 proto_tree_add_item(t
, hf_x11_glx_render_SharpenTexFuncSGIS_target
, tvb
, *offsetp
, 4, byte_order
);
2883 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2884 proto_tree_add_item(t
, hf_x11_glx_render_SharpenTexFuncSGIS_n
, tvb
, *offsetp
, 4, byte_order
);
2886 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_SharpenTexFuncSGIS_points
, hf_x11_glx_render_SharpenTexFuncSGIS_points_item
, n
, byte_order
);
2889 static void mesa_SampleMaskSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2891 proto_tree_add_item(t
, hf_x11_glx_render_SampleMaskSGIS_value
, tvb
, *offsetp
, 4, byte_order
);
2893 proto_tree_add_item(t
, hf_x11_glx_render_SampleMaskSGIS_invert
, tvb
, *offsetp
, 1, byte_order
);
2897 static void mesa_SamplePatternSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2899 proto_tree_add_item(t
, hf_x11_glx_render_SamplePatternSGIS_pattern
, tvb
, *offsetp
, 4, byte_order
);
2903 static void mesa_FrameZoomSGIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2905 proto_tree_add_item(t
, hf_x11_glx_render_FrameZoomSGIX_factor
, tvb
, *offsetp
, 4, byte_order
);
2909 static void mesa_TagSampleBufferSGIX(tvbuff_t
*tvb _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
2913 static void mesa_ReferencePlaneSGIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2915 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ReferencePlaneSGIX_equation
, hf_x11_glx_render_ReferencePlaneSGIX_equation_item
, 4, byte_order
);
2918 static void mesa_FogFuncSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2921 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
2922 proto_tree_add_item(t
, hf_x11_glx_render_FogFuncSGIS_n
, tvb
, *offsetp
, 4, byte_order
);
2924 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_FogFuncSGIS_points
, hf_x11_glx_render_FogFuncSGIS_points_item
, n
, byte_order
);
2927 static void mesa_SecondaryColor3fvEXT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2929 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_SecondaryColor3fvEXT_v
, hf_x11_glx_render_SecondaryColor3fvEXT_v_item
, 3, byte_order
);
2932 static void mesa_FogCoordfvEXT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2934 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_FogCoordfvEXT_coord
, hf_x11_glx_render_FogCoordfvEXT_coord_item
, 1, byte_order
);
2937 static void mesa_PixelTexGenSGIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2939 proto_tree_add_item(t
, hf_x11_glx_render_PixelTexGenSGIX_mode
, tvb
, *offsetp
, 4, byte_order
);
2943 static void mesa_VertexWeightfvEXT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2945 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexWeightfvEXT_weight
, hf_x11_glx_render_VertexWeightfvEXT_weight_item
, 1, byte_order
);
2948 static void mesa_CombinerParameterfvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2950 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameterfvNV_pname
, tvb
, *offsetp
, 4, byte_order
);
2952 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_CombinerParameterfvNV_params
, hf_x11_glx_render_CombinerParameterfvNV_params_item
, (length
- 4) / 4, byte_order
);
2955 static void mesa_CombinerParameterfNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2957 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameterfNV_pname
, tvb
, *offsetp
, 4, byte_order
);
2959 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameterfNV_param
, tvb
, *offsetp
, 4, byte_order
);
2963 static void mesa_CombinerParameterivNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2965 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameterivNV_pname
, tvb
, *offsetp
, 4, byte_order
);
2967 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_render_CombinerParameterivNV_params
, hf_x11_glx_render_CombinerParameterivNV_params_item
, (length
- 4) / 4, byte_order
);
2970 static void mesa_CombinerParameteriNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2972 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameteriNV_pname
, tvb
, *offsetp
, 4, byte_order
);
2974 proto_tree_add_item(t
, hf_x11_glx_render_CombinerParameteriNV_param
, tvb
, *offsetp
, 4, byte_order
);
2978 static void mesa_CombinerInputNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2980 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_stage
, tvb
, *offsetp
, 4, byte_order
);
2982 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_portion
, tvb
, *offsetp
, 4, byte_order
);
2984 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_variable
, tvb
, *offsetp
, 4, byte_order
);
2986 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_input
, tvb
, *offsetp
, 4, byte_order
);
2988 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_mapping
, tvb
, *offsetp
, 4, byte_order
);
2990 proto_tree_add_item(t
, hf_x11_glx_render_CombinerInputNV_componentUsage
, tvb
, *offsetp
, 4, byte_order
);
2994 static void mesa_CombinerOutputNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
2996 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_stage
, tvb
, *offsetp
, 4, byte_order
);
2998 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_portion
, tvb
, *offsetp
, 4, byte_order
);
3000 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_abOutput
, tvb
, *offsetp
, 4, byte_order
);
3002 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_cdOutput
, tvb
, *offsetp
, 4, byte_order
);
3004 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_sumOutput
, tvb
, *offsetp
, 4, byte_order
);
3006 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_scale
, tvb
, *offsetp
, 4, byte_order
);
3008 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_bias
, tvb
, *offsetp
, 4, byte_order
);
3010 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_abDotProduct
, tvb
, *offsetp
, 1, byte_order
);
3012 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_cdDotProduct
, tvb
, *offsetp
, 1, byte_order
);
3014 proto_tree_add_item(t
, hf_x11_glx_render_CombinerOutputNV_muxSum
, tvb
, *offsetp
, 1, byte_order
);
3018 static void mesa_FinalCombinerInputNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3020 proto_tree_add_item(t
, hf_x11_glx_render_FinalCombinerInputNV_variable
, tvb
, *offsetp
, 4, byte_order
);
3022 proto_tree_add_item(t
, hf_x11_glx_render_FinalCombinerInputNV_input
, tvb
, *offsetp
, 4, byte_order
);
3024 proto_tree_add_item(t
, hf_x11_glx_render_FinalCombinerInputNV_mapping
, tvb
, *offsetp
, 4, byte_order
);
3026 proto_tree_add_item(t
, hf_x11_glx_render_FinalCombinerInputNV_componentUsage
, tvb
, *offsetp
, 4, byte_order
);
3030 static void mesa_TextureColorMaskSGIS(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3032 proto_tree_add_item(t
, hf_x11_glx_render_TextureColorMaskSGIS_red
, tvb
, *offsetp
, 1, byte_order
);
3034 proto_tree_add_item(t
, hf_x11_glx_render_TextureColorMaskSGIS_green
, tvb
, *offsetp
, 1, byte_order
);
3036 proto_tree_add_item(t
, hf_x11_glx_render_TextureColorMaskSGIS_blue
, tvb
, *offsetp
, 1, byte_order
);
3038 proto_tree_add_item(t
, hf_x11_glx_render_TextureColorMaskSGIS_alpha
, tvb
, *offsetp
, 1, byte_order
);
3042 static void mesa_ExecuteProgramNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3044 proto_tree_add_item(t
, hf_x11_glx_render_ExecuteProgramNV_target
, tvb
, *offsetp
, 4, byte_order
);
3046 proto_tree_add_item(t
, hf_x11_glx_render_ExecuteProgramNV_id
, tvb
, *offsetp
, 4, byte_order
);
3048 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ExecuteProgramNV_params
, hf_x11_glx_render_ExecuteProgramNV_params_item
, 4, byte_order
);
3051 static void mesa_LoadProgramNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3054 proto_tree_add_item(t
, hf_x11_glx_render_LoadProgramNV_target
, tvb
, *offsetp
, 4, byte_order
);
3056 proto_tree_add_item(t
, hf_x11_glx_render_LoadProgramNV_id
, tvb
, *offsetp
, 4, byte_order
);
3058 len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3059 proto_tree_add_item(t
, hf_x11_glx_render_LoadProgramNV_len
, tvb
, *offsetp
, 4, byte_order
);
3061 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_LoadProgramNV_program
, len
, byte_order
);
3064 static void mesa_ProgramParameters4dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3067 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4dvNV_target
, tvb
, *offsetp
, 4, byte_order
);
3069 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3071 num
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3072 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4dvNV_num
, tvb
, *offsetp
, 4, byte_order
);
3074 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramParameters4dvNV_params
, hf_x11_glx_render_ProgramParameters4dvNV_params_item
, num
, byte_order
);
3077 static void mesa_ProgramParameters4fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3080 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4fvNV_target
, tvb
, *offsetp
, 4, byte_order
);
3082 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3084 num
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3085 proto_tree_add_item(t
, hf_x11_glx_render_ProgramParameters4fvNV_num
, tvb
, *offsetp
, 4, byte_order
);
3087 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramParameters4fvNV_params
, hf_x11_glx_render_ProgramParameters4fvNV_params_item
, num
, byte_order
);
3090 static void mesa_RequestResidentProgramsNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3093 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3094 proto_tree_add_item(t
, hf_x11_glx_render_RequestResidentProgramsNV_n
, tvb
, *offsetp
, 4, byte_order
);
3096 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_render_RequestResidentProgramsNV_ids
, hf_x11_glx_render_RequestResidentProgramsNV_ids_item
, n
, byte_order
);
3099 static void mesa_TrackMatrixNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3101 proto_tree_add_item(t
, hf_x11_glx_render_TrackMatrixNV_target
, tvb
, *offsetp
, 4, byte_order
);
3103 proto_tree_add_item(t
, hf_x11_glx_render_TrackMatrixNV_address
, tvb
, *offsetp
, 4, byte_order
);
3105 proto_tree_add_item(t
, hf_x11_glx_render_TrackMatrixNV_matrix
, tvb
, *offsetp
, 4, byte_order
);
3107 proto_tree_add_item(t
, hf_x11_glx_render_TrackMatrixNV_transform
, tvb
, *offsetp
, 4, byte_order
);
3111 static void mesa_VertexAttrib1svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3113 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3115 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1svNV_v
, hf_x11_glx_render_VertexAttrib1svNV_v_item
, 1, byte_order
);
3118 static void mesa_VertexAttrib2svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3120 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3122 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2svNV_v
, hf_x11_glx_render_VertexAttrib2svNV_v_item
, 2, byte_order
);
3125 static void mesa_VertexAttrib3svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3127 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3129 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3svNV_v
, hf_x11_glx_render_VertexAttrib3svNV_v_item
, 3, byte_order
);
3132 static void mesa_VertexAttrib4svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3134 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3136 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4svNV_v
, hf_x11_glx_render_VertexAttrib4svNV_v_item
, 4, byte_order
);
3139 static void mesa_VertexAttrib1fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3141 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3143 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1fvNV_v
, hf_x11_glx_render_VertexAttrib1fvNV_v_item
, 1, byte_order
);
3146 static void mesa_VertexAttrib2fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3148 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3150 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2fvNV_v
, hf_x11_glx_render_VertexAttrib2fvNV_v_item
, 2, byte_order
);
3153 static void mesa_VertexAttrib3fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3155 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3157 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3fvNV_v
, hf_x11_glx_render_VertexAttrib3fvNV_v_item
, 3, byte_order
);
3160 static void mesa_VertexAttrib4fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3162 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3164 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4fvNV_v
, hf_x11_glx_render_VertexAttrib4fvNV_v_item
, 4, byte_order
);
3167 static void mesa_VertexAttrib1dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3169 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib1dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3171 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib1dvNV_v
, hf_x11_glx_render_VertexAttrib1dvNV_v_item
, 1, byte_order
);
3174 static void mesa_VertexAttrib2dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3176 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib2dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3178 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib2dvNV_v
, hf_x11_glx_render_VertexAttrib2dvNV_v_item
, 2, byte_order
);
3181 static void mesa_VertexAttrib3dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3183 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib3dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3185 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib3dvNV_v
, hf_x11_glx_render_VertexAttrib3dvNV_v_item
, 3, byte_order
);
3188 static void mesa_VertexAttrib4dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3190 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3192 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4dvNV_v
, hf_x11_glx_render_VertexAttrib4dvNV_v_item
, 4, byte_order
);
3195 static void mesa_VertexAttrib4ubvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3197 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttrib4ubvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3199 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttrib4ubvNV_v
, 4, byte_order
);
3202 static void mesa_VertexAttribs1svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3205 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3207 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3208 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1svNV_n
, tvb
, *offsetp
, 4, byte_order
);
3210 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs1svNV_v
, hf_x11_glx_render_VertexAttribs1svNV_v_item
, n
, byte_order
);
3213 static void mesa_VertexAttribs2svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3216 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3218 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3219 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2svNV_n
, tvb
, *offsetp
, 4, byte_order
);
3221 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs2svNV_v
, hf_x11_glx_render_VertexAttribs2svNV_v_item
, n
, byte_order
);
3224 static void mesa_VertexAttribs3svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3227 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3229 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3230 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3svNV_n
, tvb
, *offsetp
, 4, byte_order
);
3232 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs3svNV_v
, hf_x11_glx_render_VertexAttribs3svNV_v_item
, n
, byte_order
);
3235 static void mesa_VertexAttribs4svNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3238 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4svNV_index
, tvb
, *offsetp
, 4, byte_order
);
3240 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3241 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4svNV_n
, tvb
, *offsetp
, 4, byte_order
);
3243 listOfInt16(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs4svNV_v
, hf_x11_glx_render_VertexAttribs4svNV_v_item
, n
, byte_order
);
3246 static void mesa_VertexAttribs1fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3249 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3251 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3252 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1fvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3254 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs1fvNV_v
, hf_x11_glx_render_VertexAttribs1fvNV_v_item
, n
, byte_order
);
3257 static void mesa_VertexAttribs2fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3260 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3262 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3263 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2fvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3265 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs2fvNV_v
, hf_x11_glx_render_VertexAttribs2fvNV_v_item
, n
, byte_order
);
3268 static void mesa_VertexAttribs3fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3271 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3273 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3274 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3fvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3276 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs3fvNV_v
, hf_x11_glx_render_VertexAttribs3fvNV_v_item
, n
, byte_order
);
3279 static void mesa_VertexAttribs4fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3282 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4fvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3284 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3285 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4fvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3287 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs4fvNV_v
, hf_x11_glx_render_VertexAttribs4fvNV_v_item
, n
, byte_order
);
3290 static void mesa_VertexAttribs1dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3293 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3295 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3296 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs1dvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3298 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs1dvNV_v
, hf_x11_glx_render_VertexAttribs1dvNV_v_item
, n
, byte_order
);
3301 static void mesa_VertexAttribs2dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3304 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3306 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3307 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs2dvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3309 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs2dvNV_v
, hf_x11_glx_render_VertexAttribs2dvNV_v_item
, n
, byte_order
);
3312 static void mesa_VertexAttribs3dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3315 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3317 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3318 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs3dvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3320 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs3dvNV_v
, hf_x11_glx_render_VertexAttribs3dvNV_v_item
, n
, byte_order
);
3323 static void mesa_VertexAttribs4dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3326 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4dvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3328 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3329 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4dvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3331 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs4dvNV_v
, hf_x11_glx_render_VertexAttribs4dvNV_v_item
, n
, byte_order
);
3334 static void mesa_VertexAttribs4ubvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3337 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4ubvNV_index
, tvb
, *offsetp
, 4, byte_order
);
3339 n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3340 proto_tree_add_item(t
, hf_x11_glx_render_VertexAttribs4ubvNV_n
, tvb
, *offsetp
, 4, byte_order
);
3342 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_VertexAttribs4ubvNV_v
, n
, byte_order
);
3345 static void mesa_ActiveStencilFaceEXT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3347 proto_tree_add_item(t
, hf_x11_glx_render_ActiveStencilFaceEXT_face
, tvb
, *offsetp
, 4, byte_order
);
3351 static void mesa_ProgramNamedParameter4fvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3354 proto_tree_add_item(t
, hf_x11_glx_render_ProgramNamedParameter4fvNV_id
, tvb
, *offsetp
, 4, byte_order
);
3356 len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3357 proto_tree_add_item(t
, hf_x11_glx_render_ProgramNamedParameter4fvNV_len
, tvb
, *offsetp
, 4, byte_order
);
3359 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramNamedParameter4fvNV_name
, len
, byte_order
);
3360 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramNamedParameter4fvNV_v
, hf_x11_glx_render_ProgramNamedParameter4fvNV_v_item
, 4, byte_order
);
3363 static void mesa_ProgramNamedParameter4dvNV(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3366 proto_tree_add_item(t
, hf_x11_glx_render_ProgramNamedParameter4dvNV_id
, tvb
, *offsetp
, 4, byte_order
);
3368 len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
3369 proto_tree_add_item(t
, hf_x11_glx_render_ProgramNamedParameter4dvNV_len
, tvb
, *offsetp
, 4, byte_order
);
3371 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramNamedParameter4dvNV_name
, len
, byte_order
);
3372 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_render_ProgramNamedParameter4dvNV_v
, hf_x11_glx_render_ProgramNamedParameter4dvNV_v_item
, 4, byte_order
);
3375 static void mesa_DepthBoundsEXT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
3377 proto_tree_add_item(t
, hf_x11_glx_render_DepthBoundsEXT_zmin
, tvb
, *offsetp
, 8, byte_order
);
3379 proto_tree_add_item(t
, hf_x11_glx_render_DepthBoundsEXT_zmax
, tvb
, *offsetp
, 8, byte_order
);
3383 static const value_string glx_render_op_name
[] = {
3384 { 1, "glCallList" },
3385 { 2, "glCallLists" },
3386 { 3, "glListBase" },
3389 { 6, "glColor3bv" },
3390 { 7, "glColor3dv" },
3391 { 8, "glColor3fv" },
3392 { 9, "glColor3iv" },
3393 { 10, "glColor3sv" },
3394 { 11, "glColor3ubv" },
3395 { 12, "glColor3uiv" },
3396 { 13, "glColor3usv" },
3397 { 14, "glColor4bv" },
3398 { 15, "glColor4dv" },
3399 { 16, "glColor4fv" },
3400 { 17, "glColor4iv" },
3401 { 18, "glColor4sv" },
3402 { 19, "glColor4ubv" },
3403 { 20, "glColor4uiv" },
3404 { 21, "glColor4usv" },
3405 { 22, "glEdgeFlagv" },
3407 { 24, "glIndexdv" },
3408 { 25, "glIndexfv" },
3409 { 26, "glIndexiv" },
3410 { 27, "glIndexsv" },
3411 { 28, "glNormal3bv" },
3412 { 29, "glNormal3dv" },
3413 { 30, "glNormal3fv" },
3414 { 31, "glNormal3iv" },
3415 { 32, "glNormal3sv" },
3416 { 33, "glRasterPos2dv" },
3417 { 34, "glRasterPos2fv" },
3418 { 35, "glRasterPos2iv" },
3419 { 36, "glRasterPos2sv" },
3420 { 37, "glRasterPos3dv" },
3421 { 38, "glRasterPos3fv" },
3422 { 39, "glRasterPos3iv" },
3423 { 40, "glRasterPos3sv" },
3424 { 41, "glRasterPos4dv" },
3425 { 42, "glRasterPos4fv" },
3426 { 43, "glRasterPos4iv" },
3427 { 44, "glRasterPos4sv" },
3432 { 49, "glTexCoord1dv" },
3433 { 50, "glTexCoord1fv" },
3434 { 51, "glTexCoord1iv" },
3435 { 52, "glTexCoord1sv" },
3436 { 53, "glTexCoord2dv" },
3437 { 54, "glTexCoord2fv" },
3438 { 55, "glTexCoord2iv" },
3439 { 56, "glTexCoord2sv" },
3440 { 57, "glTexCoord3dv" },
3441 { 58, "glTexCoord3fv" },
3442 { 59, "glTexCoord3iv" },
3443 { 60, "glTexCoord3sv" },
3444 { 61, "glTexCoord4dv" },
3445 { 62, "glTexCoord4fv" },
3446 { 63, "glTexCoord4iv" },
3447 { 64, "glTexCoord4sv" },
3448 { 65, "glVertex2dv" },
3449 { 66, "glVertex2fv" },
3450 { 67, "glVertex2iv" },
3451 { 68, "glVertex2sv" },
3452 { 69, "glVertex3dv" },
3453 { 70, "glVertex3fv" },
3454 { 71, "glVertex3iv" },
3455 { 72, "glVertex3sv" },
3456 { 73, "glVertex4dv" },
3457 { 74, "glVertex4fv" },
3458 { 75, "glVertex4iv" },
3459 { 76, "glVertex4sv" },
3460 { 77, "glClipPlane" },
3461 { 78, "glColorMaterial" },
3462 { 79, "glCullFace" },
3467 { 84, "glFrontFace" },
3470 { 87, "glLightfv" },
3472 { 89, "glLightiv" },
3473 { 90, "glLightModelf" },
3474 { 91, "glLightModelfv" },
3475 { 92, "glLightModeli" },
3476 { 93, "glLightModeliv" },
3477 { 94, "glLineStipple" },
3478 { 95, "glLineWidth" },
3479 { 96, "glMaterialf" },
3480 { 97, "glMaterialfv" },
3481 { 98, "glMateriali" },
3482 { 99, "glMaterialiv" },
3483 { 100, "glPointSize" },
3484 { 101, "glPolygonMode" },
3485 { 102, "glPolygonStipple" },
3486 { 103, "glScissor" },
3487 { 104, "glShadeModel" },
3488 { 105, "glTexParameterf" },
3489 { 106, "glTexParameterfv" },
3490 { 107, "glTexParameteri" },
3491 { 108, "glTexParameteriv" },
3492 { 109, "glTexImage1D" },
3493 { 110, "glTexImage2D" },
3494 { 111, "glTexEnvf" },
3495 { 112, "glTexEnvfv" },
3496 { 113, "glTexEnvi" },
3497 { 114, "glTexEnviv" },
3498 { 115, "glTexGend" },
3499 { 116, "glTexGendv" },
3500 { 117, "glTexGenf" },
3501 { 118, "glTexGenfv" },
3502 { 119, "glTexGeni" },
3503 { 120, "glTexGeniv" },
3504 { 121, "glInitNames" },
3505 { 122, "glLoadName" },
3506 { 123, "glPassThrough" },
3507 { 124, "glPopName" },
3508 { 125, "glPushName" },
3509 { 126, "glDrawBuffer" },
3511 { 128, "glClearAccum" },
3512 { 129, "glClearIndex" },
3513 { 130, "glClearColor" },
3514 { 131, "glClearStencil" },
3515 { 132, "glClearDepth" },
3516 { 133, "glStencilMask" },
3517 { 134, "glColorMask" },
3518 { 135, "glDepthMask" },
3519 { 136, "glIndexMask" },
3521 { 138, "glDisable" },
3522 { 139, "glEnable" },
3523 { 141, "glPopAttrib" },
3524 { 142, "glPushAttrib" },
3529 { 147, "glMapGrid1d" },
3530 { 148, "glMapGrid1f" },
3531 { 149, "glMapGrid2d" },
3532 { 150, "glMapGrid2f" },
3533 { 151, "glEvalCoord1dv" },
3534 { 152, "glEvalCoord1fv" },
3535 { 153, "glEvalCoord2dv" },
3536 { 154, "glEvalCoord2fv" },
3537 { 155, "glEvalMesh1" },
3538 { 156, "glEvalPoint1" },
3539 { 157, "glEvalMesh2" },
3540 { 158, "glEvalPoint2" },
3541 { 159, "glAlphaFunc" },
3542 { 160, "glBlendFunc" },
3543 { 161, "glLogicOp" },
3544 { 162, "glStencilFunc" },
3545 { 163, "glStencilOp" },
3546 { 164, "glDepthFunc" },
3547 { 165, "glPixelZoom" },
3548 { 166, "glPixelTransferf" },
3549 { 167, "glPixelTransferi" },
3550 { 168, "glPixelMapfv" },
3551 { 169, "glPixelMapuiv" },
3552 { 170, "glPixelMapusv" },
3553 { 171, "glReadBuffer" },
3554 { 172, "glCopyPixels" },
3555 { 173, "glDrawPixels" },
3556 { 174, "glDepthRange" },
3557 { 175, "glFrustum" },
3558 { 176, "glLoadIdentity" },
3559 { 177, "glLoadMatrixf" },
3560 { 178, "glLoadMatrixd" },
3561 { 179, "glMatrixMode" },
3562 { 180, "glMultMatrixf" },
3563 { 181, "glMultMatrixd" },
3565 { 183, "glPopMatrix" },
3566 { 184, "glPushMatrix" },
3567 { 185, "glRotated" },
3568 { 186, "glRotatef" },
3569 { 187, "glScaled" },
3570 { 188, "glScalef" },
3571 { 189, "glTranslated" },
3572 { 190, "glTranslatef" },
3573 { 191, "glViewport" },
3574 { 192, "glPolygonOffset" },
3575 { 193, "glDrawArrays" },
3576 { 194, "glIndexubv" },
3577 { 195, "glColorSubTable" },
3578 { 196, "glCopyColorSubTable" },
3579 { 197, "glActiveTexture" },
3580 { 198, "glMultiTexCoord1dv" },
3581 { 199, "glMultiTexCoord1fvARB" },
3582 { 200, "glMultiTexCoord1iv" },
3583 { 201, "glMultiTexCoord1sv" },
3584 { 202, "glMultiTexCoord2dv" },
3585 { 203, "glMultiTexCoord2fvARB" },
3586 { 204, "glMultiTexCoord2iv" },
3587 { 205, "glMultiTexCoord2sv" },
3588 { 206, "glMultiTexCoord3dv" },
3589 { 207, "glMultiTexCoord3fvARB" },
3590 { 208, "glMultiTexCoord3iv" },
3591 { 209, "glMultiTexCoord3sv" },
3592 { 210, "glMultiTexCoord4dv" },
3593 { 211, "glMultiTexCoord4fvARB" },
3594 { 212, "glMultiTexCoord4iv" },
3595 { 213, "glMultiTexCoord4sv" },
3596 { 214, "glCompressedTexImage1D" },
3597 { 215, "glCompressedTexImage2D" },
3598 { 216, "glCompressedTexImage3D" },
3599 { 217, "glCompressedTexSubImage1D" },
3600 { 218, "glCompressedTexSubImage2D" },
3601 { 219, "glCompressedTexSubImage3D" },
3602 { 229, "glSampleCoverage" },
3603 { 230, "glWindowPos3fv" },
3604 { 231, "glBeginQuery" },
3605 { 232, "glEndQuery" },
3606 { 233, "glDrawBuffers" },
3607 { 2048, "glSampleMaskSGIS" },
3608 { 2049, "glSamplePatternSGIS" },
3609 { 2050, "glTagSampleBufferSGIX" },
3610 { 2051, "glDetailTexFuncSGIS" },
3611 { 2052, "glSharpenTexFuncSGIS" },
3612 { 2053, "glColorTable" },
3613 { 2054, "glColorTableParameterfv" },
3614 { 2055, "glColorTableParameteriv" },
3615 { 2056, "glCopyColorTable" },
3616 { 2057, "glTexImage4DSGIS" },
3617 { 2058, "glTexSubImage4DSGIS" },
3618 { 2059, "glPixelTexGenSGIX" },
3619 { 2064, "glTexFilterFuncSGIS" },
3620 { 2065, "glPointParameterf" },
3621 { 2066, "glPointParameterfv" },
3622 { 2067, "glFogFuncSGIS" },
3623 { 2071, "glReferencePlaneSGIX" },
3624 { 2072, "glFrameZoomSGIX" },
3625 { 2082, "glTextureColorMaskSGIS" },
3626 { 4096, "glBlendColor" },
3627 { 4097, "glBlendEquation" },
3628 { 4099, "glTexSubImage1D" },
3629 { 4100, "glTexSubImage2D" },
3630 { 4101, "glConvolutionFilter1D" },
3631 { 4102, "glConvolutionFilter2D" },
3632 { 4103, "glConvolutionParameterf" },
3633 { 4104, "glConvolutionParameterfv" },
3634 { 4105, "glConvolutionParameteri" },
3635 { 4106, "glConvolutionParameteriv" },
3636 { 4107, "glCopyConvolutionFilter1D" },
3637 { 4108, "glCopyConvolutionFilter2D" },
3638 { 4109, "glSeparableFilter2D" },
3639 { 4110, "glHistogram" },
3640 { 4111, "glMinmax" },
3641 { 4112, "glResetHistogram" },
3642 { 4113, "glResetMinmax" },
3643 { 4114, "glTexImage3D" },
3644 { 4115, "glTexSubImage3D" },
3645 { 4117, "glBindTexture" },
3646 { 4118, "glPrioritizeTextures" },
3647 { 4119, "glCopyTexImage1D" },
3648 { 4120, "glCopyTexImage2D" },
3649 { 4121, "glCopyTexSubImage1D" },
3650 { 4122, "glCopyTexSubImage2D" },
3651 { 4123, "glCopyTexSubImage3D" },
3652 { 4124, "glFogCoordfvEXT" },
3653 { 4125, "glFogCoorddv" },
3654 { 4126, "glSecondaryColor3bv" },
3655 { 4127, "glSecondaryColor3sv" },
3656 { 4128, "glSecondaryColor3iv" },
3657 { 4129, "glSecondaryColor3fvEXT" },
3658 { 4130, "glSecondaryColor3dv" },
3659 { 4131, "glSecondaryColor3ubv" },
3660 { 4132, "glSecondaryColor3usv" },
3661 { 4133, "glSecondaryColor3uiv" },
3662 { 4134, "glBlendFuncSeparate" },
3663 { 4135, "glVertexWeightfvEXT" },
3664 { 4136, "glCombinerParameterfNV" },
3665 { 4137, "glCombinerParameterfvNV" },
3666 { 4138, "glCombinerParameteriNV" },
3667 { 4139, "glCombinerParameterivNV" },
3668 { 4140, "glCombinerInputNV" },
3669 { 4141, "glCombinerOutputNV" },
3670 { 4142, "glFinalCombinerInputNV" },
3671 { 4180, "glBindProgramARB" },
3672 { 4181, "glExecuteProgramNV" },
3673 { 4182, "glRequestResidentProgramsNV" },
3674 { 4183, "glLoadProgramNV" },
3675 { 4184, "glProgramEnvParameter4fvARB" },
3676 { 4185, "glProgramEnvParameter4dvARB" },
3677 { 4186, "glProgramParameters4fvNV" },
3678 { 4187, "glProgramParameters4dvNV" },
3679 { 4188, "glTrackMatrixNV" },
3680 { 4189, "glVertexAttrib1sv" },
3681 { 4190, "glVertexAttrib2sv" },
3682 { 4191, "glVertexAttrib3sv" },
3683 { 4192, "glVertexAttrib4sv" },
3684 { 4193, "glVertexAttrib1fvARB" },
3685 { 4194, "glVertexAttrib2fvARB" },
3686 { 4195, "glVertexAttrib3fvARB" },
3687 { 4196, "glVertexAttrib4fvARB" },
3688 { 4197, "glVertexAttrib1dv" },
3689 { 4198, "glVertexAttrib2dv" },
3690 { 4199, "glVertexAttrib3dv" },
3691 { 4200, "glVertexAttrib4dv" },
3692 { 4201, "glVertexAttrib4Nubv" },
3693 { 4202, "glVertexAttribs1svNV" },
3694 { 4203, "glVertexAttribs2svNV" },
3695 { 4204, "glVertexAttribs3svNV" },
3696 { 4205, "glVertexAttribs4svNV" },
3697 { 4206, "glVertexAttribs1fvNV" },
3698 { 4207, "glVertexAttribs2fvNV" },
3699 { 4208, "glVertexAttribs3fvNV" },
3700 { 4209, "glVertexAttribs4fvNV" },
3701 { 4210, "glVertexAttribs1dvNV" },
3702 { 4211, "glVertexAttribs2dvNV" },
3703 { 4212, "glVertexAttribs3dvNV" },
3704 { 4213, "glVertexAttribs4dvNV" },
3705 { 4214, "glVertexAttribs4ubvNV" },
3706 { 4215, "glProgramLocalParameter4fvARB" },
3707 { 4216, "glProgramLocalParameter4dvARB" },
3708 { 4217, "glProgramStringARB" },
3709 { 4218, "glProgramNamedParameter4fvNV" },
3710 { 4219, "glProgramNamedParameter4dvNV" },
3711 { 4220, "glActiveStencilFaceEXT" },
3712 { 4221, "glPointParameteri" },
3713 { 4222, "glPointParameteriv" },
3714 { 4228, "glBlendEquationSeparate" },
3715 { 4229, "glDepthBoundsEXT" },
3716 { 4230, "glVertexAttrib4bv" },
3717 { 4231, "glVertexAttrib4iv" },
3718 { 4232, "glVertexAttrib4ubv" },
3719 { 4233, "glVertexAttrib4usv" },
3720 { 4234, "glVertexAttrib4uiv" },
3721 { 4235, "glVertexAttrib4Nbv" },
3722 { 4236, "glVertexAttrib4Nsv" },
3723 { 4237, "glVertexAttrib4Niv" },
3724 { 4238, "glVertexAttrib4Nusv" },
3725 { 4239, "glVertexAttrib4Nuiv" },
3726 { 4265, "glVertexAttrib1svNV" },
3727 { 4266, "glVertexAttrib2svNV" },
3728 { 4267, "glVertexAttrib3svNV" },
3729 { 4268, "glVertexAttrib4svNV" },
3730 { 4269, "glVertexAttrib1fvNV" },
3731 { 4270, "glVertexAttrib2fvNV" },
3732 { 4271, "glVertexAttrib3fvNV" },
3733 { 4272, "glVertexAttrib4fvNV" },
3734 { 4273, "glVertexAttrib1dvNV" },
3735 { 4274, "glVertexAttrib2dvNV" },
3736 { 4275, "glVertexAttrib3dvNV" },
3737 { 4276, "glVertexAttrib4dvNV" },
3738 { 4277, "glVertexAttrib4ubvNV" },
3739 { 4326, "glMatrixIndexubvARB" },
3740 { 4327, "glMatrixIndexusvARB" },
3741 { 4328, "glMatrixIndexuivARB" },
3742 { 4329, "glCurrentPaletteMatrixARB" },
3745 static value_string_ext mesa_enum_ext
= VALUE_STRING_EXT_INIT(mesa_enum
);
3747 static void dispatch_glx_render(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length
)
3749 while (length
>= 4) {
3755 len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
3757 op
= tvb_get_uint16(tvb
, *offsetp
+ 2, byte_order
);
3758 ti
= proto_tree_add_uint(t
, hf_x11_glx_render_op_name
, tvb
, *offsetp
, len
, op
);
3760 tt
= proto_item_add_subtree(ti
, ett_x11_list_of_rectangle
);
3762 ti
= proto_tree_add_item(tt
, hf_x11_request_length
, tvb
, *offsetp
, 2, byte_order
);
3764 proto_tree_add_item(tt
, hf_x11_glx_render_op_name
, tvb
, *offsetp
, 2, byte_order
);
3768 expert_add_info(pinfo
, ti
, &ei_x11_request_length
);
3769 /* Eat the rest of the packet, mark it undecoded */
3775 next
= *offsetp
+ len
;
3779 mesa_CallList(tvb
, offsetp
, tt
, byte_order
, len
);
3782 mesa_CallLists(tvb
, offsetp
, tt
, byte_order
, len
);
3785 mesa_ListBase(tvb
, offsetp
, tt
, byte_order
, len
);
3788 mesa_Begin(tvb
, offsetp
, tt
, byte_order
, len
);
3791 mesa_Bitmap(tvb
, offsetp
, tt
, byte_order
, len
);
3794 mesa_Color3bv(tvb
, offsetp
, tt
, byte_order
, len
);
3797 mesa_Color3dv(tvb
, offsetp
, tt
, byte_order
, len
);
3800 mesa_Color3fv(tvb
, offsetp
, tt
, byte_order
, len
);
3803 mesa_Color3iv(tvb
, offsetp
, tt
, byte_order
, len
);
3806 mesa_Color3sv(tvb
, offsetp
, tt
, byte_order
, len
);
3809 mesa_Color3ubv(tvb
, offsetp
, tt
, byte_order
, len
);
3812 mesa_Color3uiv(tvb
, offsetp
, tt
, byte_order
, len
);
3815 mesa_Color3usv(tvb
, offsetp
, tt
, byte_order
, len
);
3818 mesa_Color4bv(tvb
, offsetp
, tt
, byte_order
, len
);
3821 mesa_Color4dv(tvb
, offsetp
, tt
, byte_order
, len
);
3824 mesa_Color4fv(tvb
, offsetp
, tt
, byte_order
, len
);
3827 mesa_Color4iv(tvb
, offsetp
, tt
, byte_order
, len
);
3830 mesa_Color4sv(tvb
, offsetp
, tt
, byte_order
, len
);
3833 mesa_Color4ubv(tvb
, offsetp
, tt
, byte_order
, len
);
3836 mesa_Color4uiv(tvb
, offsetp
, tt
, byte_order
, len
);
3839 mesa_Color4usv(tvb
, offsetp
, tt
, byte_order
, len
);
3842 mesa_EdgeFlagv(tvb
, offsetp
, tt
, byte_order
, len
);
3845 mesa_End(tvb
, offsetp
, tt
, byte_order
, len
);
3848 mesa_Indexdv(tvb
, offsetp
, tt
, byte_order
, len
);
3851 mesa_Indexfv(tvb
, offsetp
, tt
, byte_order
, len
);
3854 mesa_Indexiv(tvb
, offsetp
, tt
, byte_order
, len
);
3857 mesa_Indexsv(tvb
, offsetp
, tt
, byte_order
, len
);
3860 mesa_Normal3bv(tvb
, offsetp
, tt
, byte_order
, len
);
3863 mesa_Normal3dv(tvb
, offsetp
, tt
, byte_order
, len
);
3866 mesa_Normal3fv(tvb
, offsetp
, tt
, byte_order
, len
);
3869 mesa_Normal3iv(tvb
, offsetp
, tt
, byte_order
, len
);
3872 mesa_Normal3sv(tvb
, offsetp
, tt
, byte_order
, len
);
3875 mesa_RasterPos2dv(tvb
, offsetp
, tt
, byte_order
, len
);
3878 mesa_RasterPos2fv(tvb
, offsetp
, tt
, byte_order
, len
);
3881 mesa_RasterPos2iv(tvb
, offsetp
, tt
, byte_order
, len
);
3884 mesa_RasterPos2sv(tvb
, offsetp
, tt
, byte_order
, len
);
3887 mesa_RasterPos3dv(tvb
, offsetp
, tt
, byte_order
, len
);
3890 mesa_RasterPos3fv(tvb
, offsetp
, tt
, byte_order
, len
);
3893 mesa_RasterPos3iv(tvb
, offsetp
, tt
, byte_order
, len
);
3896 mesa_RasterPos3sv(tvb
, offsetp
, tt
, byte_order
, len
);
3899 mesa_RasterPos4dv(tvb
, offsetp
, tt
, byte_order
, len
);
3902 mesa_RasterPos4fv(tvb
, offsetp
, tt
, byte_order
, len
);
3905 mesa_RasterPos4iv(tvb
, offsetp
, tt
, byte_order
, len
);
3908 mesa_RasterPos4sv(tvb
, offsetp
, tt
, byte_order
, len
);
3911 mesa_Rectdv(tvb
, offsetp
, tt
, byte_order
, len
);
3914 mesa_Rectfv(tvb
, offsetp
, tt
, byte_order
, len
);
3917 mesa_Rectiv(tvb
, offsetp
, tt
, byte_order
, len
);
3920 mesa_Rectsv(tvb
, offsetp
, tt
, byte_order
, len
);
3923 mesa_TexCoord1dv(tvb
, offsetp
, tt
, byte_order
, len
);
3926 mesa_TexCoord1fv(tvb
, offsetp
, tt
, byte_order
, len
);
3929 mesa_TexCoord1iv(tvb
, offsetp
, tt
, byte_order
, len
);
3932 mesa_TexCoord1sv(tvb
, offsetp
, tt
, byte_order
, len
);
3935 mesa_TexCoord2dv(tvb
, offsetp
, tt
, byte_order
, len
);
3938 mesa_TexCoord2fv(tvb
, offsetp
, tt
, byte_order
, len
);
3941 mesa_TexCoord2iv(tvb
, offsetp
, tt
, byte_order
, len
);
3944 mesa_TexCoord2sv(tvb
, offsetp
, tt
, byte_order
, len
);
3947 mesa_TexCoord3dv(tvb
, offsetp
, tt
, byte_order
, len
);
3950 mesa_TexCoord3fv(tvb
, offsetp
, tt
, byte_order
, len
);
3953 mesa_TexCoord3iv(tvb
, offsetp
, tt
, byte_order
, len
);
3956 mesa_TexCoord3sv(tvb
, offsetp
, tt
, byte_order
, len
);
3959 mesa_TexCoord4dv(tvb
, offsetp
, tt
, byte_order
, len
);
3962 mesa_TexCoord4fv(tvb
, offsetp
, tt
, byte_order
, len
);
3965 mesa_TexCoord4iv(tvb
, offsetp
, tt
, byte_order
, len
);
3968 mesa_TexCoord4sv(tvb
, offsetp
, tt
, byte_order
, len
);
3971 mesa_Vertex2dv(tvb
, offsetp
, tt
, byte_order
, len
);
3974 mesa_Vertex2fv(tvb
, offsetp
, tt
, byte_order
, len
);
3977 mesa_Vertex2iv(tvb
, offsetp
, tt
, byte_order
, len
);
3980 mesa_Vertex2sv(tvb
, offsetp
, tt
, byte_order
, len
);
3983 mesa_Vertex3dv(tvb
, offsetp
, tt
, byte_order
, len
);
3986 mesa_Vertex3fv(tvb
, offsetp
, tt
, byte_order
, len
);
3989 mesa_Vertex3iv(tvb
, offsetp
, tt
, byte_order
, len
);
3992 mesa_Vertex3sv(tvb
, offsetp
, tt
, byte_order
, len
);
3995 mesa_Vertex4dv(tvb
, offsetp
, tt
, byte_order
, len
);
3998 mesa_Vertex4fv(tvb
, offsetp
, tt
, byte_order
, len
);
4001 mesa_Vertex4iv(tvb
, offsetp
, tt
, byte_order
, len
);
4004 mesa_Vertex4sv(tvb
, offsetp
, tt
, byte_order
, len
);
4007 mesa_ClipPlane(tvb
, offsetp
, tt
, byte_order
, len
);
4010 mesa_ColorMaterial(tvb
, offsetp
, tt
, byte_order
, len
);
4013 mesa_CullFace(tvb
, offsetp
, tt
, byte_order
, len
);
4016 mesa_Fogf(tvb
, offsetp
, tt
, byte_order
, len
);
4019 mesa_Fogfv(tvb
, offsetp
, tt
, byte_order
, len
);
4022 mesa_Fogi(tvb
, offsetp
, tt
, byte_order
, len
);
4025 mesa_Fogiv(tvb
, offsetp
, tt
, byte_order
, len
);
4028 mesa_FrontFace(tvb
, offsetp
, tt
, byte_order
, len
);
4031 mesa_Hint(tvb
, offsetp
, tt
, byte_order
, len
);
4034 mesa_Lightf(tvb
, offsetp
, tt
, byte_order
, len
);
4037 mesa_Lightfv(tvb
, offsetp
, tt
, byte_order
, len
);
4040 mesa_Lighti(tvb
, offsetp
, tt
, byte_order
, len
);
4043 mesa_Lightiv(tvb
, offsetp
, tt
, byte_order
, len
);
4046 mesa_LightModelf(tvb
, offsetp
, tt
, byte_order
, len
);
4049 mesa_LightModelfv(tvb
, offsetp
, tt
, byte_order
, len
);
4052 mesa_LightModeli(tvb
, offsetp
, tt
, byte_order
, len
);
4055 mesa_LightModeliv(tvb
, offsetp
, tt
, byte_order
, len
);
4058 mesa_LineStipple(tvb
, offsetp
, tt
, byte_order
, len
);
4061 mesa_LineWidth(tvb
, offsetp
, tt
, byte_order
, len
);
4064 mesa_Materialf(tvb
, offsetp
, tt
, byte_order
, len
);
4067 mesa_Materialfv(tvb
, offsetp
, tt
, byte_order
, len
);
4070 mesa_Materiali(tvb
, offsetp
, tt
, byte_order
, len
);
4073 mesa_Materialiv(tvb
, offsetp
, tt
, byte_order
, len
);
4076 mesa_PointSize(tvb
, offsetp
, tt
, byte_order
, len
);
4079 mesa_PolygonMode(tvb
, offsetp
, tt
, byte_order
, len
);
4082 mesa_PolygonStipple(tvb
, offsetp
, tt
, byte_order
, len
);
4085 mesa_Scissor(tvb
, offsetp
, tt
, byte_order
, len
);
4088 mesa_ShadeModel(tvb
, offsetp
, tt
, byte_order
, len
);
4091 mesa_TexParameterf(tvb
, offsetp
, tt
, byte_order
, len
);
4094 mesa_TexParameterfv(tvb
, offsetp
, tt
, byte_order
, len
);
4097 mesa_TexParameteri(tvb
, offsetp
, tt
, byte_order
, len
);
4100 mesa_TexParameteriv(tvb
, offsetp
, tt
, byte_order
, len
);
4103 mesa_TexImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4106 mesa_TexImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4109 mesa_TexEnvf(tvb
, offsetp
, tt
, byte_order
, len
);
4112 mesa_TexEnvfv(tvb
, offsetp
, tt
, byte_order
, len
);
4115 mesa_TexEnvi(tvb
, offsetp
, tt
, byte_order
, len
);
4118 mesa_TexEnviv(tvb
, offsetp
, tt
, byte_order
, len
);
4121 mesa_TexGend(tvb
, offsetp
, tt
, byte_order
, len
);
4124 mesa_TexGendv(tvb
, offsetp
, tt
, byte_order
, len
);
4127 mesa_TexGenf(tvb
, offsetp
, tt
, byte_order
, len
);
4130 mesa_TexGenfv(tvb
, offsetp
, tt
, byte_order
, len
);
4133 mesa_TexGeni(tvb
, offsetp
, tt
, byte_order
, len
);
4136 mesa_TexGeniv(tvb
, offsetp
, tt
, byte_order
, len
);
4139 mesa_InitNames(tvb
, offsetp
, tt
, byte_order
, len
);
4142 mesa_LoadName(tvb
, offsetp
, tt
, byte_order
, len
);
4145 mesa_PassThrough(tvb
, offsetp
, tt
, byte_order
, len
);
4148 mesa_PopName(tvb
, offsetp
, tt
, byte_order
, len
);
4151 mesa_PushName(tvb
, offsetp
, tt
, byte_order
, len
);
4154 mesa_DrawBuffer(tvb
, offsetp
, tt
, byte_order
, len
);
4157 mesa_Clear(tvb
, offsetp
, tt
, byte_order
, len
);
4160 mesa_ClearAccum(tvb
, offsetp
, tt
, byte_order
, len
);
4163 mesa_ClearIndex(tvb
, offsetp
, tt
, byte_order
, len
);
4166 mesa_ClearColor(tvb
, offsetp
, tt
, byte_order
, len
);
4169 mesa_ClearStencil(tvb
, offsetp
, tt
, byte_order
, len
);
4172 mesa_ClearDepth(tvb
, offsetp
, tt
, byte_order
, len
);
4175 mesa_StencilMask(tvb
, offsetp
, tt
, byte_order
, len
);
4178 mesa_ColorMask(tvb
, offsetp
, tt
, byte_order
, len
);
4181 mesa_DepthMask(tvb
, offsetp
, tt
, byte_order
, len
);
4184 mesa_IndexMask(tvb
, offsetp
, tt
, byte_order
, len
);
4187 mesa_Accum(tvb
, offsetp
, tt
, byte_order
, len
);
4190 mesa_Disable(tvb
, offsetp
, tt
, byte_order
, len
);
4193 mesa_Enable(tvb
, offsetp
, tt
, byte_order
, len
);
4196 mesa_PopAttrib(tvb
, offsetp
, tt
, byte_order
, len
);
4199 mesa_PushAttrib(tvb
, offsetp
, tt
, byte_order
, len
);
4202 mesa_Map1d(tvb
, offsetp
, tt
, byte_order
, len
);
4205 mesa_Map1f(tvb
, offsetp
, tt
, byte_order
, len
);
4208 mesa_Map2d(tvb
, offsetp
, tt
, byte_order
, len
);
4211 mesa_Map2f(tvb
, offsetp
, tt
, byte_order
, len
);
4214 mesa_MapGrid1d(tvb
, offsetp
, tt
, byte_order
, len
);
4217 mesa_MapGrid1f(tvb
, offsetp
, tt
, byte_order
, len
);
4220 mesa_MapGrid2d(tvb
, offsetp
, tt
, byte_order
, len
);
4223 mesa_MapGrid2f(tvb
, offsetp
, tt
, byte_order
, len
);
4226 mesa_EvalCoord1dv(tvb
, offsetp
, tt
, byte_order
, len
);
4229 mesa_EvalCoord1fv(tvb
, offsetp
, tt
, byte_order
, len
);
4232 mesa_EvalCoord2dv(tvb
, offsetp
, tt
, byte_order
, len
);
4235 mesa_EvalCoord2fv(tvb
, offsetp
, tt
, byte_order
, len
);
4238 mesa_EvalMesh1(tvb
, offsetp
, tt
, byte_order
, len
);
4241 mesa_EvalPoint1(tvb
, offsetp
, tt
, byte_order
, len
);
4244 mesa_EvalMesh2(tvb
, offsetp
, tt
, byte_order
, len
);
4247 mesa_EvalPoint2(tvb
, offsetp
, tt
, byte_order
, len
);
4250 mesa_AlphaFunc(tvb
, offsetp
, tt
, byte_order
, len
);
4253 mesa_BlendFunc(tvb
, offsetp
, tt
, byte_order
, len
);
4256 mesa_LogicOp(tvb
, offsetp
, tt
, byte_order
, len
);
4259 mesa_StencilFunc(tvb
, offsetp
, tt
, byte_order
, len
);
4262 mesa_StencilOp(tvb
, offsetp
, tt
, byte_order
, len
);
4265 mesa_DepthFunc(tvb
, offsetp
, tt
, byte_order
, len
);
4268 mesa_PixelZoom(tvb
, offsetp
, tt
, byte_order
, len
);
4271 mesa_PixelTransferf(tvb
, offsetp
, tt
, byte_order
, len
);
4274 mesa_PixelTransferi(tvb
, offsetp
, tt
, byte_order
, len
);
4277 mesa_PixelMapfv(tvb
, offsetp
, tt
, byte_order
, len
);
4280 mesa_PixelMapuiv(tvb
, offsetp
, tt
, byte_order
, len
);
4283 mesa_PixelMapusv(tvb
, offsetp
, tt
, byte_order
, len
);
4286 mesa_ReadBuffer(tvb
, offsetp
, tt
, byte_order
, len
);
4289 mesa_CopyPixels(tvb
, offsetp
, tt
, byte_order
, len
);
4292 mesa_DrawPixels(tvb
, offsetp
, tt
, byte_order
, len
);
4295 mesa_DepthRange(tvb
, offsetp
, tt
, byte_order
, len
);
4298 mesa_Frustum(tvb
, offsetp
, tt
, byte_order
, len
);
4301 mesa_LoadIdentity(tvb
, offsetp
, tt
, byte_order
, len
);
4304 mesa_LoadMatrixf(tvb
, offsetp
, tt
, byte_order
, len
);
4307 mesa_LoadMatrixd(tvb
, offsetp
, tt
, byte_order
, len
);
4310 mesa_MatrixMode(tvb
, offsetp
, tt
, byte_order
, len
);
4313 mesa_MultMatrixf(tvb
, offsetp
, tt
, byte_order
, len
);
4316 mesa_MultMatrixd(tvb
, offsetp
, tt
, byte_order
, len
);
4319 mesa_Ortho(tvb
, offsetp
, tt
, byte_order
, len
);
4322 mesa_PopMatrix(tvb
, offsetp
, tt
, byte_order
, len
);
4325 mesa_PushMatrix(tvb
, offsetp
, tt
, byte_order
, len
);
4328 mesa_Rotated(tvb
, offsetp
, tt
, byte_order
, len
);
4331 mesa_Rotatef(tvb
, offsetp
, tt
, byte_order
, len
);
4334 mesa_Scaled(tvb
, offsetp
, tt
, byte_order
, len
);
4337 mesa_Scalef(tvb
, offsetp
, tt
, byte_order
, len
);
4340 mesa_Translated(tvb
, offsetp
, tt
, byte_order
, len
);
4343 mesa_Translatef(tvb
, offsetp
, tt
, byte_order
, len
);
4346 mesa_Viewport(tvb
, offsetp
, tt
, byte_order
, len
);
4349 mesa_PolygonOffset(tvb
, offsetp
, tt
, byte_order
, len
);
4352 mesa_DrawArrays(tvb
, offsetp
, tt
, byte_order
, len
);
4355 mesa_Indexubv(tvb
, offsetp
, tt
, byte_order
, len
);
4358 mesa_ColorSubTable(tvb
, offsetp
, tt
, byte_order
, len
);
4361 mesa_CopyColorSubTable(tvb
, offsetp
, tt
, byte_order
, len
);
4364 mesa_ActiveTexture(tvb
, offsetp
, tt
, byte_order
, len
);
4367 mesa_MultiTexCoord1dv(tvb
, offsetp
, tt
, byte_order
, len
);
4370 mesa_MultiTexCoord1fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4373 mesa_MultiTexCoord1iv(tvb
, offsetp
, tt
, byte_order
, len
);
4376 mesa_MultiTexCoord1sv(tvb
, offsetp
, tt
, byte_order
, len
);
4379 mesa_MultiTexCoord2dv(tvb
, offsetp
, tt
, byte_order
, len
);
4382 mesa_MultiTexCoord2fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4385 mesa_MultiTexCoord2iv(tvb
, offsetp
, tt
, byte_order
, len
);
4388 mesa_MultiTexCoord2sv(tvb
, offsetp
, tt
, byte_order
, len
);
4391 mesa_MultiTexCoord3dv(tvb
, offsetp
, tt
, byte_order
, len
);
4394 mesa_MultiTexCoord3fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4397 mesa_MultiTexCoord3iv(tvb
, offsetp
, tt
, byte_order
, len
);
4400 mesa_MultiTexCoord3sv(tvb
, offsetp
, tt
, byte_order
, len
);
4403 mesa_MultiTexCoord4dv(tvb
, offsetp
, tt
, byte_order
, len
);
4406 mesa_MultiTexCoord4fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4409 mesa_MultiTexCoord4iv(tvb
, offsetp
, tt
, byte_order
, len
);
4412 mesa_MultiTexCoord4sv(tvb
, offsetp
, tt
, byte_order
, len
);
4415 mesa_CompressedTexImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4418 mesa_CompressedTexImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4421 mesa_CompressedTexImage3D(tvb
, offsetp
, tt
, byte_order
, len
);
4424 mesa_CompressedTexSubImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4427 mesa_CompressedTexSubImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4430 mesa_CompressedTexSubImage3D(tvb
, offsetp
, tt
, byte_order
, len
);
4433 mesa_SampleCoverage(tvb
, offsetp
, tt
, byte_order
, len
);
4436 mesa_WindowPos3fv(tvb
, offsetp
, tt
, byte_order
, len
);
4439 mesa_BeginQuery(tvb
, offsetp
, tt
, byte_order
, len
);
4442 mesa_EndQuery(tvb
, offsetp
, tt
, byte_order
, len
);
4445 mesa_DrawBuffers(tvb
, offsetp
, tt
, byte_order
, len
);
4448 mesa_SampleMaskSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4451 mesa_SamplePatternSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4454 mesa_TagSampleBufferSGIX(tvb
, offsetp
, tt
, byte_order
, len
);
4457 mesa_DetailTexFuncSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4460 mesa_SharpenTexFuncSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4463 mesa_ColorTable(tvb
, offsetp
, tt
, byte_order
, len
);
4466 mesa_ColorTableParameterfv(tvb
, offsetp
, tt
, byte_order
, len
);
4469 mesa_ColorTableParameteriv(tvb
, offsetp
, tt
, byte_order
, len
);
4472 mesa_CopyColorTable(tvb
, offsetp
, tt
, byte_order
, len
);
4475 mesa_TexImage4DSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4478 mesa_TexSubImage4DSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4481 mesa_PixelTexGenSGIX(tvb
, offsetp
, tt
, byte_order
, len
);
4484 mesa_TexFilterFuncSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4487 mesa_PointParameterf(tvb
, offsetp
, tt
, byte_order
, len
);
4490 mesa_PointParameterfv(tvb
, offsetp
, tt
, byte_order
, len
);
4493 mesa_FogFuncSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4496 mesa_ReferencePlaneSGIX(tvb
, offsetp
, tt
, byte_order
, len
);
4499 mesa_FrameZoomSGIX(tvb
, offsetp
, tt
, byte_order
, len
);
4502 mesa_TextureColorMaskSGIS(tvb
, offsetp
, tt
, byte_order
, len
);
4505 mesa_BlendColor(tvb
, offsetp
, tt
, byte_order
, len
);
4508 mesa_BlendEquation(tvb
, offsetp
, tt
, byte_order
, len
);
4511 mesa_TexSubImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4514 mesa_TexSubImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4517 mesa_ConvolutionFilter1D(tvb
, offsetp
, tt
, byte_order
, len
);
4520 mesa_ConvolutionFilter2D(tvb
, offsetp
, tt
, byte_order
, len
);
4523 mesa_ConvolutionParameterf(tvb
, offsetp
, tt
, byte_order
, len
);
4526 mesa_ConvolutionParameterfv(tvb
, offsetp
, tt
, byte_order
, len
);
4529 mesa_ConvolutionParameteri(tvb
, offsetp
, tt
, byte_order
, len
);
4532 mesa_ConvolutionParameteriv(tvb
, offsetp
, tt
, byte_order
, len
);
4535 mesa_CopyConvolutionFilter1D(tvb
, offsetp
, tt
, byte_order
, len
);
4538 mesa_CopyConvolutionFilter2D(tvb
, offsetp
, tt
, byte_order
, len
);
4541 mesa_SeparableFilter2D(tvb
, offsetp
, tt
, byte_order
, len
);
4544 mesa_Histogram(tvb
, offsetp
, tt
, byte_order
, len
);
4547 mesa_Minmax(tvb
, offsetp
, tt
, byte_order
, len
);
4550 mesa_ResetHistogram(tvb
, offsetp
, tt
, byte_order
, len
);
4553 mesa_ResetMinmax(tvb
, offsetp
, tt
, byte_order
, len
);
4556 mesa_TexImage3D(tvb
, offsetp
, tt
, byte_order
, len
);
4559 mesa_TexSubImage3D(tvb
, offsetp
, tt
, byte_order
, len
);
4562 mesa_BindTexture(tvb
, offsetp
, tt
, byte_order
, len
);
4565 mesa_PrioritizeTextures(tvb
, offsetp
, tt
, byte_order
, len
);
4568 mesa_CopyTexImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4571 mesa_CopyTexImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4574 mesa_CopyTexSubImage1D(tvb
, offsetp
, tt
, byte_order
, len
);
4577 mesa_CopyTexSubImage2D(tvb
, offsetp
, tt
, byte_order
, len
);
4580 mesa_CopyTexSubImage3D(tvb
, offsetp
, tt
, byte_order
, len
);
4583 mesa_FogCoordfvEXT(tvb
, offsetp
, tt
, byte_order
, len
);
4586 mesa_FogCoorddv(tvb
, offsetp
, tt
, byte_order
, len
);
4589 mesa_SecondaryColor3bv(tvb
, offsetp
, tt
, byte_order
, len
);
4592 mesa_SecondaryColor3sv(tvb
, offsetp
, tt
, byte_order
, len
);
4595 mesa_SecondaryColor3iv(tvb
, offsetp
, tt
, byte_order
, len
);
4598 mesa_SecondaryColor3fvEXT(tvb
, offsetp
, tt
, byte_order
, len
);
4601 mesa_SecondaryColor3dv(tvb
, offsetp
, tt
, byte_order
, len
);
4604 mesa_SecondaryColor3ubv(tvb
, offsetp
, tt
, byte_order
, len
);
4607 mesa_SecondaryColor3usv(tvb
, offsetp
, tt
, byte_order
, len
);
4610 mesa_SecondaryColor3uiv(tvb
, offsetp
, tt
, byte_order
, len
);
4613 mesa_BlendFuncSeparate(tvb
, offsetp
, tt
, byte_order
, len
);
4616 mesa_VertexWeightfvEXT(tvb
, offsetp
, tt
, byte_order
, len
);
4619 mesa_CombinerParameterfNV(tvb
, offsetp
, tt
, byte_order
, len
);
4622 mesa_CombinerParameterfvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4625 mesa_CombinerParameteriNV(tvb
, offsetp
, tt
, byte_order
, len
);
4628 mesa_CombinerParameterivNV(tvb
, offsetp
, tt
, byte_order
, len
);
4631 mesa_CombinerInputNV(tvb
, offsetp
, tt
, byte_order
, len
);
4634 mesa_CombinerOutputNV(tvb
, offsetp
, tt
, byte_order
, len
);
4637 mesa_FinalCombinerInputNV(tvb
, offsetp
, tt
, byte_order
, len
);
4640 mesa_BindProgramARB(tvb
, offsetp
, tt
, byte_order
, len
);
4643 mesa_ExecuteProgramNV(tvb
, offsetp
, tt
, byte_order
, len
);
4646 mesa_RequestResidentProgramsNV(tvb
, offsetp
, tt
, byte_order
, len
);
4649 mesa_LoadProgramNV(tvb
, offsetp
, tt
, byte_order
, len
);
4652 mesa_ProgramEnvParameter4fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4655 mesa_ProgramEnvParameter4dvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4658 mesa_ProgramParameters4fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4661 mesa_ProgramParameters4dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4664 mesa_TrackMatrixNV(tvb
, offsetp
, tt
, byte_order
, len
);
4667 mesa_VertexAttrib1sv(tvb
, offsetp
, tt
, byte_order
, len
);
4670 mesa_VertexAttrib2sv(tvb
, offsetp
, tt
, byte_order
, len
);
4673 mesa_VertexAttrib3sv(tvb
, offsetp
, tt
, byte_order
, len
);
4676 mesa_VertexAttrib4sv(tvb
, offsetp
, tt
, byte_order
, len
);
4679 mesa_VertexAttrib1fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4682 mesa_VertexAttrib2fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4685 mesa_VertexAttrib3fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4688 mesa_VertexAttrib4fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4691 mesa_VertexAttrib1dv(tvb
, offsetp
, tt
, byte_order
, len
);
4694 mesa_VertexAttrib2dv(tvb
, offsetp
, tt
, byte_order
, len
);
4697 mesa_VertexAttrib3dv(tvb
, offsetp
, tt
, byte_order
, len
);
4700 mesa_VertexAttrib4dv(tvb
, offsetp
, tt
, byte_order
, len
);
4703 mesa_VertexAttrib4Nubv(tvb
, offsetp
, tt
, byte_order
, len
);
4706 mesa_VertexAttribs1svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4709 mesa_VertexAttribs2svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4712 mesa_VertexAttribs3svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4715 mesa_VertexAttribs4svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4718 mesa_VertexAttribs1fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4721 mesa_VertexAttribs2fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4724 mesa_VertexAttribs3fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4727 mesa_VertexAttribs4fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4730 mesa_VertexAttribs1dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4733 mesa_VertexAttribs2dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4736 mesa_VertexAttribs3dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4739 mesa_VertexAttribs4dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4742 mesa_VertexAttribs4ubvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4745 mesa_ProgramLocalParameter4fvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4748 mesa_ProgramLocalParameter4dvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4751 mesa_ProgramStringARB(tvb
, offsetp
, tt
, byte_order
, len
);
4754 mesa_ProgramNamedParameter4fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4757 mesa_ProgramNamedParameter4dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4760 mesa_ActiveStencilFaceEXT(tvb
, offsetp
, tt
, byte_order
, len
);
4763 mesa_PointParameteri(tvb
, offsetp
, tt
, byte_order
, len
);
4766 mesa_PointParameteriv(tvb
, offsetp
, tt
, byte_order
, len
);
4769 mesa_BlendEquationSeparate(tvb
, offsetp
, tt
, byte_order
, len
);
4772 mesa_DepthBoundsEXT(tvb
, offsetp
, tt
, byte_order
, len
);
4775 mesa_VertexAttrib4bv(tvb
, offsetp
, tt
, byte_order
, len
);
4778 mesa_VertexAttrib4iv(tvb
, offsetp
, tt
, byte_order
, len
);
4781 mesa_VertexAttrib4ubv(tvb
, offsetp
, tt
, byte_order
, len
);
4784 mesa_VertexAttrib4usv(tvb
, offsetp
, tt
, byte_order
, len
);
4787 mesa_VertexAttrib4uiv(tvb
, offsetp
, tt
, byte_order
, len
);
4790 mesa_VertexAttrib4Nbv(tvb
, offsetp
, tt
, byte_order
, len
);
4793 mesa_VertexAttrib4Nsv(tvb
, offsetp
, tt
, byte_order
, len
);
4796 mesa_VertexAttrib4Niv(tvb
, offsetp
, tt
, byte_order
, len
);
4799 mesa_VertexAttrib4Nusv(tvb
, offsetp
, tt
, byte_order
, len
);
4802 mesa_VertexAttrib4Nuiv(tvb
, offsetp
, tt
, byte_order
, len
);
4805 mesa_VertexAttrib1svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4808 mesa_VertexAttrib2svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4811 mesa_VertexAttrib3svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4814 mesa_VertexAttrib4svNV(tvb
, offsetp
, tt
, byte_order
, len
);
4817 mesa_VertexAttrib1fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4820 mesa_VertexAttrib2fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4823 mesa_VertexAttrib3fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4826 mesa_VertexAttrib4fvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4829 mesa_VertexAttrib1dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4832 mesa_VertexAttrib2dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4835 mesa_VertexAttrib3dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4838 mesa_VertexAttrib4dvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4841 mesa_VertexAttrib4ubvNV(tvb
, offsetp
, tt
, byte_order
, len
);
4844 mesa_MatrixIndexubvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4847 mesa_MatrixIndexusvARB(tvb
, offsetp
, tt
, byte_order
, len
);
4850 mesa_MatrixIndexuivARB(tvb
, offsetp
, tt
, byte_order
, len
);
4853 mesa_CurrentPaletteMatrixARB(tvb
, offsetp
, tt
, byte_order
, len
);
4856 proto_tree_add_item(tt
, hf_x11_undecoded
, tvb
, *offsetp
, len
, ENC_NA
);
4859 if (*offsetp
< next
) {
4860 proto_tree_add_item(tt
, hf_x11_unused
, tvb
, *offsetp
, next
- *offsetp
, ENC_NA
);
4863 length
-= (len
+ 4);
4866 #include "x11-enum.h"
4869 static void bigreqEnable(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
4872 static void bigreqEnable_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
4874 int sequence_number
;
4876 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Enable");
4879 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
4881 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
4882 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
4883 "%d (bigreq-Enable)", sequence_number
);
4885 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
4887 proto_tree_add_item(t
, hf_x11_bigreq_Enable_reply_maximum_request_length
, tvb
, *offsetp
, 4, byte_order
);
4890 static const value_string bigreq_extension_minor
[] = {
4894 static const x11_event_info bigreq_events
[] = {
4897 static const x11_reply_info bigreq_replies
[] = {
4898 { 0, bigreqEnable_Reply
},
4902 static void dispatch_bigreq(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
4905 minor
= CARD8(bigreq_extension_minor
);
4906 length
= REQUEST_LENGTH();
4908 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
4909 val_to_str(minor
, bigreq_extension_minor
,
4910 "<Unknown opcode %d>"));
4913 bigreqEnable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
4915 /* No need for a default case here, since Unknown is printed above,
4916 and UNDECODED() is taken care of by dissect_x11_request */
4920 static void register_bigreq(void)
4922 set_handler("BIG-REQUESTS", dispatch_bigreq
, bigreq_errors
, bigreq_events
, NULL
, bigreq_replies
);
4925 static void struct_xproto_RECTANGLE(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
4928 for (i
= 0; i
< count
; i
++) {
4932 item
= proto_tree_add_item(root
, hf_x11_struct_xproto_RECTANGLE
, tvb
, *offsetp
, 8, ENC_NA
);
4933 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
4934 proto_tree_add_item(t
, hf_x11_struct_xproto_RECTANGLE_x
, tvb
, *offsetp
, 2, byte_order
);
4936 proto_tree_add_item(t
, hf_x11_struct_xproto_RECTANGLE_y
, tvb
, *offsetp
, 2, byte_order
);
4938 proto_tree_add_item(t
, hf_x11_struct_xproto_RECTANGLE_width
, tvb
, *offsetp
, 2, byte_order
);
4940 proto_tree_add_item(t
, hf_x11_struct_xproto_RECTANGLE_height
, tvb
, *offsetp
, 2, byte_order
);
4945 static int struct_size_xproto_STR(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
4949 f_name_len
= tvb_get_uint8(tvb
, *offsetp
+ size
+ 0);
4950 size
+= f_name_len
* 1;
4954 static void struct_xproto_STR(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
4957 for (i
= 0; i
< count
; i
++) {
4962 item
= proto_tree_add_item(root
, hf_x11_struct_xproto_STR
, tvb
, *offsetp
, struct_size_xproto_STR(tvb
, offsetp
, byte_order
), ENC_NA
);
4963 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
4964 f_name_len
= tvb_get_uint8(tvb
, *offsetp
);
4965 proto_tree_add_item(t
, hf_x11_struct_xproto_STR_name_len
, tvb
, *offsetp
, 1, byte_order
);
4967 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xproto_STR_name
, f_name_len
, byte_order
);
4971 static void struct_render_DIRECTFORMAT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
4974 for (i
= 0; i
< count
; i
++) {
4978 item
= proto_tree_add_item(root
, hf_x11_struct_render_DIRECTFORMAT
, tvb
, *offsetp
, 16, ENC_NA
);
4979 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
4980 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_red_shift
, tvb
, *offsetp
, 2, byte_order
);
4982 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_red_mask
, tvb
, *offsetp
, 2, byte_order
);
4984 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_green_shift
, tvb
, *offsetp
, 2, byte_order
);
4986 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_green_mask
, tvb
, *offsetp
, 2, byte_order
);
4988 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_blue_shift
, tvb
, *offsetp
, 2, byte_order
);
4990 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_blue_mask
, tvb
, *offsetp
, 2, byte_order
);
4992 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_alpha_shift
, tvb
, *offsetp
, 2, byte_order
);
4994 proto_tree_add_item(t
, hf_x11_struct_render_DIRECTFORMAT_alpha_mask
, tvb
, *offsetp
, 2, byte_order
);
4999 static void struct_render_PICTFORMINFO(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5002 for (i
= 0; i
< count
; i
++) {
5006 item
= proto_tree_add_item(root
, hf_x11_struct_render_PICTFORMINFO
, tvb
, *offsetp
, 28, ENC_NA
);
5007 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5008 proto_tree_add_item(t
, hf_x11_struct_render_PICTFORMINFO_id
, tvb
, *offsetp
, 4, byte_order
);
5010 field8(tvb
, offsetp
, t
, hf_x11_struct_render_PICTFORMINFO_type
, byte_order
);
5011 proto_tree_add_item(t
, hf_x11_struct_render_PICTFORMINFO_depth
, tvb
, *offsetp
, 1, byte_order
);
5013 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
5015 struct_render_DIRECTFORMAT(tvb
, offsetp
, t
, byte_order
, 1);
5016 proto_tree_add_item(t
, hf_x11_struct_render_PICTFORMINFO_colormap
, tvb
, *offsetp
, 4, byte_order
);
5021 static void struct_render_PICTVISUAL(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5024 for (i
= 0; i
< count
; i
++) {
5028 item
= proto_tree_add_item(root
, hf_x11_struct_render_PICTVISUAL
, tvb
, *offsetp
, 8, ENC_NA
);
5029 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5030 proto_tree_add_item(t
, hf_x11_struct_render_PICTVISUAL_visual
, tvb
, *offsetp
, 4, byte_order
);
5032 proto_tree_add_item(t
, hf_x11_struct_render_PICTVISUAL_format
, tvb
, *offsetp
, 4, byte_order
);
5037 static int struct_size_render_PICTDEPTH(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
5041 f_num_visuals
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 2, byte_order
);
5042 size
+= f_num_visuals
* 8;
5046 static void struct_render_PICTDEPTH(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5049 for (i
= 0; i
< count
; i
++) {
5054 item
= proto_tree_add_item(root
, hf_x11_struct_render_PICTDEPTH
, tvb
, *offsetp
, struct_size_render_PICTDEPTH(tvb
, offsetp
, byte_order
), ENC_NA
);
5055 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5056 proto_tree_add_item(t
, hf_x11_struct_render_PICTDEPTH_depth
, tvb
, *offsetp
, 1, byte_order
);
5058 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5060 f_num_visuals
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5061 proto_tree_add_item(t
, hf_x11_struct_render_PICTDEPTH_num_visuals
, tvb
, *offsetp
, 2, byte_order
);
5063 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
5065 struct_render_PICTVISUAL(tvb
, offsetp
, t
, byte_order
, f_num_visuals
);
5069 static int struct_size_render_PICTSCREEN(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
5074 f_num_depths
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 0, byte_order
);
5075 for (i
= 0; i
< f_num_depths
; i
++) {
5076 off
= (*offsetp
) + size
+ 8;
5077 size
+= struct_size_render_PICTDEPTH(tvb
, &off
, byte_order
);
5082 static void struct_render_PICTSCREEN(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5085 for (i
= 0; i
< count
; i
++) {
5090 item
= proto_tree_add_item(root
, hf_x11_struct_render_PICTSCREEN
, tvb
, *offsetp
, struct_size_render_PICTSCREEN(tvb
, offsetp
, byte_order
), ENC_NA
);
5091 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5092 f_num_depths
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
5093 proto_tree_add_item(t
, hf_x11_struct_render_PICTSCREEN_num_depths
, tvb
, *offsetp
, 4, byte_order
);
5095 proto_tree_add_item(t
, hf_x11_struct_render_PICTSCREEN_fallback
, tvb
, *offsetp
, 4, byte_order
);
5097 struct_render_PICTDEPTH(tvb
, offsetp
, t
, byte_order
, f_num_depths
);
5101 static void struct_render_INDEXVALUE(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5104 for (i
= 0; i
< count
; i
++) {
5108 item
= proto_tree_add_item(root
, hf_x11_struct_render_INDEXVALUE
, tvb
, *offsetp
, 12, ENC_NA
);
5109 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5110 proto_tree_add_item(t
, hf_x11_struct_render_INDEXVALUE_pixel
, tvb
, *offsetp
, 4, byte_order
);
5112 proto_tree_add_item(t
, hf_x11_struct_render_INDEXVALUE_red
, tvb
, *offsetp
, 2, byte_order
);
5114 proto_tree_add_item(t
, hf_x11_struct_render_INDEXVALUE_green
, tvb
, *offsetp
, 2, byte_order
);
5116 proto_tree_add_item(t
, hf_x11_struct_render_INDEXVALUE_blue
, tvb
, *offsetp
, 2, byte_order
);
5118 proto_tree_add_item(t
, hf_x11_struct_render_INDEXVALUE_alpha
, tvb
, *offsetp
, 2, byte_order
);
5123 static void struct_render_COLOR(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5126 for (i
= 0; i
< count
; i
++) {
5130 item
= proto_tree_add_item(root
, hf_x11_struct_render_COLOR
, tvb
, *offsetp
, 8, ENC_NA
);
5131 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5132 proto_tree_add_item(t
, hf_x11_struct_render_COLOR_red
, tvb
, *offsetp
, 2, byte_order
);
5134 proto_tree_add_item(t
, hf_x11_struct_render_COLOR_green
, tvb
, *offsetp
, 2, byte_order
);
5136 proto_tree_add_item(t
, hf_x11_struct_render_COLOR_blue
, tvb
, *offsetp
, 2, byte_order
);
5138 proto_tree_add_item(t
, hf_x11_struct_render_COLOR_alpha
, tvb
, *offsetp
, 2, byte_order
);
5143 static void struct_render_POINTFIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5146 for (i
= 0; i
< count
; i
++) {
5150 item
= proto_tree_add_item(root
, hf_x11_struct_render_POINTFIX
, tvb
, *offsetp
, 8, ENC_NA
);
5151 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5152 proto_tree_add_item(t
, hf_x11_struct_render_POINTFIX_x
, tvb
, *offsetp
, 4, byte_order
);
5154 proto_tree_add_item(t
, hf_x11_struct_render_POINTFIX_y
, tvb
, *offsetp
, 4, byte_order
);
5159 static void struct_render_LINEFIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5162 for (i
= 0; i
< count
; i
++) {
5166 item
= proto_tree_add_item(root
, hf_x11_struct_render_LINEFIX
, tvb
, *offsetp
, 16, ENC_NA
);
5167 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5168 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
5169 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
5173 static void struct_render_TRIANGLE(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5176 for (i
= 0; i
< count
; i
++) {
5180 item
= proto_tree_add_item(root
, hf_x11_struct_render_TRIANGLE
, tvb
, *offsetp
, 24, ENC_NA
);
5181 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5182 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
5183 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
5184 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
5188 static void struct_render_TRAPEZOID(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5191 for (i
= 0; i
< count
; i
++) {
5195 item
= proto_tree_add_item(root
, hf_x11_struct_render_TRAPEZOID
, tvb
, *offsetp
, 40, ENC_NA
);
5196 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5197 proto_tree_add_item(t
, hf_x11_struct_render_TRAPEZOID_top
, tvb
, *offsetp
, 4, byte_order
);
5199 proto_tree_add_item(t
, hf_x11_struct_render_TRAPEZOID_bottom
, tvb
, *offsetp
, 4, byte_order
);
5201 struct_render_LINEFIX(tvb
, offsetp
, t
, byte_order
, 1);
5202 struct_render_LINEFIX(tvb
, offsetp
, t
, byte_order
, 1);
5206 static void struct_render_GLYPHINFO(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5209 for (i
= 0; i
< count
; i
++) {
5213 item
= proto_tree_add_item(root
, hf_x11_struct_render_GLYPHINFO
, tvb
, *offsetp
, 12, ENC_NA
);
5214 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5215 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_width
, tvb
, *offsetp
, 2, byte_order
);
5217 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_height
, tvb
, *offsetp
, 2, byte_order
);
5219 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_x
, tvb
, *offsetp
, 2, byte_order
);
5221 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_y
, tvb
, *offsetp
, 2, byte_order
);
5223 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_x_off
, tvb
, *offsetp
, 2, byte_order
);
5225 proto_tree_add_item(t
, hf_x11_struct_render_GLYPHINFO_y_off
, tvb
, *offsetp
, 2, byte_order
);
5230 static void struct_render_TRANSFORM(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5233 for (i
= 0; i
< count
; i
++) {
5237 item
= proto_tree_add_item(root
, hf_x11_struct_render_TRANSFORM
, tvb
, *offsetp
, 36, ENC_NA
);
5238 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5239 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix11
, tvb
, *offsetp
, 4, byte_order
);
5241 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix12
, tvb
, *offsetp
, 4, byte_order
);
5243 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix13
, tvb
, *offsetp
, 4, byte_order
);
5245 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix21
, tvb
, *offsetp
, 4, byte_order
);
5247 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix22
, tvb
, *offsetp
, 4, byte_order
);
5249 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix23
, tvb
, *offsetp
, 4, byte_order
);
5251 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix31
, tvb
, *offsetp
, 4, byte_order
);
5253 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix32
, tvb
, *offsetp
, 4, byte_order
);
5255 proto_tree_add_item(t
, hf_x11_struct_render_TRANSFORM_matrix33
, tvb
, *offsetp
, 4, byte_order
);
5260 static void struct_render_ANIMCURSORELT(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5263 for (i
= 0; i
< count
; i
++) {
5267 item
= proto_tree_add_item(root
, hf_x11_struct_render_ANIMCURSORELT
, tvb
, *offsetp
, 8, ENC_NA
);
5268 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5269 proto_tree_add_item(t
, hf_x11_struct_render_ANIMCURSORELT_cursor
, tvb
, *offsetp
, 4, byte_order
);
5271 proto_tree_add_item(t
, hf_x11_struct_render_ANIMCURSORELT_delay
, tvb
, *offsetp
, 4, byte_order
);
5276 static void struct_render_SPANFIX(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5279 for (i
= 0; i
< count
; i
++) {
5283 item
= proto_tree_add_item(root
, hf_x11_struct_render_SPANFIX
, tvb
, *offsetp
, 12, ENC_NA
);
5284 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5285 proto_tree_add_item(t
, hf_x11_struct_render_SPANFIX_l
, tvb
, *offsetp
, 4, byte_order
);
5287 proto_tree_add_item(t
, hf_x11_struct_render_SPANFIX_r
, tvb
, *offsetp
, 4, byte_order
);
5289 proto_tree_add_item(t
, hf_x11_struct_render_SPANFIX_y
, tvb
, *offsetp
, 4, byte_order
);
5294 static void struct_render_TRAP(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5297 for (i
= 0; i
< count
; i
++) {
5301 item
= proto_tree_add_item(root
, hf_x11_struct_render_TRAP
, tvb
, *offsetp
, 24, ENC_NA
);
5302 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5303 struct_render_SPANFIX(tvb
, offsetp
, t
, byte_order
, 1);
5304 struct_render_SPANFIX(tvb
, offsetp
, t
, byte_order
, 1);
5308 static void compositeQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5310 proto_tree_add_item(t
, hf_x11_composite_QueryVersion_client_major_version
, tvb
, *offsetp
, 4, byte_order
);
5312 proto_tree_add_item(t
, hf_x11_composite_QueryVersion_client_minor_version
, tvb
, *offsetp
, 4, byte_order
);
5315 static void compositeQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5317 int sequence_number
;
5319 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
5322 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5324 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5325 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5326 "%d (composite-QueryVersion)", sequence_number
);
5328 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5330 proto_tree_add_item(t
, hf_x11_composite_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
5332 proto_tree_add_item(t
, hf_x11_composite_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
5334 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
5338 static void compositeRedirectWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5340 proto_tree_add_item(t
, hf_x11_composite_RedirectWindow_window
, tvb
, *offsetp
, 4, byte_order
);
5342 field8(tvb
, offsetp
, t
, hf_x11_composite_RedirectWindow_update
, byte_order
);
5343 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5347 static void compositeRedirectSubwindows(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5349 proto_tree_add_item(t
, hf_x11_composite_RedirectSubwindows_window
, tvb
, *offsetp
, 4, byte_order
);
5351 field8(tvb
, offsetp
, t
, hf_x11_composite_RedirectSubwindows_update
, byte_order
);
5352 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5356 static void compositeUnredirectWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5358 proto_tree_add_item(t
, hf_x11_composite_UnredirectWindow_window
, tvb
, *offsetp
, 4, byte_order
);
5360 field8(tvb
, offsetp
, t
, hf_x11_composite_UnredirectWindow_update
, byte_order
);
5361 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5365 static void compositeUnredirectSubwindows(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5367 proto_tree_add_item(t
, hf_x11_composite_UnredirectSubwindows_window
, tvb
, *offsetp
, 4, byte_order
);
5369 field8(tvb
, offsetp
, t
, hf_x11_composite_UnredirectSubwindows_update
, byte_order
);
5370 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5374 static void compositeCreateRegionFromBorderClip(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5376 proto_tree_add_item(t
, hf_x11_composite_CreateRegionFromBorderClip_region
, tvb
, *offsetp
, 4, byte_order
);
5378 proto_tree_add_item(t
, hf_x11_composite_CreateRegionFromBorderClip_window
, tvb
, *offsetp
, 4, byte_order
);
5382 static void compositeNameWindowPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5384 proto_tree_add_item(t
, hf_x11_composite_NameWindowPixmap_window
, tvb
, *offsetp
, 4, byte_order
);
5386 proto_tree_add_item(t
, hf_x11_composite_NameWindowPixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
5390 static void compositeGetOverlayWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5392 proto_tree_add_item(t
, hf_x11_composite_GetOverlayWindow_window
, tvb
, *offsetp
, 4, byte_order
);
5395 static void compositeGetOverlayWindow_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5397 int sequence_number
;
5399 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetOverlayWindow");
5402 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5404 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5405 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5406 "%d (composite-GetOverlayWindow)", sequence_number
);
5408 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5410 proto_tree_add_item(t
, hf_x11_composite_GetOverlayWindow_reply_overlay_win
, tvb
, *offsetp
, 4, byte_order
);
5412 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
5416 static void compositeReleaseOverlayWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5418 proto_tree_add_item(t
, hf_x11_composite_ReleaseOverlayWindow_window
, tvb
, *offsetp
, 4, byte_order
);
5421 static const value_string composite_extension_minor
[] = {
5422 { 0, "QueryVersion" },
5423 { 1, "RedirectWindow" },
5424 { 2, "RedirectSubwindows" },
5425 { 3, "UnredirectWindow" },
5426 { 4, "UnredirectSubwindows" },
5427 { 5, "CreateRegionFromBorderClip" },
5428 { 6, "NameWindowPixmap" },
5429 { 7, "GetOverlayWindow" },
5430 { 8, "ReleaseOverlayWindow" },
5433 static const x11_event_info composite_events
[] = {
5436 static const x11_reply_info composite_replies
[] = {
5437 { 0, compositeQueryVersion_Reply
},
5438 { 7, compositeGetOverlayWindow_Reply
},
5442 static void dispatch_composite(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5445 minor
= CARD8(composite_extension_minor
);
5446 length
= REQUEST_LENGTH();
5448 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
5449 val_to_str(minor
, composite_extension_minor
,
5450 "<Unknown opcode %d>"));
5453 compositeQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5456 compositeRedirectWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5459 compositeRedirectSubwindows(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5462 compositeUnredirectWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5465 compositeUnredirectSubwindows(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5468 compositeCreateRegionFromBorderClip(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5471 compositeNameWindowPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5474 compositeGetOverlayWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5477 compositeReleaseOverlayWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5479 /* No need for a default case here, since Unknown is printed above,
5480 and UNDECODED() is taken care of by dissect_x11_request */
5484 static void register_composite(void)
5486 set_handler("Composite", dispatch_composite
, composite_errors
, composite_events
, NULL
, composite_replies
);
5489 static void damageQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5491 proto_tree_add_item(t
, hf_x11_damage_QueryVersion_client_major_version
, tvb
, *offsetp
, 4, byte_order
);
5493 proto_tree_add_item(t
, hf_x11_damage_QueryVersion_client_minor_version
, tvb
, *offsetp
, 4, byte_order
);
5496 static void damageQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5498 int sequence_number
;
5500 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
5503 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5505 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5506 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5507 "%d (damage-QueryVersion)", sequence_number
);
5509 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5511 proto_tree_add_item(t
, hf_x11_damage_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
5513 proto_tree_add_item(t
, hf_x11_damage_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
5515 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
5519 static void damageCreate(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5521 proto_tree_add_item(t
, hf_x11_damage_Create_damage
, tvb
, *offsetp
, 4, byte_order
);
5523 proto_tree_add_item(t
, hf_x11_damage_Create_drawable
, tvb
, *offsetp
, 4, byte_order
);
5525 field8(tvb
, offsetp
, t
, hf_x11_damage_Create_level
, byte_order
);
5526 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5530 static void damageDestroy(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5532 proto_tree_add_item(t
, hf_x11_damage_Destroy_damage
, tvb
, *offsetp
, 4, byte_order
);
5536 static void damageSubtract(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5538 proto_tree_add_item(t
, hf_x11_damage_Subtract_damage
, tvb
, *offsetp
, 4, byte_order
);
5540 field32(tvb
, offsetp
, t
, hf_x11_damage_Subtract_repair
, byte_order
);
5541 field32(tvb
, offsetp
, t
, hf_x11_damage_Subtract_parts
, byte_order
);
5544 static void damageAdd(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5546 proto_tree_add_item(t
, hf_x11_damage_Add_drawable
, tvb
, *offsetp
, 4, byte_order
);
5548 proto_tree_add_item(t
, hf_x11_damage_Add_region
, tvb
, *offsetp
, 4, byte_order
);
5551 static const value_string damage_extension_minor
[] = {
5552 { 0, "QueryVersion" },
5559 static const x11_event_info damage_events
[] = {
5562 static const x11_reply_info damage_replies
[] = {
5563 { 0, damageQueryVersion_Reply
},
5567 static void dispatch_damage(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5570 minor
= CARD8(damage_extension_minor
);
5571 length
= REQUEST_LENGTH();
5573 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
5574 val_to_str(minor
, damage_extension_minor
,
5575 "<Unknown opcode %d>"));
5578 damageQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5581 damageCreate(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5584 damageDestroy(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5587 damageSubtract(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5590 damageAdd(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5592 /* No need for a default case here, since Unknown is printed above,
5593 and UNDECODED() is taken care of by dissect_x11_request */
5597 static void register_damage(void)
5599 set_handler("DAMAGE", dispatch_damage
, damage_errors
, damage_events
, NULL
, damage_replies
);
5602 static void struct_dbe_SwapInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5605 for (i
= 0; i
< count
; i
++) {
5609 item
= proto_tree_add_item(root
, hf_x11_struct_dbe_SwapInfo
, tvb
, *offsetp
, 8, ENC_NA
);
5610 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5611 proto_tree_add_item(t
, hf_x11_struct_dbe_SwapInfo_window
, tvb
, *offsetp
, 4, byte_order
);
5613 field8(tvb
, offsetp
, t
, hf_x11_struct_dbe_SwapInfo_swap_action
, byte_order
);
5614 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5619 static void struct_dbe_BufferAttributes(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5622 for (i
= 0; i
< count
; i
++) {
5626 item
= proto_tree_add_item(root
, hf_x11_struct_dbe_BufferAttributes
, tvb
, *offsetp
, 4, ENC_NA
);
5627 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5628 proto_tree_add_item(t
, hf_x11_struct_dbe_BufferAttributes_window
, tvb
, *offsetp
, 4, byte_order
);
5633 static void struct_dbe_VisualInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5636 for (i
= 0; i
< count
; i
++) {
5640 item
= proto_tree_add_item(root
, hf_x11_struct_dbe_VisualInfo
, tvb
, *offsetp
, 8, ENC_NA
);
5641 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5642 proto_tree_add_item(t
, hf_x11_struct_dbe_VisualInfo_visual_id
, tvb
, *offsetp
, 4, byte_order
);
5644 proto_tree_add_item(t
, hf_x11_struct_dbe_VisualInfo_depth
, tvb
, *offsetp
, 1, byte_order
);
5646 proto_tree_add_item(t
, hf_x11_struct_dbe_VisualInfo_perf_level
, tvb
, *offsetp
, 1, byte_order
);
5648 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
5653 static int struct_size_dbe_VisualInfos(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
5657 f_n_infos
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 0, byte_order
);
5658 size
+= f_n_infos
* 8;
5662 static void struct_dbe_VisualInfos(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
5665 for (i
= 0; i
< count
; i
++) {
5670 item
= proto_tree_add_item(root
, hf_x11_struct_dbe_VisualInfos
, tvb
, *offsetp
, struct_size_dbe_VisualInfos(tvb
, offsetp
, byte_order
), ENC_NA
);
5671 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
5672 f_n_infos
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
5673 proto_tree_add_item(t
, hf_x11_struct_dbe_VisualInfos_n_infos
, tvb
, *offsetp
, 4, byte_order
);
5675 struct_dbe_VisualInfo(tvb
, offsetp
, t
, byte_order
, f_n_infos
);
5679 static void dbeQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5681 proto_tree_add_item(t
, hf_x11_dbe_QueryVersion_major_version
, tvb
, *offsetp
, 1, byte_order
);
5683 proto_tree_add_item(t
, hf_x11_dbe_QueryVersion_minor_version
, tvb
, *offsetp
, 1, byte_order
);
5685 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
5688 static void dbeQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5690 int sequence_number
;
5692 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
5695 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5697 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5698 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5699 "%d (dbe-QueryVersion)", sequence_number
);
5701 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5703 proto_tree_add_item(t
, hf_x11_dbe_QueryVersion_reply_major_version
, tvb
, *offsetp
, 1, byte_order
);
5705 proto_tree_add_item(t
, hf_x11_dbe_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 1, byte_order
);
5707 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
5711 static void dbeAllocateBackBuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5713 proto_tree_add_item(t
, hf_x11_dbe_AllocateBackBuffer_window
, tvb
, *offsetp
, 4, byte_order
);
5715 proto_tree_add_item(t
, hf_x11_dbe_AllocateBackBuffer_buffer
, tvb
, *offsetp
, 4, byte_order
);
5717 proto_tree_add_item(t
, hf_x11_dbe_AllocateBackBuffer_swap_action
, tvb
, *offsetp
, 1, byte_order
);
5719 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
5723 static void dbeDeallocateBackBuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5725 proto_tree_add_item(t
, hf_x11_dbe_DeallocateBackBuffer_buffer
, tvb
, *offsetp
, 4, byte_order
);
5729 static void dbeSwapBuffers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5732 f_n_actions
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
5733 proto_tree_add_item(t
, hf_x11_dbe_SwapBuffers_n_actions
, tvb
, *offsetp
, 4, byte_order
);
5735 struct_dbe_SwapInfo(tvb
, offsetp
, t
, byte_order
, f_n_actions
);
5736 length
-= f_n_actions
* 8;
5739 static void dbeBeginIdiom(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5743 static void dbeEndIdiom(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5747 static void dbeGetVisualInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5750 f_n_drawables
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
5751 proto_tree_add_item(t
, hf_x11_dbe_GetVisualInfo_n_drawables
, tvb
, *offsetp
, 4, byte_order
);
5753 listOfCard32(tvb
, offsetp
, t
, hf_x11_dbe_GetVisualInfo_drawables
, hf_x11_dbe_GetVisualInfo_drawables_item
, f_n_drawables
, byte_order
);
5754 length
-= f_n_drawables
* 4;
5756 static void dbeGetVisualInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5758 int sequence_number
;
5759 int f_n_supported_visuals
;
5761 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetVisualInfo");
5764 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5766 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5767 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5768 "%d (dbe-GetVisualInfo)", sequence_number
);
5770 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5772 f_n_supported_visuals
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
5773 proto_tree_add_item(t
, hf_x11_dbe_GetVisualInfo_reply_n_supported_visuals
, tvb
, *offsetp
, 4, byte_order
);
5775 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
5777 struct_dbe_VisualInfos(tvb
, offsetp
, t
, byte_order
, f_n_supported_visuals
);
5780 static void dbeGetBackBufferAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5782 proto_tree_add_item(t
, hf_x11_dbe_GetBackBufferAttributes_buffer
, tvb
, *offsetp
, 4, byte_order
);
5785 static void dbeGetBackBufferAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5787 int sequence_number
;
5789 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetBackBufferAttributes");
5792 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5794 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5795 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5796 "%d (dbe-GetBackBufferAttributes)", sequence_number
);
5798 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5800 struct_dbe_BufferAttributes(tvb
, offsetp
, t
, byte_order
, 1);
5801 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
5804 static const value_string dbe_extension_minor
[] = {
5805 { 0, "QueryVersion" },
5806 { 1, "AllocateBackBuffer" },
5807 { 2, "DeallocateBackBuffer" },
5808 { 3, "SwapBuffers" },
5809 { 4, "BeginIdiom" },
5811 { 6, "GetVisualInfo" },
5812 { 7, "GetBackBufferAttributes" },
5815 static const x11_event_info dbe_events
[] = {
5818 static const x11_reply_info dbe_replies
[] = {
5819 { 0, dbeQueryVersion_Reply
},
5820 { 6, dbeGetVisualInfo_Reply
},
5821 { 7, dbeGetBackBufferAttributes_Reply
},
5825 static void dispatch_dbe(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5828 minor
= CARD8(dbe_extension_minor
);
5829 length
= REQUEST_LENGTH();
5831 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
5832 val_to_str(minor
, dbe_extension_minor
,
5833 "<Unknown opcode %d>"));
5836 dbeQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5839 dbeAllocateBackBuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5842 dbeDeallocateBackBuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5845 dbeSwapBuffers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5848 dbeBeginIdiom(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5851 dbeEndIdiom(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5854 dbeGetVisualInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5857 dbeGetBackBufferAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
5859 /* No need for a default case here, since Unknown is printed above,
5860 and UNDECODED() is taken care of by dissect_x11_request */
5864 static void register_dbe(void)
5866 set_handler("DOUBLE-BUFFER", dispatch_dbe
, dbe_errors
, dbe_events
, NULL
, dbe_replies
);
5869 static void dpmsGetVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5871 proto_tree_add_item(t
, hf_x11_dpms_GetVersion_client_major_version
, tvb
, *offsetp
, 2, byte_order
);
5873 proto_tree_add_item(t
, hf_x11_dpms_GetVersion_client_minor_version
, tvb
, *offsetp
, 2, byte_order
);
5876 static void dpmsGetVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5878 int sequence_number
;
5880 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetVersion");
5883 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5885 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5886 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5887 "%d (dpms-GetVersion)", sequence_number
);
5889 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5891 proto_tree_add_item(t
, hf_x11_dpms_GetVersion_reply_server_major_version
, tvb
, *offsetp
, 2, byte_order
);
5893 proto_tree_add_item(t
, hf_x11_dpms_GetVersion_reply_server_minor_version
, tvb
, *offsetp
, 2, byte_order
);
5897 static void dpmsCapable(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5900 static void dpmsCapable_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5902 int sequence_number
;
5904 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Capable");
5907 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5909 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5910 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5911 "%d (dpms-Capable)", sequence_number
);
5913 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5915 proto_tree_add_item(t
, hf_x11_dpms_Capable_reply_capable
, tvb
, *offsetp
, 1, byte_order
);
5917 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
5921 static void dpmsGetTimeouts(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5924 static void dpmsGetTimeouts_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5926 int sequence_number
;
5928 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTimeouts");
5931 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5933 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5934 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5935 "%d (dpms-GetTimeouts)", sequence_number
);
5937 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5939 proto_tree_add_item(t
, hf_x11_dpms_GetTimeouts_reply_standby_timeout
, tvb
, *offsetp
, 2, byte_order
);
5941 proto_tree_add_item(t
, hf_x11_dpms_GetTimeouts_reply_suspend_timeout
, tvb
, *offsetp
, 2, byte_order
);
5943 proto_tree_add_item(t
, hf_x11_dpms_GetTimeouts_reply_off_timeout
, tvb
, *offsetp
, 2, byte_order
);
5945 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 18, ENC_NA
);
5949 static void dpmsSetTimeouts(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5951 proto_tree_add_item(t
, hf_x11_dpms_SetTimeouts_standby_timeout
, tvb
, *offsetp
, 2, byte_order
);
5953 proto_tree_add_item(t
, hf_x11_dpms_SetTimeouts_suspend_timeout
, tvb
, *offsetp
, 2, byte_order
);
5955 proto_tree_add_item(t
, hf_x11_dpms_SetTimeouts_off_timeout
, tvb
, *offsetp
, 2, byte_order
);
5959 static void dpmsEnable(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5963 static void dpmsDisable(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5967 static void dpmsForceLevel(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
5969 field16(tvb
, offsetp
, t
, hf_x11_dpms_ForceLevel_power_level
, byte_order
);
5972 static void dpmsInfo(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
5975 static void dpmsInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
5977 int sequence_number
;
5979 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Info");
5982 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
5984 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
5985 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
5986 "%d (dpms-Info)", sequence_number
);
5988 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
5990 field16(tvb
, offsetp
, t
, hf_x11_dpms_Info_reply_power_level
, byte_order
);
5991 proto_tree_add_item(t
, hf_x11_dpms_Info_reply_state
, tvb
, *offsetp
, 1, byte_order
);
5993 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 21, ENC_NA
);
5997 static void dpmsSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6000 static int* const event_mask_bits
[] = {
6001 &hf_x11_dpms_SelectInput_event_mask_mask_InfoNotify
,
6004 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_dpms_SelectInput_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
6008 static const value_string dpms_extension_minor
[] = {
6009 { 0, "GetVersion" },
6011 { 2, "GetTimeouts" },
6012 { 3, "SetTimeouts" },
6015 { 6, "ForceLevel" },
6017 { 8, "SelectInput" },
6020 static const x11_event_info dpms_events
[] = {
6023 static const x11_reply_info dpms_replies
[] = {
6024 { 0, dpmsGetVersion_Reply
},
6025 { 1, dpmsCapable_Reply
},
6026 { 2, dpmsGetTimeouts_Reply
},
6027 { 7, dpmsInfo_Reply
},
6031 static void dispatch_dpms(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6034 minor
= CARD8(dpms_extension_minor
);
6035 length
= REQUEST_LENGTH();
6037 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
6038 val_to_str(minor
, dpms_extension_minor
,
6039 "<Unknown opcode %d>"));
6042 dpmsGetVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6045 dpmsCapable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6048 dpmsGetTimeouts(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6051 dpmsSetTimeouts(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6054 dpmsEnable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6057 dpmsDisable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6060 dpmsForceLevel(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6063 dpmsInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6066 dpmsSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6068 /* No need for a default case here, since Unknown is printed above,
6069 and UNDECODED() is taken care of by dissect_x11_request */
6073 static void register_dpms(void)
6075 set_handler("DPMS", dispatch_dpms
, dpms_errors
, dpms_events
, NULL
, dpms_replies
);
6078 static void struct_dri2_DRI2Buffer(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
6081 for (i
= 0; i
< count
; i
++) {
6085 item
= proto_tree_add_item(root
, hf_x11_struct_dri2_DRI2Buffer
, tvb
, *offsetp
, 20, ENC_NA
);
6086 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
6087 field32(tvb
, offsetp
, t
, hf_x11_struct_dri2_DRI2Buffer_attachment
, byte_order
);
6088 proto_tree_add_item(t
, hf_x11_struct_dri2_DRI2Buffer_name
, tvb
, *offsetp
, 4, byte_order
);
6090 proto_tree_add_item(t
, hf_x11_struct_dri2_DRI2Buffer_pitch
, tvb
, *offsetp
, 4, byte_order
);
6092 proto_tree_add_item(t
, hf_x11_struct_dri2_DRI2Buffer_cpp
, tvb
, *offsetp
, 4, byte_order
);
6094 proto_tree_add_item(t
, hf_x11_struct_dri2_DRI2Buffer_flags
, tvb
, *offsetp
, 4, byte_order
);
6099 static void struct_dri2_AttachFormat(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
6102 for (i
= 0; i
< count
; i
++) {
6106 item
= proto_tree_add_item(root
, hf_x11_struct_dri2_AttachFormat
, tvb
, *offsetp
, 8, ENC_NA
);
6107 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
6108 field32(tvb
, offsetp
, t
, hf_x11_struct_dri2_AttachFormat_attachment
, byte_order
);
6109 proto_tree_add_item(t
, hf_x11_struct_dri2_AttachFormat_format
, tvb
, *offsetp
, 4, byte_order
);
6114 static void dri2QueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6116 proto_tree_add_item(t
, hf_x11_dri2_QueryVersion_major_version
, tvb
, *offsetp
, 4, byte_order
);
6118 proto_tree_add_item(t
, hf_x11_dri2_QueryVersion_minor_version
, tvb
, *offsetp
, 4, byte_order
);
6121 static void dri2QueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6123 int sequence_number
;
6125 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
6128 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6130 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6131 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6132 "%d (dri2-QueryVersion)", sequence_number
);
6134 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6136 proto_tree_add_item(t
, hf_x11_dri2_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
6138 proto_tree_add_item(t
, hf_x11_dri2_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
6142 static void dri2Connect(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6144 proto_tree_add_item(t
, hf_x11_dri2_Connect_window
, tvb
, *offsetp
, 4, byte_order
);
6146 field32(tvb
, offsetp
, t
, hf_x11_dri2_Connect_driver_type
, byte_order
);
6148 static void dri2Connect_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6150 int sequence_number
;
6151 int f_driver_name_length
;
6152 int f_device_name_length
;
6154 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Connect");
6157 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6159 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6160 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6161 "%d (dri2-Connect)", sequence_number
);
6163 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6165 f_driver_name_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6166 proto_tree_add_item(t
, hf_x11_dri2_Connect_reply_driver_name_length
, tvb
, *offsetp
, 4, byte_order
);
6168 f_device_name_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6169 proto_tree_add_item(t
, hf_x11_dri2_Connect_reply_device_name_length
, tvb
, *offsetp
, 4, byte_order
);
6171 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
6173 listOfByte(tvb
, offsetp
, t
, hf_x11_dri2_Connect_reply_driver_name
, f_driver_name_length
, byte_order
);
6174 listOfByte(tvb
, offsetp
, t
, hf_x11_dri2_Connect_reply_alignment_pad
, (((f_driver_name_length
+ 3) & (~3)) - f_driver_name_length
), byte_order
);
6175 listOfByte(tvb
, offsetp
, t
, hf_x11_dri2_Connect_reply_device_name
, f_device_name_length
, byte_order
);
6178 static void dri2Authenticate(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6180 proto_tree_add_item(t
, hf_x11_dri2_Authenticate_window
, tvb
, *offsetp
, 4, byte_order
);
6182 proto_tree_add_item(t
, hf_x11_dri2_Authenticate_magic
, tvb
, *offsetp
, 4, byte_order
);
6185 static void dri2Authenticate_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6187 int sequence_number
;
6189 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Authenticate");
6192 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6194 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6195 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6196 "%d (dri2-Authenticate)", sequence_number
);
6198 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6200 proto_tree_add_item(t
, hf_x11_dri2_Authenticate_reply_authenticated
, tvb
, *offsetp
, 4, byte_order
);
6204 static void dri2CreateDrawable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6206 proto_tree_add_item(t
, hf_x11_dri2_CreateDrawable_drawable
, tvb
, *offsetp
, 4, byte_order
);
6210 static void dri2DestroyDrawable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6212 proto_tree_add_item(t
, hf_x11_dri2_DestroyDrawable_drawable
, tvb
, *offsetp
, 4, byte_order
);
6216 static void dri2GetBuffers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6218 proto_tree_add_item(t
, hf_x11_dri2_GetBuffers_drawable
, tvb
, *offsetp
, 4, byte_order
);
6220 proto_tree_add_item(t
, hf_x11_dri2_GetBuffers_count
, tvb
, *offsetp
, 4, byte_order
);
6222 listOfCard32(tvb
, offsetp
, t
, hf_x11_dri2_GetBuffers_attachments
, hf_x11_dri2_GetBuffers_attachments_item
, (length
- 12) / 4, byte_order
);
6224 static void dri2GetBuffers_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6226 int sequence_number
;
6229 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetBuffers");
6232 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6234 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6235 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6236 "%d (dri2-GetBuffers)", sequence_number
);
6238 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6240 proto_tree_add_item(t
, hf_x11_dri2_GetBuffers_reply_width
, tvb
, *offsetp
, 4, byte_order
);
6242 proto_tree_add_item(t
, hf_x11_dri2_GetBuffers_reply_height
, tvb
, *offsetp
, 4, byte_order
);
6244 f_count
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6245 proto_tree_add_item(t
, hf_x11_dri2_GetBuffers_reply_count
, tvb
, *offsetp
, 4, byte_order
);
6247 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
6249 struct_dri2_DRI2Buffer(tvb
, offsetp
, t
, byte_order
, f_count
);
6252 static void dri2CopyRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6254 proto_tree_add_item(t
, hf_x11_dri2_CopyRegion_drawable
, tvb
, *offsetp
, 4, byte_order
);
6256 proto_tree_add_item(t
, hf_x11_dri2_CopyRegion_region
, tvb
, *offsetp
, 4, byte_order
);
6258 proto_tree_add_item(t
, hf_x11_dri2_CopyRegion_dest
, tvb
, *offsetp
, 4, byte_order
);
6260 proto_tree_add_item(t
, hf_x11_dri2_CopyRegion_src
, tvb
, *offsetp
, 4, byte_order
);
6263 static void dri2CopyRegion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6265 int sequence_number
;
6267 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CopyRegion");
6270 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6272 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6273 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6274 "%d (dri2-CopyRegion)", sequence_number
);
6276 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6280 static void dri2GetBuffersWithFormat(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6282 proto_tree_add_item(t
, hf_x11_dri2_GetBuffersWithFormat_drawable
, tvb
, *offsetp
, 4, byte_order
);
6284 proto_tree_add_item(t
, hf_x11_dri2_GetBuffersWithFormat_count
, tvb
, *offsetp
, 4, byte_order
);
6286 struct_dri2_AttachFormat(tvb
, offsetp
, t
, byte_order
, (length
- 12) / 8);
6288 static void dri2GetBuffersWithFormat_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6290 int sequence_number
;
6293 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetBuffersWithFormat");
6296 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6298 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6299 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6300 "%d (dri2-GetBuffersWithFormat)", sequence_number
);
6302 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6304 proto_tree_add_item(t
, hf_x11_dri2_GetBuffersWithFormat_reply_width
, tvb
, *offsetp
, 4, byte_order
);
6306 proto_tree_add_item(t
, hf_x11_dri2_GetBuffersWithFormat_reply_height
, tvb
, *offsetp
, 4, byte_order
);
6308 f_count
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6309 proto_tree_add_item(t
, hf_x11_dri2_GetBuffersWithFormat_reply_count
, tvb
, *offsetp
, 4, byte_order
);
6311 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
6313 struct_dri2_DRI2Buffer(tvb
, offsetp
, t
, byte_order
, f_count
);
6316 static void dri2SwapBuffers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6318 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_drawable
, tvb
, *offsetp
, 4, byte_order
);
6320 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_target_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
6322 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_target_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
6324 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_divisor_hi
, tvb
, *offsetp
, 4, byte_order
);
6326 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_divisor_lo
, tvb
, *offsetp
, 4, byte_order
);
6328 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_remainder_hi
, tvb
, *offsetp
, 4, byte_order
);
6330 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_remainder_lo
, tvb
, *offsetp
, 4, byte_order
);
6333 static void dri2SwapBuffers_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6335 int sequence_number
;
6337 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SwapBuffers");
6340 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6342 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6343 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6344 "%d (dri2-SwapBuffers)", sequence_number
);
6346 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6348 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_reply_swap_hi
, tvb
, *offsetp
, 4, byte_order
);
6350 proto_tree_add_item(t
, hf_x11_dri2_SwapBuffers_reply_swap_lo
, tvb
, *offsetp
, 4, byte_order
);
6354 static void dri2GetMSC(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6356 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_drawable
, tvb
, *offsetp
, 4, byte_order
);
6359 static void dri2GetMSC_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6361 int sequence_number
;
6363 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMSC");
6366 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6368 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6369 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6370 "%d (dri2-GetMSC)", sequence_number
);
6372 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6374 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_ust_hi
, tvb
, *offsetp
, 4, byte_order
);
6376 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_ust_lo
, tvb
, *offsetp
, 4, byte_order
);
6378 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
6380 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
6382 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_sbc_hi
, tvb
, *offsetp
, 4, byte_order
);
6384 proto_tree_add_item(t
, hf_x11_dri2_GetMSC_reply_sbc_lo
, tvb
, *offsetp
, 4, byte_order
);
6388 static void dri2WaitMSC(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6390 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_drawable
, tvb
, *offsetp
, 4, byte_order
);
6392 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_target_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
6394 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_target_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
6396 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_divisor_hi
, tvb
, *offsetp
, 4, byte_order
);
6398 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_divisor_lo
, tvb
, *offsetp
, 4, byte_order
);
6400 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_remainder_hi
, tvb
, *offsetp
, 4, byte_order
);
6402 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_remainder_lo
, tvb
, *offsetp
, 4, byte_order
);
6405 static void dri2WaitMSC_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6407 int sequence_number
;
6409 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-WaitMSC");
6412 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6414 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6415 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6416 "%d (dri2-WaitMSC)", sequence_number
);
6418 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6420 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_ust_hi
, tvb
, *offsetp
, 4, byte_order
);
6422 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_ust_lo
, tvb
, *offsetp
, 4, byte_order
);
6424 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
6426 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
6428 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_sbc_hi
, tvb
, *offsetp
, 4, byte_order
);
6430 proto_tree_add_item(t
, hf_x11_dri2_WaitMSC_reply_sbc_lo
, tvb
, *offsetp
, 4, byte_order
);
6434 static void dri2WaitSBC(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6436 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_drawable
, tvb
, *offsetp
, 4, byte_order
);
6438 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_target_sbc_hi
, tvb
, *offsetp
, 4, byte_order
);
6440 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_target_sbc_lo
, tvb
, *offsetp
, 4, byte_order
);
6443 static void dri2WaitSBC_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6445 int sequence_number
;
6447 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-WaitSBC");
6450 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6452 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6453 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6454 "%d (dri2-WaitSBC)", sequence_number
);
6456 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6458 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_ust_hi
, tvb
, *offsetp
, 4, byte_order
);
6460 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_ust_lo
, tvb
, *offsetp
, 4, byte_order
);
6462 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
6464 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
6466 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_sbc_hi
, tvb
, *offsetp
, 4, byte_order
);
6468 proto_tree_add_item(t
, hf_x11_dri2_WaitSBC_reply_sbc_lo
, tvb
, *offsetp
, 4, byte_order
);
6472 static void dri2SwapInterval(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6474 proto_tree_add_item(t
, hf_x11_dri2_SwapInterval_drawable
, tvb
, *offsetp
, 4, byte_order
);
6476 proto_tree_add_item(t
, hf_x11_dri2_SwapInterval_interval
, tvb
, *offsetp
, 4, byte_order
);
6480 static void dri2GetParam(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6482 proto_tree_add_item(t
, hf_x11_dri2_GetParam_drawable
, tvb
, *offsetp
, 4, byte_order
);
6484 proto_tree_add_item(t
, hf_x11_dri2_GetParam_param
, tvb
, *offsetp
, 4, byte_order
);
6487 static void dri2GetParam_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6489 int sequence_number
;
6491 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetParam");
6494 proto_tree_add_item(t
, hf_x11_dri2_GetParam_reply_is_param_recognized
, tvb
, *offsetp
, 1, byte_order
);
6496 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6497 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6498 "%d (dri2-GetParam)", sequence_number
);
6500 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6502 proto_tree_add_item(t
, hf_x11_dri2_GetParam_reply_value_hi
, tvb
, *offsetp
, 4, byte_order
);
6504 proto_tree_add_item(t
, hf_x11_dri2_GetParam_reply_value_lo
, tvb
, *offsetp
, 4, byte_order
);
6508 static void dri2InvalidateBuffers(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6510 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6512 CARD16(event_sequencenumber
);
6513 proto_tree_add_item(t
, hf_x11_dri2_InvalidateBuffers_drawable
, tvb
, *offsetp
, 4, byte_order
);
6517 static const value_string dri2_extension_minor
[] = {
6518 { 0, "QueryVersion" },
6520 { 2, "Authenticate" },
6521 { 3, "CreateDrawable" },
6522 { 4, "DestroyDrawable" },
6523 { 5, "GetBuffers" },
6524 { 6, "CopyRegion" },
6525 { 7, "GetBuffersWithFormat" },
6526 { 8, "SwapBuffers" },
6530 { 12, "SwapInterval" },
6534 static const x11_event_info dri2_events
[] = {
6535 { "dri2-InvalidateBuffers", dri2InvalidateBuffers
},
6538 static const x11_reply_info dri2_replies
[] = {
6539 { 0, dri2QueryVersion_Reply
},
6540 { 1, dri2Connect_Reply
},
6541 { 2, dri2Authenticate_Reply
},
6542 { 5, dri2GetBuffers_Reply
},
6543 { 6, dri2CopyRegion_Reply
},
6544 { 7, dri2GetBuffersWithFormat_Reply
},
6545 { 8, dri2SwapBuffers_Reply
},
6546 { 9, dri2GetMSC_Reply
},
6547 { 10, dri2WaitMSC_Reply
},
6548 { 11, dri2WaitSBC_Reply
},
6549 { 13, dri2GetParam_Reply
},
6553 static void dispatch_dri2(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6556 minor
= CARD8(dri2_extension_minor
);
6557 length
= REQUEST_LENGTH();
6559 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
6560 val_to_str(minor
, dri2_extension_minor
,
6561 "<Unknown opcode %d>"));
6564 dri2QueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6567 dri2Connect(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6570 dri2Authenticate(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6573 dri2CreateDrawable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6576 dri2DestroyDrawable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6579 dri2GetBuffers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6582 dri2CopyRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6585 dri2GetBuffersWithFormat(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6588 dri2SwapBuffers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6591 dri2GetMSC(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6594 dri2WaitMSC(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6597 dri2WaitSBC(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6600 dri2SwapInterval(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6603 dri2GetParam(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6605 /* No need for a default case here, since Unknown is printed above,
6606 and UNDECODED() is taken care of by dissect_x11_request */
6610 static void register_dri2(void)
6612 set_handler("DRI2", dispatch_dri2
, dri2_errors
, dri2_events
, NULL
, dri2_replies
);
6615 static void dri3QueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6617 proto_tree_add_item(t
, hf_x11_dri3_QueryVersion_major_version
, tvb
, *offsetp
, 4, byte_order
);
6619 proto_tree_add_item(t
, hf_x11_dri3_QueryVersion_minor_version
, tvb
, *offsetp
, 4, byte_order
);
6622 static void dri3QueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6624 int sequence_number
;
6626 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
6629 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6631 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6632 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6633 "%d (dri3-QueryVersion)", sequence_number
);
6635 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6637 proto_tree_add_item(t
, hf_x11_dri3_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
6639 proto_tree_add_item(t
, hf_x11_dri3_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
6643 static void dri3Open(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6645 proto_tree_add_item(t
, hf_x11_dri3_Open_drawable
, tvb
, *offsetp
, 4, byte_order
);
6647 proto_tree_add_item(t
, hf_x11_dri3_Open_provider
, tvb
, *offsetp
, 4, byte_order
);
6650 static void dri3Open_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6652 int sequence_number
;
6654 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Open");
6657 proto_tree_add_item(t
, hf_x11_dri3_Open_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
6659 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6660 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6661 "%d (dri3-Open)", sequence_number
);
6663 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6665 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
6669 static void dri3PixmapFromBuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6671 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_pixmap
, tvb
, *offsetp
, 4, byte_order
);
6673 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_drawable
, tvb
, *offsetp
, 4, byte_order
);
6675 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_size
, tvb
, *offsetp
, 4, byte_order
);
6677 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_width
, tvb
, *offsetp
, 2, byte_order
);
6679 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_height
, tvb
, *offsetp
, 2, byte_order
);
6681 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_stride
, tvb
, *offsetp
, 2, byte_order
);
6683 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_depth
, tvb
, *offsetp
, 1, byte_order
);
6685 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffer_bpp
, tvb
, *offsetp
, 1, byte_order
);
6689 static void dri3BufferFromPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6691 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
6694 static void dri3BufferFromPixmap_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6696 int sequence_number
;
6698 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-BufferFromPixmap");
6701 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
6703 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6704 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6705 "%d (dri3-BufferFromPixmap)", sequence_number
);
6707 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6709 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_size
, tvb
, *offsetp
, 4, byte_order
);
6711 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_width
, tvb
, *offsetp
, 2, byte_order
);
6713 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_height
, tvb
, *offsetp
, 2, byte_order
);
6715 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_stride
, tvb
, *offsetp
, 2, byte_order
);
6717 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_depth
, tvb
, *offsetp
, 1, byte_order
);
6719 proto_tree_add_item(t
, hf_x11_dri3_BufferFromPixmap_reply_bpp
, tvb
, *offsetp
, 1, byte_order
);
6721 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
6725 static void dri3FenceFromFD(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6727 proto_tree_add_item(t
, hf_x11_dri3_FenceFromFD_drawable
, tvb
, *offsetp
, 4, byte_order
);
6729 proto_tree_add_item(t
, hf_x11_dri3_FenceFromFD_fence
, tvb
, *offsetp
, 4, byte_order
);
6731 proto_tree_add_item(t
, hf_x11_dri3_FenceFromFD_initially_triggered
, tvb
, *offsetp
, 1, byte_order
);
6733 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
6737 static void dri3FDFromFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6739 proto_tree_add_item(t
, hf_x11_dri3_FDFromFence_drawable
, tvb
, *offsetp
, 4, byte_order
);
6741 proto_tree_add_item(t
, hf_x11_dri3_FDFromFence_fence
, tvb
, *offsetp
, 4, byte_order
);
6744 static void dri3FDFromFence_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6746 int sequence_number
;
6748 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-FDFromFence");
6751 proto_tree_add_item(t
, hf_x11_dri3_FDFromFence_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
6753 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6754 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6755 "%d (dri3-FDFromFence)", sequence_number
);
6757 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6759 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
6763 static void dri3GetSupportedModifiers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6765 proto_tree_add_item(t
, hf_x11_dri3_GetSupportedModifiers_window
, tvb
, *offsetp
, 4, byte_order
);
6767 proto_tree_add_item(t
, hf_x11_dri3_GetSupportedModifiers_depth
, tvb
, *offsetp
, 1, byte_order
);
6769 proto_tree_add_item(t
, hf_x11_dri3_GetSupportedModifiers_bpp
, tvb
, *offsetp
, 1, byte_order
);
6771 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
6774 static void dri3GetSupportedModifiers_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6776 int sequence_number
;
6777 int f_num_window_modifiers
;
6778 int f_num_screen_modifiers
;
6780 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSupportedModifiers");
6783 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
6785 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6786 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6787 "%d (dri3-GetSupportedModifiers)", sequence_number
);
6789 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6791 f_num_window_modifiers
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6792 proto_tree_add_item(t
, hf_x11_dri3_GetSupportedModifiers_reply_num_window_modifiers
, tvb
, *offsetp
, 4, byte_order
);
6794 f_num_screen_modifiers
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
6795 proto_tree_add_item(t
, hf_x11_dri3_GetSupportedModifiers_reply_num_screen_modifiers
, tvb
, *offsetp
, 4, byte_order
);
6797 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
6799 listOfCard64(tvb
, offsetp
, t
, hf_x11_dri3_GetSupportedModifiers_reply_window_modifiers
, hf_x11_dri3_GetSupportedModifiers_reply_window_modifiers_item
, f_num_window_modifiers
, byte_order
);
6800 listOfCard64(tvb
, offsetp
, t
, hf_x11_dri3_GetSupportedModifiers_reply_screen_modifiers
, hf_x11_dri3_GetSupportedModifiers_reply_screen_modifiers_item
, f_num_screen_modifiers
, byte_order
);
6803 static void dri3PixmapFromBuffers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6806 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_pixmap
, tvb
, *offsetp
, 4, byte_order
);
6808 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_window
, tvb
, *offsetp
, 4, byte_order
);
6810 f_num_buffers
= tvb_get_uint8(tvb
, *offsetp
);
6811 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_num_buffers
, tvb
, *offsetp
, 1, byte_order
);
6813 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
6815 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_width
, tvb
, *offsetp
, 2, byte_order
);
6817 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_height
, tvb
, *offsetp
, 2, byte_order
);
6819 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_stride0
, tvb
, *offsetp
, 4, byte_order
);
6821 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_offset0
, tvb
, *offsetp
, 4, byte_order
);
6823 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_stride1
, tvb
, *offsetp
, 4, byte_order
);
6825 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_offset1
, tvb
, *offsetp
, 4, byte_order
);
6827 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_stride2
, tvb
, *offsetp
, 4, byte_order
);
6829 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_offset2
, tvb
, *offsetp
, 4, byte_order
);
6831 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_stride3
, tvb
, *offsetp
, 4, byte_order
);
6833 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_offset3
, tvb
, *offsetp
, 4, byte_order
);
6835 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_depth
, tvb
, *offsetp
, 1, byte_order
);
6837 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_bpp
, tvb
, *offsetp
, 1, byte_order
);
6839 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
6841 proto_tree_add_item(t
, hf_x11_dri3_PixmapFromBuffers_modifier
, tvb
, *offsetp
, 8, byte_order
);
6843 length
-= f_num_buffers
* 1;
6846 static void dri3BuffersFromPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6848 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
6851 static void dri3BuffersFromPixmap_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6853 int sequence_number
;
6856 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-BuffersFromPixmap");
6859 f_nfd
= tvb_get_uint8(tvb
, *offsetp
);
6860 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
6862 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
6863 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
6864 "%d (dri3-BuffersFromPixmap)", sequence_number
);
6866 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
6868 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_width
, tvb
, *offsetp
, 2, byte_order
);
6870 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_height
, tvb
, *offsetp
, 2, byte_order
);
6872 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
6874 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_modifier
, tvb
, *offsetp
, 8, byte_order
);
6876 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_depth
, tvb
, *offsetp
, 1, byte_order
);
6878 proto_tree_add_item(t
, hf_x11_dri3_BuffersFromPixmap_reply_bpp
, tvb
, *offsetp
, 1, byte_order
);
6880 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 6, ENC_NA
);
6882 listOfCard32(tvb
, offsetp
, t
, hf_x11_dri3_BuffersFromPixmap_reply_strides
, hf_x11_dri3_BuffersFromPixmap_reply_strides_item
, f_nfd
, byte_order
);
6883 listOfCard32(tvb
, offsetp
, t
, hf_x11_dri3_BuffersFromPixmap_reply_offsets
, hf_x11_dri3_BuffersFromPixmap_reply_offsets_item
, f_nfd
, byte_order
);
6886 static void dri3SetDRMDeviceInUse(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6888 proto_tree_add_item(t
, hf_x11_dri3_SetDRMDeviceInUse_window
, tvb
, *offsetp
, 4, byte_order
);
6890 proto_tree_add_item(t
, hf_x11_dri3_SetDRMDeviceInUse_drmMajor
, tvb
, *offsetp
, 4, byte_order
);
6892 proto_tree_add_item(t
, hf_x11_dri3_SetDRMDeviceInUse_drmMinor
, tvb
, *offsetp
, 4, byte_order
);
6896 static void dri3ImportSyncobj(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6898 proto_tree_add_item(t
, hf_x11_dri3_ImportSyncobj_syncobj
, tvb
, *offsetp
, 4, byte_order
);
6900 proto_tree_add_item(t
, hf_x11_dri3_ImportSyncobj_drawable
, tvb
, *offsetp
, 4, byte_order
);
6904 static void dri3FreeSyncobj(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6906 proto_tree_add_item(t
, hf_x11_dri3_FreeSyncobj_syncobj
, tvb
, *offsetp
, 4, byte_order
);
6909 static const value_string dri3_extension_minor
[] = {
6910 { 0, "QueryVersion" },
6912 { 2, "PixmapFromBuffer" },
6913 { 3, "BufferFromPixmap" },
6914 { 4, "FenceFromFD" },
6915 { 5, "FDFromFence" },
6916 { 6, "GetSupportedModifiers" },
6917 { 7, "PixmapFromBuffers" },
6918 { 8, "BuffersFromPixmap" },
6919 { 9, "SetDRMDeviceInUse" },
6920 { 10, "ImportSyncobj" },
6921 { 11, "FreeSyncobj" },
6924 static const x11_event_info dri3_events
[] = {
6927 static const x11_reply_info dri3_replies
[] = {
6928 { 0, dri3QueryVersion_Reply
},
6929 { 1, dri3Open_Reply
},
6930 { 3, dri3BufferFromPixmap_Reply
},
6931 { 5, dri3FDFromFence_Reply
},
6932 { 6, dri3GetSupportedModifiers_Reply
},
6933 { 8, dri3BuffersFromPixmap_Reply
},
6937 static void dispatch_dri3(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
6940 minor
= CARD8(dri3_extension_minor
);
6941 length
= REQUEST_LENGTH();
6943 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
6944 val_to_str(minor
, dri3_extension_minor
,
6945 "<Unknown opcode %d>"));
6948 dri3QueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6951 dri3Open(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6954 dri3PixmapFromBuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6957 dri3BufferFromPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6960 dri3FenceFromFD(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6963 dri3FDFromFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6966 dri3GetSupportedModifiers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6969 dri3PixmapFromBuffers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6972 dri3BuffersFromPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6975 dri3SetDRMDeviceInUse(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6978 dri3ImportSyncobj(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6981 dri3FreeSyncobj(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
6983 /* No need for a default case here, since Unknown is printed above,
6984 and UNDECODED() is taken care of by dissect_x11_request */
6988 static void register_dri3(void)
6990 set_handler("DRI3", dispatch_dri3
, dri3_errors
, dri3_events
, NULL
, dri3_replies
);
6993 static void geQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
6995 proto_tree_add_item(t
, hf_x11_ge_QueryVersion_client_major_version
, tvb
, *offsetp
, 2, byte_order
);
6997 proto_tree_add_item(t
, hf_x11_ge_QueryVersion_client_minor_version
, tvb
, *offsetp
, 2, byte_order
);
7000 static void geQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7002 int sequence_number
;
7004 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
7007 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7009 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7010 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7011 "%d (ge-QueryVersion)", sequence_number
);
7013 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7015 proto_tree_add_item(t
, hf_x11_ge_QueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
7017 proto_tree_add_item(t
, hf_x11_ge_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
7019 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
7022 static const value_string ge_extension_minor
[] = {
7023 { 0, "QueryVersion" },
7026 static const x11_event_info ge_events
[] = {
7029 static const x11_reply_info ge_replies
[] = {
7030 { 0, geQueryVersion_Reply
},
7034 static void dispatch_ge(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7037 minor
= CARD8(ge_extension_minor
);
7038 length
= REQUEST_LENGTH();
7040 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
7041 val_to_str(minor
, ge_extension_minor
,
7042 "<Unknown opcode %d>"));
7045 geQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
7047 /* No need for a default case here, since Unknown is printed above,
7048 and UNDECODED() is taken care of by dissect_x11_request */
7052 static void register_ge(void)
7054 set_handler("Generic Event Extension", dispatch_ge
, ge_errors
, ge_events
, NULL
, ge_replies
);
7057 static void glxBufferSwapComplete(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7059 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7061 CARD16(event_sequencenumber
);
7062 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_event_type
, tvb
, *offsetp
, 2, byte_order
);
7064 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
7066 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_drawable
, tvb
, *offsetp
, 4, byte_order
);
7068 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_ust_hi
, tvb
, *offsetp
, 4, byte_order
);
7070 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_ust_lo
, tvb
, *offsetp
, 4, byte_order
);
7072 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_msc_hi
, tvb
, *offsetp
, 4, byte_order
);
7074 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_msc_lo
, tvb
, *offsetp
, 4, byte_order
);
7076 proto_tree_add_item(t
, hf_x11_glx_BufferSwapComplete_sbc
, tvb
, *offsetp
, 4, byte_order
);
7081 static void glxRender(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7083 proto_tree_add_item(t
, hf_x11_glx_Render_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7085 dispatch_glx_render(tvb
, pinfo
, offsetp
, t
, byte_order
, (length
- 8));
7088 static void glxRenderLarge(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7091 proto_tree_add_item(t
, hf_x11_glx_RenderLarge_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7093 proto_tree_add_item(t
, hf_x11_glx_RenderLarge_request_num
, tvb
, *offsetp
, 2, byte_order
);
7095 proto_tree_add_item(t
, hf_x11_glx_RenderLarge_request_total
, tvb
, *offsetp
, 2, byte_order
);
7097 f_data_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7098 proto_tree_add_item(t
, hf_x11_glx_RenderLarge_data_len
, tvb
, *offsetp
, 4, byte_order
);
7100 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_RenderLarge_data
, f_data_len
, byte_order
);
7101 length
-= f_data_len
* 1;
7104 static void glxCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7106 proto_tree_add_item(t
, hf_x11_glx_CreateContext_context
, tvb
, *offsetp
, 4, byte_order
);
7108 proto_tree_add_item(t
, hf_x11_glx_CreateContext_visual
, tvb
, *offsetp
, 4, byte_order
);
7110 proto_tree_add_item(t
, hf_x11_glx_CreateContext_screen
, tvb
, *offsetp
, 4, byte_order
);
7112 proto_tree_add_item(t
, hf_x11_glx_CreateContext_share_list
, tvb
, *offsetp
, 4, byte_order
);
7114 proto_tree_add_item(t
, hf_x11_glx_CreateContext_is_direct
, tvb
, *offsetp
, 1, byte_order
);
7116 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
7120 static void glxDestroyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7122 proto_tree_add_item(t
, hf_x11_glx_DestroyContext_context
, tvb
, *offsetp
, 4, byte_order
);
7126 static void glxMakeCurrent(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7128 proto_tree_add_item(t
, hf_x11_glx_MakeCurrent_drawable
, tvb
, *offsetp
, 4, byte_order
);
7130 proto_tree_add_item(t
, hf_x11_glx_MakeCurrent_context
, tvb
, *offsetp
, 4, byte_order
);
7132 proto_tree_add_item(t
, hf_x11_glx_MakeCurrent_old_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7135 static void glxMakeCurrent_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7137 int sequence_number
;
7139 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-MakeCurrent");
7142 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7144 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7145 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7146 "%d (glx-MakeCurrent)", sequence_number
);
7148 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7150 proto_tree_add_item(t
, hf_x11_glx_MakeCurrent_reply_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7152 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
7156 static void glxIsDirect(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7158 proto_tree_add_item(t
, hf_x11_glx_IsDirect_context
, tvb
, *offsetp
, 4, byte_order
);
7161 static void glxIsDirect_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7163 int sequence_number
;
7165 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsDirect");
7168 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7170 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7171 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7172 "%d (glx-IsDirect)", sequence_number
);
7174 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7176 proto_tree_add_item(t
, hf_x11_glx_IsDirect_reply_is_direct
, tvb
, *offsetp
, 1, byte_order
);
7178 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
7182 static void glxQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7184 proto_tree_add_item(t
, hf_x11_glx_QueryVersion_major_version
, tvb
, *offsetp
, 4, byte_order
);
7186 proto_tree_add_item(t
, hf_x11_glx_QueryVersion_minor_version
, tvb
, *offsetp
, 4, byte_order
);
7189 static void glxQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7191 int sequence_number
;
7193 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
7196 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7198 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7199 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7200 "%d (glx-QueryVersion)", sequence_number
);
7202 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7204 proto_tree_add_item(t
, hf_x11_glx_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
7206 proto_tree_add_item(t
, hf_x11_glx_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
7208 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
7212 static void glxWaitGL(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7214 proto_tree_add_item(t
, hf_x11_glx_WaitGL_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7218 static void glxWaitX(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7220 proto_tree_add_item(t
, hf_x11_glx_WaitX_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7224 static void glxCopyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7226 proto_tree_add_item(t
, hf_x11_glx_CopyContext_src
, tvb
, *offsetp
, 4, byte_order
);
7228 proto_tree_add_item(t
, hf_x11_glx_CopyContext_dest
, tvb
, *offsetp
, 4, byte_order
);
7230 proto_tree_add_item(t
, hf_x11_glx_CopyContext_mask
, tvb
, *offsetp
, 4, byte_order
);
7232 proto_tree_add_item(t
, hf_x11_glx_CopyContext_src_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7236 static void glxSwapBuffers(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7238 proto_tree_add_item(t
, hf_x11_glx_SwapBuffers_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7240 proto_tree_add_item(t
, hf_x11_glx_SwapBuffers_drawable
, tvb
, *offsetp
, 4, byte_order
);
7244 static void glxUseXFont(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7246 proto_tree_add_item(t
, hf_x11_glx_UseXFont_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7248 proto_tree_add_item(t
, hf_x11_glx_UseXFont_font
, tvb
, *offsetp
, 4, byte_order
);
7250 proto_tree_add_item(t
, hf_x11_glx_UseXFont_first
, tvb
, *offsetp
, 4, byte_order
);
7252 proto_tree_add_item(t
, hf_x11_glx_UseXFont_count
, tvb
, *offsetp
, 4, byte_order
);
7254 proto_tree_add_item(t
, hf_x11_glx_UseXFont_list_base
, tvb
, *offsetp
, 4, byte_order
);
7258 static void glxCreateGLXPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7260 proto_tree_add_item(t
, hf_x11_glx_CreateGLXPixmap_screen
, tvb
, *offsetp
, 4, byte_order
);
7262 proto_tree_add_item(t
, hf_x11_glx_CreateGLXPixmap_visual
, tvb
, *offsetp
, 4, byte_order
);
7264 proto_tree_add_item(t
, hf_x11_glx_CreateGLXPixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7266 proto_tree_add_item(t
, hf_x11_glx_CreateGLXPixmap_glx_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7270 static void glxGetVisualConfigs(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7272 proto_tree_add_item(t
, hf_x11_glx_GetVisualConfigs_screen
, tvb
, *offsetp
, 4, byte_order
);
7275 static void glxGetVisualConfigs_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7277 int sequence_number
;
7280 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetVisualConfigs");
7283 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7285 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7286 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7287 "%d (glx-GetVisualConfigs)", sequence_number
);
7289 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7290 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7292 proto_tree_add_item(t
, hf_x11_glx_GetVisualConfigs_reply_num_visuals
, tvb
, *offsetp
, 4, byte_order
);
7294 proto_tree_add_item(t
, hf_x11_glx_GetVisualConfigs_reply_num_properties
, tvb
, *offsetp
, 4, byte_order
);
7296 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
7298 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GetVisualConfigs_reply_property_list
, hf_x11_glx_GetVisualConfigs_reply_property_list_item
, f_length
, byte_order
);
7301 static void glxDestroyGLXPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7303 proto_tree_add_item(t
, hf_x11_glx_DestroyGLXPixmap_glx_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7307 static void glxVendorPrivate(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7309 proto_tree_add_item(t
, hf_x11_glx_VendorPrivate_vendor_code
, tvb
, *offsetp
, 4, byte_order
);
7311 proto_tree_add_item(t
, hf_x11_glx_VendorPrivate_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7313 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_VendorPrivate_data
, (length
- 12) / 1, byte_order
);
7316 static void glxVendorPrivateWithReply(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7318 proto_tree_add_item(t
, hf_x11_glx_VendorPrivateWithReply_vendor_code
, tvb
, *offsetp
, 4, byte_order
);
7320 proto_tree_add_item(t
, hf_x11_glx_VendorPrivateWithReply_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7322 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_VendorPrivateWithReply_data
, (length
- 12) / 1, byte_order
);
7324 static void glxVendorPrivateWithReply_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7326 int sequence_number
;
7329 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-VendorPrivateWithReply");
7332 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7334 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7335 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7336 "%d (glx-VendorPrivateWithReply)", sequence_number
);
7338 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7339 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7341 proto_tree_add_item(t
, hf_x11_glx_VendorPrivateWithReply_reply_retval
, tvb
, *offsetp
, 4, byte_order
);
7343 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_VendorPrivateWithReply_reply_data1
, 24, byte_order
);
7344 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_VendorPrivateWithReply_reply_data2
, (f_length
* 4), byte_order
);
7347 static void glxQueryExtensionsString(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7349 proto_tree_add_item(t
, hf_x11_glx_QueryExtensionsString_screen
, tvb
, *offsetp
, 4, byte_order
);
7352 static void glxQueryExtensionsString_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7354 int sequence_number
;
7356 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryExtensionsString");
7359 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7361 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7362 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7363 "%d (glx-QueryExtensionsString)", sequence_number
);
7365 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7367 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
7369 proto_tree_add_item(t
, hf_x11_glx_QueryExtensionsString_reply_n
, tvb
, *offsetp
, 4, byte_order
);
7371 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
7375 static void glxQueryServerString(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7377 proto_tree_add_item(t
, hf_x11_glx_QueryServerString_screen
, tvb
, *offsetp
, 4, byte_order
);
7379 proto_tree_add_item(t
, hf_x11_glx_QueryServerString_name
, tvb
, *offsetp
, 4, byte_order
);
7382 static void glxQueryServerString_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7384 int sequence_number
;
7387 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryServerString");
7390 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7392 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7393 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7394 "%d (glx-QueryServerString)", sequence_number
);
7396 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7398 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
7400 f_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7401 proto_tree_add_item(t
, hf_x11_glx_QueryServerString_reply_str_len
, tvb
, *offsetp
, 4, byte_order
);
7403 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
7405 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_QueryServerString_reply_string
, f_str_len
, byte_order
);
7408 static void glxClientInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7411 proto_tree_add_item(t
, hf_x11_glx_ClientInfo_major_version
, tvb
, *offsetp
, 4, byte_order
);
7413 proto_tree_add_item(t
, hf_x11_glx_ClientInfo_minor_version
, tvb
, *offsetp
, 4, byte_order
);
7415 f_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7416 proto_tree_add_item(t
, hf_x11_glx_ClientInfo_str_len
, tvb
, *offsetp
, 4, byte_order
);
7418 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_ClientInfo_string
, f_str_len
, byte_order
);
7419 length
-= f_str_len
* 1;
7422 static void glxGetFBConfigs(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7424 proto_tree_add_item(t
, hf_x11_glx_GetFBConfigs_screen
, tvb
, *offsetp
, 4, byte_order
);
7427 static void glxGetFBConfigs_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7429 int sequence_number
;
7432 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetFBConfigs");
7435 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7437 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7438 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7439 "%d (glx-GetFBConfigs)", sequence_number
);
7441 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7442 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7444 proto_tree_add_item(t
, hf_x11_glx_GetFBConfigs_reply_num_FB_configs
, tvb
, *offsetp
, 4, byte_order
);
7446 proto_tree_add_item(t
, hf_x11_glx_GetFBConfigs_reply_num_properties
, tvb
, *offsetp
, 4, byte_order
);
7448 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
7450 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GetFBConfigs_reply_property_list
, hf_x11_glx_GetFBConfigs_reply_property_list_item
, f_length
, byte_order
);
7453 static void glxCreatePixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7456 proto_tree_add_item(t
, hf_x11_glx_CreatePixmap_screen
, tvb
, *offsetp
, 4, byte_order
);
7458 proto_tree_add_item(t
, hf_x11_glx_CreatePixmap_fbconfig
, tvb
, *offsetp
, 4, byte_order
);
7460 proto_tree_add_item(t
, hf_x11_glx_CreatePixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7462 proto_tree_add_item(t
, hf_x11_glx_CreatePixmap_glx_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7464 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7465 proto_tree_add_item(t
, hf_x11_glx_CreatePixmap_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7467 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_CreatePixmap_attribs
, hf_x11_glx_CreatePixmap_attribs_item
, (f_num_attribs
* 2), byte_order
);
7468 length
-= (f_num_attribs
* 2) * 4;
7471 static void glxDestroyPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7473 proto_tree_add_item(t
, hf_x11_glx_DestroyPixmap_glx_pixmap
, tvb
, *offsetp
, 4, byte_order
);
7477 static void glxCreateNewContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7479 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_context
, tvb
, *offsetp
, 4, byte_order
);
7481 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_fbconfig
, tvb
, *offsetp
, 4, byte_order
);
7483 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_screen
, tvb
, *offsetp
, 4, byte_order
);
7485 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_render_type
, tvb
, *offsetp
, 4, byte_order
);
7487 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_share_list
, tvb
, *offsetp
, 4, byte_order
);
7489 proto_tree_add_item(t
, hf_x11_glx_CreateNewContext_is_direct
, tvb
, *offsetp
, 1, byte_order
);
7491 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
7495 static void glxQueryContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7497 proto_tree_add_item(t
, hf_x11_glx_QueryContext_context
, tvb
, *offsetp
, 4, byte_order
);
7500 static void glxQueryContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7502 int sequence_number
;
7505 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryContext");
7508 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7510 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7511 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7512 "%d (glx-QueryContext)", sequence_number
);
7514 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7516 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7517 proto_tree_add_item(t
, hf_x11_glx_QueryContext_reply_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7519 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
7521 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_QueryContext_reply_attribs
, hf_x11_glx_QueryContext_reply_attribs_item
, (f_num_attribs
* 2), byte_order
);
7524 static void glxMakeContextCurrent(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7526 proto_tree_add_item(t
, hf_x11_glx_MakeContextCurrent_old_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7528 proto_tree_add_item(t
, hf_x11_glx_MakeContextCurrent_drawable
, tvb
, *offsetp
, 4, byte_order
);
7530 proto_tree_add_item(t
, hf_x11_glx_MakeContextCurrent_read_drawable
, tvb
, *offsetp
, 4, byte_order
);
7532 proto_tree_add_item(t
, hf_x11_glx_MakeContextCurrent_context
, tvb
, *offsetp
, 4, byte_order
);
7535 static void glxMakeContextCurrent_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7537 int sequence_number
;
7539 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-MakeContextCurrent");
7542 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7544 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7545 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7546 "%d (glx-MakeContextCurrent)", sequence_number
);
7548 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7550 proto_tree_add_item(t
, hf_x11_glx_MakeContextCurrent_reply_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7552 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
7556 static void glxCreatePbuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7559 proto_tree_add_item(t
, hf_x11_glx_CreatePbuffer_screen
, tvb
, *offsetp
, 4, byte_order
);
7561 proto_tree_add_item(t
, hf_x11_glx_CreatePbuffer_fbconfig
, tvb
, *offsetp
, 4, byte_order
);
7563 proto_tree_add_item(t
, hf_x11_glx_CreatePbuffer_pbuffer
, tvb
, *offsetp
, 4, byte_order
);
7565 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7566 proto_tree_add_item(t
, hf_x11_glx_CreatePbuffer_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7568 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_CreatePbuffer_attribs
, hf_x11_glx_CreatePbuffer_attribs_item
, (f_num_attribs
* 2), byte_order
);
7569 length
-= (f_num_attribs
* 2) * 4;
7572 static void glxDestroyPbuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7574 proto_tree_add_item(t
, hf_x11_glx_DestroyPbuffer_pbuffer
, tvb
, *offsetp
, 4, byte_order
);
7578 static void glxGetDrawableAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7580 proto_tree_add_item(t
, hf_x11_glx_GetDrawableAttributes_drawable
, tvb
, *offsetp
, 4, byte_order
);
7583 static void glxGetDrawableAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7585 int sequence_number
;
7588 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDrawableAttributes");
7591 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7593 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7594 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7595 "%d (glx-GetDrawableAttributes)", sequence_number
);
7597 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7599 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7600 proto_tree_add_item(t
, hf_x11_glx_GetDrawableAttributes_reply_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7602 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
7604 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GetDrawableAttributes_reply_attribs
, hf_x11_glx_GetDrawableAttributes_reply_attribs_item
, (f_num_attribs
* 2), byte_order
);
7607 static void glxChangeDrawableAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7610 proto_tree_add_item(t
, hf_x11_glx_ChangeDrawableAttributes_drawable
, tvb
, *offsetp
, 4, byte_order
);
7612 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7613 proto_tree_add_item(t
, hf_x11_glx_ChangeDrawableAttributes_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7615 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_ChangeDrawableAttributes_attribs
, hf_x11_glx_ChangeDrawableAttributes_attribs_item
, (f_num_attribs
* 2), byte_order
);
7616 length
-= (f_num_attribs
* 2) * 4;
7619 static void glxCreateWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7622 proto_tree_add_item(t
, hf_x11_glx_CreateWindow_screen
, tvb
, *offsetp
, 4, byte_order
);
7624 proto_tree_add_item(t
, hf_x11_glx_CreateWindow_fbconfig
, tvb
, *offsetp
, 4, byte_order
);
7626 proto_tree_add_item(t
, hf_x11_glx_CreateWindow_window
, tvb
, *offsetp
, 4, byte_order
);
7628 proto_tree_add_item(t
, hf_x11_glx_CreateWindow_glx_window
, tvb
, *offsetp
, 4, byte_order
);
7630 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7631 proto_tree_add_item(t
, hf_x11_glx_CreateWindow_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7633 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_CreateWindow_attribs
, hf_x11_glx_CreateWindow_attribs_item
, (f_num_attribs
* 2), byte_order
);
7634 length
-= (f_num_attribs
* 2) * 4;
7637 static void glxDeleteWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7639 proto_tree_add_item(t
, hf_x11_glx_DeleteWindow_glxwindow
, tvb
, *offsetp
, 4, byte_order
);
7643 static void glxSetClientInfoARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7648 proto_tree_add_item(t
, hf_x11_glx_SetClientInfoARB_major_version
, tvb
, *offsetp
, 4, byte_order
);
7650 proto_tree_add_item(t
, hf_x11_glx_SetClientInfoARB_minor_version
, tvb
, *offsetp
, 4, byte_order
);
7652 f_num_versions
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7653 proto_tree_add_item(t
, hf_x11_glx_SetClientInfoARB_num_versions
, tvb
, *offsetp
, 4, byte_order
);
7655 f_gl_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7656 proto_tree_add_item(t
, hf_x11_glx_SetClientInfoARB_gl_str_len
, tvb
, *offsetp
, 4, byte_order
);
7658 f_glx_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7659 proto_tree_add_item(t
, hf_x11_glx_SetClientInfoARB_glx_str_len
, tvb
, *offsetp
, 4, byte_order
);
7661 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfoARB_gl_versions
, hf_x11_glx_SetClientInfoARB_gl_versions_item
, (f_num_versions
* 2), byte_order
);
7662 length
-= (f_num_versions
* 2) * 4;
7663 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfoARB_gl_extension_string
, f_gl_str_len
, byte_order
);
7664 length
-= f_gl_str_len
* 1;
7666 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
7667 *offsetp
+= (4 - *offsetp
% 4);
7669 length
= ((length
+ 3) & ~3);
7670 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfoARB_glx_extension_string
, f_glx_str_len
, byte_order
);
7671 length
-= f_glx_str_len
* 1;
7674 static void glxCreateContextAttribsARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7677 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_context
, tvb
, *offsetp
, 4, byte_order
);
7679 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_fbconfig
, tvb
, *offsetp
, 4, byte_order
);
7681 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_screen
, tvb
, *offsetp
, 4, byte_order
);
7683 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_share_list
, tvb
, *offsetp
, 4, byte_order
);
7685 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_is_direct
, tvb
, *offsetp
, 1, byte_order
);
7687 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
7689 f_num_attribs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7690 proto_tree_add_item(t
, hf_x11_glx_CreateContextAttribsARB_num_attribs
, tvb
, *offsetp
, 4, byte_order
);
7692 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_CreateContextAttribsARB_attribs
, hf_x11_glx_CreateContextAttribsARB_attribs_item
, (f_num_attribs
* 2), byte_order
);
7693 length
-= (f_num_attribs
* 2) * 4;
7696 static void glxSetClientInfo2ARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7701 proto_tree_add_item(t
, hf_x11_glx_SetClientInfo2ARB_major_version
, tvb
, *offsetp
, 4, byte_order
);
7703 proto_tree_add_item(t
, hf_x11_glx_SetClientInfo2ARB_minor_version
, tvb
, *offsetp
, 4, byte_order
);
7705 f_num_versions
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7706 proto_tree_add_item(t
, hf_x11_glx_SetClientInfo2ARB_num_versions
, tvb
, *offsetp
, 4, byte_order
);
7708 f_gl_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7709 proto_tree_add_item(t
, hf_x11_glx_SetClientInfo2ARB_gl_str_len
, tvb
, *offsetp
, 4, byte_order
);
7711 f_glx_str_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7712 proto_tree_add_item(t
, hf_x11_glx_SetClientInfo2ARB_glx_str_len
, tvb
, *offsetp
, 4, byte_order
);
7714 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfo2ARB_gl_versions
, hf_x11_glx_SetClientInfo2ARB_gl_versions_item
, (f_num_versions
* 3), byte_order
);
7715 length
-= (f_num_versions
* 3) * 4;
7716 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfo2ARB_gl_extension_string
, f_gl_str_len
, byte_order
);
7717 length
-= f_gl_str_len
* 1;
7719 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
7720 *offsetp
+= (4 - *offsetp
% 4);
7722 length
= ((length
+ 3) & ~3);
7723 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_SetClientInfo2ARB_glx_extension_string
, f_glx_str_len
, byte_order
);
7724 length
-= f_glx_str_len
* 1;
7727 static void glxNewList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7729 proto_tree_add_item(t
, hf_x11_glx_NewList_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7731 proto_tree_add_item(t
, hf_x11_glx_NewList_list
, tvb
, *offsetp
, 4, byte_order
);
7733 proto_tree_add_item(t
, hf_x11_glx_NewList_mode
, tvb
, *offsetp
, 4, byte_order
);
7737 static void glxEndList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7739 proto_tree_add_item(t
, hf_x11_glx_EndList_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7743 static void glxDeleteLists(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7745 proto_tree_add_item(t
, hf_x11_glx_DeleteLists_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7747 proto_tree_add_item(t
, hf_x11_glx_DeleteLists_list
, tvb
, *offsetp
, 4, byte_order
);
7749 proto_tree_add_item(t
, hf_x11_glx_DeleteLists_range
, tvb
, *offsetp
, 4, byte_order
);
7753 static void glxGenLists(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7755 proto_tree_add_item(t
, hf_x11_glx_GenLists_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7757 proto_tree_add_item(t
, hf_x11_glx_GenLists_range
, tvb
, *offsetp
, 4, byte_order
);
7760 static void glxGenLists_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7762 int sequence_number
;
7764 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GenLists");
7767 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7769 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7770 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7771 "%d (glx-GenLists)", sequence_number
);
7773 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7775 proto_tree_add_item(t
, hf_x11_glx_GenLists_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
7779 static void glxFeedbackBuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7781 proto_tree_add_item(t
, hf_x11_glx_FeedbackBuffer_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7783 proto_tree_add_item(t
, hf_x11_glx_FeedbackBuffer_size
, tvb
, *offsetp
, 4, byte_order
);
7785 proto_tree_add_item(t
, hf_x11_glx_FeedbackBuffer_type
, tvb
, *offsetp
, 4, byte_order
);
7789 static void glxSelectBuffer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7791 proto_tree_add_item(t
, hf_x11_glx_SelectBuffer_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7793 proto_tree_add_item(t
, hf_x11_glx_SelectBuffer_size
, tvb
, *offsetp
, 4, byte_order
);
7797 static void glxRenderMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7799 proto_tree_add_item(t
, hf_x11_glx_RenderMode_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7801 proto_tree_add_item(t
, hf_x11_glx_RenderMode_mode
, tvb
, *offsetp
, 4, byte_order
);
7804 static void glxRenderMode_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7806 int sequence_number
;
7809 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-RenderMode");
7812 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7814 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7815 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7816 "%d (glx-RenderMode)", sequence_number
);
7818 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7820 proto_tree_add_item(t
, hf_x11_glx_RenderMode_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
7822 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7823 proto_tree_add_item(t
, hf_x11_glx_RenderMode_reply_n
, tvb
, *offsetp
, 4, byte_order
);
7825 proto_tree_add_item(t
, hf_x11_glx_RenderMode_reply_new_mode
, tvb
, *offsetp
, 4, byte_order
);
7827 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
7829 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_RenderMode_reply_data
, hf_x11_glx_RenderMode_reply_data_item
, f_n
, byte_order
);
7832 static void glxFinish(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7834 proto_tree_add_item(t
, hf_x11_glx_Finish_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7837 static void glxFinish_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7839 int sequence_number
;
7841 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Finish");
7844 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7846 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7847 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7848 "%d (glx-Finish)", sequence_number
);
7850 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7854 static void glxPixelStoref(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7856 proto_tree_add_item(t
, hf_x11_glx_PixelStoref_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7858 proto_tree_add_item(t
, hf_x11_glx_PixelStoref_pname
, tvb
, *offsetp
, 4, byte_order
);
7860 proto_tree_add_item(t
, hf_x11_glx_PixelStoref_datum
, tvb
, *offsetp
, 4, byte_order
);
7864 static void glxPixelStorei(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7866 proto_tree_add_item(t
, hf_x11_glx_PixelStorei_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7868 proto_tree_add_item(t
, hf_x11_glx_PixelStorei_pname
, tvb
, *offsetp
, 4, byte_order
);
7870 proto_tree_add_item(t
, hf_x11_glx_PixelStorei_datum
, tvb
, *offsetp
, 4, byte_order
);
7874 static void glxReadPixels(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7876 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7878 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_x
, tvb
, *offsetp
, 4, byte_order
);
7880 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_y
, tvb
, *offsetp
, 4, byte_order
);
7882 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_width
, tvb
, *offsetp
, 4, byte_order
);
7884 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_height
, tvb
, *offsetp
, 4, byte_order
);
7886 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_format
, tvb
, *offsetp
, 4, byte_order
);
7888 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_type
, tvb
, *offsetp
, 4, byte_order
);
7890 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
7892 proto_tree_add_item(t
, hf_x11_glx_ReadPixels_lsb_first
, tvb
, *offsetp
, 1, byte_order
);
7895 static void glxReadPixels_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7897 int sequence_number
;
7900 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ReadPixels");
7903 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7905 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7906 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7907 "%d (glx-ReadPixels)", sequence_number
);
7909 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7910 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7912 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
7914 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_ReadPixels_reply_data
, (f_length
* 4), byte_order
);
7917 static void glxGetBooleanv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7919 proto_tree_add_item(t
, hf_x11_glx_GetBooleanv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7921 proto_tree_add_item(t
, hf_x11_glx_GetBooleanv_pname
, tvb
, *offsetp
, 4, byte_order
);
7924 static void glxGetBooleanv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7926 int sequence_number
;
7929 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetBooleanv");
7932 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7934 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7935 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7936 "%d (glx-GetBooleanv)", sequence_number
);
7938 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7940 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
7942 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7943 proto_tree_add_item(t
, hf_x11_glx_GetBooleanv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
7945 proto_tree_add_item(t
, hf_x11_glx_GetBooleanv_reply_datum
, tvb
, *offsetp
, 1, byte_order
);
7947 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
7949 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetBooleanv_reply_data
, f_n
, byte_order
);
7952 static void glxGetClipPlane(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7954 proto_tree_add_item(t
, hf_x11_glx_GetClipPlane_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7956 proto_tree_add_item(t
, hf_x11_glx_GetClipPlane_plane
, tvb
, *offsetp
, 4, byte_order
);
7959 static void glxGetClipPlane_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7961 int sequence_number
;
7964 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetClipPlane");
7967 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7969 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7970 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
7971 "%d (glx-GetClipPlane)", sequence_number
);
7973 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
7974 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
7976 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
7978 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_GetClipPlane_reply_data
, hf_x11_glx_GetClipPlane_reply_data_item
, (f_length
/ 2), byte_order
);
7981 static void glxGetDoublev(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
7983 proto_tree_add_item(t
, hf_x11_glx_GetDoublev_context_tag
, tvb
, *offsetp
, 4, byte_order
);
7985 proto_tree_add_item(t
, hf_x11_glx_GetDoublev_pname
, tvb
, *offsetp
, 4, byte_order
);
7988 static void glxGetDoublev_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
7990 int sequence_number
;
7993 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDoublev");
7996 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
7998 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
7999 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8000 "%d (glx-GetDoublev)", sequence_number
);
8002 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8004 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8006 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8007 proto_tree_add_item(t
, hf_x11_glx_GetDoublev_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8009 proto_tree_add_item(t
, hf_x11_glx_GetDoublev_reply_datum
, tvb
, *offsetp
, 8, byte_order
);
8011 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
8013 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_GetDoublev_reply_data
, hf_x11_glx_GetDoublev_reply_data_item
, f_n
, byte_order
);
8016 static void glxGetError(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8018 proto_tree_add_item(t
, hf_x11_glx_GetError_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8021 static void glxGetError_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8023 int sequence_number
;
8025 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetError");
8028 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8030 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8031 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8032 "%d (glx-GetError)", sequence_number
);
8034 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8036 proto_tree_add_item(t
, hf_x11_glx_GetError_reply_error
, tvb
, *offsetp
, 4, byte_order
);
8040 static void glxGetFloatv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8042 proto_tree_add_item(t
, hf_x11_glx_GetFloatv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8044 proto_tree_add_item(t
, hf_x11_glx_GetFloatv_pname
, tvb
, *offsetp
, 4, byte_order
);
8047 static void glxGetFloatv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8049 int sequence_number
;
8052 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetFloatv");
8055 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8057 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8058 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8059 "%d (glx-GetFloatv)", sequence_number
);
8061 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8063 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8065 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8066 proto_tree_add_item(t
, hf_x11_glx_GetFloatv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8068 proto_tree_add_item(t
, hf_x11_glx_GetFloatv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8070 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8072 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetFloatv_reply_data
, hf_x11_glx_GetFloatv_reply_data_item
, f_n
, byte_order
);
8075 static void glxGetIntegerv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8077 proto_tree_add_item(t
, hf_x11_glx_GetIntegerv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8079 proto_tree_add_item(t
, hf_x11_glx_GetIntegerv_pname
, tvb
, *offsetp
, 4, byte_order
);
8082 static void glxGetIntegerv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8084 int sequence_number
;
8087 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetIntegerv");
8090 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8092 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8093 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8094 "%d (glx-GetIntegerv)", sequence_number
);
8096 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8098 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8100 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8101 proto_tree_add_item(t
, hf_x11_glx_GetIntegerv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8103 proto_tree_add_item(t
, hf_x11_glx_GetIntegerv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8105 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8107 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetIntegerv_reply_data
, hf_x11_glx_GetIntegerv_reply_data_item
, f_n
, byte_order
);
8110 static void glxGetLightfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8112 proto_tree_add_item(t
, hf_x11_glx_GetLightfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8114 proto_tree_add_item(t
, hf_x11_glx_GetLightfv_light
, tvb
, *offsetp
, 4, byte_order
);
8116 proto_tree_add_item(t
, hf_x11_glx_GetLightfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8119 static void glxGetLightfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8121 int sequence_number
;
8124 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetLightfv");
8127 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8129 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8130 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8131 "%d (glx-GetLightfv)", sequence_number
);
8133 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8135 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8137 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8138 proto_tree_add_item(t
, hf_x11_glx_GetLightfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8140 proto_tree_add_item(t
, hf_x11_glx_GetLightfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8142 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8144 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetLightfv_reply_data
, hf_x11_glx_GetLightfv_reply_data_item
, f_n
, byte_order
);
8147 static void glxGetLightiv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8149 proto_tree_add_item(t
, hf_x11_glx_GetLightiv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8151 proto_tree_add_item(t
, hf_x11_glx_GetLightiv_light
, tvb
, *offsetp
, 4, byte_order
);
8153 proto_tree_add_item(t
, hf_x11_glx_GetLightiv_pname
, tvb
, *offsetp
, 4, byte_order
);
8156 static void glxGetLightiv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8158 int sequence_number
;
8161 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetLightiv");
8164 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8166 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8167 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8168 "%d (glx-GetLightiv)", sequence_number
);
8170 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8172 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8174 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8175 proto_tree_add_item(t
, hf_x11_glx_GetLightiv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8177 proto_tree_add_item(t
, hf_x11_glx_GetLightiv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8179 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8181 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetLightiv_reply_data
, hf_x11_glx_GetLightiv_reply_data_item
, f_n
, byte_order
);
8184 static void glxGetMapdv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8186 proto_tree_add_item(t
, hf_x11_glx_GetMapdv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8188 proto_tree_add_item(t
, hf_x11_glx_GetMapdv_target
, tvb
, *offsetp
, 4, byte_order
);
8190 proto_tree_add_item(t
, hf_x11_glx_GetMapdv_query
, tvb
, *offsetp
, 4, byte_order
);
8193 static void glxGetMapdv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8195 int sequence_number
;
8198 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMapdv");
8201 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8203 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8204 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8205 "%d (glx-GetMapdv)", sequence_number
);
8207 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8209 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8211 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8212 proto_tree_add_item(t
, hf_x11_glx_GetMapdv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8214 proto_tree_add_item(t
, hf_x11_glx_GetMapdv_reply_datum
, tvb
, *offsetp
, 8, byte_order
);
8216 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
8218 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_GetMapdv_reply_data
, hf_x11_glx_GetMapdv_reply_data_item
, f_n
, byte_order
);
8221 static void glxGetMapfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8223 proto_tree_add_item(t
, hf_x11_glx_GetMapfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8225 proto_tree_add_item(t
, hf_x11_glx_GetMapfv_target
, tvb
, *offsetp
, 4, byte_order
);
8227 proto_tree_add_item(t
, hf_x11_glx_GetMapfv_query
, tvb
, *offsetp
, 4, byte_order
);
8230 static void glxGetMapfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8232 int sequence_number
;
8235 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMapfv");
8238 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8240 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8241 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8242 "%d (glx-GetMapfv)", sequence_number
);
8244 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8246 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8248 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8249 proto_tree_add_item(t
, hf_x11_glx_GetMapfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8251 proto_tree_add_item(t
, hf_x11_glx_GetMapfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8253 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8255 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetMapfv_reply_data
, hf_x11_glx_GetMapfv_reply_data_item
, f_n
, byte_order
);
8258 static void glxGetMapiv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8260 proto_tree_add_item(t
, hf_x11_glx_GetMapiv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8262 proto_tree_add_item(t
, hf_x11_glx_GetMapiv_target
, tvb
, *offsetp
, 4, byte_order
);
8264 proto_tree_add_item(t
, hf_x11_glx_GetMapiv_query
, tvb
, *offsetp
, 4, byte_order
);
8267 static void glxGetMapiv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8269 int sequence_number
;
8272 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMapiv");
8275 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8277 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8278 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8279 "%d (glx-GetMapiv)", sequence_number
);
8281 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8283 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8285 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8286 proto_tree_add_item(t
, hf_x11_glx_GetMapiv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8288 proto_tree_add_item(t
, hf_x11_glx_GetMapiv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8290 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8292 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetMapiv_reply_data
, hf_x11_glx_GetMapiv_reply_data_item
, f_n
, byte_order
);
8295 static void glxGetMaterialfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8297 proto_tree_add_item(t
, hf_x11_glx_GetMaterialfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8299 proto_tree_add_item(t
, hf_x11_glx_GetMaterialfv_face
, tvb
, *offsetp
, 4, byte_order
);
8301 proto_tree_add_item(t
, hf_x11_glx_GetMaterialfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8304 static void glxGetMaterialfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8306 int sequence_number
;
8309 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMaterialfv");
8312 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8314 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8315 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8316 "%d (glx-GetMaterialfv)", sequence_number
);
8318 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8320 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8322 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8323 proto_tree_add_item(t
, hf_x11_glx_GetMaterialfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8325 proto_tree_add_item(t
, hf_x11_glx_GetMaterialfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8327 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8329 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetMaterialfv_reply_data
, hf_x11_glx_GetMaterialfv_reply_data_item
, f_n
, byte_order
);
8332 static void glxGetMaterialiv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8334 proto_tree_add_item(t
, hf_x11_glx_GetMaterialiv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8336 proto_tree_add_item(t
, hf_x11_glx_GetMaterialiv_face
, tvb
, *offsetp
, 4, byte_order
);
8338 proto_tree_add_item(t
, hf_x11_glx_GetMaterialiv_pname
, tvb
, *offsetp
, 4, byte_order
);
8341 static void glxGetMaterialiv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8343 int sequence_number
;
8346 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMaterialiv");
8349 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8351 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8352 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8353 "%d (glx-GetMaterialiv)", sequence_number
);
8355 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8357 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8359 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8360 proto_tree_add_item(t
, hf_x11_glx_GetMaterialiv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8362 proto_tree_add_item(t
, hf_x11_glx_GetMaterialiv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8364 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8366 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetMaterialiv_reply_data
, hf_x11_glx_GetMaterialiv_reply_data_item
, f_n
, byte_order
);
8369 static void glxGetPixelMapfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8371 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8373 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapfv_map
, tvb
, *offsetp
, 4, byte_order
);
8376 static void glxGetPixelMapfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8378 int sequence_number
;
8381 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPixelMapfv");
8384 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8386 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8387 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8388 "%d (glx-GetPixelMapfv)", sequence_number
);
8390 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8392 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8394 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8395 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8397 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8399 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8401 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetPixelMapfv_reply_data
, hf_x11_glx_GetPixelMapfv_reply_data_item
, f_n
, byte_order
);
8404 static void glxGetPixelMapuiv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8406 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapuiv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8408 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapuiv_map
, tvb
, *offsetp
, 4, byte_order
);
8411 static void glxGetPixelMapuiv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8413 int sequence_number
;
8416 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPixelMapuiv");
8419 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8421 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8422 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8423 "%d (glx-GetPixelMapuiv)", sequence_number
);
8425 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8427 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8429 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8430 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapuiv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8432 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapuiv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8434 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8436 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GetPixelMapuiv_reply_data
, hf_x11_glx_GetPixelMapuiv_reply_data_item
, f_n
, byte_order
);
8439 static void glxGetPixelMapusv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8441 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapusv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8443 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapusv_map
, tvb
, *offsetp
, 4, byte_order
);
8446 static void glxGetPixelMapusv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8448 int sequence_number
;
8451 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPixelMapusv");
8454 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8456 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8457 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8458 "%d (glx-GetPixelMapusv)", sequence_number
);
8460 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8462 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8464 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8465 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapusv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8467 proto_tree_add_item(t
, hf_x11_glx_GetPixelMapusv_reply_datum
, tvb
, *offsetp
, 2, byte_order
);
8469 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
8471 listOfCard16(tvb
, offsetp
, t
, hf_x11_glx_GetPixelMapusv_reply_data
, hf_x11_glx_GetPixelMapusv_reply_data_item
, f_n
, byte_order
);
8474 static void glxGetPolygonStipple(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8476 proto_tree_add_item(t
, hf_x11_glx_GetPolygonStipple_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8478 proto_tree_add_item(t
, hf_x11_glx_GetPolygonStipple_lsb_first
, tvb
, *offsetp
, 1, byte_order
);
8481 static void glxGetPolygonStipple_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8483 int sequence_number
;
8486 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPolygonStipple");
8489 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8491 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8492 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8493 "%d (glx-GetPolygonStipple)", sequence_number
);
8495 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8496 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8498 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
8500 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetPolygonStipple_reply_data
, (f_length
* 4), byte_order
);
8503 static void glxGetString(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8505 proto_tree_add_item(t
, hf_x11_glx_GetString_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8507 proto_tree_add_item(t
, hf_x11_glx_GetString_name
, tvb
, *offsetp
, 4, byte_order
);
8510 static void glxGetString_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8512 int sequence_number
;
8515 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetString");
8518 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8520 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8521 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8522 "%d (glx-GetString)", sequence_number
);
8524 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8526 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8528 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8529 proto_tree_add_item(t
, hf_x11_glx_GetString_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8531 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
8533 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetString_reply_string
, f_n
, byte_order
);
8536 static void glxGetTexEnvfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8538 proto_tree_add_item(t
, hf_x11_glx_GetTexEnvfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8540 proto_tree_add_item(t
, hf_x11_glx_GetTexEnvfv_target
, tvb
, *offsetp
, 4, byte_order
);
8542 proto_tree_add_item(t
, hf_x11_glx_GetTexEnvfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8545 static void glxGetTexEnvfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8547 int sequence_number
;
8550 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexEnvfv");
8553 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8555 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8556 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8557 "%d (glx-GetTexEnvfv)", sequence_number
);
8559 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8561 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8563 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8564 proto_tree_add_item(t
, hf_x11_glx_GetTexEnvfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8566 proto_tree_add_item(t
, hf_x11_glx_GetTexEnvfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8568 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8570 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetTexEnvfv_reply_data
, hf_x11_glx_GetTexEnvfv_reply_data_item
, f_n
, byte_order
);
8573 static void glxGetTexEnviv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8575 proto_tree_add_item(t
, hf_x11_glx_GetTexEnviv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8577 proto_tree_add_item(t
, hf_x11_glx_GetTexEnviv_target
, tvb
, *offsetp
, 4, byte_order
);
8579 proto_tree_add_item(t
, hf_x11_glx_GetTexEnviv_pname
, tvb
, *offsetp
, 4, byte_order
);
8582 static void glxGetTexEnviv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8584 int sequence_number
;
8587 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexEnviv");
8590 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8592 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8593 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8594 "%d (glx-GetTexEnviv)", sequence_number
);
8596 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8598 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8600 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8601 proto_tree_add_item(t
, hf_x11_glx_GetTexEnviv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8603 proto_tree_add_item(t
, hf_x11_glx_GetTexEnviv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8605 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8607 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetTexEnviv_reply_data
, hf_x11_glx_GetTexEnviv_reply_data_item
, f_n
, byte_order
);
8610 static void glxGetTexGendv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8612 proto_tree_add_item(t
, hf_x11_glx_GetTexGendv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8614 proto_tree_add_item(t
, hf_x11_glx_GetTexGendv_coord
, tvb
, *offsetp
, 4, byte_order
);
8616 proto_tree_add_item(t
, hf_x11_glx_GetTexGendv_pname
, tvb
, *offsetp
, 4, byte_order
);
8619 static void glxGetTexGendv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8621 int sequence_number
;
8624 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexGendv");
8627 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8629 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8630 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8631 "%d (glx-GetTexGendv)", sequence_number
);
8633 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8635 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8637 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8638 proto_tree_add_item(t
, hf_x11_glx_GetTexGendv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8640 proto_tree_add_item(t
, hf_x11_glx_GetTexGendv_reply_datum
, tvb
, *offsetp
, 8, byte_order
);
8642 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
8644 listOfDouble(tvb
, offsetp
, t
, hf_x11_glx_GetTexGendv_reply_data
, hf_x11_glx_GetTexGendv_reply_data_item
, f_n
, byte_order
);
8647 static void glxGetTexGenfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8649 proto_tree_add_item(t
, hf_x11_glx_GetTexGenfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8651 proto_tree_add_item(t
, hf_x11_glx_GetTexGenfv_coord
, tvb
, *offsetp
, 4, byte_order
);
8653 proto_tree_add_item(t
, hf_x11_glx_GetTexGenfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8656 static void glxGetTexGenfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8658 int sequence_number
;
8661 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexGenfv");
8664 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8666 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8667 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8668 "%d (glx-GetTexGenfv)", sequence_number
);
8670 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8672 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8674 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8675 proto_tree_add_item(t
, hf_x11_glx_GetTexGenfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8677 proto_tree_add_item(t
, hf_x11_glx_GetTexGenfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8679 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8681 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetTexGenfv_reply_data
, hf_x11_glx_GetTexGenfv_reply_data_item
, f_n
, byte_order
);
8684 static void glxGetTexGeniv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8686 proto_tree_add_item(t
, hf_x11_glx_GetTexGeniv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8688 proto_tree_add_item(t
, hf_x11_glx_GetTexGeniv_coord
, tvb
, *offsetp
, 4, byte_order
);
8690 proto_tree_add_item(t
, hf_x11_glx_GetTexGeniv_pname
, tvb
, *offsetp
, 4, byte_order
);
8693 static void glxGetTexGeniv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8695 int sequence_number
;
8698 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexGeniv");
8701 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8703 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8704 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8705 "%d (glx-GetTexGeniv)", sequence_number
);
8707 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8709 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8711 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8712 proto_tree_add_item(t
, hf_x11_glx_GetTexGeniv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8714 proto_tree_add_item(t
, hf_x11_glx_GetTexGeniv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8716 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8718 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetTexGeniv_reply_data
, hf_x11_glx_GetTexGeniv_reply_data_item
, f_n
, byte_order
);
8721 static void glxGetTexImage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8723 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8725 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_target
, tvb
, *offsetp
, 4, byte_order
);
8727 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_level
, tvb
, *offsetp
, 4, byte_order
);
8729 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_format
, tvb
, *offsetp
, 4, byte_order
);
8731 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_type
, tvb
, *offsetp
, 4, byte_order
);
8733 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
8736 static void glxGetTexImage_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8738 int sequence_number
;
8741 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexImage");
8744 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8746 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8747 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8748 "%d (glx-GetTexImage)", sequence_number
);
8750 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8751 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8753 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
8755 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_reply_width
, tvb
, *offsetp
, 4, byte_order
);
8757 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_reply_height
, tvb
, *offsetp
, 4, byte_order
);
8759 proto_tree_add_item(t
, hf_x11_glx_GetTexImage_reply_depth
, tvb
, *offsetp
, 4, byte_order
);
8761 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8763 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetTexImage_reply_data
, (f_length
* 4), byte_order
);
8766 static void glxGetTexParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8768 proto_tree_add_item(t
, hf_x11_glx_GetTexParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8770 proto_tree_add_item(t
, hf_x11_glx_GetTexParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
8772 proto_tree_add_item(t
, hf_x11_glx_GetTexParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8775 static void glxGetTexParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8777 int sequence_number
;
8780 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexParameterfv");
8783 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8785 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8786 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8787 "%d (glx-GetTexParameterfv)", sequence_number
);
8789 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8791 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8793 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8794 proto_tree_add_item(t
, hf_x11_glx_GetTexParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8796 proto_tree_add_item(t
, hf_x11_glx_GetTexParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8798 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8800 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetTexParameterfv_reply_data
, hf_x11_glx_GetTexParameterfv_reply_data_item
, f_n
, byte_order
);
8803 static void glxGetTexParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8805 proto_tree_add_item(t
, hf_x11_glx_GetTexParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8807 proto_tree_add_item(t
, hf_x11_glx_GetTexParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
8809 proto_tree_add_item(t
, hf_x11_glx_GetTexParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
8812 static void glxGetTexParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8814 int sequence_number
;
8817 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexParameteriv");
8820 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8822 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8823 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8824 "%d (glx-GetTexParameteriv)", sequence_number
);
8826 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8828 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8830 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8831 proto_tree_add_item(t
, hf_x11_glx_GetTexParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8833 proto_tree_add_item(t
, hf_x11_glx_GetTexParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8835 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8837 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetTexParameteriv_reply_data
, hf_x11_glx_GetTexParameteriv_reply_data_item
, f_n
, byte_order
);
8840 static void glxGetTexLevelParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8842 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8844 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
8846 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_level
, tvb
, *offsetp
, 4, byte_order
);
8848 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
8851 static void glxGetTexLevelParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8853 int sequence_number
;
8856 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexLevelParameterfv");
8859 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8861 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8862 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8863 "%d (glx-GetTexLevelParameterfv)", sequence_number
);
8865 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8867 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8869 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8870 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8872 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8874 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8876 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetTexLevelParameterfv_reply_data
, hf_x11_glx_GetTexLevelParameterfv_reply_data_item
, f_n
, byte_order
);
8879 static void glxGetTexLevelParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8881 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8883 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
8885 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_level
, tvb
, *offsetp
, 4, byte_order
);
8887 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
8890 static void glxGetTexLevelParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8892 int sequence_number
;
8895 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetTexLevelParameteriv");
8898 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8900 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8901 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8902 "%d (glx-GetTexLevelParameteriv)", sequence_number
);
8904 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8906 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
8908 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8909 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
8911 proto_tree_add_item(t
, hf_x11_glx_GetTexLevelParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
8913 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
8915 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetTexLevelParameteriv_reply_data
, hf_x11_glx_GetTexLevelParameteriv_reply_data_item
, f_n
, byte_order
);
8918 static void glxIsEnabled(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8920 proto_tree_add_item(t
, hf_x11_glx_IsEnabled_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8922 proto_tree_add_item(t
, hf_x11_glx_IsEnabled_capability
, tvb
, *offsetp
, 4, byte_order
);
8925 static void glxIsEnabled_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8927 int sequence_number
;
8929 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsEnabled");
8932 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8934 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8935 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8936 "%d (glx-IsEnabled)", sequence_number
);
8938 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8940 proto_tree_add_item(t
, hf_x11_glx_IsEnabled_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
8944 static void glxIsList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8946 proto_tree_add_item(t
, hf_x11_glx_IsList_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8948 proto_tree_add_item(t
, hf_x11_glx_IsList_list
, tvb
, *offsetp
, 4, byte_order
);
8951 static void glxIsList_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8953 int sequence_number
;
8955 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsList");
8958 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8960 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8961 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8962 "%d (glx-IsList)", sequence_number
);
8964 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
8966 proto_tree_add_item(t
, hf_x11_glx_IsList_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
8970 static void glxFlush(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8972 proto_tree_add_item(t
, hf_x11_glx_Flush_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8976 static void glxAreTexturesResident(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
8979 proto_tree_add_item(t
, hf_x11_glx_AreTexturesResident_context_tag
, tvb
, *offsetp
, 4, byte_order
);
8981 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
8982 proto_tree_add_item(t
, hf_x11_glx_AreTexturesResident_n
, tvb
, *offsetp
, 4, byte_order
);
8984 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_AreTexturesResident_textures
, hf_x11_glx_AreTexturesResident_textures_item
, f_n
, byte_order
);
8987 static void glxAreTexturesResident_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
8989 int sequence_number
;
8992 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-AreTexturesResident");
8995 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
8997 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
8998 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
8999 "%d (glx-AreTexturesResident)", sequence_number
);
9001 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9002 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9004 proto_tree_add_item(t
, hf_x11_glx_AreTexturesResident_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
9006 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
9008 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_AreTexturesResident_reply_data
, (f_length
* 4), byte_order
);
9011 static void glxDeleteTextures(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9014 proto_tree_add_item(t
, hf_x11_glx_DeleteTextures_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9016 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9017 proto_tree_add_item(t
, hf_x11_glx_DeleteTextures_n
, tvb
, *offsetp
, 4, byte_order
);
9019 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_DeleteTextures_textures
, hf_x11_glx_DeleteTextures_textures_item
, f_n
, byte_order
);
9023 static void glxGenTextures(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9025 proto_tree_add_item(t
, hf_x11_glx_GenTextures_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9027 proto_tree_add_item(t
, hf_x11_glx_GenTextures_n
, tvb
, *offsetp
, 4, byte_order
);
9030 static void glxGenTextures_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9032 int sequence_number
;
9035 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GenTextures");
9038 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9040 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9041 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9042 "%d (glx-GenTextures)", sequence_number
);
9044 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9045 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9047 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
9049 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GenTextures_reply_data
, hf_x11_glx_GenTextures_reply_data_item
, f_length
, byte_order
);
9052 static void glxIsTexture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9054 proto_tree_add_item(t
, hf_x11_glx_IsTexture_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9056 proto_tree_add_item(t
, hf_x11_glx_IsTexture_texture
, tvb
, *offsetp
, 4, byte_order
);
9059 static void glxIsTexture_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9061 int sequence_number
;
9063 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsTexture");
9066 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9068 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9069 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9070 "%d (glx-IsTexture)", sequence_number
);
9072 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9074 proto_tree_add_item(t
, hf_x11_glx_IsTexture_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
9078 static void glxGetColorTable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9080 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9082 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_target
, tvb
, *offsetp
, 4, byte_order
);
9084 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_format
, tvb
, *offsetp
, 4, byte_order
);
9086 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_type
, tvb
, *offsetp
, 4, byte_order
);
9088 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
9091 static void glxGetColorTable_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9093 int sequence_number
;
9096 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetColorTable");
9099 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9101 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9102 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9103 "%d (glx-GetColorTable)", sequence_number
);
9105 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9106 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9108 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9110 proto_tree_add_item(t
, hf_x11_glx_GetColorTable_reply_width
, tvb
, *offsetp
, 4, byte_order
);
9112 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9114 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetColorTable_reply_data
, (f_length
* 4), byte_order
);
9117 static void glxGetColorTableParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9119 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9121 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
9123 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
9126 static void glxGetColorTableParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9128 int sequence_number
;
9131 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetColorTableParameterfv");
9134 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9136 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9137 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9138 "%d (glx-GetColorTableParameterfv)", sequence_number
);
9140 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9142 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9144 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9145 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9147 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9149 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9151 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetColorTableParameterfv_reply_data
, hf_x11_glx_GetColorTableParameterfv_reply_data_item
, f_n
, byte_order
);
9154 static void glxGetColorTableParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9156 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9158 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
9160 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
9163 static void glxGetColorTableParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9165 int sequence_number
;
9168 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetColorTableParameteriv");
9171 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9173 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9174 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9175 "%d (glx-GetColorTableParameteriv)", sequence_number
);
9177 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9179 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9181 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9182 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9184 proto_tree_add_item(t
, hf_x11_glx_GetColorTableParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9186 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9188 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetColorTableParameteriv_reply_data
, hf_x11_glx_GetColorTableParameteriv_reply_data_item
, f_n
, byte_order
);
9191 static void glxGetConvolutionFilter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9193 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9195 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_target
, tvb
, *offsetp
, 4, byte_order
);
9197 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_format
, tvb
, *offsetp
, 4, byte_order
);
9199 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_type
, tvb
, *offsetp
, 4, byte_order
);
9201 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
9204 static void glxGetConvolutionFilter_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9206 int sequence_number
;
9209 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetConvolutionFilter");
9212 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9214 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9215 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9216 "%d (glx-GetConvolutionFilter)", sequence_number
);
9218 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9219 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9221 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9223 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_reply_width
, tvb
, *offsetp
, 4, byte_order
);
9225 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionFilter_reply_height
, tvb
, *offsetp
, 4, byte_order
);
9227 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9229 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetConvolutionFilter_reply_data
, (f_length
* 4), byte_order
);
9232 static void glxGetConvolutionParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9234 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9236 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
9238 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
9241 static void glxGetConvolutionParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9243 int sequence_number
;
9246 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetConvolutionParameterfv");
9249 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9251 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9252 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9253 "%d (glx-GetConvolutionParameterfv)", sequence_number
);
9255 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9257 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9259 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9260 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9262 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9264 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9266 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetConvolutionParameterfv_reply_data
, hf_x11_glx_GetConvolutionParameterfv_reply_data_item
, f_n
, byte_order
);
9269 static void glxGetConvolutionParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9271 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9273 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
9275 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
9278 static void glxGetConvolutionParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9280 int sequence_number
;
9283 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetConvolutionParameteriv");
9286 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9288 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9289 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9290 "%d (glx-GetConvolutionParameteriv)", sequence_number
);
9292 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9294 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9296 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9297 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9299 proto_tree_add_item(t
, hf_x11_glx_GetConvolutionParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9301 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9303 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetConvolutionParameteriv_reply_data
, hf_x11_glx_GetConvolutionParameteriv_reply_data_item
, f_n
, byte_order
);
9306 static void glxGetSeparableFilter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9308 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9310 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_target
, tvb
, *offsetp
, 4, byte_order
);
9312 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_format
, tvb
, *offsetp
, 4, byte_order
);
9314 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_type
, tvb
, *offsetp
, 4, byte_order
);
9316 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
9319 static void glxGetSeparableFilter_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9321 int sequence_number
;
9324 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSeparableFilter");
9327 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9329 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9330 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9331 "%d (glx-GetSeparableFilter)", sequence_number
);
9333 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9334 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9336 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9338 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_reply_row_w
, tvb
, *offsetp
, 4, byte_order
);
9340 proto_tree_add_item(t
, hf_x11_glx_GetSeparableFilter_reply_col_h
, tvb
, *offsetp
, 4, byte_order
);
9342 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9344 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetSeparableFilter_reply_rows_and_cols
, (f_length
* 4), byte_order
);
9347 static void glxGetHistogram(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9349 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9351 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_target
, tvb
, *offsetp
, 4, byte_order
);
9353 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_format
, tvb
, *offsetp
, 4, byte_order
);
9355 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_type
, tvb
, *offsetp
, 4, byte_order
);
9357 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
9359 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_reset
, tvb
, *offsetp
, 1, byte_order
);
9362 static void glxGetHistogram_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9364 int sequence_number
;
9367 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetHistogram");
9370 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9372 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9373 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9374 "%d (glx-GetHistogram)", sequence_number
);
9376 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9377 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9379 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9381 proto_tree_add_item(t
, hf_x11_glx_GetHistogram_reply_width
, tvb
, *offsetp
, 4, byte_order
);
9383 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9385 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetHistogram_reply_data
, (f_length
* 4), byte_order
);
9388 static void glxGetHistogramParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9390 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9392 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
9394 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
9397 static void glxGetHistogramParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9399 int sequence_number
;
9402 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetHistogramParameterfv");
9405 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9407 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9408 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9409 "%d (glx-GetHistogramParameterfv)", sequence_number
);
9411 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9413 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9415 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9416 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9418 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9420 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9422 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetHistogramParameterfv_reply_data
, hf_x11_glx_GetHistogramParameterfv_reply_data_item
, f_n
, byte_order
);
9425 static void glxGetHistogramParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9427 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9429 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
9431 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
9434 static void glxGetHistogramParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9436 int sequence_number
;
9439 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetHistogramParameteriv");
9442 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9444 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9445 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9446 "%d (glx-GetHistogramParameteriv)", sequence_number
);
9448 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9450 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9452 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9453 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9455 proto_tree_add_item(t
, hf_x11_glx_GetHistogramParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9457 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9459 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetHistogramParameteriv_reply_data
, hf_x11_glx_GetHistogramParameteriv_reply_data_item
, f_n
, byte_order
);
9462 static void glxGetMinmax(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9464 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9466 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_target
, tvb
, *offsetp
, 4, byte_order
);
9468 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_format
, tvb
, *offsetp
, 4, byte_order
);
9470 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_type
, tvb
, *offsetp
, 4, byte_order
);
9472 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_swap_bytes
, tvb
, *offsetp
, 1, byte_order
);
9474 proto_tree_add_item(t
, hf_x11_glx_GetMinmax_reset
, tvb
, *offsetp
, 1, byte_order
);
9477 static void glxGetMinmax_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9479 int sequence_number
;
9482 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMinmax");
9485 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9487 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9488 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9489 "%d (glx-GetMinmax)", sequence_number
);
9491 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9492 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9494 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
9496 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetMinmax_reply_data
, (f_length
* 4), byte_order
);
9499 static void glxGetMinmaxParameterfv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9501 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameterfv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9503 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameterfv_target
, tvb
, *offsetp
, 4, byte_order
);
9505 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameterfv_pname
, tvb
, *offsetp
, 4, byte_order
);
9508 static void glxGetMinmaxParameterfv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9510 int sequence_number
;
9513 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMinmaxParameterfv");
9516 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9518 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9519 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9520 "%d (glx-GetMinmaxParameterfv)", sequence_number
);
9522 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9524 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9526 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9527 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameterfv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9529 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameterfv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9531 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9533 listOfFloat(tvb
, offsetp
, t
, hf_x11_glx_GetMinmaxParameterfv_reply_data
, hf_x11_glx_GetMinmaxParameterfv_reply_data_item
, f_n
, byte_order
);
9536 static void glxGetMinmaxParameteriv(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9538 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameteriv_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9540 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameteriv_target
, tvb
, *offsetp
, 4, byte_order
);
9542 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameteriv_pname
, tvb
, *offsetp
, 4, byte_order
);
9545 static void glxGetMinmaxParameteriv_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9547 int sequence_number
;
9550 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMinmaxParameteriv");
9553 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9555 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9556 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9557 "%d (glx-GetMinmaxParameteriv)", sequence_number
);
9559 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9561 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9563 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9564 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameteriv_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9566 proto_tree_add_item(t
, hf_x11_glx_GetMinmaxParameteriv_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9568 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9570 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetMinmaxParameteriv_reply_data
, hf_x11_glx_GetMinmaxParameteriv_reply_data_item
, f_n
, byte_order
);
9573 static void glxGetCompressedTexImageARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9575 proto_tree_add_item(t
, hf_x11_glx_GetCompressedTexImageARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9577 proto_tree_add_item(t
, hf_x11_glx_GetCompressedTexImageARB_target
, tvb
, *offsetp
, 4, byte_order
);
9579 proto_tree_add_item(t
, hf_x11_glx_GetCompressedTexImageARB_level
, tvb
, *offsetp
, 4, byte_order
);
9582 static void glxGetCompressedTexImageARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9584 int sequence_number
;
9587 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCompressedTexImageARB");
9590 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9592 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9593 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9594 "%d (glx-GetCompressedTexImageARB)", sequence_number
);
9596 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9597 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9599 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
9601 proto_tree_add_item(t
, hf_x11_glx_GetCompressedTexImageARB_reply_size
, tvb
, *offsetp
, 4, byte_order
);
9603 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9605 listOfByte(tvb
, offsetp
, t
, hf_x11_glx_GetCompressedTexImageARB_reply_data
, (f_length
* 4), byte_order
);
9608 static void glxDeleteQueriesARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9611 proto_tree_add_item(t
, hf_x11_glx_DeleteQueriesARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9613 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9614 proto_tree_add_item(t
, hf_x11_glx_DeleteQueriesARB_n
, tvb
, *offsetp
, 4, byte_order
);
9616 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_DeleteQueriesARB_ids
, hf_x11_glx_DeleteQueriesARB_ids_item
, f_n
, byte_order
);
9620 static void glxGenQueriesARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9622 proto_tree_add_item(t
, hf_x11_glx_GenQueriesARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9624 proto_tree_add_item(t
, hf_x11_glx_GenQueriesARB_n
, tvb
, *offsetp
, 4, byte_order
);
9627 static void glxGenQueriesARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9629 int sequence_number
;
9632 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GenQueriesARB");
9635 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9637 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9638 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9639 "%d (glx-GenQueriesARB)", sequence_number
);
9641 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9642 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9644 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
9646 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GenQueriesARB_reply_data
, hf_x11_glx_GenQueriesARB_reply_data_item
, f_length
, byte_order
);
9649 static void glxIsQueryARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9651 proto_tree_add_item(t
, hf_x11_glx_IsQueryARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9653 proto_tree_add_item(t
, hf_x11_glx_IsQueryARB_id
, tvb
, *offsetp
, 4, byte_order
);
9656 static void glxIsQueryARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9658 int sequence_number
;
9660 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsQueryARB");
9663 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9665 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9666 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9667 "%d (glx-IsQueryARB)", sequence_number
);
9669 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9671 proto_tree_add_item(t
, hf_x11_glx_IsQueryARB_reply_ret_val
, tvb
, *offsetp
, 4, byte_order
);
9675 static void glxGetQueryivARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9677 proto_tree_add_item(t
, hf_x11_glx_GetQueryivARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9679 proto_tree_add_item(t
, hf_x11_glx_GetQueryivARB_target
, tvb
, *offsetp
, 4, byte_order
);
9681 proto_tree_add_item(t
, hf_x11_glx_GetQueryivARB_pname
, tvb
, *offsetp
, 4, byte_order
);
9684 static void glxGetQueryivARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9686 int sequence_number
;
9689 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetQueryivARB");
9692 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9694 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9695 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9696 "%d (glx-GetQueryivARB)", sequence_number
);
9698 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9700 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9702 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9703 proto_tree_add_item(t
, hf_x11_glx_GetQueryivARB_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9705 proto_tree_add_item(t
, hf_x11_glx_GetQueryivARB_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9707 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9709 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetQueryivARB_reply_data
, hf_x11_glx_GetQueryivARB_reply_data_item
, f_n
, byte_order
);
9712 static void glxGetQueryObjectivARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9714 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectivARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9716 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectivARB_id
, tvb
, *offsetp
, 4, byte_order
);
9718 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectivARB_pname
, tvb
, *offsetp
, 4, byte_order
);
9721 static void glxGetQueryObjectivARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9723 int sequence_number
;
9726 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetQueryObjectivARB");
9729 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9731 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9732 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9733 "%d (glx-GetQueryObjectivARB)", sequence_number
);
9735 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9737 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9739 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9740 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectivARB_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9742 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectivARB_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9744 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9746 listOfInt32(tvb
, offsetp
, t
, hf_x11_glx_GetQueryObjectivARB_reply_data
, hf_x11_glx_GetQueryObjectivARB_reply_data_item
, f_n
, byte_order
);
9749 static void glxGetQueryObjectuivARB(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
9751 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectuivARB_context_tag
, tvb
, *offsetp
, 4, byte_order
);
9753 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectuivARB_id
, tvb
, *offsetp
, 4, byte_order
);
9755 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectuivARB_pname
, tvb
, *offsetp
, 4, byte_order
);
9758 static void glxGetQueryObjectuivARB_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9760 int sequence_number
;
9763 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetQueryObjectuivARB");
9766 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
9768 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
9769 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
9770 "%d (glx-GetQueryObjectuivARB)", sequence_number
);
9772 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
9774 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
9776 f_n
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
9777 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectuivARB_reply_n
, tvb
, *offsetp
, 4, byte_order
);
9779 proto_tree_add_item(t
, hf_x11_glx_GetQueryObjectuivARB_reply_datum
, tvb
, *offsetp
, 4, byte_order
);
9781 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
9783 listOfCard32(tvb
, offsetp
, t
, hf_x11_glx_GetQueryObjectuivARB_reply_data
, hf_x11_glx_GetQueryObjectuivARB_reply_data_item
, f_n
, byte_order
);
9785 static const value_string glx_extension_minor
[] = {
9787 { 2, "RenderLarge" },
9788 { 3, "CreateContext" },
9789 { 4, "DestroyContext" },
9790 { 5, "MakeCurrent" },
9792 { 7, "QueryVersion" },
9795 { 10, "CopyContext" },
9796 { 11, "SwapBuffers" },
9798 { 13, "CreateGLXPixmap" },
9799 { 14, "GetVisualConfigs" },
9800 { 15, "DestroyGLXPixmap" },
9801 { 16, "VendorPrivate" },
9802 { 17, "VendorPrivateWithReply" },
9803 { 18, "QueryExtensionsString" },
9804 { 19, "QueryServerString" },
9805 { 20, "ClientInfo" },
9806 { 21, "GetFBConfigs" },
9807 { 22, "CreatePixmap" },
9808 { 23, "DestroyPixmap" },
9809 { 24, "CreateNewContext" },
9810 { 25, "QueryContext" },
9811 { 26, "MakeContextCurrent" },
9812 { 27, "CreatePbuffer" },
9813 { 28, "DestroyPbuffer" },
9814 { 29, "GetDrawableAttributes" },
9815 { 30, "ChangeDrawableAttributes" },
9816 { 31, "CreateWindow" },
9817 { 32, "DeleteWindow" },
9818 { 33, "SetClientInfoARB" },
9819 { 34, "CreateContextAttribsARB" },
9820 { 35, "SetClientInfo2ARB" },
9823 { 103, "DeleteLists" },
9824 { 104, "GenLists" },
9825 { 105, "FeedbackBuffer" },
9826 { 106, "SelectBuffer" },
9827 { 107, "RenderMode" },
9829 { 109, "PixelStoref" },
9830 { 110, "PixelStorei" },
9831 { 111, "ReadPixels" },
9832 { 112, "GetBooleanv" },
9833 { 113, "GetClipPlane" },
9834 { 114, "GetDoublev" },
9835 { 115, "GetError" },
9836 { 116, "GetFloatv" },
9837 { 117, "GetIntegerv" },
9838 { 118, "GetLightfv" },
9839 { 119, "GetLightiv" },
9840 { 120, "GetMapdv" },
9841 { 121, "GetMapfv" },
9842 { 122, "GetMapiv" },
9843 { 123, "GetMaterialfv" },
9844 { 124, "GetMaterialiv" },
9845 { 125, "GetPixelMapfv" },
9846 { 126, "GetPixelMapuiv" },
9847 { 127, "GetPixelMapusv" },
9848 { 128, "GetPolygonStipple" },
9849 { 129, "GetString" },
9850 { 130, "GetTexEnvfv" },
9851 { 131, "GetTexEnviv" },
9852 { 132, "GetTexGendv" },
9853 { 133, "GetTexGenfv" },
9854 { 134, "GetTexGeniv" },
9855 { 135, "GetTexImage" },
9856 { 136, "GetTexParameterfv" },
9857 { 137, "GetTexParameteriv" },
9858 { 138, "GetTexLevelParameterfv" },
9859 { 139, "GetTexLevelParameteriv" },
9860 { 140, "IsEnabled" },
9863 { 143, "AreTexturesResident" },
9864 { 144, "DeleteTextures" },
9865 { 145, "GenTextures" },
9866 { 146, "IsTexture" },
9867 { 147, "GetColorTable" },
9868 { 148, "GetColorTableParameterfv" },
9869 { 149, "GetColorTableParameteriv" },
9870 { 150, "GetConvolutionFilter" },
9871 { 151, "GetConvolutionParameterfv" },
9872 { 152, "GetConvolutionParameteriv" },
9873 { 153, "GetSeparableFilter" },
9874 { 154, "GetHistogram" },
9875 { 155, "GetHistogramParameterfv" },
9876 { 156, "GetHistogramParameteriv" },
9877 { 157, "GetMinmax" },
9878 { 158, "GetMinmaxParameterfv" },
9879 { 159, "GetMinmaxParameteriv" },
9880 { 160, "GetCompressedTexImageARB" },
9881 { 161, "DeleteQueriesARB" },
9882 { 162, "GenQueriesARB" },
9883 { 163, "IsQueryARB" },
9884 { 164, "GetQueryivARB" },
9885 { 165, "GetQueryObjectivARB" },
9886 { 166, "GetQueryObjectuivARB" },
9889 static const x11_event_info glx_events
[] = {
9890 { "glx-BufferSwapComplete", glxBufferSwapComplete
},
9893 static const x11_reply_info glx_replies
[] = {
9894 { 5, glxMakeCurrent_Reply
},
9895 { 6, glxIsDirect_Reply
},
9896 { 7, glxQueryVersion_Reply
},
9897 { 14, glxGetVisualConfigs_Reply
},
9898 { 17, glxVendorPrivateWithReply_Reply
},
9899 { 18, glxQueryExtensionsString_Reply
},
9900 { 19, glxQueryServerString_Reply
},
9901 { 21, glxGetFBConfigs_Reply
},
9902 { 25, glxQueryContext_Reply
},
9903 { 26, glxMakeContextCurrent_Reply
},
9904 { 29, glxGetDrawableAttributes_Reply
},
9905 { 104, glxGenLists_Reply
},
9906 { 107, glxRenderMode_Reply
},
9907 { 108, glxFinish_Reply
},
9908 { 111, glxReadPixels_Reply
},
9909 { 112, glxGetBooleanv_Reply
},
9910 { 113, glxGetClipPlane_Reply
},
9911 { 114, glxGetDoublev_Reply
},
9912 { 115, glxGetError_Reply
},
9913 { 116, glxGetFloatv_Reply
},
9914 { 117, glxGetIntegerv_Reply
},
9915 { 118, glxGetLightfv_Reply
},
9916 { 119, glxGetLightiv_Reply
},
9917 { 120, glxGetMapdv_Reply
},
9918 { 121, glxGetMapfv_Reply
},
9919 { 122, glxGetMapiv_Reply
},
9920 { 123, glxGetMaterialfv_Reply
},
9921 { 124, glxGetMaterialiv_Reply
},
9922 { 125, glxGetPixelMapfv_Reply
},
9923 { 126, glxGetPixelMapuiv_Reply
},
9924 { 127, glxGetPixelMapusv_Reply
},
9925 { 128, glxGetPolygonStipple_Reply
},
9926 { 129, glxGetString_Reply
},
9927 { 130, glxGetTexEnvfv_Reply
},
9928 { 131, glxGetTexEnviv_Reply
},
9929 { 132, glxGetTexGendv_Reply
},
9930 { 133, glxGetTexGenfv_Reply
},
9931 { 134, glxGetTexGeniv_Reply
},
9932 { 135, glxGetTexImage_Reply
},
9933 { 136, glxGetTexParameterfv_Reply
},
9934 { 137, glxGetTexParameteriv_Reply
},
9935 { 138, glxGetTexLevelParameterfv_Reply
},
9936 { 139, glxGetTexLevelParameteriv_Reply
},
9937 { 140, glxIsEnabled_Reply
},
9938 { 141, glxIsList_Reply
},
9939 { 143, glxAreTexturesResident_Reply
},
9940 { 145, glxGenTextures_Reply
},
9941 { 146, glxIsTexture_Reply
},
9942 { 147, glxGetColorTable_Reply
},
9943 { 148, glxGetColorTableParameterfv_Reply
},
9944 { 149, glxGetColorTableParameteriv_Reply
},
9945 { 150, glxGetConvolutionFilter_Reply
},
9946 { 151, glxGetConvolutionParameterfv_Reply
},
9947 { 152, glxGetConvolutionParameteriv_Reply
},
9948 { 153, glxGetSeparableFilter_Reply
},
9949 { 154, glxGetHistogram_Reply
},
9950 { 155, glxGetHistogramParameterfv_Reply
},
9951 { 156, glxGetHistogramParameteriv_Reply
},
9952 { 157, glxGetMinmax_Reply
},
9953 { 158, glxGetMinmaxParameterfv_Reply
},
9954 { 159, glxGetMinmaxParameteriv_Reply
},
9955 { 160, glxGetCompressedTexImageARB_Reply
},
9956 { 162, glxGenQueriesARB_Reply
},
9957 { 163, glxIsQueryARB_Reply
},
9958 { 164, glxGetQueryivARB_Reply
},
9959 { 165, glxGetQueryObjectivARB_Reply
},
9960 { 166, glxGetQueryObjectuivARB_Reply
},
9964 static void dispatch_glx(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
9967 minor
= CARD8(glx_extension_minor
);
9968 length
= REQUEST_LENGTH();
9970 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
9971 val_to_str(minor
, glx_extension_minor
,
9972 "<Unknown opcode %d>"));
9975 glxRender(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9978 glxRenderLarge(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9981 glxCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9984 glxDestroyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9987 glxMakeCurrent(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9990 glxIsDirect(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9993 glxQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9996 glxWaitGL(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
9999 glxWaitX(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10002 glxCopyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10005 glxSwapBuffers(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10008 glxUseXFont(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10011 glxCreateGLXPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10014 glxGetVisualConfigs(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10017 glxDestroyGLXPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10020 glxVendorPrivate(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10023 glxVendorPrivateWithReply(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10026 glxQueryExtensionsString(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10029 glxQueryServerString(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10032 glxClientInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10035 glxGetFBConfigs(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10038 glxCreatePixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10041 glxDestroyPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10044 glxCreateNewContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10047 glxQueryContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10050 glxMakeContextCurrent(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10053 glxCreatePbuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10056 glxDestroyPbuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10059 glxGetDrawableAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10062 glxChangeDrawableAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10065 glxCreateWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10068 glxDeleteWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10071 glxSetClientInfoARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10074 glxCreateContextAttribsARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10077 glxSetClientInfo2ARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10080 glxNewList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10083 glxEndList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10086 glxDeleteLists(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10089 glxGenLists(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10092 glxFeedbackBuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10095 glxSelectBuffer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10098 glxRenderMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10101 glxFinish(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10104 glxPixelStoref(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10107 glxPixelStorei(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10110 glxReadPixels(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10113 glxGetBooleanv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10116 glxGetClipPlane(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10119 glxGetDoublev(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10122 glxGetError(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10125 glxGetFloatv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10128 glxGetIntegerv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10131 glxGetLightfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10134 glxGetLightiv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10137 glxGetMapdv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10140 glxGetMapfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10143 glxGetMapiv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10146 glxGetMaterialfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10149 glxGetMaterialiv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10152 glxGetPixelMapfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10155 glxGetPixelMapuiv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10158 glxGetPixelMapusv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10161 glxGetPolygonStipple(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10164 glxGetString(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10167 glxGetTexEnvfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10170 glxGetTexEnviv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10173 glxGetTexGendv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10176 glxGetTexGenfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10179 glxGetTexGeniv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10182 glxGetTexImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10185 glxGetTexParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10188 glxGetTexParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10191 glxGetTexLevelParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10194 glxGetTexLevelParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10197 glxIsEnabled(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10200 glxIsList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10203 glxFlush(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10206 glxAreTexturesResident(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10209 glxDeleteTextures(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10212 glxGenTextures(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10215 glxIsTexture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10218 glxGetColorTable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10221 glxGetColorTableParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10224 glxGetColorTableParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10227 glxGetConvolutionFilter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10230 glxGetConvolutionParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10233 glxGetConvolutionParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10236 glxGetSeparableFilter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10239 glxGetHistogram(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10242 glxGetHistogramParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10245 glxGetHistogramParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10248 glxGetMinmax(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10251 glxGetMinmaxParameterfv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10254 glxGetMinmaxParameteriv(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10257 glxGetCompressedTexImageARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10260 glxDeleteQueriesARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10263 glxGenQueriesARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10266 glxIsQueryARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10269 glxGetQueryivARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10272 glxGetQueryObjectivARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10275 glxGetQueryObjectuivARB(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
10277 /* No need for a default case here, since Unknown is printed above,
10278 and UNDECODED() is taken care of by dissect_x11_request */
10282 static void register_glx(void)
10284 set_handler("GLX", dispatch_glx
, glx_errors
, glx_events
, NULL
, glx_replies
);
10287 static void struct_randr_ScreenSize(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10290 for (i
= 0; i
< count
; i
++) {
10294 item
= proto_tree_add_item(root
, hf_x11_struct_randr_ScreenSize
, tvb
, *offsetp
, 8, ENC_NA
);
10295 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10296 proto_tree_add_item(t
, hf_x11_struct_randr_ScreenSize_width
, tvb
, *offsetp
, 2, byte_order
);
10298 proto_tree_add_item(t
, hf_x11_struct_randr_ScreenSize_height
, tvb
, *offsetp
, 2, byte_order
);
10300 proto_tree_add_item(t
, hf_x11_struct_randr_ScreenSize_mwidth
, tvb
, *offsetp
, 2, byte_order
);
10302 proto_tree_add_item(t
, hf_x11_struct_randr_ScreenSize_mheight
, tvb
, *offsetp
, 2, byte_order
);
10307 static int struct_size_randr_RefreshRates(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
10311 f_nRates
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 0, byte_order
);
10312 size
+= f_nRates
* 2;
10316 static void struct_randr_RefreshRates(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10319 for (i
= 0; i
< count
; i
++) {
10324 item
= proto_tree_add_item(root
, hf_x11_struct_randr_RefreshRates
, tvb
, *offsetp
, struct_size_randr_RefreshRates(tvb
, offsetp
, byte_order
), ENC_NA
);
10325 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10326 f_nRates
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
10327 proto_tree_add_item(t
, hf_x11_struct_randr_RefreshRates_nRates
, tvb
, *offsetp
, 2, byte_order
);
10329 listOfCard16(tvb
, offsetp
, t
, hf_x11_struct_randr_RefreshRates_rates
, hf_x11_struct_randr_RefreshRates_rates_item
, f_nRates
, byte_order
);
10333 static void struct_randr_ModeInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10336 for (i
= 0; i
< count
; i
++) {
10340 item
= proto_tree_add_item(root
, hf_x11_struct_randr_ModeInfo
, tvb
, *offsetp
, 32, ENC_NA
);
10341 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10342 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_id
, tvb
, *offsetp
, 4, byte_order
);
10344 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_width
, tvb
, *offsetp
, 2, byte_order
);
10346 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_height
, tvb
, *offsetp
, 2, byte_order
);
10348 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_dot_clock
, tvb
, *offsetp
, 4, byte_order
);
10350 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_hsync_start
, tvb
, *offsetp
, 2, byte_order
);
10352 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_hsync_end
, tvb
, *offsetp
, 2, byte_order
);
10354 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_htotal
, tvb
, *offsetp
, 2, byte_order
);
10356 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_hskew
, tvb
, *offsetp
, 2, byte_order
);
10358 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_vsync_start
, tvb
, *offsetp
, 2, byte_order
);
10360 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_vsync_end
, tvb
, *offsetp
, 2, byte_order
);
10362 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_vtotal
, tvb
, *offsetp
, 2, byte_order
);
10364 proto_tree_add_item(t
, hf_x11_struct_randr_ModeInfo_name_len
, tvb
, *offsetp
, 2, byte_order
);
10367 static int* const mode_flags_bits
[] = {
10368 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_HsyncPositive
,
10369 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_HsyncNegative
,
10370 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_VsyncPositive
,
10371 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_VsyncNegative
,
10372 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_Interlace
,
10373 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_DoubleScan
,
10374 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_Csync
,
10375 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_CsyncPositive
,
10376 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_CsyncNegative
,
10377 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_HskewPresent
,
10378 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_Bcast
,
10379 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_PixelMultiplex
,
10380 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_DoubleClock
,
10381 &hf_x11_struct_randr_ModeInfo_mode_flags_mask_HalveClock
,
10384 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_randr_ModeInfo_mode_flags
, ett_x11_rectangle
, mode_flags_bits
, byte_order
);
10390 static void struct_randr_CrtcChange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10393 for (i
= 0; i
< count
; i
++) {
10397 item
= proto_tree_add_item(root
, hf_x11_struct_randr_CrtcChange
, tvb
, *offsetp
, 28, ENC_NA
);
10398 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10399 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10401 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_window
, tvb
, *offsetp
, 4, byte_order
);
10403 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_crtc
, tvb
, *offsetp
, 4, byte_order
);
10405 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_mode
, tvb
, *offsetp
, 4, byte_order
);
10408 static int* const rotation_bits
[] = {
10409 &hf_x11_struct_randr_CrtcChange_rotation_mask_Rotate_0
,
10410 &hf_x11_struct_randr_CrtcChange_rotation_mask_Rotate_90
,
10411 &hf_x11_struct_randr_CrtcChange_rotation_mask_Rotate_180
,
10412 &hf_x11_struct_randr_CrtcChange_rotation_mask_Rotate_270
,
10413 &hf_x11_struct_randr_CrtcChange_rotation_mask_Reflect_X
,
10414 &hf_x11_struct_randr_CrtcChange_rotation_mask_Reflect_Y
,
10417 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_randr_CrtcChange_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
10420 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
10422 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_x
, tvb
, *offsetp
, 2, byte_order
);
10424 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_y
, tvb
, *offsetp
, 2, byte_order
);
10426 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_width
, tvb
, *offsetp
, 2, byte_order
);
10428 proto_tree_add_item(t
, hf_x11_struct_randr_CrtcChange_height
, tvb
, *offsetp
, 2, byte_order
);
10433 static void struct_randr_OutputChange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10436 for (i
= 0; i
< count
; i
++) {
10440 item
= proto_tree_add_item(root
, hf_x11_struct_randr_OutputChange
, tvb
, *offsetp
, 28, ENC_NA
);
10441 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10442 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10444 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10446 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_window
, tvb
, *offsetp
, 4, byte_order
);
10448 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_output
, tvb
, *offsetp
, 4, byte_order
);
10450 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_crtc
, tvb
, *offsetp
, 4, byte_order
);
10452 proto_tree_add_item(t
, hf_x11_struct_randr_OutputChange_mode
, tvb
, *offsetp
, 4, byte_order
);
10455 static int* const rotation_bits
[] = {
10456 &hf_x11_struct_randr_OutputChange_rotation_mask_Rotate_0
,
10457 &hf_x11_struct_randr_OutputChange_rotation_mask_Rotate_90
,
10458 &hf_x11_struct_randr_OutputChange_rotation_mask_Rotate_180
,
10459 &hf_x11_struct_randr_OutputChange_rotation_mask_Rotate_270
,
10460 &hf_x11_struct_randr_OutputChange_rotation_mask_Reflect_X
,
10461 &hf_x11_struct_randr_OutputChange_rotation_mask_Reflect_Y
,
10464 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_randr_OutputChange_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
10467 field8(tvb
, offsetp
, t
, hf_x11_struct_randr_OutputChange_connection
, byte_order
);
10468 field8(tvb
, offsetp
, t
, hf_x11_struct_randr_OutputChange_subpixel_order
, byte_order
);
10472 static void struct_randr_OutputProperty(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10475 for (i
= 0; i
< count
; i
++) {
10479 item
= proto_tree_add_item(root
, hf_x11_struct_randr_OutputProperty
, tvb
, *offsetp
, 28, ENC_NA
);
10480 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10481 proto_tree_add_item(t
, hf_x11_struct_randr_OutputProperty_window
, tvb
, *offsetp
, 4, byte_order
);
10483 proto_tree_add_item(t
, hf_x11_struct_randr_OutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
10485 proto_tree_add_item(t
, hf_x11_struct_randr_OutputProperty_atom
, tvb
, *offsetp
, 4, byte_order
);
10487 proto_tree_add_item(t
, hf_x11_struct_randr_OutputProperty_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10489 field8(tvb
, offsetp
, t
, hf_x11_struct_randr_OutputProperty_status
, byte_order
);
10490 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
10495 static void struct_randr_ProviderChange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10498 for (i
= 0; i
< count
; i
++) {
10502 item
= proto_tree_add_item(root
, hf_x11_struct_randr_ProviderChange
, tvb
, *offsetp
, 28, ENC_NA
);
10503 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10504 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderChange_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10506 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderChange_window
, tvb
, *offsetp
, 4, byte_order
);
10508 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderChange_provider
, tvb
, *offsetp
, 4, byte_order
);
10510 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
10515 static void struct_randr_ProviderProperty(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10518 for (i
= 0; i
< count
; i
++) {
10522 item
= proto_tree_add_item(root
, hf_x11_struct_randr_ProviderProperty
, tvb
, *offsetp
, 28, ENC_NA
);
10523 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10524 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderProperty_window
, tvb
, *offsetp
, 4, byte_order
);
10526 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
10528 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderProperty_atom
, tvb
, *offsetp
, 4, byte_order
);
10530 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderProperty_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10532 proto_tree_add_item(t
, hf_x11_struct_randr_ProviderProperty_state
, tvb
, *offsetp
, 1, byte_order
);
10534 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
10539 static void struct_randr_ResourceChange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10542 for (i
= 0; i
< count
; i
++) {
10546 item
= proto_tree_add_item(root
, hf_x11_struct_randr_ResourceChange
, tvb
, *offsetp
, 28, ENC_NA
);
10547 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10548 proto_tree_add_item(t
, hf_x11_struct_randr_ResourceChange_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10550 proto_tree_add_item(t
, hf_x11_struct_randr_ResourceChange_window
, tvb
, *offsetp
, 4, byte_order
);
10552 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
10557 static int struct_size_randr_MonitorInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
10561 f_nOutput
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 6, byte_order
);
10562 size
+= f_nOutput
* 4;
10566 static void struct_randr_MonitorInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10569 for (i
= 0; i
< count
; i
++) {
10574 item
= proto_tree_add_item(root
, hf_x11_struct_randr_MonitorInfo
, tvb
, *offsetp
, struct_size_randr_MonitorInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
10575 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10576 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_name
, tvb
, *offsetp
, 4, byte_order
);
10578 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_primary
, tvb
, *offsetp
, 1, byte_order
);
10580 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_automatic
, tvb
, *offsetp
, 1, byte_order
);
10582 f_nOutput
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
10583 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_nOutput
, tvb
, *offsetp
, 2, byte_order
);
10585 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_x
, tvb
, *offsetp
, 2, byte_order
);
10587 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_y
, tvb
, *offsetp
, 2, byte_order
);
10589 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_width
, tvb
, *offsetp
, 2, byte_order
);
10591 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_height
, tvb
, *offsetp
, 2, byte_order
);
10593 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_width_in_millimeters
, tvb
, *offsetp
, 4, byte_order
);
10595 proto_tree_add_item(t
, hf_x11_struct_randr_MonitorInfo_height_in_millimeters
, tvb
, *offsetp
, 4, byte_order
);
10597 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_randr_MonitorInfo_outputs
, hf_x11_struct_randr_MonitorInfo_outputs_item
, f_nOutput
, byte_order
);
10601 static void struct_randr_LeaseNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10604 for (i
= 0; i
< count
; i
++) {
10608 item
= proto_tree_add_item(root
, hf_x11_struct_randr_LeaseNotify
, tvb
, *offsetp
, 28, ENC_NA
);
10609 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10610 proto_tree_add_item(t
, hf_x11_struct_randr_LeaseNotify_timestamp
, tvb
, *offsetp
, 4, byte_order
);
10612 proto_tree_add_item(t
, hf_x11_struct_randr_LeaseNotify_window
, tvb
, *offsetp
, 4, byte_order
);
10614 proto_tree_add_item(t
, hf_x11_struct_randr_LeaseNotify_lease
, tvb
, *offsetp
, 4, byte_order
);
10616 proto_tree_add_item(t
, hf_x11_struct_randr_LeaseNotify_created
, tvb
, *offsetp
, 1, byte_order
);
10618 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
10623 static void struct_sync_INT64(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10626 for (i
= 0; i
< count
; i
++) {
10630 item
= proto_tree_add_item(root
, hf_x11_struct_sync_INT64
, tvb
, *offsetp
, 8, ENC_NA
);
10631 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10632 proto_tree_add_item(t
, hf_x11_struct_sync_INT64_hi
, tvb
, *offsetp
, 4, byte_order
);
10634 proto_tree_add_item(t
, hf_x11_struct_sync_INT64_lo
, tvb
, *offsetp
, 4, byte_order
);
10639 static int struct_size_sync_SYSTEMCOUNTER(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
10643 f_name_len
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 12, byte_order
);
10644 size
+= f_name_len
* 1;
10645 size
= (size
+ 3) & ~3;
10649 static void struct_sync_SYSTEMCOUNTER(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10652 for (i
= 0; i
< count
; i
++) {
10657 item
= proto_tree_add_item(root
, hf_x11_struct_sync_SYSTEMCOUNTER
, tvb
, *offsetp
, struct_size_sync_SYSTEMCOUNTER(tvb
, offsetp
, byte_order
), ENC_NA
);
10658 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10659 proto_tree_add_item(t
, hf_x11_struct_sync_SYSTEMCOUNTER_counter
, tvb
, *offsetp
, 4, byte_order
);
10661 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
10662 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
10663 proto_tree_add_item(t
, hf_x11_struct_sync_SYSTEMCOUNTER_name_len
, tvb
, *offsetp
, 2, byte_order
);
10665 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_sync_SYSTEMCOUNTER_name
, f_name_len
, byte_order
);
10666 if (*offsetp
% 4) {
10667 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
10668 *offsetp
+= (4 - *offsetp
% 4);
10673 static void struct_sync_TRIGGER(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10676 for (i
= 0; i
< count
; i
++) {
10680 item
= proto_tree_add_item(root
, hf_x11_struct_sync_TRIGGER
, tvb
, *offsetp
, 20, ENC_NA
);
10681 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10682 proto_tree_add_item(t
, hf_x11_struct_sync_TRIGGER_counter
, tvb
, *offsetp
, 4, byte_order
);
10684 field32(tvb
, offsetp
, t
, hf_x11_struct_sync_TRIGGER_wait_type
, byte_order
);
10685 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
10686 field32(tvb
, offsetp
, t
, hf_x11_struct_sync_TRIGGER_test_type
, byte_order
);
10690 static void struct_sync_WAITCONDITION(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10693 for (i
= 0; i
< count
; i
++) {
10697 item
= proto_tree_add_item(root
, hf_x11_struct_sync_WAITCONDITION
, tvb
, *offsetp
, 28, ENC_NA
);
10698 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10699 struct_sync_TRIGGER(tvb
, offsetp
, t
, byte_order
, 1);
10700 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
10704 static void struct_present_Notify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
10707 for (i
= 0; i
< count
; i
++) {
10711 item
= proto_tree_add_item(root
, hf_x11_struct_present_Notify
, tvb
, *offsetp
, 8, ENC_NA
);
10712 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
10713 proto_tree_add_item(t
, hf_x11_struct_present_Notify_window
, tvb
, *offsetp
, 4, byte_order
);
10715 proto_tree_add_item(t
, hf_x11_struct_present_Notify_serial
, tvb
, *offsetp
, 4, byte_order
);
10720 static void presentQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10722 proto_tree_add_item(t
, hf_x11_present_QueryVersion_major_version
, tvb
, *offsetp
, 4, byte_order
);
10724 proto_tree_add_item(t
, hf_x11_present_QueryVersion_minor_version
, tvb
, *offsetp
, 4, byte_order
);
10727 static void presentQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10729 int sequence_number
;
10731 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
10734 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
10736 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
10737 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
10738 "%d (present-QueryVersion)", sequence_number
);
10740 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
10742 proto_tree_add_item(t
, hf_x11_present_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
10744 proto_tree_add_item(t
, hf_x11_present_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
10748 static void presentPixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10750 proto_tree_add_item(t
, hf_x11_present_Pixmap_window
, tvb
, *offsetp
, 4, byte_order
);
10752 proto_tree_add_item(t
, hf_x11_present_Pixmap_pixmap
, tvb
, *offsetp
, 4, byte_order
);
10754 proto_tree_add_item(t
, hf_x11_present_Pixmap_serial
, tvb
, *offsetp
, 4, byte_order
);
10756 proto_tree_add_item(t
, hf_x11_present_Pixmap_valid
, tvb
, *offsetp
, 4, byte_order
);
10758 proto_tree_add_item(t
, hf_x11_present_Pixmap_update
, tvb
, *offsetp
, 4, byte_order
);
10760 proto_tree_add_item(t
, hf_x11_present_Pixmap_x_off
, tvb
, *offsetp
, 2, byte_order
);
10762 proto_tree_add_item(t
, hf_x11_present_Pixmap_y_off
, tvb
, *offsetp
, 2, byte_order
);
10764 proto_tree_add_item(t
, hf_x11_present_Pixmap_target_crtc
, tvb
, *offsetp
, 4, byte_order
);
10766 proto_tree_add_item(t
, hf_x11_present_Pixmap_wait_fence
, tvb
, *offsetp
, 4, byte_order
);
10768 proto_tree_add_item(t
, hf_x11_present_Pixmap_idle_fence
, tvb
, *offsetp
, 4, byte_order
);
10770 proto_tree_add_item(t
, hf_x11_present_Pixmap_options
, tvb
, *offsetp
, 4, byte_order
);
10772 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
10774 proto_tree_add_item(t
, hf_x11_present_Pixmap_target_msc
, tvb
, *offsetp
, 8, byte_order
);
10776 proto_tree_add_item(t
, hf_x11_present_Pixmap_divisor
, tvb
, *offsetp
, 8, byte_order
);
10778 proto_tree_add_item(t
, hf_x11_present_Pixmap_remainder
, tvb
, *offsetp
, 8, byte_order
);
10780 struct_present_Notify(tvb
, offsetp
, t
, byte_order
, (length
- 72) / 8);
10783 static void presentNotifyMSC(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10785 proto_tree_add_item(t
, hf_x11_present_NotifyMSC_window
, tvb
, *offsetp
, 4, byte_order
);
10787 proto_tree_add_item(t
, hf_x11_present_NotifyMSC_serial
, tvb
, *offsetp
, 4, byte_order
);
10789 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
10791 proto_tree_add_item(t
, hf_x11_present_NotifyMSC_target_msc
, tvb
, *offsetp
, 8, byte_order
);
10793 proto_tree_add_item(t
, hf_x11_present_NotifyMSC_divisor
, tvb
, *offsetp
, 8, byte_order
);
10795 proto_tree_add_item(t
, hf_x11_present_NotifyMSC_remainder
, tvb
, *offsetp
, 8, byte_order
);
10799 static void presentSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10801 proto_tree_add_item(t
, hf_x11_present_SelectInput_eid
, tvb
, *offsetp
, 4, byte_order
);
10803 proto_tree_add_item(t
, hf_x11_present_SelectInput_window
, tvb
, *offsetp
, 4, byte_order
);
10806 static int* const event_mask_bits
[] = {
10807 &hf_x11_present_SelectInput_event_mask_mask_ConfigureNotify
,
10808 &hf_x11_present_SelectInput_event_mask_mask_CompleteNotify
,
10809 &hf_x11_present_SelectInput_event_mask_mask_IdleNotify
,
10810 &hf_x11_present_SelectInput_event_mask_mask_RedirectNotify
,
10813 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_present_SelectInput_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
10818 static void presentQueryCapabilities(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10820 proto_tree_add_item(t
, hf_x11_present_QueryCapabilities_target
, tvb
, *offsetp
, 4, byte_order
);
10823 static void presentQueryCapabilities_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10825 int sequence_number
;
10827 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryCapabilities");
10830 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
10832 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
10833 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
10834 "%d (present-QueryCapabilities)", sequence_number
);
10836 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
10838 proto_tree_add_item(t
, hf_x11_present_QueryCapabilities_reply_capabilities
, tvb
, *offsetp
, 4, byte_order
);
10842 static void presentPixmapSynced(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
10844 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_window
, tvb
, *offsetp
, 4, byte_order
);
10846 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_pixmap
, tvb
, *offsetp
, 4, byte_order
);
10848 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_serial
, tvb
, *offsetp
, 4, byte_order
);
10850 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_valid
, tvb
, *offsetp
, 4, byte_order
);
10852 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_update
, tvb
, *offsetp
, 4, byte_order
);
10854 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_x_off
, tvb
, *offsetp
, 2, byte_order
);
10856 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_y_off
, tvb
, *offsetp
, 2, byte_order
);
10858 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_target_crtc
, tvb
, *offsetp
, 4, byte_order
);
10860 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_acquire_syncobj
, tvb
, *offsetp
, 4, byte_order
);
10862 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_release_syncobj
, tvb
, *offsetp
, 4, byte_order
);
10864 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_acquire_point
, tvb
, *offsetp
, 8, byte_order
);
10866 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_release_point
, tvb
, *offsetp
, 8, byte_order
);
10868 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_options
, tvb
, *offsetp
, 4, byte_order
);
10870 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
10872 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_target_msc
, tvb
, *offsetp
, 8, byte_order
);
10874 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_divisor
, tvb
, *offsetp
, 8, byte_order
);
10876 proto_tree_add_item(t
, hf_x11_present_PixmapSynced_remainder
, tvb
, *offsetp
, 8, byte_order
);
10878 struct_present_Notify(tvb
, offsetp
, t
, byte_order
, (length
- 88) / 8);
10881 static void presentCompleteNotify(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10883 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 1,
10884 "CompleteNotify (1)");
10885 field8(tvb
, offsetp
, t
, hf_x11_present_CompleteNotify_kind
, byte_order
);
10886 field8(tvb
, offsetp
, t
, hf_x11_present_CompleteNotify_mode
, byte_order
);
10887 proto_tree_add_item(t
, hf_x11_present_CompleteNotify_event
, tvb
, *offsetp
, 4, byte_order
);
10889 proto_tree_add_item(t
, hf_x11_present_CompleteNotify_window
, tvb
, *offsetp
, 4, byte_order
);
10891 proto_tree_add_item(t
, hf_x11_present_CompleteNotify_serial
, tvb
, *offsetp
, 4, byte_order
);
10893 proto_tree_add_item(t
, hf_x11_present_CompleteNotify_ust
, tvb
, *offsetp
, 8, byte_order
);
10895 proto_tree_add_item(t
, hf_x11_present_CompleteNotify_msc
, tvb
, *offsetp
, 8, byte_order
);
10900 static void presentIdleNotify(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10902 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 2,
10904 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
10906 proto_tree_add_item(t
, hf_x11_present_IdleNotify_event
, tvb
, *offsetp
, 4, byte_order
);
10908 proto_tree_add_item(t
, hf_x11_present_IdleNotify_window
, tvb
, *offsetp
, 4, byte_order
);
10910 proto_tree_add_item(t
, hf_x11_present_IdleNotify_serial
, tvb
, *offsetp
, 4, byte_order
);
10912 proto_tree_add_item(t
, hf_x11_present_IdleNotify_pixmap
, tvb
, *offsetp
, 4, byte_order
);
10914 proto_tree_add_item(t
, hf_x11_present_IdleNotify_idle_fence
, tvb
, *offsetp
, 4, byte_order
);
10919 static void presentRedirectNotify(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10921 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 3,
10922 "RedirectNotify (3)");
10923 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_update_window
, tvb
, *offsetp
, 1, byte_order
);
10925 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
10927 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_event
, tvb
, *offsetp
, 4, byte_order
);
10929 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_event_window
, tvb
, *offsetp
, 4, byte_order
);
10931 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_window
, tvb
, *offsetp
, 4, byte_order
);
10933 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_pixmap
, tvb
, *offsetp
, 4, byte_order
);
10935 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_serial
, tvb
, *offsetp
, 4, byte_order
);
10937 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_valid_region
, tvb
, *offsetp
, 4, byte_order
);
10939 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_update_region
, tvb
, *offsetp
, 4, byte_order
);
10941 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, 1);
10942 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, 1);
10943 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_x_off
, tvb
, *offsetp
, 2, byte_order
);
10945 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_y_off
, tvb
, *offsetp
, 2, byte_order
);
10947 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_target_crtc
, tvb
, *offsetp
, 4, byte_order
);
10949 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_wait_fence
, tvb
, *offsetp
, 4, byte_order
);
10951 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_idle_fence
, tvb
, *offsetp
, 4, byte_order
);
10953 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_options
, tvb
, *offsetp
, 4, byte_order
);
10955 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
10957 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_target_msc
, tvb
, *offsetp
, 8, byte_order
);
10959 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_divisor
, tvb
, *offsetp
, 8, byte_order
);
10961 proto_tree_add_item(t
, hf_x11_present_RedirectNotify_remainder
, tvb
, *offsetp
, 8, byte_order
);
10963 struct_present_Notify(tvb
, offsetp
, t
, byte_order
, (length
- 104) / 8);
10966 static const value_string present_extension_minor
[] = {
10967 { 0, "QueryVersion" },
10969 { 2, "NotifyMSC" },
10970 { 3, "SelectInput" },
10971 { 4, "QueryCapabilities" },
10972 { 5, "PixmapSynced" },
10975 static const x11_event_info present_events
[] = {
10978 static const x11_generic_event_info present_generic_events
[] = {
10979 { 1, presentCompleteNotify
},
10980 { 2, presentIdleNotify
},
10981 { 3, presentRedirectNotify
},
10985 static const x11_reply_info present_replies
[] = {
10986 { 0, presentQueryVersion_Reply
},
10987 { 4, presentQueryCapabilities_Reply
},
10991 static void dispatch_present(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
10994 minor
= CARD8(present_extension_minor
);
10995 length
= REQUEST_LENGTH();
10997 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
10998 val_to_str(minor
, present_extension_minor
,
10999 "<Unknown opcode %d>"));
11002 presentQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11005 presentPixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11008 presentNotifyMSC(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11011 presentSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11014 presentQueryCapabilities(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11017 presentPixmapSynced(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
11019 /* No need for a default case here, since Unknown is printed above,
11020 and UNDECODED() is taken care of by dissect_x11_request */
11024 static void register_present(void)
11026 set_handler("Present", dispatch_present
, present_errors
, present_events
, present_generic_events
, present_replies
);
11029 static void randrQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11031 proto_tree_add_item(t
, hf_x11_randr_QueryVersion_major_version
, tvb
, *offsetp
, 4, byte_order
);
11033 proto_tree_add_item(t
, hf_x11_randr_QueryVersion_minor_version
, tvb
, *offsetp
, 4, byte_order
);
11036 static void randrQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11038 int sequence_number
;
11040 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
11043 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11045 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11046 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11047 "%d (randr-QueryVersion)", sequence_number
);
11049 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11051 proto_tree_add_item(t
, hf_x11_randr_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
11053 proto_tree_add_item(t
, hf_x11_randr_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
11055 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
11059 static void randrSetScreenConfig(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11061 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_window
, tvb
, *offsetp
, 4, byte_order
);
11063 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11065 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11067 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_sizeID
, tvb
, *offsetp
, 2, byte_order
);
11070 static int* const rotation_bits
[] = {
11071 &hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_0
,
11072 &hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_90
,
11073 &hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_180
,
11074 &hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_270
,
11075 &hf_x11_randr_SetScreenConfig_rotation_mask_Reflect_X
,
11076 &hf_x11_randr_SetScreenConfig_rotation_mask_Reflect_Y
,
11079 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_SetScreenConfig_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
11082 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_rate
, tvb
, *offsetp
, 2, byte_order
);
11084 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11087 static void randrSetScreenConfig_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11089 int sequence_number
;
11091 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetScreenConfig");
11094 field8(tvb
, offsetp
, t
, hf_x11_randr_SetScreenConfig_reply_status
, byte_order
);
11095 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11096 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11097 "%d (randr-SetScreenConfig)", sequence_number
);
11099 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11101 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_reply_new_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11103 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_reply_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11105 proto_tree_add_item(t
, hf_x11_randr_SetScreenConfig_reply_root
, tvb
, *offsetp
, 4, byte_order
);
11107 field16(tvb
, offsetp
, t
, hf_x11_randr_SetScreenConfig_reply_subpixel_order
, byte_order
);
11108 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 10, ENC_NA
);
11112 static void randrSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11114 proto_tree_add_item(t
, hf_x11_randr_SelectInput_window
, tvb
, *offsetp
, 4, byte_order
);
11117 static int* const enable_bits
[] = {
11118 &hf_x11_randr_SelectInput_enable_mask_ScreenChange
,
11119 &hf_x11_randr_SelectInput_enable_mask_CrtcChange
,
11120 &hf_x11_randr_SelectInput_enable_mask_OutputChange
,
11121 &hf_x11_randr_SelectInput_enable_mask_OutputProperty
,
11122 &hf_x11_randr_SelectInput_enable_mask_ProviderChange
,
11123 &hf_x11_randr_SelectInput_enable_mask_ProviderProperty
,
11124 &hf_x11_randr_SelectInput_enable_mask_ResourceChange
,
11125 &hf_x11_randr_SelectInput_enable_mask_Lease
,
11128 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_SelectInput_enable
, ett_x11_rectangle
, enable_bits
, byte_order
);
11131 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11135 static void randrGetScreenInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11137 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_window
, tvb
, *offsetp
, 4, byte_order
);
11140 static void randrGetScreenInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11142 int sequence_number
;
11146 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenInfo");
11150 static int* const rotations_bits
[] = {
11151 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_0
,
11152 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_90
,
11153 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_180
,
11154 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_270
,
11155 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Reflect_X
,
11156 &hf_x11_randr_GetScreenInfo_reply_rotations_mask_Reflect_Y
,
11159 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_GetScreenInfo_reply_rotations
, ett_x11_rectangle
, rotations_bits
, byte_order
);
11162 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11163 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11164 "%d (randr-GetScreenInfo)", sequence_number
);
11166 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11168 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_root
, tvb
, *offsetp
, 4, byte_order
);
11170 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11172 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11174 f_nSizes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11175 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_nSizes
, tvb
, *offsetp
, 2, byte_order
);
11177 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_sizeID
, tvb
, *offsetp
, 2, byte_order
);
11180 static int* const rotation_bits
[] = {
11181 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_0
,
11182 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_90
,
11183 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_180
,
11184 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_270
,
11185 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Reflect_X
,
11186 &hf_x11_randr_GetScreenInfo_reply_rotation_mask_Reflect_Y
,
11189 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_GetScreenInfo_reply_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
11192 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_rate
, tvb
, *offsetp
, 2, byte_order
);
11194 f_nInfo
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11195 proto_tree_add_item(t
, hf_x11_randr_GetScreenInfo_reply_nInfo
, tvb
, *offsetp
, 2, byte_order
);
11197 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11199 struct_randr_ScreenSize(tvb
, offsetp
, t
, byte_order
, f_nSizes
);
11200 struct_randr_RefreshRates(tvb
, offsetp
, t
, byte_order
, (f_nInfo
- f_nSizes
));
11203 static void randrGetScreenSizeRange(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11205 proto_tree_add_item(t
, hf_x11_randr_GetScreenSizeRange_window
, tvb
, *offsetp
, 4, byte_order
);
11208 static void randrGetScreenSizeRange_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11210 int sequence_number
;
11212 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenSizeRange");
11215 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11217 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11218 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11219 "%d (randr-GetScreenSizeRange)", sequence_number
);
11221 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11223 proto_tree_add_item(t
, hf_x11_randr_GetScreenSizeRange_reply_min_width
, tvb
, *offsetp
, 2, byte_order
);
11225 proto_tree_add_item(t
, hf_x11_randr_GetScreenSizeRange_reply_min_height
, tvb
, *offsetp
, 2, byte_order
);
11227 proto_tree_add_item(t
, hf_x11_randr_GetScreenSizeRange_reply_max_width
, tvb
, *offsetp
, 2, byte_order
);
11229 proto_tree_add_item(t
, hf_x11_randr_GetScreenSizeRange_reply_max_height
, tvb
, *offsetp
, 2, byte_order
);
11231 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
11235 static void randrSetScreenSize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11237 proto_tree_add_item(t
, hf_x11_randr_SetScreenSize_window
, tvb
, *offsetp
, 4, byte_order
);
11239 proto_tree_add_item(t
, hf_x11_randr_SetScreenSize_width
, tvb
, *offsetp
, 2, byte_order
);
11241 proto_tree_add_item(t
, hf_x11_randr_SetScreenSize_height
, tvb
, *offsetp
, 2, byte_order
);
11243 proto_tree_add_item(t
, hf_x11_randr_SetScreenSize_mm_width
, tvb
, *offsetp
, 4, byte_order
);
11245 proto_tree_add_item(t
, hf_x11_randr_SetScreenSize_mm_height
, tvb
, *offsetp
, 4, byte_order
);
11249 static void randrGetScreenResources(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11251 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_window
, tvb
, *offsetp
, 4, byte_order
);
11254 static void randrGetScreenResources_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11256 int sequence_number
;
11262 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenResources");
11265 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11267 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11268 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11269 "%d (randr-GetScreenResources)", sequence_number
);
11271 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11273 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11275 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11277 f_num_crtcs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11278 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_num_crtcs
, tvb
, *offsetp
, 2, byte_order
);
11280 f_num_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11281 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_num_outputs
, tvb
, *offsetp
, 2, byte_order
);
11283 f_num_modes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11284 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_num_modes
, tvb
, *offsetp
, 2, byte_order
);
11286 f_names_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11287 proto_tree_add_item(t
, hf_x11_randr_GetScreenResources_reply_names_len
, tvb
, *offsetp
, 2, byte_order
);
11289 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
11291 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResources_reply_crtcs
, hf_x11_randr_GetScreenResources_reply_crtcs_item
, f_num_crtcs
, byte_order
);
11292 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResources_reply_outputs
, hf_x11_randr_GetScreenResources_reply_outputs_item
, f_num_outputs
, byte_order
);
11293 struct_randr_ModeInfo(tvb
, offsetp
, t
, byte_order
, f_num_modes
);
11294 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResources_reply_names
, f_names_len
, byte_order
);
11297 static void randrGetOutputInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11299 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_output
, tvb
, *offsetp
, 4, byte_order
);
11301 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11304 static void randrGetOutputInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11306 int sequence_number
;
11312 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetOutputInfo");
11315 field8(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_status
, byte_order
);
11316 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11317 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11318 "%d (randr-GetOutputInfo)", sequence_number
);
11320 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11322 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11324 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_crtc
, tvb
, *offsetp
, 4, byte_order
);
11326 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_mm_width
, tvb
, *offsetp
, 4, byte_order
);
11328 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_mm_height
, tvb
, *offsetp
, 4, byte_order
);
11330 field8(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_connection
, byte_order
);
11331 field8(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_subpixel_order
, byte_order
);
11332 f_num_crtcs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11333 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_num_crtcs
, tvb
, *offsetp
, 2, byte_order
);
11335 f_num_modes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11336 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_num_modes
, tvb
, *offsetp
, 2, byte_order
);
11338 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_num_preferred
, tvb
, *offsetp
, 2, byte_order
);
11340 f_num_clones
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11341 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_num_clones
, tvb
, *offsetp
, 2, byte_order
);
11343 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11344 proto_tree_add_item(t
, hf_x11_randr_GetOutputInfo_reply_name_len
, tvb
, *offsetp
, 2, byte_order
);
11346 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_crtcs
, hf_x11_randr_GetOutputInfo_reply_crtcs_item
, f_num_crtcs
, byte_order
);
11347 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_modes
, hf_x11_randr_GetOutputInfo_reply_modes_item
, f_num_modes
, byte_order
);
11348 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_clones
, hf_x11_randr_GetOutputInfo_reply_clones_item
, f_num_clones
, byte_order
);
11349 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetOutputInfo_reply_name
, f_name_len
, byte_order
);
11352 static void randrListOutputProperties(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11354 proto_tree_add_item(t
, hf_x11_randr_ListOutputProperties_output
, tvb
, *offsetp
, 4, byte_order
);
11357 static void randrListOutputProperties_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11359 int sequence_number
;
11362 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListOutputProperties");
11365 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11367 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11368 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11369 "%d (randr-ListOutputProperties)", sequence_number
);
11371 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11373 f_num_atoms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11374 proto_tree_add_item(t
, hf_x11_randr_ListOutputProperties_reply_num_atoms
, tvb
, *offsetp
, 2, byte_order
);
11376 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
11378 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_ListOutputProperties_reply_atoms
, hf_x11_randr_ListOutputProperties_reply_atoms_item
, f_num_atoms
, byte_order
);
11381 static void randrQueryOutputProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11383 proto_tree_add_item(t
, hf_x11_randr_QueryOutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
11385 proto_tree_add_item(t
, hf_x11_randr_QueryOutputProperty_property
, tvb
, *offsetp
, 4, byte_order
);
11388 static void randrQueryOutputProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11390 int sequence_number
;
11393 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryOutputProperty");
11396 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11398 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11399 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11400 "%d (randr-QueryOutputProperty)", sequence_number
);
11402 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
11403 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11405 proto_tree_add_item(t
, hf_x11_randr_QueryOutputProperty_reply_pending
, tvb
, *offsetp
, 1, byte_order
);
11407 proto_tree_add_item(t
, hf_x11_randr_QueryOutputProperty_reply_range
, tvb
, *offsetp
, 1, byte_order
);
11409 proto_tree_add_item(t
, hf_x11_randr_QueryOutputProperty_reply_immutable
, tvb
, *offsetp
, 1, byte_order
);
11411 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 21, ENC_NA
);
11413 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_QueryOutputProperty_reply_validValues
, hf_x11_randr_QueryOutputProperty_reply_validValues_item
, f_length
, byte_order
);
11416 static void randrConfigureOutputProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11418 proto_tree_add_item(t
, hf_x11_randr_ConfigureOutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
11420 proto_tree_add_item(t
, hf_x11_randr_ConfigureOutputProperty_property
, tvb
, *offsetp
, 4, byte_order
);
11422 proto_tree_add_item(t
, hf_x11_randr_ConfigureOutputProperty_pending
, tvb
, *offsetp
, 1, byte_order
);
11424 proto_tree_add_item(t
, hf_x11_randr_ConfigureOutputProperty_range
, tvb
, *offsetp
, 1, byte_order
);
11426 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11428 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_ConfigureOutputProperty_values
, hf_x11_randr_ConfigureOutputProperty_values_item
, (length
- 16) / 4, byte_order
);
11431 static void randrChangeOutputProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11435 proto_tree_add_item(t
, hf_x11_randr_ChangeOutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
11437 proto_tree_add_item(t
, hf_x11_randr_ChangeOutputProperty_property
, tvb
, *offsetp
, 4, byte_order
);
11439 proto_tree_add_item(t
, hf_x11_randr_ChangeOutputProperty_type
, tvb
, *offsetp
, 4, byte_order
);
11441 f_format
= tvb_get_uint8(tvb
, *offsetp
);
11442 proto_tree_add_item(t
, hf_x11_randr_ChangeOutputProperty_format
, tvb
, *offsetp
, 1, byte_order
);
11444 field8(tvb
, offsetp
, t
, hf_x11_randr_ChangeOutputProperty_mode
, byte_order
);
11445 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11447 f_num_units
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
11448 proto_tree_add_item(t
, hf_x11_randr_ChangeOutputProperty_num_units
, tvb
, *offsetp
, 4, byte_order
);
11450 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_ChangeOutputProperty_data
, ((f_num_units
* f_format
) / 8), byte_order
);
11451 length
-= ((f_num_units
* f_format
) / 8) * 1;
11454 static void randrDeleteOutputProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11456 proto_tree_add_item(t
, hf_x11_randr_DeleteOutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
11458 proto_tree_add_item(t
, hf_x11_randr_DeleteOutputProperty_property
, tvb
, *offsetp
, 4, byte_order
);
11462 static void randrGetOutputProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11464 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_output
, tvb
, *offsetp
, 4, byte_order
);
11466 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_property
, tvb
, *offsetp
, 4, byte_order
);
11468 field32(tvb
, offsetp
, t
, hf_x11_randr_GetOutputProperty_type
, byte_order
);
11469 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_long_offset
, tvb
, *offsetp
, 4, byte_order
);
11471 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_long_length
, tvb
, *offsetp
, 4, byte_order
);
11473 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_delete
, tvb
, *offsetp
, 1, byte_order
);
11475 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_pending
, tvb
, *offsetp
, 1, byte_order
);
11477 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11480 static void randrGetOutputProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11482 int sequence_number
;
11486 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetOutputProperty");
11489 f_format
= tvb_get_uint8(tvb
, *offsetp
);
11490 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_reply_format
, tvb
, *offsetp
, 1, byte_order
);
11492 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11493 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11494 "%d (randr-GetOutputProperty)", sequence_number
);
11496 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11498 field32(tvb
, offsetp
, t
, hf_x11_randr_GetOutputProperty_reply_type
, byte_order
);
11499 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_reply_bytes_after
, tvb
, *offsetp
, 4, byte_order
);
11501 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
11502 proto_tree_add_item(t
, hf_x11_randr_GetOutputProperty_reply_num_items
, tvb
, *offsetp
, 4, byte_order
);
11504 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
11506 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetOutputProperty_reply_data
, (f_num_items
* (f_format
/ 8)), byte_order
);
11509 static void randrCreateMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11511 proto_tree_add_item(t
, hf_x11_randr_CreateMode_window
, tvb
, *offsetp
, 4, byte_order
);
11513 struct_randr_ModeInfo(tvb
, offsetp
, t
, byte_order
, 1);
11514 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_CreateMode_name
, (length
- 40) / 1, byte_order
);
11516 static void randrCreateMode_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11518 int sequence_number
;
11520 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateMode");
11523 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11525 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11526 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11527 "%d (randr-CreateMode)", sequence_number
);
11529 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11531 proto_tree_add_item(t
, hf_x11_randr_CreateMode_reply_mode
, tvb
, *offsetp
, 4, byte_order
);
11533 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
11537 static void randrDestroyMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11539 proto_tree_add_item(t
, hf_x11_randr_DestroyMode_mode
, tvb
, *offsetp
, 4, byte_order
);
11543 static void randrAddOutputMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11545 proto_tree_add_item(t
, hf_x11_randr_AddOutputMode_output
, tvb
, *offsetp
, 4, byte_order
);
11547 proto_tree_add_item(t
, hf_x11_randr_AddOutputMode_mode
, tvb
, *offsetp
, 4, byte_order
);
11551 static void randrDeleteOutputMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11553 proto_tree_add_item(t
, hf_x11_randr_DeleteOutputMode_output
, tvb
, *offsetp
, 4, byte_order
);
11555 proto_tree_add_item(t
, hf_x11_randr_DeleteOutputMode_mode
, tvb
, *offsetp
, 4, byte_order
);
11559 static void randrGetCrtcInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11561 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_crtc
, tvb
, *offsetp
, 4, byte_order
);
11563 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11566 static void randrGetCrtcInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11568 int sequence_number
;
11570 int f_num_possible_outputs
;
11572 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCrtcInfo");
11575 field8(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcInfo_reply_status
, byte_order
);
11576 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11577 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11578 "%d (randr-GetCrtcInfo)", sequence_number
);
11580 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11582 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11584 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_x
, tvb
, *offsetp
, 2, byte_order
);
11586 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_y
, tvb
, *offsetp
, 2, byte_order
);
11588 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_width
, tvb
, *offsetp
, 2, byte_order
);
11590 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_height
, tvb
, *offsetp
, 2, byte_order
);
11592 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_mode
, tvb
, *offsetp
, 4, byte_order
);
11595 static int* const rotation_bits
[] = {
11596 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_0
,
11597 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_90
,
11598 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_180
,
11599 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_270
,
11600 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Reflect_X
,
11601 &hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Reflect_Y
,
11604 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_GetCrtcInfo_reply_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
11608 static int* const rotations_bits
[] = {
11609 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_0
,
11610 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_90
,
11611 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_180
,
11612 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_270
,
11613 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Reflect_X
,
11614 &hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Reflect_Y
,
11617 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_GetCrtcInfo_reply_rotations
, ett_x11_rectangle
, rotations_bits
, byte_order
);
11620 f_num_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11621 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_num_outputs
, tvb
, *offsetp
, 2, byte_order
);
11623 f_num_possible_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11624 proto_tree_add_item(t
, hf_x11_randr_GetCrtcInfo_reply_num_possible_outputs
, tvb
, *offsetp
, 2, byte_order
);
11626 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcInfo_reply_outputs
, hf_x11_randr_GetCrtcInfo_reply_outputs_item
, f_num_outputs
, byte_order
);
11627 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcInfo_reply_possible
, hf_x11_randr_GetCrtcInfo_reply_possible_item
, f_num_possible_outputs
, byte_order
);
11630 static void randrSetCrtcConfig(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11632 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_crtc
, tvb
, *offsetp
, 4, byte_order
);
11634 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11636 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11638 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_x
, tvb
, *offsetp
, 2, byte_order
);
11640 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_y
, tvb
, *offsetp
, 2, byte_order
);
11642 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_mode
, tvb
, *offsetp
, 4, byte_order
);
11645 static int* const rotation_bits
[] = {
11646 &hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_0
,
11647 &hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_90
,
11648 &hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_180
,
11649 &hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_270
,
11650 &hf_x11_randr_SetCrtcConfig_rotation_mask_Reflect_X
,
11651 &hf_x11_randr_SetCrtcConfig_rotation_mask_Reflect_Y
,
11654 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_SetCrtcConfig_rotation
, ett_x11_rectangle
, rotation_bits
, byte_order
);
11657 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11659 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcConfig_outputs
, hf_x11_randr_SetCrtcConfig_outputs_item
, (length
- 28) / 4, byte_order
);
11661 static void randrSetCrtcConfig_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11663 int sequence_number
;
11665 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetCrtcConfig");
11668 field8(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcConfig_reply_status
, byte_order
);
11669 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11670 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11671 "%d (randr-SetCrtcConfig)", sequence_number
);
11673 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11675 proto_tree_add_item(t
, hf_x11_randr_SetCrtcConfig_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11677 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
11681 static void randrGetCrtcGammaSize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11683 proto_tree_add_item(t
, hf_x11_randr_GetCrtcGammaSize_crtc
, tvb
, *offsetp
, 4, byte_order
);
11686 static void randrGetCrtcGammaSize_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11688 int sequence_number
;
11690 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCrtcGammaSize");
11693 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11695 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11696 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11697 "%d (randr-GetCrtcGammaSize)", sequence_number
);
11699 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11701 proto_tree_add_item(t
, hf_x11_randr_GetCrtcGammaSize_reply_size
, tvb
, *offsetp
, 2, byte_order
);
11703 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
11707 static void randrGetCrtcGamma(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11709 proto_tree_add_item(t
, hf_x11_randr_GetCrtcGamma_crtc
, tvb
, *offsetp
, 4, byte_order
);
11712 static void randrGetCrtcGamma_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11714 int sequence_number
;
11717 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCrtcGamma");
11720 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11722 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11723 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11724 "%d (randr-GetCrtcGamma)", sequence_number
);
11726 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11728 f_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11729 proto_tree_add_item(t
, hf_x11_randr_GetCrtcGamma_reply_size
, tvb
, *offsetp
, 2, byte_order
);
11731 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
11733 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcGamma_reply_red
, hf_x11_randr_GetCrtcGamma_reply_red_item
, f_size
, byte_order
);
11734 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcGamma_reply_green
, hf_x11_randr_GetCrtcGamma_reply_green_item
, f_size
, byte_order
);
11735 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcGamma_reply_blue
, hf_x11_randr_GetCrtcGamma_reply_blue_item
, f_size
, byte_order
);
11738 static void randrSetCrtcGamma(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11741 proto_tree_add_item(t
, hf_x11_randr_SetCrtcGamma_crtc
, tvb
, *offsetp
, 4, byte_order
);
11743 f_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11744 proto_tree_add_item(t
, hf_x11_randr_SetCrtcGamma_size
, tvb
, *offsetp
, 2, byte_order
);
11746 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11748 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcGamma_red
, hf_x11_randr_SetCrtcGamma_red_item
, f_size
, byte_order
);
11749 length
-= f_size
* 2;
11750 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcGamma_green
, hf_x11_randr_SetCrtcGamma_green_item
, f_size
, byte_order
);
11751 length
-= f_size
* 2;
11752 listOfCard16(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcGamma_blue
, hf_x11_randr_SetCrtcGamma_blue_item
, f_size
, byte_order
);
11753 length
-= f_size
* 2;
11756 static void randrGetScreenResourcesCurrent(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11758 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_window
, tvb
, *offsetp
, 4, byte_order
);
11761 static void randrGetScreenResourcesCurrent_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11763 int sequence_number
;
11769 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenResourcesCurrent");
11772 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11774 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11775 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11776 "%d (randr-GetScreenResourcesCurrent)", sequence_number
);
11778 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11780 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11782 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11784 f_num_crtcs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11785 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_num_crtcs
, tvb
, *offsetp
, 2, byte_order
);
11787 f_num_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11788 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_num_outputs
, tvb
, *offsetp
, 2, byte_order
);
11790 f_num_modes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11791 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_num_modes
, tvb
, *offsetp
, 2, byte_order
);
11793 f_names_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11794 proto_tree_add_item(t
, hf_x11_randr_GetScreenResourcesCurrent_reply_names_len
, tvb
, *offsetp
, 2, byte_order
);
11796 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
11798 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResourcesCurrent_reply_crtcs
, hf_x11_randr_GetScreenResourcesCurrent_reply_crtcs_item
, f_num_crtcs
, byte_order
);
11799 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResourcesCurrent_reply_outputs
, hf_x11_randr_GetScreenResourcesCurrent_reply_outputs_item
, f_num_outputs
, byte_order
);
11800 struct_randr_ModeInfo(tvb
, offsetp
, t
, byte_order
, f_num_modes
);
11801 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetScreenResourcesCurrent_reply_names
, f_names_len
, byte_order
);
11804 static void randrSetCrtcTransform(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11807 proto_tree_add_item(t
, hf_x11_randr_SetCrtcTransform_crtc
, tvb
, *offsetp
, 4, byte_order
);
11809 struct_render_TRANSFORM(tvb
, offsetp
, t
, byte_order
, 1);
11810 f_filter_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11811 proto_tree_add_item(t
, hf_x11_randr_SetCrtcTransform_filter_len
, tvb
, *offsetp
, 2, byte_order
);
11813 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
11815 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcTransform_filter_name
, f_filter_len
, byte_order
);
11816 length
-= f_filter_len
* 1;
11817 if (*offsetp
% 4) {
11818 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
11819 *offsetp
+= (4 - *offsetp
% 4);
11821 length
= ((length
+ 3) & ~3);
11822 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_SetCrtcTransform_filter_params
, hf_x11_randr_SetCrtcTransform_filter_params_item
, (length
- 48) / 4, byte_order
);
11825 static void randrGetCrtcTransform(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11827 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_crtc
, tvb
, *offsetp
, 4, byte_order
);
11830 static void randrGetCrtcTransform_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11832 int sequence_number
;
11834 int f_pending_nparams
;
11836 int f_current_nparams
;
11838 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCrtcTransform");
11841 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
11843 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11844 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11845 "%d (randr-GetCrtcTransform)", sequence_number
);
11847 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11849 struct_render_TRANSFORM(tvb
, offsetp
, t
, byte_order
, 1);
11850 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_reply_has_transforms
, tvb
, *offsetp
, 1, byte_order
);
11852 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
11854 struct_render_TRANSFORM(tvb
, offsetp
, t
, byte_order
, 1);
11855 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
11857 f_pending_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11858 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_reply_pending_len
, tvb
, *offsetp
, 2, byte_order
);
11860 f_pending_nparams
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11861 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_reply_pending_nparams
, tvb
, *offsetp
, 2, byte_order
);
11863 f_current_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11864 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_reply_current_len
, tvb
, *offsetp
, 2, byte_order
);
11866 f_current_nparams
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11867 proto_tree_add_item(t
, hf_x11_randr_GetCrtcTransform_reply_current_nparams
, tvb
, *offsetp
, 2, byte_order
);
11869 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcTransform_reply_pending_filter_name
, f_pending_len
, byte_order
);
11870 if (*offsetp
% 4) {
11871 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
11872 *offsetp
+= (4 - *offsetp
% 4);
11874 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcTransform_reply_pending_params
, hf_x11_randr_GetCrtcTransform_reply_pending_params_item
, f_pending_nparams
, byte_order
);
11875 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcTransform_reply_current_filter_name
, f_current_len
, byte_order
);
11876 if (*offsetp
% 4) {
11877 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
11878 *offsetp
+= (4 - *offsetp
% 4);
11880 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_GetCrtcTransform_reply_current_params
, hf_x11_randr_GetCrtcTransform_reply_current_params_item
, f_current_nparams
, byte_order
);
11883 static void randrGetPanning(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11885 proto_tree_add_item(t
, hf_x11_randr_GetPanning_crtc
, tvb
, *offsetp
, 4, byte_order
);
11888 static void randrGetPanning_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11890 int sequence_number
;
11892 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPanning");
11895 field8(tvb
, offsetp
, t
, hf_x11_randr_GetPanning_reply_status
, byte_order
);
11896 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11897 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11898 "%d (randr-GetPanning)", sequence_number
);
11900 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11902 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11904 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_left
, tvb
, *offsetp
, 2, byte_order
);
11906 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_top
, tvb
, *offsetp
, 2, byte_order
);
11908 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_width
, tvb
, *offsetp
, 2, byte_order
);
11910 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_height
, tvb
, *offsetp
, 2, byte_order
);
11912 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_track_left
, tvb
, *offsetp
, 2, byte_order
);
11914 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_track_top
, tvb
, *offsetp
, 2, byte_order
);
11916 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_track_width
, tvb
, *offsetp
, 2, byte_order
);
11918 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_track_height
, tvb
, *offsetp
, 2, byte_order
);
11920 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_border_left
, tvb
, *offsetp
, 2, byte_order
);
11922 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_border_top
, tvb
, *offsetp
, 2, byte_order
);
11924 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_border_right
, tvb
, *offsetp
, 2, byte_order
);
11926 proto_tree_add_item(t
, hf_x11_randr_GetPanning_reply_border_bottom
, tvb
, *offsetp
, 2, byte_order
);
11930 static void randrSetPanning(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11932 proto_tree_add_item(t
, hf_x11_randr_SetPanning_crtc
, tvb
, *offsetp
, 4, byte_order
);
11934 proto_tree_add_item(t
, hf_x11_randr_SetPanning_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11936 proto_tree_add_item(t
, hf_x11_randr_SetPanning_left
, tvb
, *offsetp
, 2, byte_order
);
11938 proto_tree_add_item(t
, hf_x11_randr_SetPanning_top
, tvb
, *offsetp
, 2, byte_order
);
11940 proto_tree_add_item(t
, hf_x11_randr_SetPanning_width
, tvb
, *offsetp
, 2, byte_order
);
11942 proto_tree_add_item(t
, hf_x11_randr_SetPanning_height
, tvb
, *offsetp
, 2, byte_order
);
11944 proto_tree_add_item(t
, hf_x11_randr_SetPanning_track_left
, tvb
, *offsetp
, 2, byte_order
);
11946 proto_tree_add_item(t
, hf_x11_randr_SetPanning_track_top
, tvb
, *offsetp
, 2, byte_order
);
11948 proto_tree_add_item(t
, hf_x11_randr_SetPanning_track_width
, tvb
, *offsetp
, 2, byte_order
);
11950 proto_tree_add_item(t
, hf_x11_randr_SetPanning_track_height
, tvb
, *offsetp
, 2, byte_order
);
11952 proto_tree_add_item(t
, hf_x11_randr_SetPanning_border_left
, tvb
, *offsetp
, 2, byte_order
);
11954 proto_tree_add_item(t
, hf_x11_randr_SetPanning_border_top
, tvb
, *offsetp
, 2, byte_order
);
11956 proto_tree_add_item(t
, hf_x11_randr_SetPanning_border_right
, tvb
, *offsetp
, 2, byte_order
);
11958 proto_tree_add_item(t
, hf_x11_randr_SetPanning_border_bottom
, tvb
, *offsetp
, 2, byte_order
);
11961 static void randrSetPanning_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11963 int sequence_number
;
11965 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetPanning");
11968 field8(tvb
, offsetp
, t
, hf_x11_randr_SetPanning_reply_status
, byte_order
);
11969 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
11970 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
11971 "%d (randr-SetPanning)", sequence_number
);
11973 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
11975 proto_tree_add_item(t
, hf_x11_randr_SetPanning_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
11979 static void randrSetOutputPrimary(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11981 proto_tree_add_item(t
, hf_x11_randr_SetOutputPrimary_window
, tvb
, *offsetp
, 4, byte_order
);
11983 proto_tree_add_item(t
, hf_x11_randr_SetOutputPrimary_output
, tvb
, *offsetp
, 4, byte_order
);
11987 static void randrGetOutputPrimary(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
11989 proto_tree_add_item(t
, hf_x11_randr_GetOutputPrimary_window
, tvb
, *offsetp
, 4, byte_order
);
11992 static void randrGetOutputPrimary_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
11994 int sequence_number
;
11996 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetOutputPrimary");
11999 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12001 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12002 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12003 "%d (randr-GetOutputPrimary)", sequence_number
);
12005 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12007 proto_tree_add_item(t
, hf_x11_randr_GetOutputPrimary_reply_output
, tvb
, *offsetp
, 4, byte_order
);
12011 static void randrGetProviders(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12013 proto_tree_add_item(t
, hf_x11_randr_GetProviders_window
, tvb
, *offsetp
, 4, byte_order
);
12016 static void randrGetProviders_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12018 int sequence_number
;
12019 int f_num_providers
;
12021 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetProviders");
12024 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12026 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12027 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12028 "%d (randr-GetProviders)", sequence_number
);
12030 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12032 proto_tree_add_item(t
, hf_x11_randr_GetProviders_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12034 f_num_providers
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12035 proto_tree_add_item(t
, hf_x11_randr_GetProviders_reply_num_providers
, tvb
, *offsetp
, 2, byte_order
);
12037 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 18, ENC_NA
);
12039 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetProviders_reply_providers
, hf_x11_randr_GetProviders_reply_providers_item
, f_num_providers
, byte_order
);
12042 static void randrGetProviderInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12044 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_provider
, tvb
, *offsetp
, 4, byte_order
);
12046 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12049 static void randrGetProviderInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12051 int sequence_number
;
12054 int f_num_associated_providers
;
12057 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetProviderInfo");
12060 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_status
, tvb
, *offsetp
, 1, byte_order
);
12062 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12063 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12064 "%d (randr-GetProviderInfo)", sequence_number
);
12066 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12068 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12071 static int* const capabilities_bits
[] = {
12072 &hf_x11_randr_GetProviderInfo_reply_capabilities_mask_SourceOutput
,
12073 &hf_x11_randr_GetProviderInfo_reply_capabilities_mask_SinkOutput
,
12074 &hf_x11_randr_GetProviderInfo_reply_capabilities_mask_SourceOffload
,
12075 &hf_x11_randr_GetProviderInfo_reply_capabilities_mask_SinkOffload
,
12078 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_randr_GetProviderInfo_reply_capabilities
, ett_x11_rectangle
, capabilities_bits
, byte_order
);
12081 f_num_crtcs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12082 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_num_crtcs
, tvb
, *offsetp
, 2, byte_order
);
12084 f_num_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12085 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_num_outputs
, tvb
, *offsetp
, 2, byte_order
);
12087 f_num_associated_providers
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12088 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_num_associated_providers
, tvb
, *offsetp
, 2, byte_order
);
12090 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12091 proto_tree_add_item(t
, hf_x11_randr_GetProviderInfo_reply_name_len
, tvb
, *offsetp
, 2, byte_order
);
12093 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
12095 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetProviderInfo_reply_crtcs
, hf_x11_randr_GetProviderInfo_reply_crtcs_item
, f_num_crtcs
, byte_order
);
12096 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetProviderInfo_reply_outputs
, hf_x11_randr_GetProviderInfo_reply_outputs_item
, f_num_outputs
, byte_order
);
12097 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetProviderInfo_reply_associated_providers
, hf_x11_randr_GetProviderInfo_reply_associated_providers_item
, f_num_associated_providers
, byte_order
);
12098 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_GetProviderInfo_reply_associated_capability
, hf_x11_randr_GetProviderInfo_reply_associated_capability_item
, f_num_associated_providers
, byte_order
);
12099 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetProviderInfo_reply_name
, f_name_len
, byte_order
);
12102 static void randrSetProviderOffloadSink(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12104 proto_tree_add_item(t
, hf_x11_randr_SetProviderOffloadSink_provider
, tvb
, *offsetp
, 4, byte_order
);
12106 proto_tree_add_item(t
, hf_x11_randr_SetProviderOffloadSink_sink_provider
, tvb
, *offsetp
, 4, byte_order
);
12108 proto_tree_add_item(t
, hf_x11_randr_SetProviderOffloadSink_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12112 static void randrSetProviderOutputSource(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12114 proto_tree_add_item(t
, hf_x11_randr_SetProviderOutputSource_provider
, tvb
, *offsetp
, 4, byte_order
);
12116 proto_tree_add_item(t
, hf_x11_randr_SetProviderOutputSource_source_provider
, tvb
, *offsetp
, 4, byte_order
);
12118 proto_tree_add_item(t
, hf_x11_randr_SetProviderOutputSource_config_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12122 static void randrListProviderProperties(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12124 proto_tree_add_item(t
, hf_x11_randr_ListProviderProperties_provider
, tvb
, *offsetp
, 4, byte_order
);
12127 static void randrListProviderProperties_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12129 int sequence_number
;
12132 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListProviderProperties");
12135 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12137 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12138 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12139 "%d (randr-ListProviderProperties)", sequence_number
);
12141 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12143 f_num_atoms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12144 proto_tree_add_item(t
, hf_x11_randr_ListProviderProperties_reply_num_atoms
, tvb
, *offsetp
, 2, byte_order
);
12146 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
12148 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_ListProviderProperties_reply_atoms
, hf_x11_randr_ListProviderProperties_reply_atoms_item
, f_num_atoms
, byte_order
);
12151 static void randrQueryProviderProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12153 proto_tree_add_item(t
, hf_x11_randr_QueryProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
12155 proto_tree_add_item(t
, hf_x11_randr_QueryProviderProperty_property
, tvb
, *offsetp
, 4, byte_order
);
12158 static void randrQueryProviderProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12160 int sequence_number
;
12163 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryProviderProperty");
12166 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12168 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12169 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12170 "%d (randr-QueryProviderProperty)", sequence_number
);
12172 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12173 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12175 proto_tree_add_item(t
, hf_x11_randr_QueryProviderProperty_reply_pending
, tvb
, *offsetp
, 1, byte_order
);
12177 proto_tree_add_item(t
, hf_x11_randr_QueryProviderProperty_reply_range
, tvb
, *offsetp
, 1, byte_order
);
12179 proto_tree_add_item(t
, hf_x11_randr_QueryProviderProperty_reply_immutable
, tvb
, *offsetp
, 1, byte_order
);
12181 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 21, ENC_NA
);
12183 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_QueryProviderProperty_reply_valid_values
, hf_x11_randr_QueryProviderProperty_reply_valid_values_item
, f_length
, byte_order
);
12186 static void randrConfigureProviderProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12188 proto_tree_add_item(t
, hf_x11_randr_ConfigureProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
12190 proto_tree_add_item(t
, hf_x11_randr_ConfigureProviderProperty_property
, tvb
, *offsetp
, 4, byte_order
);
12192 proto_tree_add_item(t
, hf_x11_randr_ConfigureProviderProperty_pending
, tvb
, *offsetp
, 1, byte_order
);
12194 proto_tree_add_item(t
, hf_x11_randr_ConfigureProviderProperty_range
, tvb
, *offsetp
, 1, byte_order
);
12196 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
12198 listOfInt32(tvb
, offsetp
, t
, hf_x11_randr_ConfigureProviderProperty_values
, hf_x11_randr_ConfigureProviderProperty_values_item
, (length
- 16) / 4, byte_order
);
12201 static void randrChangeProviderProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12205 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
12207 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_property
, tvb
, *offsetp
, 4, byte_order
);
12209 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_type
, tvb
, *offsetp
, 4, byte_order
);
12211 f_format
= tvb_get_uint8(tvb
, *offsetp
);
12212 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_format
, tvb
, *offsetp
, 1, byte_order
);
12214 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_mode
, tvb
, *offsetp
, 1, byte_order
);
12216 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
12218 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12219 proto_tree_add_item(t
, hf_x11_randr_ChangeProviderProperty_num_items
, tvb
, *offsetp
, 4, byte_order
);
12221 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_ChangeProviderProperty_data
, (f_num_items
* (f_format
/ 8)), byte_order
);
12222 length
-= (f_num_items
* (f_format
/ 8)) * 1;
12225 static void randrDeleteProviderProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12227 proto_tree_add_item(t
, hf_x11_randr_DeleteProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
12229 proto_tree_add_item(t
, hf_x11_randr_DeleteProviderProperty_property
, tvb
, *offsetp
, 4, byte_order
);
12233 static void randrGetProviderProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12235 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_provider
, tvb
, *offsetp
, 4, byte_order
);
12237 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_property
, tvb
, *offsetp
, 4, byte_order
);
12239 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_type
, tvb
, *offsetp
, 4, byte_order
);
12241 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_long_offset
, tvb
, *offsetp
, 4, byte_order
);
12243 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_long_length
, tvb
, *offsetp
, 4, byte_order
);
12245 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_delete
, tvb
, *offsetp
, 1, byte_order
);
12247 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_pending
, tvb
, *offsetp
, 1, byte_order
);
12249 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
12252 static void randrGetProviderProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12254 int sequence_number
;
12258 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetProviderProperty");
12261 f_format
= tvb_get_uint8(tvb
, *offsetp
);
12262 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_reply_format
, tvb
, *offsetp
, 1, byte_order
);
12264 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12265 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12266 "%d (randr-GetProviderProperty)", sequence_number
);
12268 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12270 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_reply_type
, tvb
, *offsetp
, 4, byte_order
);
12272 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_reply_bytes_after
, tvb
, *offsetp
, 4, byte_order
);
12274 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12275 proto_tree_add_item(t
, hf_x11_randr_GetProviderProperty_reply_num_items
, tvb
, *offsetp
, 4, byte_order
);
12277 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
12279 listOfByte(tvb
, offsetp
, t
, hf_x11_randr_GetProviderProperty_reply_data
, (f_num_items
* (f_format
/ 8)), byte_order
);
12282 static void randrGetMonitors(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12284 proto_tree_add_item(t
, hf_x11_randr_GetMonitors_window
, tvb
, *offsetp
, 4, byte_order
);
12286 proto_tree_add_item(t
, hf_x11_randr_GetMonitors_get_active
, tvb
, *offsetp
, 1, byte_order
);
12289 static void randrGetMonitors_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12291 int sequence_number
;
12294 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMonitors");
12297 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12299 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12300 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12301 "%d (randr-GetMonitors)", sequence_number
);
12303 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12305 proto_tree_add_item(t
, hf_x11_randr_GetMonitors_reply_timestamp
, tvb
, *offsetp
, 4, byte_order
);
12307 f_nMonitors
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12308 proto_tree_add_item(t
, hf_x11_randr_GetMonitors_reply_nMonitors
, tvb
, *offsetp
, 4, byte_order
);
12310 proto_tree_add_item(t
, hf_x11_randr_GetMonitors_reply_nOutputs
, tvb
, *offsetp
, 4, byte_order
);
12312 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
12314 struct_randr_MonitorInfo(tvb
, offsetp
, t
, byte_order
, f_nMonitors
);
12317 static void randrSetMonitor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12319 proto_tree_add_item(t
, hf_x11_randr_SetMonitor_window
, tvb
, *offsetp
, 4, byte_order
);
12321 struct_randr_MonitorInfo(tvb
, offsetp
, t
, byte_order
, 1);
12324 static void randrDeleteMonitor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12326 proto_tree_add_item(t
, hf_x11_randr_DeleteMonitor_window
, tvb
, *offsetp
, 4, byte_order
);
12328 proto_tree_add_item(t
, hf_x11_randr_DeleteMonitor_name
, tvb
, *offsetp
, 4, byte_order
);
12332 static void randrCreateLease(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12336 proto_tree_add_item(t
, hf_x11_randr_CreateLease_window
, tvb
, *offsetp
, 4, byte_order
);
12338 proto_tree_add_item(t
, hf_x11_randr_CreateLease_lid
, tvb
, *offsetp
, 4, byte_order
);
12340 f_num_crtcs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12341 proto_tree_add_item(t
, hf_x11_randr_CreateLease_num_crtcs
, tvb
, *offsetp
, 2, byte_order
);
12343 f_num_outputs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12344 proto_tree_add_item(t
, hf_x11_randr_CreateLease_num_outputs
, tvb
, *offsetp
, 2, byte_order
);
12346 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_CreateLease_crtcs
, hf_x11_randr_CreateLease_crtcs_item
, f_num_crtcs
, byte_order
);
12347 length
-= f_num_crtcs
* 4;
12348 listOfCard32(tvb
, offsetp
, t
, hf_x11_randr_CreateLease_outputs
, hf_x11_randr_CreateLease_outputs_item
, f_num_outputs
, byte_order
);
12349 length
-= f_num_outputs
* 4;
12351 static void randrCreateLease_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12353 int sequence_number
;
12355 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateLease");
12358 proto_tree_add_item(t
, hf_x11_randr_CreateLease_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
12360 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12361 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12362 "%d (randr-CreateLease)", sequence_number
);
12364 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12366 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
12370 static void randrFreeLease(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12372 proto_tree_add_item(t
, hf_x11_randr_FreeLease_lid
, tvb
, *offsetp
, 4, byte_order
);
12374 proto_tree_add_item(t
, hf_x11_randr_FreeLease_terminate
, tvb
, *offsetp
, 1, ENC_NA
);
12378 static void struct_randr_NotifyData(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order
, int count
)
12381 int base
= *offsetp
;
12382 for (i
= 0; i
< count
; i
++) {
12385 item
= proto_tree_add_item(root
, hf_x11_union_randr_NotifyData
, tvb
, base
, 28, ENC_NA
);
12386 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12389 struct_randr_CrtcChange(tvb
, offsetp
, t
, byte_order
, 1);
12391 struct_randr_OutputChange(tvb
, offsetp
, t
, byte_order
, 1);
12393 struct_randr_OutputProperty(tvb
, offsetp
, t
, byte_order
, 1);
12395 struct_randr_ProviderChange(tvb
, offsetp
, t
, byte_order
, 1);
12397 struct_randr_ProviderProperty(tvb
, offsetp
, t
, byte_order
, 1);
12399 struct_randr_ResourceChange(tvb
, offsetp
, t
, byte_order
, 1);
12401 struct_randr_LeaseNotify(tvb
, offsetp
, t
, byte_order
, 1);
12407 static void randrNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12409 field8(tvb
, offsetp
, t
, hf_x11_randr_Notify_subCode
, byte_order
);
12410 CARD16(event_sequencenumber
);
12411 struct_randr_NotifyData(tvb
, offsetp
, t
, byte_order
, 1);
12414 static const value_string randr_extension_minor
[] = {
12415 { 0, "QueryVersion" },
12416 { 2, "SetScreenConfig" },
12417 { 4, "SelectInput" },
12418 { 5, "GetScreenInfo" },
12419 { 6, "GetScreenSizeRange" },
12420 { 7, "SetScreenSize" },
12421 { 8, "GetScreenResources" },
12422 { 9, "GetOutputInfo" },
12423 { 10, "ListOutputProperties" },
12424 { 11, "QueryOutputProperty" },
12425 { 12, "ConfigureOutputProperty" },
12426 { 13, "ChangeOutputProperty" },
12427 { 14, "DeleteOutputProperty" },
12428 { 15, "GetOutputProperty" },
12429 { 16, "CreateMode" },
12430 { 17, "DestroyMode" },
12431 { 18, "AddOutputMode" },
12432 { 19, "DeleteOutputMode" },
12433 { 20, "GetCrtcInfo" },
12434 { 21, "SetCrtcConfig" },
12435 { 22, "GetCrtcGammaSize" },
12436 { 23, "GetCrtcGamma" },
12437 { 24, "SetCrtcGamma" },
12438 { 25, "GetScreenResourcesCurrent" },
12439 { 26, "SetCrtcTransform" },
12440 { 27, "GetCrtcTransform" },
12441 { 28, "GetPanning" },
12442 { 29, "SetPanning" },
12443 { 30, "SetOutputPrimary" },
12444 { 31, "GetOutputPrimary" },
12445 { 32, "GetProviders" },
12446 { 33, "GetProviderInfo" },
12447 { 34, "SetProviderOffloadSink" },
12448 { 35, "SetProviderOutputSource" },
12449 { 36, "ListProviderProperties" },
12450 { 37, "QueryProviderProperty" },
12451 { 38, "ConfigureProviderProperty" },
12452 { 39, "ChangeProviderProperty" },
12453 { 40, "DeleteProviderProperty" },
12454 { 41, "GetProviderProperty" },
12455 { 42, "GetMonitors" },
12456 { 43, "SetMonitor" },
12457 { 44, "DeleteMonitor" },
12458 { 45, "CreateLease" },
12459 { 46, "FreeLease" },
12462 static const x11_event_info randr_events
[] = {
12463 { "randr-Notify", randrNotify
},
12466 static const x11_reply_info randr_replies
[] = {
12467 { 0, randrQueryVersion_Reply
},
12468 { 2, randrSetScreenConfig_Reply
},
12469 { 5, randrGetScreenInfo_Reply
},
12470 { 6, randrGetScreenSizeRange_Reply
},
12471 { 8, randrGetScreenResources_Reply
},
12472 { 9, randrGetOutputInfo_Reply
},
12473 { 10, randrListOutputProperties_Reply
},
12474 { 11, randrQueryOutputProperty_Reply
},
12475 { 15, randrGetOutputProperty_Reply
},
12476 { 16, randrCreateMode_Reply
},
12477 { 20, randrGetCrtcInfo_Reply
},
12478 { 21, randrSetCrtcConfig_Reply
},
12479 { 22, randrGetCrtcGammaSize_Reply
},
12480 { 23, randrGetCrtcGamma_Reply
},
12481 { 25, randrGetScreenResourcesCurrent_Reply
},
12482 { 27, randrGetCrtcTransform_Reply
},
12483 { 28, randrGetPanning_Reply
},
12484 { 29, randrSetPanning_Reply
},
12485 { 31, randrGetOutputPrimary_Reply
},
12486 { 32, randrGetProviders_Reply
},
12487 { 33, randrGetProviderInfo_Reply
},
12488 { 36, randrListProviderProperties_Reply
},
12489 { 37, randrQueryProviderProperty_Reply
},
12490 { 41, randrGetProviderProperty_Reply
},
12491 { 42, randrGetMonitors_Reply
},
12492 { 45, randrCreateLease_Reply
},
12496 static void dispatch_randr(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12499 minor
= CARD8(randr_extension_minor
);
12500 length
= REQUEST_LENGTH();
12502 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
12503 val_to_str(minor
, randr_extension_minor
,
12504 "<Unknown opcode %d>"));
12507 randrQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12510 randrSetScreenConfig(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12513 randrSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12516 randrGetScreenInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12519 randrGetScreenSizeRange(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12522 randrSetScreenSize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12525 randrGetScreenResources(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12528 randrGetOutputInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12531 randrListOutputProperties(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12534 randrQueryOutputProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12537 randrConfigureOutputProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12540 randrChangeOutputProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12543 randrDeleteOutputProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12546 randrGetOutputProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12549 randrCreateMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12552 randrDestroyMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12555 randrAddOutputMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12558 randrDeleteOutputMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12561 randrGetCrtcInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12564 randrSetCrtcConfig(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12567 randrGetCrtcGammaSize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12570 randrGetCrtcGamma(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12573 randrSetCrtcGamma(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12576 randrGetScreenResourcesCurrent(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12579 randrSetCrtcTransform(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12582 randrGetCrtcTransform(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12585 randrGetPanning(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12588 randrSetPanning(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12591 randrSetOutputPrimary(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12594 randrGetOutputPrimary(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12597 randrGetProviders(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12600 randrGetProviderInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12603 randrSetProviderOffloadSink(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12606 randrSetProviderOutputSource(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12609 randrListProviderProperties(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12612 randrQueryProviderProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12615 randrConfigureProviderProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12618 randrChangeProviderProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12621 randrDeleteProviderProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12624 randrGetProviderProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12627 randrGetMonitors(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12630 randrSetMonitor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12633 randrDeleteMonitor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12636 randrCreateLease(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12639 randrFreeLease(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12641 /* No need for a default case here, since Unknown is printed above,
12642 and UNDECODED() is taken care of by dissect_x11_request */
12646 static void register_randr(void)
12648 set_handler("RANDR", dispatch_randr
, randr_errors
, randr_events
, NULL
, randr_replies
);
12651 static void struct_record_Range8(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
12654 for (i
= 0; i
< count
; i
++) {
12658 item
= proto_tree_add_item(root
, hf_x11_struct_record_Range8
, tvb
, *offsetp
, 2, ENC_NA
);
12659 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12660 proto_tree_add_item(t
, hf_x11_struct_record_Range8_first
, tvb
, *offsetp
, 1, byte_order
);
12662 proto_tree_add_item(t
, hf_x11_struct_record_Range8_last
, tvb
, *offsetp
, 1, byte_order
);
12667 static void struct_record_Range16(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
12670 for (i
= 0; i
< count
; i
++) {
12674 item
= proto_tree_add_item(root
, hf_x11_struct_record_Range16
, tvb
, *offsetp
, 4, ENC_NA
);
12675 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12676 proto_tree_add_item(t
, hf_x11_struct_record_Range16_first
, tvb
, *offsetp
, 2, byte_order
);
12678 proto_tree_add_item(t
, hf_x11_struct_record_Range16_last
, tvb
, *offsetp
, 2, byte_order
);
12683 static void struct_record_ExtRange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
12686 for (i
= 0; i
< count
; i
++) {
12690 item
= proto_tree_add_item(root
, hf_x11_struct_record_ExtRange
, tvb
, *offsetp
, 6, ENC_NA
);
12691 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12692 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12693 struct_record_Range16(tvb
, offsetp
, t
, byte_order
, 1);
12697 static void struct_record_Range(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
12700 for (i
= 0; i
< count
; i
++) {
12704 item
= proto_tree_add_item(root
, hf_x11_struct_record_Range
, tvb
, *offsetp
, 24, ENC_NA
);
12705 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12706 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12707 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12708 struct_record_ExtRange(tvb
, offsetp
, t
, byte_order
, 1);
12709 struct_record_ExtRange(tvb
, offsetp
, t
, byte_order
, 1);
12710 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12711 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12712 struct_record_Range8(tvb
, offsetp
, t
, byte_order
, 1);
12713 proto_tree_add_item(t
, hf_x11_struct_record_Range_client_started
, tvb
, *offsetp
, 1, byte_order
);
12715 proto_tree_add_item(t
, hf_x11_struct_record_Range_client_died
, tvb
, *offsetp
, 1, byte_order
);
12720 static int struct_size_record_ClientInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
12724 f_num_ranges
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 4, byte_order
);
12725 size
+= f_num_ranges
* 24;
12729 static void struct_record_ClientInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
12732 for (i
= 0; i
< count
; i
++) {
12737 item
= proto_tree_add_item(root
, hf_x11_struct_record_ClientInfo
, tvb
, *offsetp
, struct_size_record_ClientInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
12738 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
12739 proto_tree_add_item(t
, hf_x11_struct_record_ClientInfo_client_resource
, tvb
, *offsetp
, 4, byte_order
);
12741 f_num_ranges
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12742 proto_tree_add_item(t
, hf_x11_struct_record_ClientInfo_num_ranges
, tvb
, *offsetp
, 4, byte_order
);
12744 struct_record_Range(tvb
, offsetp
, t
, byte_order
, f_num_ranges
);
12748 static void recordQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12750 proto_tree_add_item(t
, hf_x11_record_QueryVersion_major_version
, tvb
, *offsetp
, 2, byte_order
);
12752 proto_tree_add_item(t
, hf_x11_record_QueryVersion_minor_version
, tvb
, *offsetp
, 2, byte_order
);
12755 static void recordQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12757 int sequence_number
;
12759 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
12762 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12764 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12765 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12766 "%d (record-QueryVersion)", sequence_number
);
12768 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12770 proto_tree_add_item(t
, hf_x11_record_QueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
12772 proto_tree_add_item(t
, hf_x11_record_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
12776 static void recordCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12778 int f_num_client_specs
;
12780 proto_tree_add_item(t
, hf_x11_record_CreateContext_context
, tvb
, *offsetp
, 4, byte_order
);
12782 proto_tree_add_item(t
, hf_x11_record_CreateContext_element_header
, tvb
, *offsetp
, 1, byte_order
);
12784 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
12786 f_num_client_specs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12787 proto_tree_add_item(t
, hf_x11_record_CreateContext_num_client_specs
, tvb
, *offsetp
, 4, byte_order
);
12789 f_num_ranges
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12790 proto_tree_add_item(t
, hf_x11_record_CreateContext_num_ranges
, tvb
, *offsetp
, 4, byte_order
);
12792 listOfCard32(tvb
, offsetp
, t
, hf_x11_record_CreateContext_client_specs
, hf_x11_record_CreateContext_client_specs_item
, f_num_client_specs
, byte_order
);
12793 length
-= f_num_client_specs
* 4;
12794 struct_record_Range(tvb
, offsetp
, t
, byte_order
, f_num_ranges
);
12795 length
-= f_num_ranges
* 24;
12798 static void recordRegisterClients(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12800 int f_num_client_specs
;
12802 proto_tree_add_item(t
, hf_x11_record_RegisterClients_context
, tvb
, *offsetp
, 4, byte_order
);
12804 proto_tree_add_item(t
, hf_x11_record_RegisterClients_element_header
, tvb
, *offsetp
, 1, byte_order
);
12806 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
12808 f_num_client_specs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12809 proto_tree_add_item(t
, hf_x11_record_RegisterClients_num_client_specs
, tvb
, *offsetp
, 4, byte_order
);
12811 f_num_ranges
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12812 proto_tree_add_item(t
, hf_x11_record_RegisterClients_num_ranges
, tvb
, *offsetp
, 4, byte_order
);
12814 listOfCard32(tvb
, offsetp
, t
, hf_x11_record_RegisterClients_client_specs
, hf_x11_record_RegisterClients_client_specs_item
, f_num_client_specs
, byte_order
);
12815 length
-= f_num_client_specs
* 4;
12816 struct_record_Range(tvb
, offsetp
, t
, byte_order
, f_num_ranges
);
12817 length
-= f_num_ranges
* 24;
12820 static void recordUnregisterClients(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12822 int f_num_client_specs
;
12823 proto_tree_add_item(t
, hf_x11_record_UnregisterClients_context
, tvb
, *offsetp
, 4, byte_order
);
12825 f_num_client_specs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12826 proto_tree_add_item(t
, hf_x11_record_UnregisterClients_num_client_specs
, tvb
, *offsetp
, 4, byte_order
);
12828 listOfCard32(tvb
, offsetp
, t
, hf_x11_record_UnregisterClients_client_specs
, hf_x11_record_UnregisterClients_client_specs_item
, f_num_client_specs
, byte_order
);
12829 length
-= f_num_client_specs
* 4;
12832 static void recordGetContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12834 proto_tree_add_item(t
, hf_x11_record_GetContext_context
, tvb
, *offsetp
, 4, byte_order
);
12837 static void recordGetContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12839 int sequence_number
;
12840 int f_num_intercepted_clients
;
12842 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetContext");
12845 proto_tree_add_item(t
, hf_x11_record_GetContext_reply_enabled
, tvb
, *offsetp
, 1, byte_order
);
12847 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12848 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12849 "%d (record-GetContext)", sequence_number
);
12851 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12853 proto_tree_add_item(t
, hf_x11_record_GetContext_reply_element_header
, tvb
, *offsetp
, 1, byte_order
);
12855 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
12857 f_num_intercepted_clients
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12858 proto_tree_add_item(t
, hf_x11_record_GetContext_reply_num_intercepted_clients
, tvb
, *offsetp
, 4, byte_order
);
12860 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
12862 struct_record_ClientInfo(tvb
, offsetp
, t
, byte_order
, f_num_intercepted_clients
);
12865 static void recordEnableContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12867 proto_tree_add_item(t
, hf_x11_record_EnableContext_context
, tvb
, *offsetp
, 4, byte_order
);
12870 static void recordEnableContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12872 int sequence_number
;
12875 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-EnableContext");
12878 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_category
, tvb
, *offsetp
, 1, byte_order
);
12880 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12881 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12882 "%d (record-EnableContext)", sequence_number
);
12884 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
12885 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
12887 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_element_header
, tvb
, *offsetp
, 1, byte_order
);
12889 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_client_swapped
, tvb
, *offsetp
, 1, byte_order
);
12891 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
12893 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_xid_base
, tvb
, *offsetp
, 4, byte_order
);
12895 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_server_time
, tvb
, *offsetp
, 4, byte_order
);
12897 proto_tree_add_item(t
, hf_x11_record_EnableContext_reply_rec_sequence_num
, tvb
, *offsetp
, 4, byte_order
);
12899 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
12901 listOfByte(tvb
, offsetp
, t
, hf_x11_record_EnableContext_reply_data
, (f_length
* 4), byte_order
);
12904 static void recordDisableContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12906 proto_tree_add_item(t
, hf_x11_record_DisableContext_context
, tvb
, *offsetp
, 4, byte_order
);
12910 static void recordFreeContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12912 proto_tree_add_item(t
, hf_x11_record_FreeContext_context
, tvb
, *offsetp
, 4, byte_order
);
12915 static const value_string record_extension_minor
[] = {
12916 { 0, "QueryVersion" },
12917 { 1, "CreateContext" },
12918 { 2, "RegisterClients" },
12919 { 3, "UnregisterClients" },
12920 { 4, "GetContext" },
12921 { 5, "EnableContext" },
12922 { 6, "DisableContext" },
12923 { 7, "FreeContext" },
12926 static const x11_event_info record_events
[] = {
12929 static const x11_reply_info record_replies
[] = {
12930 { 0, recordQueryVersion_Reply
},
12931 { 4, recordGetContext_Reply
},
12932 { 5, recordEnableContext_Reply
},
12936 static void dispatch_record(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12939 minor
= CARD8(record_extension_minor
);
12940 length
= REQUEST_LENGTH();
12942 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
12943 val_to_str(minor
, record_extension_minor
,
12944 "<Unknown opcode %d>"));
12947 recordQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12950 recordCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12953 recordRegisterClients(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12956 recordUnregisterClients(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12959 recordGetContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12962 recordEnableContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12965 recordDisableContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12968 recordFreeContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
12970 /* No need for a default case here, since Unknown is printed above,
12971 and UNDECODED() is taken care of by dissect_x11_request */
12975 static void register_record(void)
12977 set_handler("RECORD", dispatch_record
, record_errors
, record_events
, NULL
, record_replies
);
12980 static void renderQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
12982 proto_tree_add_item(t
, hf_x11_render_QueryVersion_client_major_version
, tvb
, *offsetp
, 4, byte_order
);
12984 proto_tree_add_item(t
, hf_x11_render_QueryVersion_client_minor_version
, tvb
, *offsetp
, 4, byte_order
);
12987 static void renderQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
12989 int sequence_number
;
12991 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
12994 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
12996 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
12997 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
12998 "%d (render-QueryVersion)", sequence_number
);
13000 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13002 proto_tree_add_item(t
, hf_x11_render_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
13004 proto_tree_add_item(t
, hf_x11_render_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
13006 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
13010 static void renderQueryPictFormats(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
13013 static void renderQueryPictFormats_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13015 int sequence_number
;
13018 int f_num_subpixel
;
13020 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryPictFormats");
13023 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13025 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13026 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13027 "%d (render-QueryPictFormats)", sequence_number
);
13029 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13031 f_num_formats
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13032 proto_tree_add_item(t
, hf_x11_render_QueryPictFormats_reply_num_formats
, tvb
, *offsetp
, 4, byte_order
);
13034 f_num_screens
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13035 proto_tree_add_item(t
, hf_x11_render_QueryPictFormats_reply_num_screens
, tvb
, *offsetp
, 4, byte_order
);
13037 proto_tree_add_item(t
, hf_x11_render_QueryPictFormats_reply_num_depths
, tvb
, *offsetp
, 4, byte_order
);
13039 proto_tree_add_item(t
, hf_x11_render_QueryPictFormats_reply_num_visuals
, tvb
, *offsetp
, 4, byte_order
);
13041 f_num_subpixel
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13042 proto_tree_add_item(t
, hf_x11_render_QueryPictFormats_reply_num_subpixel
, tvb
, *offsetp
, 4, byte_order
);
13044 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
13046 struct_render_PICTFORMINFO(tvb
, offsetp
, t
, byte_order
, f_num_formats
);
13047 struct_render_PICTSCREEN(tvb
, offsetp
, t
, byte_order
, f_num_screens
);
13048 listOfCard32(tvb
, offsetp
, t
, hf_x11_render_QueryPictFormats_reply_subpixels
, hf_x11_render_QueryPictFormats_reply_subpixels_item
, f_num_subpixel
, byte_order
);
13051 static void renderQueryPictIndexValues(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13053 proto_tree_add_item(t
, hf_x11_render_QueryPictIndexValues_format
, tvb
, *offsetp
, 4, byte_order
);
13056 static void renderQueryPictIndexValues_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13058 int sequence_number
;
13061 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryPictIndexValues");
13064 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13066 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13067 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13068 "%d (render-QueryPictIndexValues)", sequence_number
);
13070 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13072 f_num_values
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13073 proto_tree_add_item(t
, hf_x11_render_QueryPictIndexValues_reply_num_values
, tvb
, *offsetp
, 4, byte_order
);
13075 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
13077 struct_render_INDEXVALUE(tvb
, offsetp
, t
, byte_order
, f_num_values
);
13080 static void renderCreatePicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13083 proto_tree_add_item(t
, hf_x11_render_CreatePicture_pid
, tvb
, *offsetp
, 4, byte_order
);
13085 proto_tree_add_item(t
, hf_x11_render_CreatePicture_drawable
, tvb
, *offsetp
, 4, byte_order
);
13087 proto_tree_add_item(t
, hf_x11_render_CreatePicture_format
, tvb
, *offsetp
, 4, byte_order
);
13089 f_value_mask
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13091 static int* const value_mask_bits
[] = {
13092 &hf_x11_render_CreatePicture_value_mask_mask_Repeat
,
13093 &hf_x11_render_CreatePicture_value_mask_mask_AlphaMap
,
13094 &hf_x11_render_CreatePicture_value_mask_mask_AlphaXOrigin
,
13095 &hf_x11_render_CreatePicture_value_mask_mask_AlphaYOrigin
,
13096 &hf_x11_render_CreatePicture_value_mask_mask_ClipXOrigin
,
13097 &hf_x11_render_CreatePicture_value_mask_mask_ClipYOrigin
,
13098 &hf_x11_render_CreatePicture_value_mask_mask_ClipMask
,
13099 &hf_x11_render_CreatePicture_value_mask_mask_GraphicsExposure
,
13100 &hf_x11_render_CreatePicture_value_mask_mask_SubwindowMode
,
13101 &hf_x11_render_CreatePicture_value_mask_mask_PolyEdge
,
13102 &hf_x11_render_CreatePicture_value_mask_mask_PolyMode
,
13103 &hf_x11_render_CreatePicture_value_mask_mask_Dither
,
13104 &hf_x11_render_CreatePicture_value_mask_mask_ComponentAlpha
,
13107 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_render_CreatePicture_value_mask
, ett_x11_rectangle
, value_mask_bits
, byte_order
);
13110 if (f_value_mask
& (1U << 0)) {
13111 field32(tvb
, offsetp
, t
, hf_x11_render_CreatePicture_Repeat_repeat
, byte_order
);
13113 if (f_value_mask
& (1U << 1)) {
13114 proto_tree_add_item(t
, hf_x11_render_CreatePicture_AlphaMap_alphamap
, tvb
, *offsetp
, 4, byte_order
);
13117 if (f_value_mask
& (1U << 2)) {
13118 proto_tree_add_item(t
, hf_x11_render_CreatePicture_AlphaXOrigin_alphaxorigin
, tvb
, *offsetp
, 4, byte_order
);
13121 if (f_value_mask
& (1U << 3)) {
13122 proto_tree_add_item(t
, hf_x11_render_CreatePicture_AlphaYOrigin_alphayorigin
, tvb
, *offsetp
, 4, byte_order
);
13125 if (f_value_mask
& (1U << 4)) {
13126 proto_tree_add_item(t
, hf_x11_render_CreatePicture_ClipXOrigin_clipxorigin
, tvb
, *offsetp
, 4, byte_order
);
13129 if (f_value_mask
& (1U << 5)) {
13130 proto_tree_add_item(t
, hf_x11_render_CreatePicture_ClipYOrigin_clipyorigin
, tvb
, *offsetp
, 4, byte_order
);
13133 if (f_value_mask
& (1U << 6)) {
13134 proto_tree_add_item(t
, hf_x11_render_CreatePicture_ClipMask_clipmask
, tvb
, *offsetp
, 4, byte_order
);
13137 if (f_value_mask
& (1U << 7)) {
13138 proto_tree_add_item(t
, hf_x11_render_CreatePicture_GraphicsExposure_graphicsexposure
, tvb
, *offsetp
, 4, byte_order
);
13141 if (f_value_mask
& (1U << 8)) {
13142 field32(tvb
, offsetp
, t
, hf_x11_render_CreatePicture_SubwindowMode_subwindowmode
, byte_order
);
13144 if (f_value_mask
& (1U << 9)) {
13145 field32(tvb
, offsetp
, t
, hf_x11_render_CreatePicture_PolyEdge_polyedge
, byte_order
);
13147 if (f_value_mask
& (1U << 10)) {
13148 field32(tvb
, offsetp
, t
, hf_x11_render_CreatePicture_PolyMode_polymode
, byte_order
);
13150 if (f_value_mask
& (1U << 11)) {
13151 proto_tree_add_item(t
, hf_x11_render_CreatePicture_Dither_dither
, tvb
, *offsetp
, 4, byte_order
);
13154 if (f_value_mask
& (1U << 12)) {
13155 proto_tree_add_item(t
, hf_x11_render_CreatePicture_ComponentAlpha_componentalpha
, tvb
, *offsetp
, 4, byte_order
);
13160 static void renderChangePicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13163 proto_tree_add_item(t
, hf_x11_render_ChangePicture_picture
, tvb
, *offsetp
, 4, byte_order
);
13165 f_value_mask
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13167 static int* const value_mask_bits
[] = {
13168 &hf_x11_render_ChangePicture_value_mask_mask_Repeat
,
13169 &hf_x11_render_ChangePicture_value_mask_mask_AlphaMap
,
13170 &hf_x11_render_ChangePicture_value_mask_mask_AlphaXOrigin
,
13171 &hf_x11_render_ChangePicture_value_mask_mask_AlphaYOrigin
,
13172 &hf_x11_render_ChangePicture_value_mask_mask_ClipXOrigin
,
13173 &hf_x11_render_ChangePicture_value_mask_mask_ClipYOrigin
,
13174 &hf_x11_render_ChangePicture_value_mask_mask_ClipMask
,
13175 &hf_x11_render_ChangePicture_value_mask_mask_GraphicsExposure
,
13176 &hf_x11_render_ChangePicture_value_mask_mask_SubwindowMode
,
13177 &hf_x11_render_ChangePicture_value_mask_mask_PolyEdge
,
13178 &hf_x11_render_ChangePicture_value_mask_mask_PolyMode
,
13179 &hf_x11_render_ChangePicture_value_mask_mask_Dither
,
13180 &hf_x11_render_ChangePicture_value_mask_mask_ComponentAlpha
,
13183 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_render_ChangePicture_value_mask
, ett_x11_rectangle
, value_mask_bits
, byte_order
);
13186 if (f_value_mask
& (1U << 0)) {
13187 field32(tvb
, offsetp
, t
, hf_x11_render_ChangePicture_Repeat_repeat
, byte_order
);
13189 if (f_value_mask
& (1U << 1)) {
13190 proto_tree_add_item(t
, hf_x11_render_ChangePicture_AlphaMap_alphamap
, tvb
, *offsetp
, 4, byte_order
);
13193 if (f_value_mask
& (1U << 2)) {
13194 proto_tree_add_item(t
, hf_x11_render_ChangePicture_AlphaXOrigin_alphaxorigin
, tvb
, *offsetp
, 4, byte_order
);
13197 if (f_value_mask
& (1U << 3)) {
13198 proto_tree_add_item(t
, hf_x11_render_ChangePicture_AlphaYOrigin_alphayorigin
, tvb
, *offsetp
, 4, byte_order
);
13201 if (f_value_mask
& (1U << 4)) {
13202 proto_tree_add_item(t
, hf_x11_render_ChangePicture_ClipXOrigin_clipxorigin
, tvb
, *offsetp
, 4, byte_order
);
13205 if (f_value_mask
& (1U << 5)) {
13206 proto_tree_add_item(t
, hf_x11_render_ChangePicture_ClipYOrigin_clipyorigin
, tvb
, *offsetp
, 4, byte_order
);
13209 if (f_value_mask
& (1U << 6)) {
13210 proto_tree_add_item(t
, hf_x11_render_ChangePicture_ClipMask_clipmask
, tvb
, *offsetp
, 4, byte_order
);
13213 if (f_value_mask
& (1U << 7)) {
13214 proto_tree_add_item(t
, hf_x11_render_ChangePicture_GraphicsExposure_graphicsexposure
, tvb
, *offsetp
, 4, byte_order
);
13217 if (f_value_mask
& (1U << 8)) {
13218 field32(tvb
, offsetp
, t
, hf_x11_render_ChangePicture_SubwindowMode_subwindowmode
, byte_order
);
13220 if (f_value_mask
& (1U << 9)) {
13221 field32(tvb
, offsetp
, t
, hf_x11_render_ChangePicture_PolyEdge_polyedge
, byte_order
);
13223 if (f_value_mask
& (1U << 10)) {
13224 field32(tvb
, offsetp
, t
, hf_x11_render_ChangePicture_PolyMode_polymode
, byte_order
);
13226 if (f_value_mask
& (1U << 11)) {
13227 proto_tree_add_item(t
, hf_x11_render_ChangePicture_Dither_dither
, tvb
, *offsetp
, 4, byte_order
);
13230 if (f_value_mask
& (1U << 12)) {
13231 proto_tree_add_item(t
, hf_x11_render_ChangePicture_ComponentAlpha_componentalpha
, tvb
, *offsetp
, 4, byte_order
);
13236 static void renderSetPictureClipRectangles(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13238 proto_tree_add_item(t
, hf_x11_render_SetPictureClipRectangles_picture
, tvb
, *offsetp
, 4, byte_order
);
13240 proto_tree_add_item(t
, hf_x11_render_SetPictureClipRectangles_clip_x_origin
, tvb
, *offsetp
, 2, byte_order
);
13242 proto_tree_add_item(t
, hf_x11_render_SetPictureClipRectangles_clip_y_origin
, tvb
, *offsetp
, 2, byte_order
);
13244 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 12) / 8);
13247 static void renderFreePicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13249 proto_tree_add_item(t
, hf_x11_render_FreePicture_picture
, tvb
, *offsetp
, 4, byte_order
);
13253 static void renderComposite(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13255 field8(tvb
, offsetp
, t
, hf_x11_render_Composite_op
, byte_order
);
13256 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13258 proto_tree_add_item(t
, hf_x11_render_Composite_src
, tvb
, *offsetp
, 4, byte_order
);
13260 field32(tvb
, offsetp
, t
, hf_x11_render_Composite_mask
, byte_order
);
13261 proto_tree_add_item(t
, hf_x11_render_Composite_dst
, tvb
, *offsetp
, 4, byte_order
);
13263 proto_tree_add_item(t
, hf_x11_render_Composite_src_x
, tvb
, *offsetp
, 2, byte_order
);
13265 proto_tree_add_item(t
, hf_x11_render_Composite_src_y
, tvb
, *offsetp
, 2, byte_order
);
13267 proto_tree_add_item(t
, hf_x11_render_Composite_mask_x
, tvb
, *offsetp
, 2, byte_order
);
13269 proto_tree_add_item(t
, hf_x11_render_Composite_mask_y
, tvb
, *offsetp
, 2, byte_order
);
13271 proto_tree_add_item(t
, hf_x11_render_Composite_dst_x
, tvb
, *offsetp
, 2, byte_order
);
13273 proto_tree_add_item(t
, hf_x11_render_Composite_dst_y
, tvb
, *offsetp
, 2, byte_order
);
13275 proto_tree_add_item(t
, hf_x11_render_Composite_width
, tvb
, *offsetp
, 2, byte_order
);
13277 proto_tree_add_item(t
, hf_x11_render_Composite_height
, tvb
, *offsetp
, 2, byte_order
);
13281 static void renderTrapezoids(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13283 field8(tvb
, offsetp
, t
, hf_x11_render_Trapezoids_op
, byte_order
);
13284 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13286 proto_tree_add_item(t
, hf_x11_render_Trapezoids_src
, tvb
, *offsetp
, 4, byte_order
);
13288 proto_tree_add_item(t
, hf_x11_render_Trapezoids_dst
, tvb
, *offsetp
, 4, byte_order
);
13290 proto_tree_add_item(t
, hf_x11_render_Trapezoids_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13292 proto_tree_add_item(t
, hf_x11_render_Trapezoids_src_x
, tvb
, *offsetp
, 2, byte_order
);
13294 proto_tree_add_item(t
, hf_x11_render_Trapezoids_src_y
, tvb
, *offsetp
, 2, byte_order
);
13296 struct_render_TRAPEZOID(tvb
, offsetp
, t
, byte_order
, (length
- 24) / 40);
13299 static void renderTriangles(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13301 field8(tvb
, offsetp
, t
, hf_x11_render_Triangles_op
, byte_order
);
13302 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13304 proto_tree_add_item(t
, hf_x11_render_Triangles_src
, tvb
, *offsetp
, 4, byte_order
);
13306 proto_tree_add_item(t
, hf_x11_render_Triangles_dst
, tvb
, *offsetp
, 4, byte_order
);
13308 proto_tree_add_item(t
, hf_x11_render_Triangles_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13310 proto_tree_add_item(t
, hf_x11_render_Triangles_src_x
, tvb
, *offsetp
, 2, byte_order
);
13312 proto_tree_add_item(t
, hf_x11_render_Triangles_src_y
, tvb
, *offsetp
, 2, byte_order
);
13314 struct_render_TRIANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 24) / 24);
13317 static void renderTriStrip(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13319 field8(tvb
, offsetp
, t
, hf_x11_render_TriStrip_op
, byte_order
);
13320 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13322 proto_tree_add_item(t
, hf_x11_render_TriStrip_src
, tvb
, *offsetp
, 4, byte_order
);
13324 proto_tree_add_item(t
, hf_x11_render_TriStrip_dst
, tvb
, *offsetp
, 4, byte_order
);
13326 proto_tree_add_item(t
, hf_x11_render_TriStrip_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13328 proto_tree_add_item(t
, hf_x11_render_TriStrip_src_x
, tvb
, *offsetp
, 2, byte_order
);
13330 proto_tree_add_item(t
, hf_x11_render_TriStrip_src_y
, tvb
, *offsetp
, 2, byte_order
);
13332 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, (length
- 24) / 8);
13335 static void renderTriFan(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13337 field8(tvb
, offsetp
, t
, hf_x11_render_TriFan_op
, byte_order
);
13338 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13340 proto_tree_add_item(t
, hf_x11_render_TriFan_src
, tvb
, *offsetp
, 4, byte_order
);
13342 proto_tree_add_item(t
, hf_x11_render_TriFan_dst
, tvb
, *offsetp
, 4, byte_order
);
13344 proto_tree_add_item(t
, hf_x11_render_TriFan_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13346 proto_tree_add_item(t
, hf_x11_render_TriFan_src_x
, tvb
, *offsetp
, 2, byte_order
);
13348 proto_tree_add_item(t
, hf_x11_render_TriFan_src_y
, tvb
, *offsetp
, 2, byte_order
);
13350 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, (length
- 24) / 8);
13353 static void renderCreateGlyphSet(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13355 proto_tree_add_item(t
, hf_x11_render_CreateGlyphSet_gsid
, tvb
, *offsetp
, 4, byte_order
);
13357 proto_tree_add_item(t
, hf_x11_render_CreateGlyphSet_format
, tvb
, *offsetp
, 4, byte_order
);
13361 static void renderReferenceGlyphSet(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13363 proto_tree_add_item(t
, hf_x11_render_ReferenceGlyphSet_gsid
, tvb
, *offsetp
, 4, byte_order
);
13365 proto_tree_add_item(t
, hf_x11_render_ReferenceGlyphSet_existing
, tvb
, *offsetp
, 4, byte_order
);
13369 static void renderFreeGlyphSet(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13371 proto_tree_add_item(t
, hf_x11_render_FreeGlyphSet_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13375 static void renderAddGlyphs(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13378 proto_tree_add_item(t
, hf_x11_render_AddGlyphs_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13380 f_glyphs_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13381 proto_tree_add_item(t
, hf_x11_render_AddGlyphs_glyphs_len
, tvb
, *offsetp
, 4, byte_order
);
13383 listOfCard32(tvb
, offsetp
, t
, hf_x11_render_AddGlyphs_glyphids
, hf_x11_render_AddGlyphs_glyphids_item
, f_glyphs_len
, byte_order
);
13384 length
-= f_glyphs_len
* 4;
13385 struct_render_GLYPHINFO(tvb
, offsetp
, t
, byte_order
, f_glyphs_len
);
13386 length
-= f_glyphs_len
* 12;
13387 listOfByte(tvb
, offsetp
, t
, hf_x11_render_AddGlyphs_data
, (length
- 12) / 1, byte_order
);
13390 static void renderFreeGlyphs(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13392 proto_tree_add_item(t
, hf_x11_render_FreeGlyphs_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13394 listOfCard32(tvb
, offsetp
, t
, hf_x11_render_FreeGlyphs_glyphs
, hf_x11_render_FreeGlyphs_glyphs_item
, (length
- 8) / 4, byte_order
);
13397 static void renderCompositeGlyphs8(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13399 field8(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs8_op
, byte_order
);
13400 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13402 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_src
, tvb
, *offsetp
, 4, byte_order
);
13404 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_dst
, tvb
, *offsetp
, 4, byte_order
);
13406 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13408 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13410 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_src_x
, tvb
, *offsetp
, 2, byte_order
);
13412 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs8_src_y
, tvb
, *offsetp
, 2, byte_order
);
13414 listOfByte(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs8_glyphcmds
, (length
- 28) / 1, byte_order
);
13417 static void renderCompositeGlyphs16(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13419 field8(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs16_op
, byte_order
);
13420 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13422 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_src
, tvb
, *offsetp
, 4, byte_order
);
13424 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_dst
, tvb
, *offsetp
, 4, byte_order
);
13426 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13428 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13430 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_src_x
, tvb
, *offsetp
, 2, byte_order
);
13432 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs16_src_y
, tvb
, *offsetp
, 2, byte_order
);
13434 listOfByte(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs16_glyphcmds
, (length
- 28) / 1, byte_order
);
13437 static void renderCompositeGlyphs32(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13439 field8(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs32_op
, byte_order
);
13440 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13442 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_src
, tvb
, *offsetp
, 4, byte_order
);
13444 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_dst
, tvb
, *offsetp
, 4, byte_order
);
13446 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_mask_format
, tvb
, *offsetp
, 4, byte_order
);
13448 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_glyphset
, tvb
, *offsetp
, 4, byte_order
);
13450 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_src_x
, tvb
, *offsetp
, 2, byte_order
);
13452 proto_tree_add_item(t
, hf_x11_render_CompositeGlyphs32_src_y
, tvb
, *offsetp
, 2, byte_order
);
13454 listOfByte(tvb
, offsetp
, t
, hf_x11_render_CompositeGlyphs32_glyphcmds
, (length
- 28) / 1, byte_order
);
13457 static void renderFillRectangles(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13459 field8(tvb
, offsetp
, t
, hf_x11_render_FillRectangles_op
, byte_order
);
13460 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
13462 proto_tree_add_item(t
, hf_x11_render_FillRectangles_dst
, tvb
, *offsetp
, 4, byte_order
);
13464 struct_render_COLOR(tvb
, offsetp
, t
, byte_order
, 1);
13465 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 20) / 8);
13468 static void renderCreateCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13470 proto_tree_add_item(t
, hf_x11_render_CreateCursor_cid
, tvb
, *offsetp
, 4, byte_order
);
13472 proto_tree_add_item(t
, hf_x11_render_CreateCursor_source
, tvb
, *offsetp
, 4, byte_order
);
13474 proto_tree_add_item(t
, hf_x11_render_CreateCursor_x
, tvb
, *offsetp
, 2, byte_order
);
13476 proto_tree_add_item(t
, hf_x11_render_CreateCursor_y
, tvb
, *offsetp
, 2, byte_order
);
13480 static void renderSetPictureTransform(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13482 proto_tree_add_item(t
, hf_x11_render_SetPictureTransform_picture
, tvb
, *offsetp
, 4, byte_order
);
13484 struct_render_TRANSFORM(tvb
, offsetp
, t
, byte_order
, 1);
13487 static void renderQueryFilters(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13489 proto_tree_add_item(t
, hf_x11_render_QueryFilters_drawable
, tvb
, *offsetp
, 4, byte_order
);
13492 static void renderQueryFilters_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13494 int sequence_number
;
13498 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryFilters");
13501 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13503 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13504 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13505 "%d (render-QueryFilters)", sequence_number
);
13507 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13509 f_num_aliases
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13510 proto_tree_add_item(t
, hf_x11_render_QueryFilters_reply_num_aliases
, tvb
, *offsetp
, 4, byte_order
);
13512 f_num_filters
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13513 proto_tree_add_item(t
, hf_x11_render_QueryFilters_reply_num_filters
, tvb
, *offsetp
, 4, byte_order
);
13515 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
13517 listOfCard16(tvb
, offsetp
, t
, hf_x11_render_QueryFilters_reply_aliases
, hf_x11_render_QueryFilters_reply_aliases_item
, f_num_aliases
, byte_order
);
13518 struct_xproto_STR(tvb
, offsetp
, t
, byte_order
, f_num_filters
);
13521 static void renderSetPictureFilter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13524 proto_tree_add_item(t
, hf_x11_render_SetPictureFilter_picture
, tvb
, *offsetp
, 4, byte_order
);
13526 f_filter_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13527 proto_tree_add_item(t
, hf_x11_render_SetPictureFilter_filter_len
, tvb
, *offsetp
, 2, byte_order
);
13529 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
13531 listOfByte(tvb
, offsetp
, t
, hf_x11_render_SetPictureFilter_filter
, f_filter_len
, byte_order
);
13532 length
-= f_filter_len
* 1;
13533 if (*offsetp
% 4) {
13534 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
13535 *offsetp
+= (4 - *offsetp
% 4);
13537 length
= ((length
+ 3) & ~3);
13538 listOfInt32(tvb
, offsetp
, t
, hf_x11_render_SetPictureFilter_values
, hf_x11_render_SetPictureFilter_values_item
, (length
- 12) / 4, byte_order
);
13541 static void renderCreateAnimCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13543 proto_tree_add_item(t
, hf_x11_render_CreateAnimCursor_cid
, tvb
, *offsetp
, 4, byte_order
);
13545 struct_render_ANIMCURSORELT(tvb
, offsetp
, t
, byte_order
, (length
- 8) / 8);
13548 static void renderAddTraps(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13550 proto_tree_add_item(t
, hf_x11_render_AddTraps_picture
, tvb
, *offsetp
, 4, byte_order
);
13552 proto_tree_add_item(t
, hf_x11_render_AddTraps_x_off
, tvb
, *offsetp
, 2, byte_order
);
13554 proto_tree_add_item(t
, hf_x11_render_AddTraps_y_off
, tvb
, *offsetp
, 2, byte_order
);
13556 struct_render_TRAP(tvb
, offsetp
, t
, byte_order
, (length
- 12) / 24);
13559 static void renderCreateSolidFill(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13561 proto_tree_add_item(t
, hf_x11_render_CreateSolidFill_picture
, tvb
, *offsetp
, 4, byte_order
);
13563 struct_render_COLOR(tvb
, offsetp
, t
, byte_order
, 1);
13566 static void renderCreateLinearGradient(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13569 proto_tree_add_item(t
, hf_x11_render_CreateLinearGradient_picture
, tvb
, *offsetp
, 4, byte_order
);
13571 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
13572 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
13573 f_num_stops
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13574 proto_tree_add_item(t
, hf_x11_render_CreateLinearGradient_num_stops
, tvb
, *offsetp
, 4, byte_order
);
13576 listOfInt32(tvb
, offsetp
, t
, hf_x11_render_CreateLinearGradient_stops
, hf_x11_render_CreateLinearGradient_stops_item
, f_num_stops
, byte_order
);
13577 length
-= f_num_stops
* 4;
13578 struct_render_COLOR(tvb
, offsetp
, t
, byte_order
, f_num_stops
);
13579 length
-= f_num_stops
* 8;
13582 static void renderCreateRadialGradient(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13585 proto_tree_add_item(t
, hf_x11_render_CreateRadialGradient_picture
, tvb
, *offsetp
, 4, byte_order
);
13587 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
13588 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
13589 proto_tree_add_item(t
, hf_x11_render_CreateRadialGradient_inner_radius
, tvb
, *offsetp
, 4, byte_order
);
13591 proto_tree_add_item(t
, hf_x11_render_CreateRadialGradient_outer_radius
, tvb
, *offsetp
, 4, byte_order
);
13593 f_num_stops
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13594 proto_tree_add_item(t
, hf_x11_render_CreateRadialGradient_num_stops
, tvb
, *offsetp
, 4, byte_order
);
13596 listOfInt32(tvb
, offsetp
, t
, hf_x11_render_CreateRadialGradient_stops
, hf_x11_render_CreateRadialGradient_stops_item
, f_num_stops
, byte_order
);
13597 length
-= f_num_stops
* 4;
13598 struct_render_COLOR(tvb
, offsetp
, t
, byte_order
, f_num_stops
);
13599 length
-= f_num_stops
* 8;
13602 static void renderCreateConicalGradient(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13605 proto_tree_add_item(t
, hf_x11_render_CreateConicalGradient_picture
, tvb
, *offsetp
, 4, byte_order
);
13607 struct_render_POINTFIX(tvb
, offsetp
, t
, byte_order
, 1);
13608 proto_tree_add_item(t
, hf_x11_render_CreateConicalGradient_angle
, tvb
, *offsetp
, 4, byte_order
);
13610 f_num_stops
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13611 proto_tree_add_item(t
, hf_x11_render_CreateConicalGradient_num_stops
, tvb
, *offsetp
, 4, byte_order
);
13613 listOfInt32(tvb
, offsetp
, t
, hf_x11_render_CreateConicalGradient_stops
, hf_x11_render_CreateConicalGradient_stops_item
, f_num_stops
, byte_order
);
13614 length
-= f_num_stops
* 4;
13615 struct_render_COLOR(tvb
, offsetp
, t
, byte_order
, f_num_stops
);
13616 length
-= f_num_stops
* 8;
13618 static const value_string render_extension_minor
[] = {
13619 { 0, "QueryVersion" },
13620 { 1, "QueryPictFormats" },
13621 { 2, "QueryPictIndexValues" },
13622 { 4, "CreatePicture" },
13623 { 5, "ChangePicture" },
13624 { 6, "SetPictureClipRectangles" },
13625 { 7, "FreePicture" },
13626 { 8, "Composite" },
13627 { 10, "Trapezoids" },
13628 { 11, "Triangles" },
13629 { 12, "TriStrip" },
13631 { 17, "CreateGlyphSet" },
13632 { 18, "ReferenceGlyphSet" },
13633 { 19, "FreeGlyphSet" },
13634 { 20, "AddGlyphs" },
13635 { 22, "FreeGlyphs" },
13636 { 23, "CompositeGlyphs8" },
13637 { 24, "CompositeGlyphs16" },
13638 { 25, "CompositeGlyphs32" },
13639 { 26, "FillRectangles" },
13640 { 27, "CreateCursor" },
13641 { 28, "SetPictureTransform" },
13642 { 29, "QueryFilters" },
13643 { 30, "SetPictureFilter" },
13644 { 31, "CreateAnimCursor" },
13645 { 32, "AddTraps" },
13646 { 33, "CreateSolidFill" },
13647 { 34, "CreateLinearGradient" },
13648 { 35, "CreateRadialGradient" },
13649 { 36, "CreateConicalGradient" },
13652 static const x11_event_info render_events
[] = {
13655 static const x11_reply_info render_replies
[] = {
13656 { 0, renderQueryVersion_Reply
},
13657 { 1, renderQueryPictFormats_Reply
},
13658 { 2, renderQueryPictIndexValues_Reply
},
13659 { 29, renderQueryFilters_Reply
},
13663 static void dispatch_render(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13666 minor
= CARD8(render_extension_minor
);
13667 length
= REQUEST_LENGTH();
13669 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
13670 val_to_str(minor
, render_extension_minor
,
13671 "<Unknown opcode %d>"));
13674 renderQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13677 renderQueryPictFormats(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13680 renderQueryPictIndexValues(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13683 renderCreatePicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13686 renderChangePicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13689 renderSetPictureClipRectangles(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13692 renderFreePicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13695 renderComposite(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13698 renderTrapezoids(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13701 renderTriangles(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13704 renderTriStrip(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13707 renderTriFan(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13710 renderCreateGlyphSet(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13713 renderReferenceGlyphSet(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13716 renderFreeGlyphSet(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13719 renderAddGlyphs(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13722 renderFreeGlyphs(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13725 renderCompositeGlyphs8(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13728 renderCompositeGlyphs16(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13731 renderCompositeGlyphs32(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13734 renderFillRectangles(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13737 renderCreateCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13740 renderSetPictureTransform(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13743 renderQueryFilters(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13746 renderSetPictureFilter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13749 renderCreateAnimCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13752 renderAddTraps(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13755 renderCreateSolidFill(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13758 renderCreateLinearGradient(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13761 renderCreateRadialGradient(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13764 renderCreateConicalGradient(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
13766 /* No need for a default case here, since Unknown is printed above,
13767 and UNDECODED() is taken care of by dissect_x11_request */
13771 static void register_render(void)
13773 set_handler("RENDER", dispatch_render
, render_errors
, render_events
, NULL
, render_replies
);
13776 static void struct_res_Client(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13779 for (i
= 0; i
< count
; i
++) {
13783 item
= proto_tree_add_item(root
, hf_x11_struct_res_Client
, tvb
, *offsetp
, 8, ENC_NA
);
13784 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13785 proto_tree_add_item(t
, hf_x11_struct_res_Client_resource_base
, tvb
, *offsetp
, 4, byte_order
);
13787 proto_tree_add_item(t
, hf_x11_struct_res_Client_resource_mask
, tvb
, *offsetp
, 4, byte_order
);
13792 static void struct_res_Type(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13795 for (i
= 0; i
< count
; i
++) {
13799 item
= proto_tree_add_item(root
, hf_x11_struct_res_Type
, tvb
, *offsetp
, 8, ENC_NA
);
13800 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13801 proto_tree_add_item(t
, hf_x11_struct_res_Type_resource_type
, tvb
, *offsetp
, 4, byte_order
);
13803 proto_tree_add_item(t
, hf_x11_struct_res_Type_count
, tvb
, *offsetp
, 4, byte_order
);
13808 static void struct_res_ClientIdSpec(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13811 for (i
= 0; i
< count
; i
++) {
13815 item
= proto_tree_add_item(root
, hf_x11_struct_res_ClientIdSpec
, tvb
, *offsetp
, 8, ENC_NA
);
13816 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13817 proto_tree_add_item(t
, hf_x11_struct_res_ClientIdSpec_client
, tvb
, *offsetp
, 4, byte_order
);
13820 static int* const mask_bits
[] = {
13821 &hf_x11_struct_res_ClientIdSpec_mask_mask_ClientXID
,
13822 &hf_x11_struct_res_ClientIdSpec_mask_mask_LocalClientPID
,
13825 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_res_ClientIdSpec_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
13831 static int struct_size_res_ClientIdValue(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
13835 f_length
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 8, byte_order
);
13836 size
+= (f_length
/ 4) * 4;
13840 static void struct_res_ClientIdValue(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13843 for (i
= 0; i
< count
; i
++) {
13848 item
= proto_tree_add_item(root
, hf_x11_struct_res_ClientIdValue
, tvb
, *offsetp
, struct_size_res_ClientIdValue(tvb
, offsetp
, byte_order
), ENC_NA
);
13849 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13850 struct_res_ClientIdSpec(tvb
, offsetp
, t
, byte_order
, 1);
13851 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13852 proto_tree_add_item(t
, hf_x11_struct_res_ClientIdValue_length
, tvb
, *offsetp
, 4, byte_order
);
13854 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_res_ClientIdValue_value
, hf_x11_struct_res_ClientIdValue_value_item
, (f_length
/ 4), byte_order
);
13858 static void struct_res_ResourceIdSpec(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13861 for (i
= 0; i
< count
; i
++) {
13865 item
= proto_tree_add_item(root
, hf_x11_struct_res_ResourceIdSpec
, tvb
, *offsetp
, 8, ENC_NA
);
13866 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13867 proto_tree_add_item(t
, hf_x11_struct_res_ResourceIdSpec_resource
, tvb
, *offsetp
, 4, byte_order
);
13869 proto_tree_add_item(t
, hf_x11_struct_res_ResourceIdSpec_type
, tvb
, *offsetp
, 4, byte_order
);
13874 static void struct_res_ResourceSizeSpec(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13877 for (i
= 0; i
< count
; i
++) {
13881 item
= proto_tree_add_item(root
, hf_x11_struct_res_ResourceSizeSpec
, tvb
, *offsetp
, 20, ENC_NA
);
13882 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13883 struct_res_ResourceIdSpec(tvb
, offsetp
, t
, byte_order
, 1);
13884 proto_tree_add_item(t
, hf_x11_struct_res_ResourceSizeSpec_bytes
, tvb
, *offsetp
, 4, byte_order
);
13886 proto_tree_add_item(t
, hf_x11_struct_res_ResourceSizeSpec_ref_count
, tvb
, *offsetp
, 4, byte_order
);
13888 proto_tree_add_item(t
, hf_x11_struct_res_ResourceSizeSpec_use_count
, tvb
, *offsetp
, 4, byte_order
);
13893 static int struct_size_res_ResourceSizeValue(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
13896 int f_num_cross_references
;
13897 f_num_cross_references
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 20, byte_order
);
13898 size
+= f_num_cross_references
* 20;
13902 static void struct_res_ResourceSizeValue(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
13905 for (i
= 0; i
< count
; i
++) {
13908 int f_num_cross_references
;
13910 item
= proto_tree_add_item(root
, hf_x11_struct_res_ResourceSizeValue
, tvb
, *offsetp
, struct_size_res_ResourceSizeValue(tvb
, offsetp
, byte_order
), ENC_NA
);
13911 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
13912 struct_res_ResourceSizeSpec(tvb
, offsetp
, t
, byte_order
, 1);
13913 f_num_cross_references
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13914 proto_tree_add_item(t
, hf_x11_struct_res_ResourceSizeValue_num_cross_references
, tvb
, *offsetp
, 4, byte_order
);
13916 struct_res_ResourceSizeSpec(tvb
, offsetp
, t
, byte_order
, f_num_cross_references
);
13920 static void resQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13922 proto_tree_add_item(t
, hf_x11_res_QueryVersion_client_major
, tvb
, *offsetp
, 1, byte_order
);
13924 proto_tree_add_item(t
, hf_x11_res_QueryVersion_client_minor
, tvb
, *offsetp
, 1, byte_order
);
13927 static void resQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13929 int sequence_number
;
13931 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
13934 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13936 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13937 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13938 "%d (res-QueryVersion)", sequence_number
);
13940 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13942 proto_tree_add_item(t
, hf_x11_res_QueryVersion_reply_server_major
, tvb
, *offsetp
, 2, byte_order
);
13944 proto_tree_add_item(t
, hf_x11_res_QueryVersion_reply_server_minor
, tvb
, *offsetp
, 2, byte_order
);
13948 static void resQueryClients(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
13951 static void resQueryClients_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13953 int sequence_number
;
13956 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryClients");
13959 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13961 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13962 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13963 "%d (res-QueryClients)", sequence_number
);
13965 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13967 f_num_clients
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13968 proto_tree_add_item(t
, hf_x11_res_QueryClients_reply_num_clients
, tvb
, *offsetp
, 4, byte_order
);
13970 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
13972 struct_res_Client(tvb
, offsetp
, t
, byte_order
, f_num_clients
);
13975 static void resQueryClientResources(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
13977 proto_tree_add_item(t
, hf_x11_res_QueryClientResources_xid
, tvb
, *offsetp
, 4, byte_order
);
13980 static void resQueryClientResources_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
13982 int sequence_number
;
13985 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryClientResources");
13988 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
13990 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
13991 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
13992 "%d (res-QueryClientResources)", sequence_number
);
13994 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
13996 f_num_types
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
13997 proto_tree_add_item(t
, hf_x11_res_QueryClientResources_reply_num_types
, tvb
, *offsetp
, 4, byte_order
);
13999 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
14001 struct_res_Type(tvb
, offsetp
, t
, byte_order
, f_num_types
);
14004 static void resQueryClientPixmapBytes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14006 proto_tree_add_item(t
, hf_x11_res_QueryClientPixmapBytes_xid
, tvb
, *offsetp
, 4, byte_order
);
14009 static void resQueryClientPixmapBytes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14011 int sequence_number
;
14013 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryClientPixmapBytes");
14016 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14018 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14019 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14020 "%d (res-QueryClientPixmapBytes)", sequence_number
);
14022 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14024 proto_tree_add_item(t
, hf_x11_res_QueryClientPixmapBytes_reply_bytes
, tvb
, *offsetp
, 4, byte_order
);
14026 proto_tree_add_item(t
, hf_x11_res_QueryClientPixmapBytes_reply_bytes_overflow
, tvb
, *offsetp
, 4, byte_order
);
14030 static void resQueryClientIds(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14033 f_num_specs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14034 proto_tree_add_item(t
, hf_x11_res_QueryClientIds_num_specs
, tvb
, *offsetp
, 4, byte_order
);
14036 struct_res_ClientIdSpec(tvb
, offsetp
, t
, byte_order
, f_num_specs
);
14037 length
-= f_num_specs
* 8;
14039 static void resQueryClientIds_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14041 int sequence_number
;
14044 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryClientIds");
14047 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14049 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14050 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14051 "%d (res-QueryClientIds)", sequence_number
);
14053 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14055 f_num_ids
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14056 proto_tree_add_item(t
, hf_x11_res_QueryClientIds_reply_num_ids
, tvb
, *offsetp
, 4, byte_order
);
14058 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
14060 struct_res_ClientIdValue(tvb
, offsetp
, t
, byte_order
, f_num_ids
);
14063 static void resQueryResourceBytes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14066 proto_tree_add_item(t
, hf_x11_res_QueryResourceBytes_client
, tvb
, *offsetp
, 4, byte_order
);
14068 f_num_specs
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14069 proto_tree_add_item(t
, hf_x11_res_QueryResourceBytes_num_specs
, tvb
, *offsetp
, 4, byte_order
);
14071 struct_res_ResourceIdSpec(tvb
, offsetp
, t
, byte_order
, f_num_specs
);
14072 length
-= f_num_specs
* 8;
14074 static void resQueryResourceBytes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14076 int sequence_number
;
14079 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryResourceBytes");
14082 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14084 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14085 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14086 "%d (res-QueryResourceBytes)", sequence_number
);
14088 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14090 f_num_sizes
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14091 proto_tree_add_item(t
, hf_x11_res_QueryResourceBytes_reply_num_sizes
, tvb
, *offsetp
, 4, byte_order
);
14093 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
14095 struct_res_ResourceSizeValue(tvb
, offsetp
, t
, byte_order
, f_num_sizes
);
14097 static const value_string res_extension_minor
[] = {
14098 { 0, "QueryVersion" },
14099 { 1, "QueryClients" },
14100 { 2, "QueryClientResources" },
14101 { 3, "QueryClientPixmapBytes" },
14102 { 4, "QueryClientIds" },
14103 { 5, "QueryResourceBytes" },
14106 static const x11_event_info res_events
[] = {
14109 static const x11_reply_info res_replies
[] = {
14110 { 0, resQueryVersion_Reply
},
14111 { 1, resQueryClients_Reply
},
14112 { 2, resQueryClientResources_Reply
},
14113 { 3, resQueryClientPixmapBytes_Reply
},
14114 { 4, resQueryClientIds_Reply
},
14115 { 5, resQueryResourceBytes_Reply
},
14119 static void dispatch_res(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14122 minor
= CARD8(res_extension_minor
);
14123 length
= REQUEST_LENGTH();
14125 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
14126 val_to_str(minor
, res_extension_minor
,
14127 "<Unknown opcode %d>"));
14130 resQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14133 resQueryClients(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14136 resQueryClientResources(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14139 resQueryClientPixmapBytes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14142 resQueryClientIds(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14145 resQueryResourceBytes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14147 /* No need for a default case here, since Unknown is printed above,
14148 and UNDECODED() is taken care of by dissect_x11_request */
14152 static void register_res(void)
14154 set_handler("X-Resource", dispatch_res
, res_errors
, res_events
, NULL
, res_replies
);
14157 static void screensaverQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14159 proto_tree_add_item(t
, hf_x11_screensaver_QueryVersion_client_major_version
, tvb
, *offsetp
, 1, byte_order
);
14161 proto_tree_add_item(t
, hf_x11_screensaver_QueryVersion_client_minor_version
, tvb
, *offsetp
, 1, byte_order
);
14163 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
14166 static void screensaverQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14168 int sequence_number
;
14170 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
14173 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14175 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14176 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14177 "%d (screensaver-QueryVersion)", sequence_number
);
14179 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14181 proto_tree_add_item(t
, hf_x11_screensaver_QueryVersion_reply_server_major_version
, tvb
, *offsetp
, 2, byte_order
);
14183 proto_tree_add_item(t
, hf_x11_screensaver_QueryVersion_reply_server_minor_version
, tvb
, *offsetp
, 2, byte_order
);
14185 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
14189 static void screensaverQueryInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14191 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_drawable
, tvb
, *offsetp
, 4, byte_order
);
14194 static void screensaverQueryInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14196 int sequence_number
;
14198 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryInfo");
14201 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_reply_state
, tvb
, *offsetp
, 1, byte_order
);
14203 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14204 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14205 "%d (screensaver-QueryInfo)", sequence_number
);
14207 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14209 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_reply_saver_window
, tvb
, *offsetp
, 4, byte_order
);
14211 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_reply_ms_until_server
, tvb
, *offsetp
, 4, byte_order
);
14213 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_reply_ms_since_user_input
, tvb
, *offsetp
, 4, byte_order
);
14215 proto_tree_add_item(t
, hf_x11_screensaver_QueryInfo_reply_event_mask
, tvb
, *offsetp
, 4, byte_order
);
14217 field8(tvb
, offsetp
, t
, hf_x11_screensaver_QueryInfo_reply_kind
, byte_order
);
14218 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 7, ENC_NA
);
14222 static void screensaverSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14224 proto_tree_add_item(t
, hf_x11_screensaver_SelectInput_drawable
, tvb
, *offsetp
, 4, byte_order
);
14227 static int* const event_mask_bits
[] = {
14228 &hf_x11_screensaver_SelectInput_event_mask_mask_NotifyMask
,
14229 &hf_x11_screensaver_SelectInput_event_mask_mask_CycleMask
,
14232 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_screensaver_SelectInput_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
14237 static void screensaverSetAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14240 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_drawable
, tvb
, *offsetp
, 4, byte_order
);
14242 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_x
, tvb
, *offsetp
, 2, byte_order
);
14244 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_y
, tvb
, *offsetp
, 2, byte_order
);
14246 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_width
, tvb
, *offsetp
, 2, byte_order
);
14248 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_height
, tvb
, *offsetp
, 2, byte_order
);
14250 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_border_width
, tvb
, *offsetp
, 2, byte_order
);
14252 field8(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_class
, byte_order
);
14253 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_depth
, tvb
, *offsetp
, 1, byte_order
);
14255 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_visual
, tvb
, *offsetp
, 4, byte_order
);
14257 f_value_mask
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14259 static int* const value_mask_bits
[] = {
14260 &hf_x11_screensaver_SetAttributes_value_mask_mask_BackPixmap
,
14261 &hf_x11_screensaver_SetAttributes_value_mask_mask_BackPixel
,
14262 &hf_x11_screensaver_SetAttributes_value_mask_mask_BorderPixmap
,
14263 &hf_x11_screensaver_SetAttributes_value_mask_mask_BorderPixel
,
14264 &hf_x11_screensaver_SetAttributes_value_mask_mask_BitGravity
,
14265 &hf_x11_screensaver_SetAttributes_value_mask_mask_WinGravity
,
14266 &hf_x11_screensaver_SetAttributes_value_mask_mask_BackingStore
,
14267 &hf_x11_screensaver_SetAttributes_value_mask_mask_BackingPlanes
,
14268 &hf_x11_screensaver_SetAttributes_value_mask_mask_BackingPixel
,
14269 &hf_x11_screensaver_SetAttributes_value_mask_mask_OverrideRedirect
,
14270 &hf_x11_screensaver_SetAttributes_value_mask_mask_SaveUnder
,
14271 &hf_x11_screensaver_SetAttributes_value_mask_mask_EventMask
,
14272 &hf_x11_screensaver_SetAttributes_value_mask_mask_DontPropagate
,
14273 &hf_x11_screensaver_SetAttributes_value_mask_mask_Colormap
,
14274 &hf_x11_screensaver_SetAttributes_value_mask_mask_Cursor
,
14277 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_screensaver_SetAttributes_value_mask
, ett_x11_rectangle
, value_mask_bits
, byte_order
);
14280 if (f_value_mask
& (1U << 0)) {
14281 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_BackPixmap_background_pixmap
, byte_order
);
14283 if (f_value_mask
& (1U << 1)) {
14284 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_BackPixel_background_pixel
, tvb
, *offsetp
, 4, byte_order
);
14287 if (f_value_mask
& (1U << 2)) {
14288 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_BorderPixmap_border_pixmap
, byte_order
);
14290 if (f_value_mask
& (1U << 3)) {
14291 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_BorderPixel_border_pixel
, tvb
, *offsetp
, 4, byte_order
);
14294 if (f_value_mask
& (1U << 4)) {
14295 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_BitGravity_bit_gravity
, byte_order
);
14297 if (f_value_mask
& (1U << 5)) {
14298 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_WinGravity_win_gravity
, byte_order
);
14300 if (f_value_mask
& (1U << 6)) {
14301 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_BackingStore_backing_store
, byte_order
);
14303 if (f_value_mask
& (1U << 7)) {
14304 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_BackingPlanes_backing_planes
, tvb
, *offsetp
, 4, byte_order
);
14307 if (f_value_mask
& (1U << 8)) {
14308 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_BackingPixel_backing_pixel
, tvb
, *offsetp
, 4, byte_order
);
14311 if (f_value_mask
& (1U << 9)) {
14312 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_OverrideRedirect_override_redirect
, tvb
, *offsetp
, 4, byte_order
);
14315 if (f_value_mask
& (1U << 10)) {
14316 proto_tree_add_item(t
, hf_x11_screensaver_SetAttributes_SaveUnder_save_under
, tvb
, *offsetp
, 4, byte_order
);
14319 if (f_value_mask
& (1U << 11)) {
14321 static int* const event_mask_bits
[] = {
14322 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_KeyPress
,
14323 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_KeyRelease
,
14324 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_ButtonPress
,
14325 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_ButtonRelease
,
14326 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_EnterWindow
,
14327 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_LeaveWindow
,
14328 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_PointerMotion
,
14329 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_PointerMotionHint
,
14330 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Button1Motion
,
14331 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Button2Motion
,
14332 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Button3Motion
,
14333 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Button4Motion
,
14334 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Button5Motion
,
14335 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_ButtonMotion
,
14336 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_KeymapState
,
14337 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_Exposure
,
14338 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_VisibilityChange
,
14339 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_StructureNotify
,
14340 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_ResizeRedirect
,
14341 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_SubstructureNotify
,
14342 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_SubstructureRedirect
,
14343 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_FocusChange
,
14344 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_PropertyChange
,
14345 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_ColorMapChange
,
14346 &hf_x11_screensaver_SetAttributes_EventMask_event_mask_mask_OwnerGrabButton
,
14349 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_screensaver_SetAttributes_EventMask_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
14353 if (f_value_mask
& (1U << 12)) {
14355 static int* const do_not_propogate_mask_bits
[] = {
14356 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_KeyPress
,
14357 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_KeyRelease
,
14358 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_ButtonPress
,
14359 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_ButtonRelease
,
14360 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_EnterWindow
,
14361 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_LeaveWindow
,
14362 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_PointerMotion
,
14363 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_PointerMotionHint
,
14364 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Button1Motion
,
14365 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Button2Motion
,
14366 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Button3Motion
,
14367 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Button4Motion
,
14368 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Button5Motion
,
14369 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_ButtonMotion
,
14370 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_KeymapState
,
14371 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_Exposure
,
14372 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_VisibilityChange
,
14373 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_StructureNotify
,
14374 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_ResizeRedirect
,
14375 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_SubstructureNotify
,
14376 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_SubstructureRedirect
,
14377 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_FocusChange
,
14378 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_PropertyChange
,
14379 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_ColorMapChange
,
14380 &hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask_mask_OwnerGrabButton
,
14383 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_screensaver_SetAttributes_DontPropagate_do_not_propogate_mask
, ett_x11_rectangle
, do_not_propogate_mask_bits
, byte_order
);
14387 if (f_value_mask
& (1U << 13)) {
14388 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_Colormap_colormap
, byte_order
);
14390 if (f_value_mask
& (1U << 14)) {
14391 field32(tvb
, offsetp
, t
, hf_x11_screensaver_SetAttributes_Cursor_cursor
, byte_order
);
14395 static void screensaverUnsetAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14397 proto_tree_add_item(t
, hf_x11_screensaver_UnsetAttributes_drawable
, tvb
, *offsetp
, 4, byte_order
);
14401 static void screensaverSuspend(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14403 proto_tree_add_item(t
, hf_x11_screensaver_Suspend_suspend
, tvb
, *offsetp
, 4, byte_order
);
14406 static const value_string screensaver_extension_minor
[] = {
14407 { 0, "QueryVersion" },
14408 { 1, "QueryInfo" },
14409 { 2, "SelectInput" },
14410 { 3, "SetAttributes" },
14411 { 4, "UnsetAttributes" },
14415 static const x11_event_info screensaver_events
[] = {
14418 static const x11_reply_info screensaver_replies
[] = {
14419 { 0, screensaverQueryVersion_Reply
},
14420 { 1, screensaverQueryInfo_Reply
},
14424 static void dispatch_screensaver(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14427 minor
= CARD8(screensaver_extension_minor
);
14428 length
= REQUEST_LENGTH();
14430 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
14431 val_to_str(minor
, screensaver_extension_minor
,
14432 "<Unknown opcode %d>"));
14435 screensaverQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14438 screensaverQueryInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14441 screensaverSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14444 screensaverSetAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14447 screensaverUnsetAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14450 screensaverSuspend(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14452 /* No need for a default case here, since Unknown is printed above,
14453 and UNDECODED() is taken care of by dissect_x11_request */
14457 static void register_screensaver(void)
14459 set_handler("MIT-SCREEN-SAVER", dispatch_screensaver
, screensaver_errors
, screensaver_events
, NULL
, screensaver_replies
);
14462 static void shapeQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
14465 static void shapeQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14467 int sequence_number
;
14469 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
14472 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14474 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14475 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14476 "%d (shape-QueryVersion)", sequence_number
);
14478 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14480 proto_tree_add_item(t
, hf_x11_shape_QueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
14482 proto_tree_add_item(t
, hf_x11_shape_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
14486 static void shapeRectangles(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14488 field8(tvb
, offsetp
, t
, hf_x11_shape_Rectangles_operation
, byte_order
);
14489 field8(tvb
, offsetp
, t
, hf_x11_shape_Rectangles_destination_kind
, byte_order
);
14490 field8(tvb
, offsetp
, t
, hf_x11_shape_Rectangles_ordering
, byte_order
);
14491 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14493 proto_tree_add_item(t
, hf_x11_shape_Rectangles_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14495 proto_tree_add_item(t
, hf_x11_shape_Rectangles_x_offset
, tvb
, *offsetp
, 2, byte_order
);
14497 proto_tree_add_item(t
, hf_x11_shape_Rectangles_y_offset
, tvb
, *offsetp
, 2, byte_order
);
14499 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 16) / 8);
14502 static void shapeMask(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14504 field8(tvb
, offsetp
, t
, hf_x11_shape_Mask_operation
, byte_order
);
14505 field8(tvb
, offsetp
, t
, hf_x11_shape_Mask_destination_kind
, byte_order
);
14506 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
14508 proto_tree_add_item(t
, hf_x11_shape_Mask_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14510 proto_tree_add_item(t
, hf_x11_shape_Mask_x_offset
, tvb
, *offsetp
, 2, byte_order
);
14512 proto_tree_add_item(t
, hf_x11_shape_Mask_y_offset
, tvb
, *offsetp
, 2, byte_order
);
14514 field32(tvb
, offsetp
, t
, hf_x11_shape_Mask_source_bitmap
, byte_order
);
14517 static void shapeCombine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14519 field8(tvb
, offsetp
, t
, hf_x11_shape_Combine_operation
, byte_order
);
14520 field8(tvb
, offsetp
, t
, hf_x11_shape_Combine_destination_kind
, byte_order
);
14521 field8(tvb
, offsetp
, t
, hf_x11_shape_Combine_source_kind
, byte_order
);
14522 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14524 proto_tree_add_item(t
, hf_x11_shape_Combine_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14526 proto_tree_add_item(t
, hf_x11_shape_Combine_x_offset
, tvb
, *offsetp
, 2, byte_order
);
14528 proto_tree_add_item(t
, hf_x11_shape_Combine_y_offset
, tvb
, *offsetp
, 2, byte_order
);
14530 proto_tree_add_item(t
, hf_x11_shape_Combine_source_window
, tvb
, *offsetp
, 4, byte_order
);
14534 static void shapeOffset(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14536 field8(tvb
, offsetp
, t
, hf_x11_shape_Offset_destination_kind
, byte_order
);
14537 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14539 proto_tree_add_item(t
, hf_x11_shape_Offset_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14541 proto_tree_add_item(t
, hf_x11_shape_Offset_x_offset
, tvb
, *offsetp
, 2, byte_order
);
14543 proto_tree_add_item(t
, hf_x11_shape_Offset_y_offset
, tvb
, *offsetp
, 2, byte_order
);
14547 static void shapeQueryExtents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14549 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14552 static void shapeQueryExtents_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14554 int sequence_number
;
14556 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryExtents");
14559 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14561 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14562 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14563 "%d (shape-QueryExtents)", sequence_number
);
14565 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14567 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_bounding_shaped
, tvb
, *offsetp
, 1, byte_order
);
14569 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_clip_shaped
, tvb
, *offsetp
, 1, byte_order
);
14571 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
14573 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_x
, tvb
, *offsetp
, 2, byte_order
);
14575 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_y
, tvb
, *offsetp
, 2, byte_order
);
14577 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_width
, tvb
, *offsetp
, 2, byte_order
);
14579 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_height
, tvb
, *offsetp
, 2, byte_order
);
14581 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_clip_shape_extents_x
, tvb
, *offsetp
, 2, byte_order
);
14583 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_clip_shape_extents_y
, tvb
, *offsetp
, 2, byte_order
);
14585 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_clip_shape_extents_width
, tvb
, *offsetp
, 2, byte_order
);
14587 proto_tree_add_item(t
, hf_x11_shape_QueryExtents_reply_clip_shape_extents_height
, tvb
, *offsetp
, 2, byte_order
);
14591 static void shapeSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14593 proto_tree_add_item(t
, hf_x11_shape_SelectInput_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14595 proto_tree_add_item(t
, hf_x11_shape_SelectInput_enable
, tvb
, *offsetp
, 1, byte_order
);
14597 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14601 static void shapeInputSelected(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14603 proto_tree_add_item(t
, hf_x11_shape_InputSelected_destination_window
, tvb
, *offsetp
, 4, byte_order
);
14606 static void shapeInputSelected_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14608 int sequence_number
;
14610 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-InputSelected");
14613 proto_tree_add_item(t
, hf_x11_shape_InputSelected_reply_enabled
, tvb
, *offsetp
, 1, byte_order
);
14615 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14616 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14617 "%d (shape-InputSelected)", sequence_number
);
14619 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14623 static void shapeGetRectangles(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14625 proto_tree_add_item(t
, hf_x11_shape_GetRectangles_window
, tvb
, *offsetp
, 4, byte_order
);
14627 field8(tvb
, offsetp
, t
, hf_x11_shape_GetRectangles_source_kind
, byte_order
);
14628 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14631 static void shapeGetRectangles_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14633 int sequence_number
;
14634 int f_rectangles_len
;
14636 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetRectangles");
14639 field8(tvb
, offsetp
, t
, hf_x11_shape_GetRectangles_reply_ordering
, byte_order
);
14640 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14641 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14642 "%d (shape-GetRectangles)", sequence_number
);
14644 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14646 f_rectangles_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
14647 proto_tree_add_item(t
, hf_x11_shape_GetRectangles_reply_rectangles_len
, tvb
, *offsetp
, 4, byte_order
);
14649 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
14651 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, f_rectangles_len
);
14653 static const value_string shape_extension_minor
[] = {
14654 { 0, "QueryVersion" },
14655 { 1, "Rectangles" },
14659 { 5, "QueryExtents" },
14660 { 6, "SelectInput" },
14661 { 7, "InputSelected" },
14662 { 8, "GetRectangles" },
14665 static const x11_event_info shape_events
[] = {
14668 static const x11_reply_info shape_replies
[] = {
14669 { 0, shapeQueryVersion_Reply
},
14670 { 5, shapeQueryExtents_Reply
},
14671 { 7, shapeInputSelected_Reply
},
14672 { 8, shapeGetRectangles_Reply
},
14676 static void dispatch_shape(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14679 minor
= CARD8(shape_extension_minor
);
14680 length
= REQUEST_LENGTH();
14682 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
14683 val_to_str(minor
, shape_extension_minor
,
14684 "<Unknown opcode %d>"));
14687 shapeQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14690 shapeRectangles(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14693 shapeMask(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14696 shapeCombine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14699 shapeOffset(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14702 shapeQueryExtents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14705 shapeSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14708 shapeInputSelected(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14711 shapeGetRectangles(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14713 /* No need for a default case here, since Unknown is printed above,
14714 and UNDECODED() is taken care of by dissect_x11_request */
14718 static void register_shape(void)
14720 set_handler("SHAPE", dispatch_shape
, shape_errors
, shape_events
, NULL
, shape_replies
);
14723 static void shmQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
14726 static void shmQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14728 int sequence_number
;
14730 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
14733 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_shared_pixmaps
, tvb
, *offsetp
, 1, byte_order
);
14735 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14736 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14737 "%d (shm-QueryVersion)", sequence_number
);
14739 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14741 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
14743 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
14745 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_uid
, tvb
, *offsetp
, 2, byte_order
);
14747 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_gid
, tvb
, *offsetp
, 2, byte_order
);
14749 proto_tree_add_item(t
, hf_x11_shm_QueryVersion_reply_pixmap_format
, tvb
, *offsetp
, 1, byte_order
);
14751 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
14755 static void shmAttach(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14757 proto_tree_add_item(t
, hf_x11_shm_Attach_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14759 proto_tree_add_item(t
, hf_x11_shm_Attach_shmid
, tvb
, *offsetp
, 4, byte_order
);
14761 proto_tree_add_item(t
, hf_x11_shm_Attach_read_only
, tvb
, *offsetp
, 1, byte_order
);
14763 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14767 static void shmDetach(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14769 proto_tree_add_item(t
, hf_x11_shm_Detach_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14773 static void shmPutImage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14775 proto_tree_add_item(t
, hf_x11_shm_PutImage_drawable
, tvb
, *offsetp
, 4, byte_order
);
14777 proto_tree_add_item(t
, hf_x11_shm_PutImage_gc
, tvb
, *offsetp
, 4, byte_order
);
14779 proto_tree_add_item(t
, hf_x11_shm_PutImage_total_width
, tvb
, *offsetp
, 2, byte_order
);
14781 proto_tree_add_item(t
, hf_x11_shm_PutImage_total_height
, tvb
, *offsetp
, 2, byte_order
);
14783 proto_tree_add_item(t
, hf_x11_shm_PutImage_src_x
, tvb
, *offsetp
, 2, byte_order
);
14785 proto_tree_add_item(t
, hf_x11_shm_PutImage_src_y
, tvb
, *offsetp
, 2, byte_order
);
14787 proto_tree_add_item(t
, hf_x11_shm_PutImage_src_width
, tvb
, *offsetp
, 2, byte_order
);
14789 proto_tree_add_item(t
, hf_x11_shm_PutImage_src_height
, tvb
, *offsetp
, 2, byte_order
);
14791 proto_tree_add_item(t
, hf_x11_shm_PutImage_dst_x
, tvb
, *offsetp
, 2, byte_order
);
14793 proto_tree_add_item(t
, hf_x11_shm_PutImage_dst_y
, tvb
, *offsetp
, 2, byte_order
);
14795 proto_tree_add_item(t
, hf_x11_shm_PutImage_depth
, tvb
, *offsetp
, 1, byte_order
);
14797 proto_tree_add_item(t
, hf_x11_shm_PutImage_format
, tvb
, *offsetp
, 1, byte_order
);
14799 proto_tree_add_item(t
, hf_x11_shm_PutImage_send_event
, tvb
, *offsetp
, 1, byte_order
);
14801 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14803 proto_tree_add_item(t
, hf_x11_shm_PutImage_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14805 proto_tree_add_item(t
, hf_x11_shm_PutImage_offset
, tvb
, *offsetp
, 4, byte_order
);
14809 static void shmGetImage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14811 proto_tree_add_item(t
, hf_x11_shm_GetImage_drawable
, tvb
, *offsetp
, 4, byte_order
);
14813 proto_tree_add_item(t
, hf_x11_shm_GetImage_x
, tvb
, *offsetp
, 2, byte_order
);
14815 proto_tree_add_item(t
, hf_x11_shm_GetImage_y
, tvb
, *offsetp
, 2, byte_order
);
14817 proto_tree_add_item(t
, hf_x11_shm_GetImage_width
, tvb
, *offsetp
, 2, byte_order
);
14819 proto_tree_add_item(t
, hf_x11_shm_GetImage_height
, tvb
, *offsetp
, 2, byte_order
);
14821 proto_tree_add_item(t
, hf_x11_shm_GetImage_plane_mask
, tvb
, *offsetp
, 4, byte_order
);
14823 proto_tree_add_item(t
, hf_x11_shm_GetImage_format
, tvb
, *offsetp
, 1, byte_order
);
14825 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14827 proto_tree_add_item(t
, hf_x11_shm_GetImage_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14829 proto_tree_add_item(t
, hf_x11_shm_GetImage_offset
, tvb
, *offsetp
, 4, byte_order
);
14832 static void shmGetImage_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14834 int sequence_number
;
14836 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetImage");
14839 proto_tree_add_item(t
, hf_x11_shm_GetImage_reply_depth
, tvb
, *offsetp
, 1, byte_order
);
14841 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14842 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14843 "%d (shm-GetImage)", sequence_number
);
14845 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14847 proto_tree_add_item(t
, hf_x11_shm_GetImage_reply_visual
, tvb
, *offsetp
, 4, byte_order
);
14849 proto_tree_add_item(t
, hf_x11_shm_GetImage_reply_size
, tvb
, *offsetp
, 4, byte_order
);
14853 static void shmCreatePixmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14855 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_pid
, tvb
, *offsetp
, 4, byte_order
);
14857 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_drawable
, tvb
, *offsetp
, 4, byte_order
);
14859 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_width
, tvb
, *offsetp
, 2, byte_order
);
14861 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_height
, tvb
, *offsetp
, 2, byte_order
);
14863 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_depth
, tvb
, *offsetp
, 1, byte_order
);
14865 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14867 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14869 proto_tree_add_item(t
, hf_x11_shm_CreatePixmap_offset
, tvb
, *offsetp
, 4, byte_order
);
14873 static void shmAttachFd(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14875 proto_tree_add_item(t
, hf_x11_shm_AttachFd_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14877 proto_tree_add_item(t
, hf_x11_shm_AttachFd_read_only
, tvb
, *offsetp
, 1, byte_order
);
14879 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14883 static void shmCreateSegment(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14885 proto_tree_add_item(t
, hf_x11_shm_CreateSegment_shmseg
, tvb
, *offsetp
, 4, byte_order
);
14887 proto_tree_add_item(t
, hf_x11_shm_CreateSegment_size
, tvb
, *offsetp
, 4, byte_order
);
14889 proto_tree_add_item(t
, hf_x11_shm_CreateSegment_read_only
, tvb
, *offsetp
, 1, byte_order
);
14891 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
14894 static void shmCreateSegment_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14896 int sequence_number
;
14898 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateSegment");
14901 proto_tree_add_item(t
, hf_x11_shm_CreateSegment_reply_nfd
, tvb
, *offsetp
, 1, byte_order
);
14903 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14904 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14905 "%d (shm-CreateSegment)", sequence_number
);
14907 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14909 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
14912 static const value_string shm_extension_minor
[] = {
14913 { 0, "QueryVersion" },
14918 { 5, "CreatePixmap" },
14920 { 7, "CreateSegment" },
14923 static const x11_event_info shm_events
[] = {
14926 static const x11_reply_info shm_replies
[] = {
14927 { 0, shmQueryVersion_Reply
},
14928 { 4, shmGetImage_Reply
},
14929 { 7, shmCreateSegment_Reply
},
14933 static void dispatch_shm(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14936 minor
= CARD8(shm_extension_minor
);
14937 length
= REQUEST_LENGTH();
14939 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
14940 val_to_str(minor
, shm_extension_minor
,
14941 "<Unknown opcode %d>"));
14944 shmQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14947 shmAttach(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14950 shmDetach(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14953 shmPutImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14956 shmGetImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14959 shmCreatePixmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14962 shmAttachFd(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14965 shmCreateSegment(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
14967 /* No need for a default case here, since Unknown is printed above,
14968 and UNDECODED() is taken care of by dissect_x11_request */
14972 static void register_shm(void)
14974 set_handler("MIT-SHM", dispatch_shm
, shm_errors
, shm_events
, NULL
, shm_replies
);
14977 static void syncInitialize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
14979 proto_tree_add_item(t
, hf_x11_sync_Initialize_desired_major_version
, tvb
, *offsetp
, 1, byte_order
);
14981 proto_tree_add_item(t
, hf_x11_sync_Initialize_desired_minor_version
, tvb
, *offsetp
, 1, byte_order
);
14984 static void syncInitialize_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
14986 int sequence_number
;
14988 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Initialize");
14991 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
14993 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
14994 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
14995 "%d (sync-Initialize)", sequence_number
);
14997 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
14999 proto_tree_add_item(t
, hf_x11_sync_Initialize_reply_major_version
, tvb
, *offsetp
, 1, byte_order
);
15001 proto_tree_add_item(t
, hf_x11_sync_Initialize_reply_minor_version
, tvb
, *offsetp
, 1, byte_order
);
15003 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
15007 static void syncListSystemCounters(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
15010 static void syncListSystemCounters_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15012 int sequence_number
;
15013 int f_counters_len
;
15015 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListSystemCounters");
15018 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15020 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15021 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15022 "%d (sync-ListSystemCounters)", sequence_number
);
15024 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15026 f_counters_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15027 proto_tree_add_item(t
, hf_x11_sync_ListSystemCounters_reply_counters_len
, tvb
, *offsetp
, 4, byte_order
);
15029 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
15031 struct_sync_SYSTEMCOUNTER(tvb
, offsetp
, t
, byte_order
, f_counters_len
);
15034 static void syncCreateCounter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15036 proto_tree_add_item(t
, hf_x11_sync_CreateCounter_id
, tvb
, *offsetp
, 4, byte_order
);
15038 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15041 static void syncDestroyCounter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15043 proto_tree_add_item(t
, hf_x11_sync_DestroyCounter_counter
, tvb
, *offsetp
, 4, byte_order
);
15047 static void syncQueryCounter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15049 proto_tree_add_item(t
, hf_x11_sync_QueryCounter_counter
, tvb
, *offsetp
, 4, byte_order
);
15052 static void syncQueryCounter_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15054 int sequence_number
;
15056 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryCounter");
15059 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15061 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15062 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15063 "%d (sync-QueryCounter)", sequence_number
);
15065 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15067 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15070 static void syncAwait(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15072 struct_sync_WAITCONDITION(tvb
, offsetp
, t
, byte_order
, (length
- 4) / 28);
15075 static void syncChangeCounter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15077 proto_tree_add_item(t
, hf_x11_sync_ChangeCounter_counter
, tvb
, *offsetp
, 4, byte_order
);
15079 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15082 static void syncSetCounter(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15084 proto_tree_add_item(t
, hf_x11_sync_SetCounter_counter
, tvb
, *offsetp
, 4, byte_order
);
15086 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15089 static void syncCreateAlarm(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15092 proto_tree_add_item(t
, hf_x11_sync_CreateAlarm_id
, tvb
, *offsetp
, 4, byte_order
);
15094 f_value_mask
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15096 static int* const value_mask_bits
[] = {
15097 &hf_x11_sync_CreateAlarm_value_mask_mask_Counter
,
15098 &hf_x11_sync_CreateAlarm_value_mask_mask_ValueType
,
15099 &hf_x11_sync_CreateAlarm_value_mask_mask_Value
,
15100 &hf_x11_sync_CreateAlarm_value_mask_mask_TestType
,
15101 &hf_x11_sync_CreateAlarm_value_mask_mask_Delta
,
15102 &hf_x11_sync_CreateAlarm_value_mask_mask_Events
,
15105 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_sync_CreateAlarm_value_mask
, ett_x11_rectangle
, value_mask_bits
, byte_order
);
15108 if (f_value_mask
& (1U << 0)) {
15109 proto_tree_add_item(t
, hf_x11_sync_CreateAlarm_Counter_counter
, tvb
, *offsetp
, 4, byte_order
);
15112 if (f_value_mask
& (1U << 1)) {
15113 field32(tvb
, offsetp
, t
, hf_x11_sync_CreateAlarm_ValueType_valueType
, byte_order
);
15115 if (f_value_mask
& (1U << 2)) {
15116 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15118 if (f_value_mask
& (1U << 3)) {
15119 field32(tvb
, offsetp
, t
, hf_x11_sync_CreateAlarm_TestType_testType
, byte_order
);
15121 if (f_value_mask
& (1U << 4)) {
15122 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15124 if (f_value_mask
& (1U << 5)) {
15125 proto_tree_add_item(t
, hf_x11_sync_CreateAlarm_Events_events
, tvb
, *offsetp
, 4, byte_order
);
15130 static void syncChangeAlarm(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15133 proto_tree_add_item(t
, hf_x11_sync_ChangeAlarm_id
, tvb
, *offsetp
, 4, byte_order
);
15135 f_value_mask
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15137 static int* const value_mask_bits
[] = {
15138 &hf_x11_sync_ChangeAlarm_value_mask_mask_Counter
,
15139 &hf_x11_sync_ChangeAlarm_value_mask_mask_ValueType
,
15140 &hf_x11_sync_ChangeAlarm_value_mask_mask_Value
,
15141 &hf_x11_sync_ChangeAlarm_value_mask_mask_TestType
,
15142 &hf_x11_sync_ChangeAlarm_value_mask_mask_Delta
,
15143 &hf_x11_sync_ChangeAlarm_value_mask_mask_Events
,
15146 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_sync_ChangeAlarm_value_mask
, ett_x11_rectangle
, value_mask_bits
, byte_order
);
15149 if (f_value_mask
& (1U << 0)) {
15150 proto_tree_add_item(t
, hf_x11_sync_ChangeAlarm_Counter_counter
, tvb
, *offsetp
, 4, byte_order
);
15153 if (f_value_mask
& (1U << 1)) {
15154 field32(tvb
, offsetp
, t
, hf_x11_sync_ChangeAlarm_ValueType_valueType
, byte_order
);
15156 if (f_value_mask
& (1U << 2)) {
15157 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15159 if (f_value_mask
& (1U << 3)) {
15160 field32(tvb
, offsetp
, t
, hf_x11_sync_ChangeAlarm_TestType_testType
, byte_order
);
15162 if (f_value_mask
& (1U << 4)) {
15163 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15165 if (f_value_mask
& (1U << 5)) {
15166 proto_tree_add_item(t
, hf_x11_sync_ChangeAlarm_Events_events
, tvb
, *offsetp
, 4, byte_order
);
15171 static void syncDestroyAlarm(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15173 proto_tree_add_item(t
, hf_x11_sync_DestroyAlarm_alarm
, tvb
, *offsetp
, 4, byte_order
);
15177 static void syncQueryAlarm(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15179 proto_tree_add_item(t
, hf_x11_sync_QueryAlarm_alarm
, tvb
, *offsetp
, 4, byte_order
);
15182 static void syncQueryAlarm_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15184 int sequence_number
;
15186 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryAlarm");
15189 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15191 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15192 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15193 "%d (sync-QueryAlarm)", sequence_number
);
15195 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15197 struct_sync_TRIGGER(tvb
, offsetp
, t
, byte_order
, 1);
15198 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15199 proto_tree_add_item(t
, hf_x11_sync_QueryAlarm_reply_events
, tvb
, *offsetp
, 1, byte_order
);
15201 field8(tvb
, offsetp
, t
, hf_x11_sync_QueryAlarm_reply_state
, byte_order
);
15202 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
15206 static void syncSetPriority(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15208 proto_tree_add_item(t
, hf_x11_sync_SetPriority_id
, tvb
, *offsetp
, 4, byte_order
);
15210 proto_tree_add_item(t
, hf_x11_sync_SetPriority_priority
, tvb
, *offsetp
, 4, byte_order
);
15214 static void syncGetPriority(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15216 proto_tree_add_item(t
, hf_x11_sync_GetPriority_id
, tvb
, *offsetp
, 4, byte_order
);
15219 static void syncGetPriority_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15221 int sequence_number
;
15223 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPriority");
15226 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15228 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15229 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15230 "%d (sync-GetPriority)", sequence_number
);
15232 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15234 proto_tree_add_item(t
, hf_x11_sync_GetPriority_reply_priority
, tvb
, *offsetp
, 4, byte_order
);
15238 static void syncCreateFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15240 proto_tree_add_item(t
, hf_x11_sync_CreateFence_drawable
, tvb
, *offsetp
, 4, byte_order
);
15242 proto_tree_add_item(t
, hf_x11_sync_CreateFence_fence
, tvb
, *offsetp
, 4, byte_order
);
15244 proto_tree_add_item(t
, hf_x11_sync_CreateFence_initially_triggered
, tvb
, *offsetp
, 1, byte_order
);
15248 static void syncTriggerFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15250 proto_tree_add_item(t
, hf_x11_sync_TriggerFence_fence
, tvb
, *offsetp
, 4, byte_order
);
15254 static void syncResetFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15256 proto_tree_add_item(t
, hf_x11_sync_ResetFence_fence
, tvb
, *offsetp
, 4, byte_order
);
15260 static void syncDestroyFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15262 proto_tree_add_item(t
, hf_x11_sync_DestroyFence_fence
, tvb
, *offsetp
, 4, byte_order
);
15266 static void syncQueryFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15268 proto_tree_add_item(t
, hf_x11_sync_QueryFence_fence
, tvb
, *offsetp
, 4, byte_order
);
15271 static void syncQueryFence_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15273 int sequence_number
;
15275 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryFence");
15278 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15280 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15281 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15282 "%d (sync-QueryFence)", sequence_number
);
15284 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15286 proto_tree_add_item(t
, hf_x11_sync_QueryFence_reply_triggered
, tvb
, *offsetp
, 1, byte_order
);
15288 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
15292 static void syncAwaitFence(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15294 listOfCard32(tvb
, offsetp
, t
, hf_x11_sync_AwaitFence_fence_list
, hf_x11_sync_AwaitFence_fence_list_item
, (length
- 4) / 4, byte_order
);
15297 static void syncAlarmNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15299 proto_tree_add_item(t
, hf_x11_sync_AlarmNotify_kind
, tvb
, *offsetp
, 1, byte_order
);
15301 CARD16(event_sequencenumber
);
15302 proto_tree_add_item(t
, hf_x11_sync_AlarmNotify_alarm
, tvb
, *offsetp
, 4, byte_order
);
15304 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15305 struct_sync_INT64(tvb
, offsetp
, t
, byte_order
, 1);
15306 proto_tree_add_item(t
, hf_x11_sync_AlarmNotify_timestamp
, tvb
, *offsetp
, 4, byte_order
);
15308 field8(tvb
, offsetp
, t
, hf_x11_sync_AlarmNotify_state
, byte_order
);
15309 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
15313 static const value_string sync_extension_minor
[] = {
15314 { 0, "Initialize" },
15315 { 1, "ListSystemCounters" },
15316 { 2, "CreateCounter" },
15317 { 3, "SetCounter" },
15318 { 4, "ChangeCounter" },
15319 { 5, "QueryCounter" },
15320 { 6, "DestroyCounter" },
15322 { 8, "CreateAlarm" },
15323 { 9, "ChangeAlarm" },
15324 { 10, "QueryAlarm" },
15325 { 11, "DestroyAlarm" },
15326 { 12, "SetPriority" },
15327 { 13, "GetPriority" },
15328 { 14, "CreateFence" },
15329 { 15, "TriggerFence" },
15330 { 16, "ResetFence" },
15331 { 17, "DestroyFence" },
15332 { 18, "QueryFence" },
15333 { 19, "AwaitFence" },
15336 static const x11_event_info sync_events
[] = {
15337 { "sync-AlarmNotify", syncAlarmNotify
},
15340 static const x11_reply_info sync_replies
[] = {
15341 { 0, syncInitialize_Reply
},
15342 { 1, syncListSystemCounters_Reply
},
15343 { 5, syncQueryCounter_Reply
},
15344 { 10, syncQueryAlarm_Reply
},
15345 { 13, syncGetPriority_Reply
},
15346 { 18, syncQueryFence_Reply
},
15350 static void dispatch_sync(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15353 minor
= CARD8(sync_extension_minor
);
15354 length
= REQUEST_LENGTH();
15356 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
15357 val_to_str(minor
, sync_extension_minor
,
15358 "<Unknown opcode %d>"));
15361 syncInitialize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15364 syncListSystemCounters(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15367 syncCreateCounter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15370 syncSetCounter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15373 syncChangeCounter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15376 syncQueryCounter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15379 syncDestroyCounter(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15382 syncAwait(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15385 syncCreateAlarm(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15388 syncChangeAlarm(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15391 syncQueryAlarm(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15394 syncDestroyAlarm(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15397 syncSetPriority(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15400 syncGetPriority(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15403 syncCreateFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15406 syncTriggerFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15409 syncResetFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15412 syncDestroyFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15415 syncQueryFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15418 syncAwaitFence(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15420 /* No need for a default case here, since Unknown is printed above,
15421 and UNDECODED() is taken care of by dissect_x11_request */
15425 static void register_sync(void)
15427 set_handler("SYNC", dispatch_sync
, sync_errors
, sync_events
, NULL
, sync_replies
);
15430 static void xc_miscGetVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15432 proto_tree_add_item(t
, hf_x11_xc_misc_GetVersion_client_major_version
, tvb
, *offsetp
, 2, byte_order
);
15434 proto_tree_add_item(t
, hf_x11_xc_misc_GetVersion_client_minor_version
, tvb
, *offsetp
, 2, byte_order
);
15437 static void xc_miscGetVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15439 int sequence_number
;
15441 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetVersion");
15444 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15446 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15447 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15448 "%d (xc_misc-GetVersion)", sequence_number
);
15450 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15452 proto_tree_add_item(t
, hf_x11_xc_misc_GetVersion_reply_server_major_version
, tvb
, *offsetp
, 2, byte_order
);
15454 proto_tree_add_item(t
, hf_x11_xc_misc_GetVersion_reply_server_minor_version
, tvb
, *offsetp
, 2, byte_order
);
15458 static void xc_miscGetXIDRange(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
15461 static void xc_miscGetXIDRange_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15463 int sequence_number
;
15465 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetXIDRange");
15468 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15470 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15471 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15472 "%d (xc_misc-GetXIDRange)", sequence_number
);
15474 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15476 proto_tree_add_item(t
, hf_x11_xc_misc_GetXIDRange_reply_start_id
, tvb
, *offsetp
, 4, byte_order
);
15478 proto_tree_add_item(t
, hf_x11_xc_misc_GetXIDRange_reply_count
, tvb
, *offsetp
, 4, byte_order
);
15482 static void xc_miscGetXIDList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15484 proto_tree_add_item(t
, hf_x11_xc_misc_GetXIDList_count
, tvb
, *offsetp
, 4, byte_order
);
15487 static void xc_miscGetXIDList_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15489 int sequence_number
;
15492 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetXIDList");
15495 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15497 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15498 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15499 "%d (xc_misc-GetXIDList)", sequence_number
);
15501 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15503 f_ids_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15504 proto_tree_add_item(t
, hf_x11_xc_misc_GetXIDList_reply_ids_len
, tvb
, *offsetp
, 4, byte_order
);
15506 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
15508 listOfCard32(tvb
, offsetp
, t
, hf_x11_xc_misc_GetXIDList_reply_ids
, hf_x11_xc_misc_GetXIDList_reply_ids_item
, f_ids_len
, byte_order
);
15510 static const value_string xc_misc_extension_minor
[] = {
15511 { 0, "GetVersion" },
15512 { 1, "GetXIDRange" },
15513 { 2, "GetXIDList" },
15516 static const x11_event_info xc_misc_events
[] = {
15519 static const x11_reply_info xc_misc_replies
[] = {
15520 { 0, xc_miscGetVersion_Reply
},
15521 { 1, xc_miscGetXIDRange_Reply
},
15522 { 2, xc_miscGetXIDList_Reply
},
15526 static void dispatch_xc_misc(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15529 minor
= CARD8(xc_misc_extension_minor
);
15530 length
= REQUEST_LENGTH();
15532 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
15533 val_to_str(minor
, xc_misc_extension_minor
,
15534 "<Unknown opcode %d>"));
15537 xc_miscGetVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15540 xc_miscGetXIDRange(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15543 xc_miscGetXIDList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15545 /* No need for a default case here, since Unknown is printed above,
15546 and UNDECODED() is taken care of by dissect_x11_request */
15550 static void register_xc_misc(void)
15552 set_handler("XC-MISC", dispatch_xc_misc
, xc_misc_errors
, xc_misc_events
, NULL
, xc_misc_replies
);
15555 static void xevieQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15557 proto_tree_add_item(t
, hf_x11_xevie_QueryVersion_client_major_version
, tvb
, *offsetp
, 2, byte_order
);
15559 proto_tree_add_item(t
, hf_x11_xevie_QueryVersion_client_minor_version
, tvb
, *offsetp
, 2, byte_order
);
15562 static void xevieQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15564 int sequence_number
;
15566 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
15569 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15571 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15572 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15573 "%d (xevie-QueryVersion)", sequence_number
);
15575 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15577 proto_tree_add_item(t
, hf_x11_xevie_QueryVersion_reply_server_major_version
, tvb
, *offsetp
, 2, byte_order
);
15579 proto_tree_add_item(t
, hf_x11_xevie_QueryVersion_reply_server_minor_version
, tvb
, *offsetp
, 2, byte_order
);
15581 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
15585 static void xevieStart(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15587 proto_tree_add_item(t
, hf_x11_xevie_Start_screen
, tvb
, *offsetp
, 4, byte_order
);
15590 static void xevieStart_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15592 int sequence_number
;
15594 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Start");
15597 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15599 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15600 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15601 "%d (xevie-Start)", sequence_number
);
15603 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15605 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
15609 static void xevieEnd(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15611 proto_tree_add_item(t
, hf_x11_xevie_End_cmap
, tvb
, *offsetp
, 4, byte_order
);
15614 static void xevieEnd_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15616 int sequence_number
;
15618 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-End");
15621 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15623 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15624 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15625 "%d (xevie-End)", sequence_number
);
15627 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15629 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
15633 static void struct_xevie_Event(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
15636 for (i
= 0; i
< count
; i
++) {
15640 item
= proto_tree_add_item(root
, hf_x11_struct_xevie_Event
, tvb
, *offsetp
, 32, ENC_NA
);
15641 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
15642 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 32, ENC_NA
);
15647 static void xevieSend(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15649 struct_xevie_Event(tvb
, offsetp
, t
, byte_order
, 1);
15650 proto_tree_add_item(t
, hf_x11_xevie_Send_data_type
, tvb
, *offsetp
, 4, byte_order
);
15652 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 64, ENC_NA
);
15655 static void xevieSend_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15657 int sequence_number
;
15659 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-Send");
15662 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15664 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15665 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15666 "%d (xevie-Send)", sequence_number
);
15668 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15670 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
15674 static void xevieSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15676 proto_tree_add_item(t
, hf_x11_xevie_SelectInput_event_mask
, tvb
, *offsetp
, 4, byte_order
);
15679 static void xevieSelectInput_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15681 int sequence_number
;
15683 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SelectInput");
15686 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15688 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15689 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15690 "%d (xevie-SelectInput)", sequence_number
);
15692 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15694 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
15697 static const value_string xevie_extension_minor
[] = {
15698 { 0, "QueryVersion" },
15702 { 4, "SelectInput" },
15705 static const x11_event_info xevie_events
[] = {
15708 static const x11_reply_info xevie_replies
[] = {
15709 { 0, xevieQueryVersion_Reply
},
15710 { 1, xevieStart_Reply
},
15711 { 2, xevieEnd_Reply
},
15712 { 3, xevieSend_Reply
},
15713 { 4, xevieSelectInput_Reply
},
15717 static void dispatch_xevie(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15720 minor
= CARD8(xevie_extension_minor
);
15721 length
= REQUEST_LENGTH();
15723 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
15724 val_to_str(minor
, xevie_extension_minor
,
15725 "<Unknown opcode %d>"));
15728 xevieQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15731 xevieStart(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15734 xevieEnd(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15737 xevieSend(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15740 xevieSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
15742 /* No need for a default case here, since Unknown is printed above,
15743 and UNDECODED() is taken care of by dissect_x11_request */
15747 static void register_xevie(void)
15749 set_handler("XEVIE", dispatch_xevie
, xevie_errors
, xevie_events
, NULL
, xevie_replies
);
15752 static void struct_xf86dri_DrmClipRect(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
15755 for (i
= 0; i
< count
; i
++) {
15759 item
= proto_tree_add_item(root
, hf_x11_struct_xf86dri_DrmClipRect
, tvb
, *offsetp
, 8, ENC_NA
);
15760 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
15761 proto_tree_add_item(t
, hf_x11_struct_xf86dri_DrmClipRect_x1
, tvb
, *offsetp
, 2, byte_order
);
15763 proto_tree_add_item(t
, hf_x11_struct_xf86dri_DrmClipRect_y1
, tvb
, *offsetp
, 2, byte_order
);
15765 proto_tree_add_item(t
, hf_x11_struct_xf86dri_DrmClipRect_x2
, tvb
, *offsetp
, 2, byte_order
);
15767 proto_tree_add_item(t
, hf_x11_struct_xf86dri_DrmClipRect_x3
, tvb
, *offsetp
, 2, byte_order
);
15772 static void xf86driQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
15775 static void xf86driQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15777 int sequence_number
;
15779 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
15782 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15784 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15785 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15786 "%d (xf86dri-QueryVersion)", sequence_number
);
15788 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15790 proto_tree_add_item(t
, hf_x11_xf86dri_QueryVersion_reply_dri_major_version
, tvb
, *offsetp
, 2, byte_order
);
15792 proto_tree_add_item(t
, hf_x11_xf86dri_QueryVersion_reply_dri_minor_version
, tvb
, *offsetp
, 2, byte_order
);
15794 proto_tree_add_item(t
, hf_x11_xf86dri_QueryVersion_reply_dri_minor_patch
, tvb
, *offsetp
, 4, byte_order
);
15798 static void xf86driQueryDirectRenderingCapable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15800 proto_tree_add_item(t
, hf_x11_xf86dri_QueryDirectRenderingCapable_screen
, tvb
, *offsetp
, 4, byte_order
);
15803 static void xf86driQueryDirectRenderingCapable_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15805 int sequence_number
;
15807 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryDirectRenderingCapable");
15810 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15812 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15813 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15814 "%d (xf86dri-QueryDirectRenderingCapable)", sequence_number
);
15816 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15818 proto_tree_add_item(t
, hf_x11_xf86dri_QueryDirectRenderingCapable_reply_is_capable
, tvb
, *offsetp
, 1, byte_order
);
15822 static void xf86driOpenConnection(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15824 proto_tree_add_item(t
, hf_x11_xf86dri_OpenConnection_screen
, tvb
, *offsetp
, 4, byte_order
);
15827 static void xf86driOpenConnection_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15829 int sequence_number
;
15832 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-OpenConnection");
15835 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15837 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15838 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15839 "%d (xf86dri-OpenConnection)", sequence_number
);
15841 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15843 proto_tree_add_item(t
, hf_x11_xf86dri_OpenConnection_reply_sarea_handle_low
, tvb
, *offsetp
, 4, byte_order
);
15845 proto_tree_add_item(t
, hf_x11_xf86dri_OpenConnection_reply_sarea_handle_high
, tvb
, *offsetp
, 4, byte_order
);
15847 f_bus_id_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15848 proto_tree_add_item(t
, hf_x11_xf86dri_OpenConnection_reply_bus_id_len
, tvb
, *offsetp
, 4, byte_order
);
15850 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
15852 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86dri_OpenConnection_reply_bus_id
, f_bus_id_len
, byte_order
);
15855 static void xf86driCloseConnection(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15857 proto_tree_add_item(t
, hf_x11_xf86dri_CloseConnection_screen
, tvb
, *offsetp
, 4, byte_order
);
15861 static void xf86driGetClientDriverName(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15863 proto_tree_add_item(t
, hf_x11_xf86dri_GetClientDriverName_screen
, tvb
, *offsetp
, 4, byte_order
);
15866 static void xf86driGetClientDriverName_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15868 int sequence_number
;
15869 int f_client_driver_name_len
;
15871 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetClientDriverName");
15874 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15876 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15877 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15878 "%d (xf86dri-GetClientDriverName)", sequence_number
);
15880 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15882 proto_tree_add_item(t
, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_major_version
, tvb
, *offsetp
, 4, byte_order
);
15884 proto_tree_add_item(t
, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_minor_version
, tvb
, *offsetp
, 4, byte_order
);
15886 proto_tree_add_item(t
, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_patch_version
, tvb
, *offsetp
, 4, byte_order
);
15888 f_client_driver_name_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
15889 proto_tree_add_item(t
, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_name_len
, tvb
, *offsetp
, 4, byte_order
);
15891 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
15893 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_name
, f_client_driver_name_len
, byte_order
);
15896 static void xf86driCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15898 proto_tree_add_item(t
, hf_x11_xf86dri_CreateContext_screen
, tvb
, *offsetp
, 4, byte_order
);
15900 proto_tree_add_item(t
, hf_x11_xf86dri_CreateContext_visual
, tvb
, *offsetp
, 4, byte_order
);
15902 proto_tree_add_item(t
, hf_x11_xf86dri_CreateContext_context
, tvb
, *offsetp
, 4, byte_order
);
15905 static void xf86driCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15907 int sequence_number
;
15909 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateContext");
15912 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15914 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15915 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15916 "%d (xf86dri-CreateContext)", sequence_number
);
15918 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15920 proto_tree_add_item(t
, hf_x11_xf86dri_CreateContext_reply_hw_context
, tvb
, *offsetp
, 4, byte_order
);
15924 static void xf86driDestroyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15926 proto_tree_add_item(t
, hf_x11_xf86dri_DestroyContext_screen
, tvb
, *offsetp
, 4, byte_order
);
15928 proto_tree_add_item(t
, hf_x11_xf86dri_DestroyContext_context
, tvb
, *offsetp
, 4, byte_order
);
15932 static void xf86driCreateDrawable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15934 proto_tree_add_item(t
, hf_x11_xf86dri_CreateDrawable_screen
, tvb
, *offsetp
, 4, byte_order
);
15936 proto_tree_add_item(t
, hf_x11_xf86dri_CreateDrawable_drawable
, tvb
, *offsetp
, 4, byte_order
);
15939 static void xf86driCreateDrawable_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15941 int sequence_number
;
15943 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateDrawable");
15946 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15948 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15949 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15950 "%d (xf86dri-CreateDrawable)", sequence_number
);
15952 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15954 proto_tree_add_item(t
, hf_x11_xf86dri_CreateDrawable_reply_hw_drawable_handle
, tvb
, *offsetp
, 4, byte_order
);
15958 static void xf86driDestroyDrawable(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15960 proto_tree_add_item(t
, hf_x11_xf86dri_DestroyDrawable_screen
, tvb
, *offsetp
, 4, byte_order
);
15962 proto_tree_add_item(t
, hf_x11_xf86dri_DestroyDrawable_drawable
, tvb
, *offsetp
, 4, byte_order
);
15966 static void xf86driGetDrawableInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
15968 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_screen
, tvb
, *offsetp
, 4, byte_order
);
15970 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_drawable
, tvb
, *offsetp
, 4, byte_order
);
15973 static void xf86driGetDrawableInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
15975 int sequence_number
;
15976 int f_num_clip_rects
;
15977 int f_num_back_clip_rects
;
15979 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDrawableInfo");
15982 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
15984 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
15985 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
15986 "%d (xf86dri-GetDrawableInfo)", sequence_number
);
15988 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
15990 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_table_index
, tvb
, *offsetp
, 4, byte_order
);
15992 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_table_stamp
, tvb
, *offsetp
, 4, byte_order
);
15994 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_origin_X
, tvb
, *offsetp
, 2, byte_order
);
15996 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_origin_Y
, tvb
, *offsetp
, 2, byte_order
);
15998 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_size_W
, tvb
, *offsetp
, 2, byte_order
);
16000 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_size_H
, tvb
, *offsetp
, 2, byte_order
);
16002 f_num_clip_rects
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16003 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_num_clip_rects
, tvb
, *offsetp
, 4, byte_order
);
16005 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_back_x
, tvb
, *offsetp
, 2, byte_order
);
16007 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_back_y
, tvb
, *offsetp
, 2, byte_order
);
16009 f_num_back_clip_rects
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16010 proto_tree_add_item(t
, hf_x11_xf86dri_GetDrawableInfo_reply_num_back_clip_rects
, tvb
, *offsetp
, 4, byte_order
);
16012 struct_xf86dri_DrmClipRect(tvb
, offsetp
, t
, byte_order
, f_num_clip_rects
);
16013 struct_xf86dri_DrmClipRect(tvb
, offsetp
, t
, byte_order
, f_num_back_clip_rects
);
16016 static void xf86driGetDeviceInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16018 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_screen
, tvb
, *offsetp
, 4, byte_order
);
16021 static void xf86driGetDeviceInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16023 int sequence_number
;
16024 int f_device_private_size
;
16026 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceInfo");
16029 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16031 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16032 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16033 "%d (xf86dri-GetDeviceInfo)", sequence_number
);
16035 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16037 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_handle_low
, tvb
, *offsetp
, 4, byte_order
);
16039 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_handle_high
, tvb
, *offsetp
, 4, byte_order
);
16041 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_origin_offset
, tvb
, *offsetp
, 4, byte_order
);
16043 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_size
, tvb
, *offsetp
, 4, byte_order
);
16045 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_stride
, tvb
, *offsetp
, 4, byte_order
);
16047 f_device_private_size
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16048 proto_tree_add_item(t
, hf_x11_xf86dri_GetDeviceInfo_reply_device_private_size
, tvb
, *offsetp
, 4, byte_order
);
16050 listOfCard32(tvb
, offsetp
, t
, hf_x11_xf86dri_GetDeviceInfo_reply_device_private
, hf_x11_xf86dri_GetDeviceInfo_reply_device_private_item
, f_device_private_size
, byte_order
);
16053 static void xf86driAuthConnection(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16055 proto_tree_add_item(t
, hf_x11_xf86dri_AuthConnection_screen
, tvb
, *offsetp
, 4, byte_order
);
16057 proto_tree_add_item(t
, hf_x11_xf86dri_AuthConnection_magic
, tvb
, *offsetp
, 4, byte_order
);
16060 static void xf86driAuthConnection_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16062 int sequence_number
;
16064 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-AuthConnection");
16067 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16069 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16070 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16071 "%d (xf86dri-AuthConnection)", sequence_number
);
16073 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16075 proto_tree_add_item(t
, hf_x11_xf86dri_AuthConnection_reply_authenticated
, tvb
, *offsetp
, 4, byte_order
);
16078 static const value_string xf86dri_extension_minor
[] = {
16079 { 0, "QueryVersion" },
16080 { 1, "QueryDirectRenderingCapable" },
16081 { 2, "OpenConnection" },
16082 { 3, "CloseConnection" },
16083 { 4, "GetClientDriverName" },
16084 { 5, "CreateContext" },
16085 { 6, "DestroyContext" },
16086 { 7, "CreateDrawable" },
16087 { 8, "DestroyDrawable" },
16088 { 9, "GetDrawableInfo" },
16089 { 10, "GetDeviceInfo" },
16090 { 11, "AuthConnection" },
16093 static const x11_event_info xf86dri_events
[] = {
16096 static const x11_reply_info xf86dri_replies
[] = {
16097 { 0, xf86driQueryVersion_Reply
},
16098 { 1, xf86driQueryDirectRenderingCapable_Reply
},
16099 { 2, xf86driOpenConnection_Reply
},
16100 { 4, xf86driGetClientDriverName_Reply
},
16101 { 5, xf86driCreateContext_Reply
},
16102 { 7, xf86driCreateDrawable_Reply
},
16103 { 9, xf86driGetDrawableInfo_Reply
},
16104 { 10, xf86driGetDeviceInfo_Reply
},
16105 { 11, xf86driAuthConnection_Reply
},
16109 static void dispatch_xf86dri(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16112 minor
= CARD8(xf86dri_extension_minor
);
16113 length
= REQUEST_LENGTH();
16115 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
16116 val_to_str(minor
, xf86dri_extension_minor
,
16117 "<Unknown opcode %d>"));
16120 xf86driQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16123 xf86driQueryDirectRenderingCapable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16126 xf86driOpenConnection(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16129 xf86driCloseConnection(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16132 xf86driGetClientDriverName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16135 xf86driCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16138 xf86driDestroyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16141 xf86driCreateDrawable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16144 xf86driDestroyDrawable(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16147 xf86driGetDrawableInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16150 xf86driGetDeviceInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16153 xf86driAuthConnection(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
16155 /* No need for a default case here, since Unknown is printed above,
16156 and UNDECODED() is taken care of by dissect_x11_request */
16160 static void register_xf86dri(void)
16162 set_handler("XFree86-DRI", dispatch_xf86dri
, xf86dri_errors
, xf86dri_events
, NULL
, xf86dri_replies
);
16165 static void struct_xf86vidmode_ModeInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
16168 for (i
= 0; i
< count
; i
++) {
16172 item
= proto_tree_add_item(root
, hf_x11_struct_xf86vidmode_ModeInfo
, tvb
, *offsetp
, 48, ENC_NA
);
16173 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
16174 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16176 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16178 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16180 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16182 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_htotal
, tvb
, *offsetp
, 2, byte_order
);
16184 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_hskew
, tvb
, *offsetp
, 4, byte_order
);
16186 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16188 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16190 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16192 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16194 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
16197 static int* const flags_bits
[] = {
16198 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Positive_HSync
,
16199 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Negative_HSync
,
16200 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Positive_VSync
,
16201 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Negative_VSync
,
16202 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Interlace
,
16203 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Composite_Sync
,
16204 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Positive_CSync
,
16205 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Negative_CSync
,
16206 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_HSkew
,
16207 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Broadcast
,
16208 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Pixmux
,
16209 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Double_Clock
,
16210 &hf_x11_struct_xf86vidmode_ModeInfo_flags_mask_Half_Clock
,
16213 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xf86vidmode_ModeInfo_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16216 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16218 proto_tree_add_item(t
, hf_x11_struct_xf86vidmode_ModeInfo_privsize
, tvb
, *offsetp
, 4, byte_order
);
16223 static void xf86vidmodeQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
16226 static void xf86vidmodeQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16228 int sequence_number
;
16230 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
16233 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16235 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16236 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16237 "%d (xf86vidmode-QueryVersion)", sequence_number
);
16239 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16241 proto_tree_add_item(t
, hf_x11_xf86vidmode_QueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
16243 proto_tree_add_item(t
, hf_x11_xf86vidmode_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
16247 static void xf86vidmodeGetModeLine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16249 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_screen
, tvb
, *offsetp
, 2, byte_order
);
16251 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16254 static void xf86vidmodeGetModeLine_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16256 int sequence_number
;
16259 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetModeLine");
16262 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16264 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16265 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16266 "%d (xf86vidmode-GetModeLine)", sequence_number
);
16268 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16270 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16272 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16274 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16276 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16278 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_htotal
, tvb
, *offsetp
, 2, byte_order
);
16280 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_hskew
, tvb
, *offsetp
, 2, byte_order
);
16282 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16284 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16286 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16288 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16290 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16293 static int* const flags_bits
[] = {
16294 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_HSync
,
16295 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_HSync
,
16296 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_VSync
,
16297 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_VSync
,
16298 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Interlace
,
16299 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Composite_Sync
,
16300 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_CSync
,
16301 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_CSync
,
16302 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_HSkew
,
16303 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Broadcast
,
16304 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Pixmux
,
16305 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Double_Clock
,
16306 &hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Half_Clock
,
16309 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_GetModeLine_reply_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16312 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16314 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16315 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetModeLine_reply_privsize
, tvb
, *offsetp
, 4, byte_order
);
16317 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetModeLine_reply_private
, f_privsize
, byte_order
);
16320 static void xf86vidmodeModModeLine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16323 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_screen
, tvb
, *offsetp
, 4, byte_order
);
16325 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16327 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16329 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16331 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_htotal
, tvb
, *offsetp
, 2, byte_order
);
16333 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_hskew
, tvb
, *offsetp
, 2, byte_order
);
16335 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16337 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16339 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16341 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16343 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16346 static int* const flags_bits
[] = {
16347 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_HSync
,
16348 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_HSync
,
16349 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_VSync
,
16350 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_VSync
,
16351 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Interlace
,
16352 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Composite_Sync
,
16353 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_CSync
,
16354 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_CSync
,
16355 &hf_x11_xf86vidmode_ModModeLine_flags_mask_HSkew
,
16356 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Broadcast
,
16357 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Pixmux
,
16358 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Double_Clock
,
16359 &hf_x11_xf86vidmode_ModModeLine_flags_mask_Half_Clock
,
16362 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_ModModeLine_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16365 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16367 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16368 proto_tree_add_item(t
, hf_x11_xf86vidmode_ModModeLine_privsize
, tvb
, *offsetp
, 4, byte_order
);
16370 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_ModModeLine_private
, f_privsize
, byte_order
);
16371 length
-= f_privsize
* 1;
16374 static void xf86vidmodeSwitchMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16376 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchMode_screen
, tvb
, *offsetp
, 2, byte_order
);
16378 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchMode_zoom
, tvb
, *offsetp
, 2, byte_order
);
16382 static void xf86vidmodeGetMonitor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16384 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetMonitor_screen
, tvb
, *offsetp
, 2, byte_order
);
16386 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16389 static void xf86vidmodeGetMonitor_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16391 int sequence_number
;
16392 int f_vendor_length
;
16393 int f_model_length
;
16397 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMonitor");
16400 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16402 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16403 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16404 "%d (xf86vidmode-GetMonitor)", sequence_number
);
16406 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16408 f_vendor_length
= tvb_get_uint8(tvb
, *offsetp
);
16409 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetMonitor_reply_vendor_length
, tvb
, *offsetp
, 1, byte_order
);
16411 f_model_length
= tvb_get_uint8(tvb
, *offsetp
);
16412 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetMonitor_reply_model_length
, tvb
, *offsetp
, 1, byte_order
);
16414 f_num_hsync
= tvb_get_uint8(tvb
, *offsetp
);
16415 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetMonitor_reply_num_hsync
, tvb
, *offsetp
, 1, byte_order
);
16417 f_num_vsync
= tvb_get_uint8(tvb
, *offsetp
);
16418 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetMonitor_reply_num_vsync
, tvb
, *offsetp
, 1, byte_order
);
16420 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
16422 listOfCard32(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetMonitor_reply_hsync
, hf_x11_xf86vidmode_GetMonitor_reply_hsync_item
, f_num_hsync
, byte_order
);
16423 listOfCard32(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetMonitor_reply_vsync
, hf_x11_xf86vidmode_GetMonitor_reply_vsync_item
, f_num_vsync
, byte_order
);
16424 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetMonitor_reply_vendor
, f_vendor_length
, byte_order
);
16425 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetMonitor_reply_alignment_pad
, (((f_vendor_length
+ 3) & (~3)) - f_vendor_length
), byte_order
);
16426 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetMonitor_reply_model
, f_model_length
, byte_order
);
16429 static void xf86vidmodeLockModeSwitch(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16431 proto_tree_add_item(t
, hf_x11_xf86vidmode_LockModeSwitch_screen
, tvb
, *offsetp
, 2, byte_order
);
16433 proto_tree_add_item(t
, hf_x11_xf86vidmode_LockModeSwitch_lock
, tvb
, *offsetp
, 2, byte_order
);
16437 static void xf86vidmodeGetAllModeLines(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16439 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetAllModeLines_screen
, tvb
, *offsetp
, 2, byte_order
);
16441 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16444 static void xf86vidmodeGetAllModeLines_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16446 int sequence_number
;
16449 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetAllModeLines");
16452 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16454 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16455 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16456 "%d (xf86vidmode-GetAllModeLines)", sequence_number
);
16458 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16460 f_modecount
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16461 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetAllModeLines_reply_modecount
, tvb
, *offsetp
, 4, byte_order
);
16463 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
16465 struct_xf86vidmode_ModeInfo(tvb
, offsetp
, t
, byte_order
, f_modecount
);
16468 static void xf86vidmodeAddModeLine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16471 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_screen
, tvb
, *offsetp
, 4, byte_order
);
16473 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16475 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16477 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16479 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16481 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_htotal
, tvb
, *offsetp
, 2, byte_order
);
16483 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_hskew
, tvb
, *offsetp
, 2, byte_order
);
16485 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16487 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16489 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16491 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16493 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16496 static int* const flags_bits
[] = {
16497 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_HSync
,
16498 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_HSync
,
16499 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_VSync
,
16500 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_VSync
,
16501 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Interlace
,
16502 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Composite_Sync
,
16503 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_CSync
,
16504 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_CSync
,
16505 &hf_x11_xf86vidmode_AddModeLine_flags_mask_HSkew
,
16506 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Broadcast
,
16507 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Pixmux
,
16508 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Double_Clock
,
16509 &hf_x11_xf86vidmode_AddModeLine_flags_mask_Half_Clock
,
16512 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_AddModeLine_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16515 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16517 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16518 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_privsize
, tvb
, *offsetp
, 4, byte_order
);
16520 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16522 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16524 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16526 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16528 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_htotal
, tvb
, *offsetp
, 2, byte_order
);
16530 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_hskew
, tvb
, *offsetp
, 2, byte_order
);
16532 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16534 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16536 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16538 proto_tree_add_item(t
, hf_x11_xf86vidmode_AddModeLine_after_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16540 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16543 static int* const after_flags_bits
[] = {
16544 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_HSync
,
16545 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_HSync
,
16546 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_VSync
,
16547 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_VSync
,
16548 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Interlace
,
16549 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Composite_Sync
,
16550 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_CSync
,
16551 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_CSync
,
16552 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_HSkew
,
16553 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Broadcast
,
16554 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Pixmux
,
16555 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Double_Clock
,
16556 &hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Half_Clock
,
16559 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_AddModeLine_after_flags
, ett_x11_rectangle
, after_flags_bits
, byte_order
);
16562 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16564 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_AddModeLine_private
, f_privsize
, byte_order
);
16565 length
-= f_privsize
* 1;
16568 static void xf86vidmodeDeleteModeLine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16571 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_screen
, tvb
, *offsetp
, 4, byte_order
);
16573 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16575 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16577 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16579 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16581 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_htotal
, tvb
, *offsetp
, 2, byte_order
);
16583 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_hskew
, tvb
, *offsetp
, 2, byte_order
);
16585 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16587 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16589 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16591 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16593 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16596 static int* const flags_bits
[] = {
16597 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_HSync
,
16598 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_HSync
,
16599 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_VSync
,
16600 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_VSync
,
16601 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Interlace
,
16602 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Composite_Sync
,
16603 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_CSync
,
16604 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_CSync
,
16605 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_HSkew
,
16606 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Broadcast
,
16607 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Pixmux
,
16608 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Double_Clock
,
16609 &hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Half_Clock
,
16612 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_DeleteModeLine_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16615 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16617 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16618 proto_tree_add_item(t
, hf_x11_xf86vidmode_DeleteModeLine_privsize
, tvb
, *offsetp
, 4, byte_order
);
16620 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_DeleteModeLine_private
, f_privsize
, byte_order
);
16621 length
-= f_privsize
* 1;
16624 static void xf86vidmodeValidateModeLine(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16627 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_screen
, tvb
, *offsetp
, 4, byte_order
);
16629 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16631 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16633 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16635 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16637 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_htotal
, tvb
, *offsetp
, 2, byte_order
);
16639 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_hskew
, tvb
, *offsetp
, 2, byte_order
);
16641 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16643 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16645 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16647 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16649 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16652 static int* const flags_bits
[] = {
16653 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_HSync
,
16654 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_HSync
,
16655 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_VSync
,
16656 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_VSync
,
16657 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Interlace
,
16658 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Composite_Sync
,
16659 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_CSync
,
16660 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_CSync
,
16661 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_HSkew
,
16662 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Broadcast
,
16663 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Pixmux
,
16664 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Double_Clock
,
16665 &hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Half_Clock
,
16668 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_ValidateModeLine_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16671 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16673 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16674 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_privsize
, tvb
, *offsetp
, 4, byte_order
);
16676 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_ValidateModeLine_private
, f_privsize
, byte_order
);
16677 length
-= f_privsize
* 1;
16679 static void xf86vidmodeValidateModeLine_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16681 int sequence_number
;
16683 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ValidateModeLine");
16686 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16688 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16689 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16690 "%d (xf86vidmode-ValidateModeLine)", sequence_number
);
16692 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16694 proto_tree_add_item(t
, hf_x11_xf86vidmode_ValidateModeLine_reply_status
, tvb
, *offsetp
, 4, byte_order
);
16696 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
16700 static void xf86vidmodeSwitchToMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16703 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_screen
, tvb
, *offsetp
, 4, byte_order
);
16705 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_dotclock
, tvb
, *offsetp
, 4, byte_order
);
16707 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_hdisplay
, tvb
, *offsetp
, 2, byte_order
);
16709 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_hsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16711 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_hsyncend
, tvb
, *offsetp
, 2, byte_order
);
16713 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_htotal
, tvb
, *offsetp
, 2, byte_order
);
16715 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_hskew
, tvb
, *offsetp
, 2, byte_order
);
16717 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_vdisplay
, tvb
, *offsetp
, 2, byte_order
);
16719 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_vsyncstart
, tvb
, *offsetp
, 2, byte_order
);
16721 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_vsyncend
, tvb
, *offsetp
, 2, byte_order
);
16723 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_vtotal
, tvb
, *offsetp
, 2, byte_order
);
16725 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16728 static int* const flags_bits
[] = {
16729 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_HSync
,
16730 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_HSync
,
16731 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_VSync
,
16732 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_VSync
,
16733 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Interlace
,
16734 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Composite_Sync
,
16735 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_CSync
,
16736 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_CSync
,
16737 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_HSkew
,
16738 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Broadcast
,
16739 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Pixmux
,
16740 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Double_Clock
,
16741 &hf_x11_xf86vidmode_SwitchToMode_flags_mask_Half_Clock
,
16744 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_SwitchToMode_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16747 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16749 f_privsize
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16750 proto_tree_add_item(t
, hf_x11_xf86vidmode_SwitchToMode_privsize
, tvb
, *offsetp
, 4, byte_order
);
16752 listOfByte(tvb
, offsetp
, t
, hf_x11_xf86vidmode_SwitchToMode_private
, f_privsize
, byte_order
);
16753 length
-= f_privsize
* 1;
16756 static void xf86vidmodeGetViewPort(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16758 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetViewPort_screen
, tvb
, *offsetp
, 2, byte_order
);
16760 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16763 static void xf86vidmodeGetViewPort_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16765 int sequence_number
;
16767 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetViewPort");
16770 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16772 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16773 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16774 "%d (xf86vidmode-GetViewPort)", sequence_number
);
16776 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16778 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetViewPort_reply_x
, tvb
, *offsetp
, 4, byte_order
);
16780 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetViewPort_reply_y
, tvb
, *offsetp
, 4, byte_order
);
16782 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
16786 static void xf86vidmodeSetViewPort(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16788 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetViewPort_screen
, tvb
, *offsetp
, 2, byte_order
);
16790 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16792 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetViewPort_x
, tvb
, *offsetp
, 4, byte_order
);
16794 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetViewPort_y
, tvb
, *offsetp
, 4, byte_order
);
16798 static void xf86vidmodeGetDotClocks(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16800 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetDotClocks_screen
, tvb
, *offsetp
, 2, byte_order
);
16802 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16805 static void xf86vidmodeGetDotClocks_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16807 int sequence_number
;
16811 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDotClocks");
16814 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16816 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16817 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16818 "%d (xf86vidmode-GetDotClocks)", sequence_number
);
16820 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16822 f_flags
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16824 static int* const flags_bits
[] = {
16825 &hf_x11_xf86vidmode_GetDotClocks_reply_flags_mask_Programable
,
16828 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_GetDotClocks_reply_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
16831 f_clocks
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
16832 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetDotClocks_reply_clocks
, tvb
, *offsetp
, 4, byte_order
);
16834 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetDotClocks_reply_maxclocks
, tvb
, *offsetp
, 4, byte_order
);
16836 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16838 listOfCard32(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetDotClocks_reply_clock
, hf_x11_xf86vidmode_GetDotClocks_reply_clock_item
, ((1 - (f_flags
& 1)) * f_clocks
), byte_order
);
16841 static void xf86vidmodeSetClientVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16843 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetClientVersion_major
, tvb
, *offsetp
, 2, byte_order
);
16845 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetClientVersion_minor
, tvb
, *offsetp
, 2, byte_order
);
16849 static void xf86vidmodeSetGamma(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16851 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGamma_screen
, tvb
, *offsetp
, 2, byte_order
);
16853 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16855 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGamma_red
, tvb
, *offsetp
, 4, byte_order
);
16857 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGamma_green
, tvb
, *offsetp
, 4, byte_order
);
16859 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGamma_blue
, tvb
, *offsetp
, 4, byte_order
);
16861 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16865 static void xf86vidmodeGetGamma(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16867 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGamma_screen
, tvb
, *offsetp
, 2, byte_order
);
16869 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 26, ENC_NA
);
16872 static void xf86vidmodeGetGamma_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16874 int sequence_number
;
16876 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetGamma");
16879 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16881 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16882 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16883 "%d (xf86vidmode-GetGamma)", sequence_number
);
16885 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16887 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGamma_reply_red
, tvb
, *offsetp
, 4, byte_order
);
16889 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGamma_reply_green
, tvb
, *offsetp
, 4, byte_order
);
16891 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGamma_reply_blue
, tvb
, *offsetp
, 4, byte_order
);
16893 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
16897 static void xf86vidmodeGetGammaRamp(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16899 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGammaRamp_screen
, tvb
, *offsetp
, 2, byte_order
);
16901 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGammaRamp_size
, tvb
, *offsetp
, 2, byte_order
);
16904 static void xf86vidmodeGetGammaRamp_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16906 int sequence_number
;
16909 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetGammaRamp");
16912 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16914 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16915 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16916 "%d (xf86vidmode-GetGammaRamp)", sequence_number
);
16918 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16920 f_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16921 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGammaRamp_reply_size
, tvb
, *offsetp
, 2, byte_order
);
16923 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
16925 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetGammaRamp_reply_red
, hf_x11_xf86vidmode_GetGammaRamp_reply_red_item
, ((f_size
+ 1) & (~1)), byte_order
);
16926 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetGammaRamp_reply_green
, hf_x11_xf86vidmode_GetGammaRamp_reply_green_item
, ((f_size
+ 1) & (~1)), byte_order
);
16927 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_GetGammaRamp_reply_blue
, hf_x11_xf86vidmode_GetGammaRamp_reply_blue_item
, ((f_size
+ 1) & (~1)), byte_order
);
16930 static void xf86vidmodeSetGammaRamp(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16933 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGammaRamp_screen
, tvb
, *offsetp
, 2, byte_order
);
16935 f_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16936 proto_tree_add_item(t
, hf_x11_xf86vidmode_SetGammaRamp_size
, tvb
, *offsetp
, 2, byte_order
);
16938 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_SetGammaRamp_red
, hf_x11_xf86vidmode_SetGammaRamp_red_item
, ((f_size
+ 1) & (~1)), byte_order
);
16939 length
-= ((f_size
+ 1) & (~1)) * 2;
16940 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_SetGammaRamp_green
, hf_x11_xf86vidmode_SetGammaRamp_green_item
, ((f_size
+ 1) & (~1)), byte_order
);
16941 length
-= ((f_size
+ 1) & (~1)) * 2;
16942 listOfCard16(tvb
, offsetp
, t
, hf_x11_xf86vidmode_SetGammaRamp_blue
, hf_x11_xf86vidmode_SetGammaRamp_blue_item
, ((f_size
+ 1) & (~1)), byte_order
);
16943 length
-= ((f_size
+ 1) & (~1)) * 2;
16946 static void xf86vidmodeGetGammaRampSize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16948 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGammaRampSize_screen
, tvb
, *offsetp
, 2, byte_order
);
16950 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16953 static void xf86vidmodeGetGammaRampSize_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16955 int sequence_number
;
16957 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetGammaRampSize");
16960 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16962 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16963 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16964 "%d (xf86vidmode-GetGammaRampSize)", sequence_number
);
16966 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16968 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetGammaRampSize_reply_size
, tvb
, *offsetp
, 2, byte_order
);
16970 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
16974 static void xf86vidmodeGetPermissions(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
16976 proto_tree_add_item(t
, hf_x11_xf86vidmode_GetPermissions_screen
, tvb
, *offsetp
, 2, byte_order
);
16978 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
16981 static void xf86vidmodeGetPermissions_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
16983 int sequence_number
;
16985 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPermissions");
16988 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
16990 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
16991 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
16992 "%d (xf86vidmode-GetPermissions)", sequence_number
);
16994 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
16997 static int* const permissions_bits
[] = {
16998 &hf_x11_xf86vidmode_GetPermissions_reply_permissions_mask_Read
,
16999 &hf_x11_xf86vidmode_GetPermissions_reply_permissions_mask_Write
,
17002 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xf86vidmode_GetPermissions_reply_permissions
, ett_x11_rectangle
, permissions_bits
, byte_order
);
17005 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
17008 static const value_string xf86vidmode_extension_minor
[] = {
17009 { 0, "QueryVersion" },
17010 { 1, "GetModeLine" },
17011 { 2, "ModModeLine" },
17012 { 3, "SwitchMode" },
17013 { 4, "GetMonitor" },
17014 { 5, "LockModeSwitch" },
17015 { 6, "GetAllModeLines" },
17016 { 7, "AddModeLine" },
17017 { 8, "DeleteModeLine" },
17018 { 9, "ValidateModeLine" },
17019 { 10, "SwitchToMode" },
17020 { 11, "GetViewPort" },
17021 { 12, "SetViewPort" },
17022 { 13, "GetDotClocks" },
17023 { 14, "SetClientVersion" },
17024 { 15, "SetGamma" },
17025 { 16, "GetGamma" },
17026 { 17, "GetGammaRamp" },
17027 { 18, "SetGammaRamp" },
17028 { 19, "GetGammaRampSize" },
17029 { 20, "GetPermissions" },
17032 static const x11_event_info xf86vidmode_events
[] = {
17035 static const x11_reply_info xf86vidmode_replies
[] = {
17036 { 0, xf86vidmodeQueryVersion_Reply
},
17037 { 1, xf86vidmodeGetModeLine_Reply
},
17038 { 4, xf86vidmodeGetMonitor_Reply
},
17039 { 6, xf86vidmodeGetAllModeLines_Reply
},
17040 { 9, xf86vidmodeValidateModeLine_Reply
},
17041 { 11, xf86vidmodeGetViewPort_Reply
},
17042 { 13, xf86vidmodeGetDotClocks_Reply
},
17043 { 16, xf86vidmodeGetGamma_Reply
},
17044 { 17, xf86vidmodeGetGammaRamp_Reply
},
17045 { 19, xf86vidmodeGetGammaRampSize_Reply
},
17046 { 20, xf86vidmodeGetPermissions_Reply
},
17050 static void dispatch_xf86vidmode(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17053 minor
= CARD8(xf86vidmode_extension_minor
);
17054 length
= REQUEST_LENGTH();
17056 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
17057 val_to_str(minor
, xf86vidmode_extension_minor
,
17058 "<Unknown opcode %d>"));
17061 xf86vidmodeQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17064 xf86vidmodeGetModeLine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17067 xf86vidmodeModModeLine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17070 xf86vidmodeSwitchMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17073 xf86vidmodeGetMonitor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17076 xf86vidmodeLockModeSwitch(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17079 xf86vidmodeGetAllModeLines(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17082 xf86vidmodeAddModeLine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17085 xf86vidmodeDeleteModeLine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17088 xf86vidmodeValidateModeLine(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17091 xf86vidmodeSwitchToMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17094 xf86vidmodeGetViewPort(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17097 xf86vidmodeSetViewPort(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17100 xf86vidmodeGetDotClocks(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17103 xf86vidmodeSetClientVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17106 xf86vidmodeSetGamma(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17109 xf86vidmodeGetGamma(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17112 xf86vidmodeGetGammaRamp(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17115 xf86vidmodeSetGammaRamp(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17118 xf86vidmodeGetGammaRampSize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17121 xf86vidmodeGetPermissions(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17123 /* No need for a default case here, since Unknown is printed above,
17124 and UNDECODED() is taken care of by dissect_x11_request */
17128 static void register_xf86vidmode(void)
17130 set_handler("XFree86-VidModeExtension", dispatch_xf86vidmode
, xf86vidmode_errors
, xf86vidmode_events
, NULL
, xf86vidmode_replies
);
17133 static void xfixesQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17135 proto_tree_add_item(t
, hf_x11_xfixes_QueryVersion_client_major_version
, tvb
, *offsetp
, 4, byte_order
);
17137 proto_tree_add_item(t
, hf_x11_xfixes_QueryVersion_client_minor_version
, tvb
, *offsetp
, 4, byte_order
);
17140 static void xfixesQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17142 int sequence_number
;
17144 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
17147 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17149 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17150 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17151 "%d (xfixes-QueryVersion)", sequence_number
);
17153 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17155 proto_tree_add_item(t
, hf_x11_xfixes_QueryVersion_reply_major_version
, tvb
, *offsetp
, 4, byte_order
);
17157 proto_tree_add_item(t
, hf_x11_xfixes_QueryVersion_reply_minor_version
, tvb
, *offsetp
, 4, byte_order
);
17159 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
17163 static void xfixesChangeSaveSet(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17165 field8(tvb
, offsetp
, t
, hf_x11_xfixes_ChangeSaveSet_mode
, byte_order
);
17166 field8(tvb
, offsetp
, t
, hf_x11_xfixes_ChangeSaveSet_target
, byte_order
);
17167 field8(tvb
, offsetp
, t
, hf_x11_xfixes_ChangeSaveSet_map
, byte_order
);
17168 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17170 proto_tree_add_item(t
, hf_x11_xfixes_ChangeSaveSet_window
, tvb
, *offsetp
, 4, byte_order
);
17174 static void xfixesSelectSelectionInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17176 proto_tree_add_item(t
, hf_x11_xfixes_SelectSelectionInput_window
, tvb
, *offsetp
, 4, byte_order
);
17178 proto_tree_add_item(t
, hf_x11_xfixes_SelectSelectionInput_selection
, tvb
, *offsetp
, 4, byte_order
);
17181 static int* const event_mask_bits
[] = {
17182 &hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SetSelectionOwner
,
17183 &hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SelectionWindowDestroy
,
17184 &hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SelectionClientClose
,
17187 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xfixes_SelectSelectionInput_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
17192 static void xfixesCursorNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17194 field8(tvb
, offsetp
, t
, hf_x11_xfixes_CursorNotify_subtype
, byte_order
);
17195 CARD16(event_sequencenumber
);
17196 proto_tree_add_item(t
, hf_x11_xfixes_CursorNotify_window
, tvb
, *offsetp
, 4, byte_order
);
17198 proto_tree_add_item(t
, hf_x11_xfixes_CursorNotify_cursor_serial
, tvb
, *offsetp
, 4, byte_order
);
17200 proto_tree_add_item(t
, hf_x11_xfixes_CursorNotify_timestamp
, tvb
, *offsetp
, 4, byte_order
);
17202 field32(tvb
, offsetp
, t
, hf_x11_xfixes_CursorNotify_name
, byte_order
);
17203 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
17208 static void xfixesSelectCursorInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17210 proto_tree_add_item(t
, hf_x11_xfixes_SelectCursorInput_window
, tvb
, *offsetp
, 4, byte_order
);
17213 static int* const event_mask_bits
[] = {
17214 &hf_x11_xfixes_SelectCursorInput_event_mask_mask_DisplayCursor
,
17217 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xfixes_SelectCursorInput_event_mask
, ett_x11_rectangle
, event_mask_bits
, byte_order
);
17222 static void xfixesGetCursorImage(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
17225 static void xfixesGetCursorImage_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17227 int sequence_number
;
17231 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCursorImage");
17234 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17236 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17237 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17238 "%d (xfixes-GetCursorImage)", sequence_number
);
17240 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17242 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_x
, tvb
, *offsetp
, 2, byte_order
);
17244 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_y
, tvb
, *offsetp
, 2, byte_order
);
17246 f_width
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17247 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_width
, tvb
, *offsetp
, 2, byte_order
);
17249 f_height
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17250 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_height
, tvb
, *offsetp
, 2, byte_order
);
17252 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_xhot
, tvb
, *offsetp
, 2, byte_order
);
17254 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_yhot
, tvb
, *offsetp
, 2, byte_order
);
17256 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImage_reply_cursor_serial
, tvb
, *offsetp
, 4, byte_order
);
17258 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
17260 listOfCard32(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorImage_reply_cursor_image
, hf_x11_xfixes_GetCursorImage_reply_cursor_image_item
, (f_width
* f_height
), byte_order
);
17263 static void xfixesCreateRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17265 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegion_region
, tvb
, *offsetp
, 4, byte_order
);
17267 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 8) / 8);
17270 static void xfixesCreateRegionFromBitmap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17272 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromBitmap_region
, tvb
, *offsetp
, 4, byte_order
);
17274 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromBitmap_bitmap
, tvb
, *offsetp
, 4, byte_order
);
17278 static void xfixesCreateRegionFromWindow(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17280 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromWindow_region
, tvb
, *offsetp
, 4, byte_order
);
17282 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromWindow_window
, tvb
, *offsetp
, 4, byte_order
);
17284 field8(tvb
, offsetp
, t
, hf_x11_xfixes_CreateRegionFromWindow_kind
, byte_order
);
17285 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
17289 static void xfixesCreateRegionFromGC(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17291 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromGC_region
, tvb
, *offsetp
, 4, byte_order
);
17293 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromGC_gc
, tvb
, *offsetp
, 4, byte_order
);
17297 static void xfixesCreateRegionFromPicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17299 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromPicture_region
, tvb
, *offsetp
, 4, byte_order
);
17301 proto_tree_add_item(t
, hf_x11_xfixes_CreateRegionFromPicture_picture
, tvb
, *offsetp
, 4, byte_order
);
17305 static void xfixesDestroyRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17307 proto_tree_add_item(t
, hf_x11_xfixes_DestroyRegion_region
, tvb
, *offsetp
, 4, byte_order
);
17311 static void xfixesSetRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17313 proto_tree_add_item(t
, hf_x11_xfixes_SetRegion_region
, tvb
, *offsetp
, 4, byte_order
);
17315 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (length
- 8) / 8);
17318 static void xfixesCopyRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17320 proto_tree_add_item(t
, hf_x11_xfixes_CopyRegion_source
, tvb
, *offsetp
, 4, byte_order
);
17322 proto_tree_add_item(t
, hf_x11_xfixes_CopyRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17326 static void xfixesUnionRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17328 proto_tree_add_item(t
, hf_x11_xfixes_UnionRegion_source1
, tvb
, *offsetp
, 4, byte_order
);
17330 proto_tree_add_item(t
, hf_x11_xfixes_UnionRegion_source2
, tvb
, *offsetp
, 4, byte_order
);
17332 proto_tree_add_item(t
, hf_x11_xfixes_UnionRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17336 static void xfixesIntersectRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17338 proto_tree_add_item(t
, hf_x11_xfixes_IntersectRegion_source1
, tvb
, *offsetp
, 4, byte_order
);
17340 proto_tree_add_item(t
, hf_x11_xfixes_IntersectRegion_source2
, tvb
, *offsetp
, 4, byte_order
);
17342 proto_tree_add_item(t
, hf_x11_xfixes_IntersectRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17346 static void xfixesSubtractRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17348 proto_tree_add_item(t
, hf_x11_xfixes_SubtractRegion_source1
, tvb
, *offsetp
, 4, byte_order
);
17350 proto_tree_add_item(t
, hf_x11_xfixes_SubtractRegion_source2
, tvb
, *offsetp
, 4, byte_order
);
17352 proto_tree_add_item(t
, hf_x11_xfixes_SubtractRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17356 static void xfixesInvertRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17358 proto_tree_add_item(t
, hf_x11_xfixes_InvertRegion_source
, tvb
, *offsetp
, 4, byte_order
);
17360 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, 1);
17361 proto_tree_add_item(t
, hf_x11_xfixes_InvertRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17365 static void xfixesTranslateRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17367 proto_tree_add_item(t
, hf_x11_xfixes_TranslateRegion_region
, tvb
, *offsetp
, 4, byte_order
);
17369 proto_tree_add_item(t
, hf_x11_xfixes_TranslateRegion_dx
, tvb
, *offsetp
, 2, byte_order
);
17371 proto_tree_add_item(t
, hf_x11_xfixes_TranslateRegion_dy
, tvb
, *offsetp
, 2, byte_order
);
17375 static void xfixesRegionExtents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17377 proto_tree_add_item(t
, hf_x11_xfixes_RegionExtents_source
, tvb
, *offsetp
, 4, byte_order
);
17379 proto_tree_add_item(t
, hf_x11_xfixes_RegionExtents_destination
, tvb
, *offsetp
, 4, byte_order
);
17383 static void xfixesFetchRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17385 proto_tree_add_item(t
, hf_x11_xfixes_FetchRegion_region
, tvb
, *offsetp
, 4, byte_order
);
17388 static void xfixesFetchRegion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17390 int sequence_number
;
17393 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-FetchRegion");
17396 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17398 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17399 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17400 "%d (xfixes-FetchRegion)", sequence_number
);
17402 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
17403 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17405 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, 1);
17406 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
17408 struct_xproto_RECTANGLE(tvb
, offsetp
, t
, byte_order
, (f_length
/ 2));
17411 static void xfixesSetGCClipRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17413 proto_tree_add_item(t
, hf_x11_xfixes_SetGCClipRegion_gc
, tvb
, *offsetp
, 4, byte_order
);
17415 field32(tvb
, offsetp
, t
, hf_x11_xfixes_SetGCClipRegion_region
, byte_order
);
17416 proto_tree_add_item(t
, hf_x11_xfixes_SetGCClipRegion_x_origin
, tvb
, *offsetp
, 2, byte_order
);
17418 proto_tree_add_item(t
, hf_x11_xfixes_SetGCClipRegion_y_origin
, tvb
, *offsetp
, 2, byte_order
);
17422 static void xfixesSetWindowShapeRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17424 proto_tree_add_item(t
, hf_x11_xfixes_SetWindowShapeRegion_dest
, tvb
, *offsetp
, 4, byte_order
);
17426 field8(tvb
, offsetp
, t
, hf_x11_xfixes_SetWindowShapeRegion_dest_kind
, byte_order
);
17427 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
17429 proto_tree_add_item(t
, hf_x11_xfixes_SetWindowShapeRegion_x_offset
, tvb
, *offsetp
, 2, byte_order
);
17431 proto_tree_add_item(t
, hf_x11_xfixes_SetWindowShapeRegion_y_offset
, tvb
, *offsetp
, 2, byte_order
);
17433 field32(tvb
, offsetp
, t
, hf_x11_xfixes_SetWindowShapeRegion_region
, byte_order
);
17436 static void xfixesSetPictureClipRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17438 proto_tree_add_item(t
, hf_x11_xfixes_SetPictureClipRegion_picture
, tvb
, *offsetp
, 4, byte_order
);
17440 field32(tvb
, offsetp
, t
, hf_x11_xfixes_SetPictureClipRegion_region
, byte_order
);
17441 proto_tree_add_item(t
, hf_x11_xfixes_SetPictureClipRegion_x_origin
, tvb
, *offsetp
, 2, byte_order
);
17443 proto_tree_add_item(t
, hf_x11_xfixes_SetPictureClipRegion_y_origin
, tvb
, *offsetp
, 2, byte_order
);
17447 static void xfixesSetCursorName(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17450 proto_tree_add_item(t
, hf_x11_xfixes_SetCursorName_cursor
, tvb
, *offsetp
, 4, byte_order
);
17452 f_nbytes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17453 proto_tree_add_item(t
, hf_x11_xfixes_SetCursorName_nbytes
, tvb
, *offsetp
, 2, byte_order
);
17455 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
17457 listOfByte(tvb
, offsetp
, t
, hf_x11_xfixes_SetCursorName_name
, f_nbytes
, byte_order
);
17458 length
-= f_nbytes
* 1;
17461 static void xfixesGetCursorName(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17463 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorName_cursor
, tvb
, *offsetp
, 4, byte_order
);
17466 static void xfixesGetCursorName_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17468 int sequence_number
;
17471 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCursorName");
17474 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17476 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17477 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17478 "%d (xfixes-GetCursorName)", sequence_number
);
17480 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17482 field32(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorName_reply_atom
, byte_order
);
17483 f_nbytes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17484 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorName_reply_nbytes
, tvb
, *offsetp
, 2, byte_order
);
17486 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 18, ENC_NA
);
17488 listOfByte(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorName_reply_name
, f_nbytes
, byte_order
);
17491 static void xfixesGetCursorImageAndName(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
17494 static void xfixesGetCursorImageAndName_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17496 int sequence_number
;
17501 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCursorImageAndName");
17504 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17506 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17507 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17508 "%d (xfixes-GetCursorImageAndName)", sequence_number
);
17510 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17512 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_x
, tvb
, *offsetp
, 2, byte_order
);
17514 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_y
, tvb
, *offsetp
, 2, byte_order
);
17516 f_width
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17517 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_width
, tvb
, *offsetp
, 2, byte_order
);
17519 f_height
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17520 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_height
, tvb
, *offsetp
, 2, byte_order
);
17522 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_xhot
, tvb
, *offsetp
, 2, byte_order
);
17524 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_yhot
, tvb
, *offsetp
, 2, byte_order
);
17526 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_serial
, tvb
, *offsetp
, 4, byte_order
);
17528 field32(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_atom
, byte_order
);
17529 f_nbytes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17530 proto_tree_add_item(t
, hf_x11_xfixes_GetCursorImageAndName_reply_nbytes
, tvb
, *offsetp
, 2, byte_order
);
17532 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
17534 listOfCard32(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_image
, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_image_item
, (f_width
* f_height
), byte_order
);
17535 listOfByte(tvb
, offsetp
, t
, hf_x11_xfixes_GetCursorImageAndName_reply_name
, f_nbytes
, byte_order
);
17538 static void xfixesChangeCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17540 proto_tree_add_item(t
, hf_x11_xfixes_ChangeCursor_source
, tvb
, *offsetp
, 4, byte_order
);
17542 proto_tree_add_item(t
, hf_x11_xfixes_ChangeCursor_destination
, tvb
, *offsetp
, 4, byte_order
);
17546 static void xfixesChangeCursorByName(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17549 proto_tree_add_item(t
, hf_x11_xfixes_ChangeCursorByName_src
, tvb
, *offsetp
, 4, byte_order
);
17551 f_nbytes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17552 proto_tree_add_item(t
, hf_x11_xfixes_ChangeCursorByName_nbytes
, tvb
, *offsetp
, 2, byte_order
);
17554 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
17556 listOfByte(tvb
, offsetp
, t
, hf_x11_xfixes_ChangeCursorByName_name
, f_nbytes
, byte_order
);
17557 length
-= f_nbytes
* 1;
17560 static void xfixesExpandRegion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17562 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_source
, tvb
, *offsetp
, 4, byte_order
);
17564 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_destination
, tvb
, *offsetp
, 4, byte_order
);
17566 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_left
, tvb
, *offsetp
, 2, byte_order
);
17568 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_right
, tvb
, *offsetp
, 2, byte_order
);
17570 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_top
, tvb
, *offsetp
, 2, byte_order
);
17572 proto_tree_add_item(t
, hf_x11_xfixes_ExpandRegion_bottom
, tvb
, *offsetp
, 2, byte_order
);
17576 static void xfixesHideCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17578 proto_tree_add_item(t
, hf_x11_xfixes_HideCursor_window
, tvb
, *offsetp
, 4, byte_order
);
17582 static void xfixesShowCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17584 proto_tree_add_item(t
, hf_x11_xfixes_ShowCursor_window
, tvb
, *offsetp
, 4, byte_order
);
17588 static void xfixesCreatePointerBarrier(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17591 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_barrier
, tvb
, *offsetp
, 4, byte_order
);
17593 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_window
, tvb
, *offsetp
, 4, byte_order
);
17595 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_x1
, tvb
, *offsetp
, 2, byte_order
);
17597 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_y1
, tvb
, *offsetp
, 2, byte_order
);
17599 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_x2
, tvb
, *offsetp
, 2, byte_order
);
17601 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_y2
, tvb
, *offsetp
, 2, byte_order
);
17604 static int* const directions_bits
[] = {
17605 &hf_x11_xfixes_CreatePointerBarrier_directions_mask_PositiveX
,
17606 &hf_x11_xfixes_CreatePointerBarrier_directions_mask_PositiveY
,
17607 &hf_x11_xfixes_CreatePointerBarrier_directions_mask_NegativeX
,
17608 &hf_x11_xfixes_CreatePointerBarrier_directions_mask_NegativeY
,
17611 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xfixes_CreatePointerBarrier_directions
, ett_x11_rectangle
, directions_bits
, byte_order
);
17614 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
17616 f_num_devices
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17617 proto_tree_add_item(t
, hf_x11_xfixes_CreatePointerBarrier_num_devices
, tvb
, *offsetp
, 2, byte_order
);
17619 listOfCard16(tvb
, offsetp
, t
, hf_x11_xfixes_CreatePointerBarrier_devices
, hf_x11_xfixes_CreatePointerBarrier_devices_item
, f_num_devices
, byte_order
);
17620 length
-= f_num_devices
* 2;
17623 static void xfixesDeletePointerBarrier(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17625 proto_tree_add_item(t
, hf_x11_xfixes_DeletePointerBarrier_barrier
, tvb
, *offsetp
, 4, byte_order
);
17629 static void xfixesSetClientDisconnectMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17632 static int* const disconnect_mode_bits
[] = {
17633 &hf_x11_xfixes_SetClientDisconnectMode_disconnect_mode_mask_Terminate
,
17636 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xfixes_SetClientDisconnectMode_disconnect_mode
, ett_x11_rectangle
, disconnect_mode_bits
, byte_order
);
17641 static void xfixesGetClientDisconnectMode(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
17644 static void xfixesGetClientDisconnectMode_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17646 int sequence_number
;
17648 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetClientDisconnectMode");
17651 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17653 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17654 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17655 "%d (xfixes-GetClientDisconnectMode)", sequence_number
);
17657 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17660 static int* const disconnect_mode_bits
[] = {
17661 &hf_x11_xfixes_GetClientDisconnectMode_reply_disconnect_mode_mask_Terminate
,
17664 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xfixes_GetClientDisconnectMode_reply_disconnect_mode
, ett_x11_rectangle
, disconnect_mode_bits
, byte_order
);
17667 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
17670 static const value_string xfixes_extension_minor
[] = {
17671 { 0, "QueryVersion" },
17672 { 1, "ChangeSaveSet" },
17673 { 2, "SelectSelectionInput" },
17674 { 3, "SelectCursorInput" },
17675 { 4, "GetCursorImage" },
17676 { 5, "CreateRegion" },
17677 { 6, "CreateRegionFromBitmap" },
17678 { 7, "CreateRegionFromWindow" },
17679 { 8, "CreateRegionFromGC" },
17680 { 9, "CreateRegionFromPicture" },
17681 { 10, "DestroyRegion" },
17682 { 11, "SetRegion" },
17683 { 12, "CopyRegion" },
17684 { 13, "UnionRegion" },
17685 { 14, "IntersectRegion" },
17686 { 15, "SubtractRegion" },
17687 { 16, "InvertRegion" },
17688 { 17, "TranslateRegion" },
17689 { 18, "RegionExtents" },
17690 { 19, "FetchRegion" },
17691 { 20, "SetGCClipRegion" },
17692 { 21, "SetWindowShapeRegion" },
17693 { 22, "SetPictureClipRegion" },
17694 { 23, "SetCursorName" },
17695 { 24, "GetCursorName" },
17696 { 25, "GetCursorImageAndName" },
17697 { 26, "ChangeCursor" },
17698 { 27, "ChangeCursorByName" },
17699 { 28, "ExpandRegion" },
17700 { 29, "HideCursor" },
17701 { 30, "ShowCursor" },
17702 { 31, "CreatePointerBarrier" },
17703 { 32, "DeletePointerBarrier" },
17704 { 33, "SetClientDisconnectMode" },
17705 { 34, "GetClientDisconnectMode" },
17708 static const x11_event_info xfixes_events
[] = {
17709 { "xfixes-CursorNotify", xfixesCursorNotify
},
17712 static const x11_reply_info xfixes_replies
[] = {
17713 { 0, xfixesQueryVersion_Reply
},
17714 { 4, xfixesGetCursorImage_Reply
},
17715 { 19, xfixesFetchRegion_Reply
},
17716 { 24, xfixesGetCursorName_Reply
},
17717 { 25, xfixesGetCursorImageAndName_Reply
},
17718 { 34, xfixesGetClientDisconnectMode_Reply
},
17722 static void dispatch_xfixes(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17725 minor
= CARD8(xfixes_extension_minor
);
17726 length
= REQUEST_LENGTH();
17728 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
17729 val_to_str(minor
, xfixes_extension_minor
,
17730 "<Unknown opcode %d>"));
17733 xfixesQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17736 xfixesChangeSaveSet(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17739 xfixesSelectSelectionInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17742 xfixesSelectCursorInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17745 xfixesGetCursorImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17748 xfixesCreateRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17751 xfixesCreateRegionFromBitmap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17754 xfixesCreateRegionFromWindow(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17757 xfixesCreateRegionFromGC(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17760 xfixesCreateRegionFromPicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17763 xfixesDestroyRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17766 xfixesSetRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17769 xfixesCopyRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17772 xfixesUnionRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17775 xfixesIntersectRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17778 xfixesSubtractRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17781 xfixesInvertRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17784 xfixesTranslateRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17787 xfixesRegionExtents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17790 xfixesFetchRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17793 xfixesSetGCClipRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17796 xfixesSetWindowShapeRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17799 xfixesSetPictureClipRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17802 xfixesSetCursorName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17805 xfixesGetCursorName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17808 xfixesGetCursorImageAndName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17811 xfixesChangeCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17814 xfixesChangeCursorByName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17817 xfixesExpandRegion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17820 xfixesHideCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17823 xfixesShowCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17826 xfixesCreatePointerBarrier(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17829 xfixesDeletePointerBarrier(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17832 xfixesSetClientDisconnectMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17835 xfixesGetClientDisconnectMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
17837 /* No need for a default case here, since Unknown is printed above,
17838 and UNDECODED() is taken care of by dissect_x11_request */
17842 static void register_xfixes(void)
17844 set_handler("XFIXES", dispatch_xfixes
, xfixes_errors
, xfixes_events
, NULL
, xfixes_replies
);
17847 static void struct_xinerama_ScreenInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
17850 for (i
= 0; i
< count
; i
++) {
17854 item
= proto_tree_add_item(root
, hf_x11_struct_xinerama_ScreenInfo
, tvb
, *offsetp
, 8, ENC_NA
);
17855 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
17856 proto_tree_add_item(t
, hf_x11_struct_xinerama_ScreenInfo_x_org
, tvb
, *offsetp
, 2, byte_order
);
17858 proto_tree_add_item(t
, hf_x11_struct_xinerama_ScreenInfo_y_org
, tvb
, *offsetp
, 2, byte_order
);
17860 proto_tree_add_item(t
, hf_x11_struct_xinerama_ScreenInfo_width
, tvb
, *offsetp
, 2, byte_order
);
17862 proto_tree_add_item(t
, hf_x11_struct_xinerama_ScreenInfo_height
, tvb
, *offsetp
, 2, byte_order
);
17867 static void xineramaQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17869 proto_tree_add_item(t
, hf_x11_xinerama_QueryVersion_major
, tvb
, *offsetp
, 1, byte_order
);
17871 proto_tree_add_item(t
, hf_x11_xinerama_QueryVersion_minor
, tvb
, *offsetp
, 1, byte_order
);
17874 static void xineramaQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17876 int sequence_number
;
17878 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
17881 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17883 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17884 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17885 "%d (xinerama-QueryVersion)", sequence_number
);
17887 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17889 proto_tree_add_item(t
, hf_x11_xinerama_QueryVersion_reply_major
, tvb
, *offsetp
, 2, byte_order
);
17891 proto_tree_add_item(t
, hf_x11_xinerama_QueryVersion_reply_minor
, tvb
, *offsetp
, 2, byte_order
);
17895 static void xineramaGetState(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17897 proto_tree_add_item(t
, hf_x11_xinerama_GetState_window
, tvb
, *offsetp
, 4, byte_order
);
17900 static void xineramaGetState_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17902 int sequence_number
;
17904 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetState");
17907 proto_tree_add_item(t
, hf_x11_xinerama_GetState_reply_state
, tvb
, *offsetp
, 1, ENC_NA
);
17909 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17910 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17911 "%d (xinerama-GetState)", sequence_number
);
17913 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17915 proto_tree_add_item(t
, hf_x11_xinerama_GetState_reply_window
, tvb
, *offsetp
, 4, byte_order
);
17919 static void xineramaGetScreenCount(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17921 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenCount_window
, tvb
, *offsetp
, 4, byte_order
);
17924 static void xineramaGetScreenCount_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17926 int sequence_number
;
17928 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenCount");
17931 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenCount_reply_screen_count
, tvb
, *offsetp
, 1, ENC_NA
);
17933 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17934 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17935 "%d (xinerama-GetScreenCount)", sequence_number
);
17937 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17939 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenCount_reply_window
, tvb
, *offsetp
, 4, byte_order
);
17943 static void xineramaGetScreenSize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
17945 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_window
, tvb
, *offsetp
, 4, byte_order
);
17947 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_screen
, tvb
, *offsetp
, 4, byte_order
);
17950 static void xineramaGetScreenSize_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17952 int sequence_number
;
17954 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetScreenSize");
17957 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17959 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17960 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17961 "%d (xinerama-GetScreenSize)", sequence_number
);
17963 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17965 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_reply_width
, tvb
, *offsetp
, 4, byte_order
);
17967 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_reply_height
, tvb
, *offsetp
, 4, byte_order
);
17969 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_reply_window
, tvb
, *offsetp
, 4, byte_order
);
17971 proto_tree_add_item(t
, hf_x11_xinerama_GetScreenSize_reply_screen
, tvb
, *offsetp
, 4, byte_order
);
17975 static void xineramaIsActive(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
17978 static void xineramaIsActive_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
17980 int sequence_number
;
17982 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-IsActive");
17985 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
17987 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
17988 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
17989 "%d (xinerama-IsActive)", sequence_number
);
17991 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
17993 proto_tree_add_item(t
, hf_x11_xinerama_IsActive_reply_state
, tvb
, *offsetp
, 4, byte_order
);
17997 static void xineramaQueryScreens(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
18000 static void xineramaQueryScreens_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18002 int sequence_number
;
18005 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryScreens");
18008 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
18010 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18011 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18012 "%d (xinerama-QueryScreens)", sequence_number
);
18014 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18016 f_number
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
18017 proto_tree_add_item(t
, hf_x11_xinerama_QueryScreens_reply_number
, tvb
, *offsetp
, 4, byte_order
);
18019 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
18021 struct_xinerama_ScreenInfo(tvb
, offsetp
, t
, byte_order
, f_number
);
18023 static const value_string xinerama_extension_minor
[] = {
18024 { 0, "QueryVersion" },
18026 { 2, "GetScreenCount" },
18027 { 3, "GetScreenSize" },
18029 { 5, "QueryScreens" },
18032 static const x11_event_info xinerama_events
[] = {
18035 static const x11_reply_info xinerama_replies
[] = {
18036 { 0, xineramaQueryVersion_Reply
},
18037 { 1, xineramaGetState_Reply
},
18038 { 2, xineramaGetScreenCount_Reply
},
18039 { 3, xineramaGetScreenSize_Reply
},
18040 { 4, xineramaIsActive_Reply
},
18041 { 5, xineramaQueryScreens_Reply
},
18045 static void dispatch_xinerama(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18048 minor
= CARD8(xinerama_extension_minor
);
18049 length
= REQUEST_LENGTH();
18051 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
18052 val_to_str(minor
, xinerama_extension_minor
,
18053 "<Unknown opcode %d>"));
18056 xineramaQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18059 xineramaGetState(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18062 xineramaGetScreenCount(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18065 xineramaGetScreenSize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18068 xineramaIsActive(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18071 xineramaQueryScreens(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
18073 /* No need for a default case here, since Unknown is printed above,
18074 and UNDECODED() is taken care of by dissect_x11_request */
18078 static void register_xinerama(void)
18080 set_handler("XINERAMA", dispatch_xinerama
, xinerama_errors
, xinerama_events
, NULL
, xinerama_replies
);
18083 static void struct_xinput_FP3232(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18086 for (i
= 0; i
< count
; i
++) {
18090 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_FP3232
, tvb
, *offsetp
, 8, ENC_NA
);
18091 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18092 proto_tree_add_item(t
, hf_x11_struct_xinput_FP3232_integral
, tvb
, *offsetp
, 4, byte_order
);
18094 proto_tree_add_item(t
, hf_x11_struct_xinput_FP3232_frac
, tvb
, *offsetp
, 4, byte_order
);
18099 static void xinputGetExtensionVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18102 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18103 proto_tree_add_item(t
, hf_x11_xinput_GetExtensionVersion_name_len
, tvb
, *offsetp
, 2, byte_order
);
18105 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18107 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_GetExtensionVersion_name
, f_name_len
, byte_order
);
18108 length
-= f_name_len
* 1;
18110 static void xinputGetExtensionVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18112 int sequence_number
;
18114 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetExtensionVersion");
18117 proto_tree_add_item(t
, hf_x11_xinput_GetExtensionVersion_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18119 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18120 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18121 "%d (xinput-GetExtensionVersion)", sequence_number
);
18123 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18125 proto_tree_add_item(t
, hf_x11_xinput_GetExtensionVersion_reply_server_major
, tvb
, *offsetp
, 2, byte_order
);
18127 proto_tree_add_item(t
, hf_x11_xinput_GetExtensionVersion_reply_server_minor
, tvb
, *offsetp
, 2, byte_order
);
18129 proto_tree_add_item(t
, hf_x11_xinput_GetExtensionVersion_reply_present
, tvb
, *offsetp
, 1, byte_order
);
18131 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 19, ENC_NA
);
18135 static void struct_xinput_DeviceInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18138 for (i
= 0; i
< count
; i
++) {
18142 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_DeviceInfo
, tvb
, *offsetp
, 8, ENC_NA
);
18143 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18144 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceInfo_device_type
, tvb
, *offsetp
, 4, byte_order
);
18146 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceInfo_device_id
, tvb
, *offsetp
, 1, byte_order
);
18148 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceInfo_num_class_info
, tvb
, *offsetp
, 1, byte_order
);
18150 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceInfo_device_use
, byte_order
);
18151 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
18156 static void struct_xinput_AxisInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18159 for (i
= 0; i
< count
; i
++) {
18163 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_AxisInfo
, tvb
, *offsetp
, 12, ENC_NA
);
18164 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18165 proto_tree_add_item(t
, hf_x11_struct_xinput_AxisInfo_resolution
, tvb
, *offsetp
, 4, byte_order
);
18167 proto_tree_add_item(t
, hf_x11_struct_xinput_AxisInfo_minimum
, tvb
, *offsetp
, 4, byte_order
);
18169 proto_tree_add_item(t
, hf_x11_struct_xinput_AxisInfo_maximum
, tvb
, *offsetp
, 4, byte_order
);
18174 static int struct_size_xinput_InputInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
18180 static void struct_xinput_InputInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18183 for (i
= 0; i
< count
; i
++) {
18188 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_InputInfo
, tvb
, *offsetp
, struct_size_xinput_InputInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
18189 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18190 f_class_id
= field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputInfo_class_id
, byte_order
);
18191 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_len
, tvb
, *offsetp
, 1, byte_order
);
18193 if (f_class_id
== 0) {
18194 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Key_min_keycode
, tvb
, *offsetp
, 1, byte_order
);
18196 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Key_max_keycode
, tvb
, *offsetp
, 1, byte_order
);
18198 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Key_num_keys
, tvb
, *offsetp
, 2, byte_order
);
18200 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18203 if (f_class_id
== 1) {
18204 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Button_num_buttons
, tvb
, *offsetp
, 2, byte_order
);
18207 if (f_class_id
== 2) {
18209 f_axes_len
= tvb_get_uint8(tvb
, *offsetp
);
18210 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Valuator_axes_len
, tvb
, *offsetp
, 1, byte_order
);
18212 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputInfo_Valuator_mode
, byte_order
);
18213 proto_tree_add_item(t
, hf_x11_struct_xinput_InputInfo_Valuator_motion_size
, tvb
, *offsetp
, 4, byte_order
);
18215 struct_xinput_AxisInfo(tvb
, offsetp
, t
, byte_order
, f_axes_len
);
18220 static void xinputListInputDevices(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
18223 static void xinputListInputDevices_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18225 int sequence_number
;
18227 int sumof_devices
= 0;
18229 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListInputDevices");
18232 proto_tree_add_item(t
, hf_x11_xinput_ListInputDevices_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18234 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18235 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18236 "%d (xinput-ListInputDevices)", sequence_number
);
18238 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18240 f_devices_len
= tvb_get_uint8(tvb
, *offsetp
);
18241 proto_tree_add_item(t
, hf_x11_xinput_ListInputDevices_reply_devices_len
, tvb
, *offsetp
, 1, byte_order
);
18243 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18245 struct_xinput_DeviceInfo(tvb
, offsetp
, t
, byte_order
, f_devices_len
);
18246 struct_xinput_InputInfo(tvb
, offsetp
, t
, byte_order
, sumof_devices
);
18247 struct_xproto_STR(tvb
, offsetp
, t
, byte_order
, f_devices_len
);
18248 if (*offsetp
% 4) {
18249 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
18250 *offsetp
+= (4 - *offsetp
% 4);
18254 static void struct_xinput_InputClassInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18257 for (i
= 0; i
< count
; i
++) {
18261 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_InputClassInfo
, tvb
, *offsetp
, 2, ENC_NA
);
18262 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18263 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputClassInfo_class_id
, byte_order
);
18264 proto_tree_add_item(t
, hf_x11_struct_xinput_InputClassInfo_event_type_base
, tvb
, *offsetp
, 1, byte_order
);
18269 static void xinputOpenDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18271 proto_tree_add_item(t
, hf_x11_xinput_OpenDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18273 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18276 static void xinputOpenDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18278 int sequence_number
;
18281 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-OpenDevice");
18284 proto_tree_add_item(t
, hf_x11_xinput_OpenDevice_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18286 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18287 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18288 "%d (xinput-OpenDevice)", sequence_number
);
18290 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18292 f_num_classes
= tvb_get_uint8(tvb
, *offsetp
);
18293 proto_tree_add_item(t
, hf_x11_xinput_OpenDevice_reply_num_classes
, tvb
, *offsetp
, 1, byte_order
);
18295 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18297 struct_xinput_InputClassInfo(tvb
, offsetp
, t
, byte_order
, f_num_classes
);
18298 if (*offsetp
% 4) {
18299 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
18300 *offsetp
+= (4 - *offsetp
% 4);
18304 static void xinputCloseDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18306 proto_tree_add_item(t
, hf_x11_xinput_CloseDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18308 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18312 static void xinputSetDeviceMode(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18314 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceMode_device_id
, tvb
, *offsetp
, 1, byte_order
);
18316 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceMode_mode
, byte_order
);
18317 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18320 static void xinputSetDeviceMode_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18322 int sequence_number
;
18324 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetDeviceMode");
18327 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceMode_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18329 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18330 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18331 "%d (xinput-SetDeviceMode)", sequence_number
);
18333 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18335 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceMode_reply_status
, byte_order
);
18336 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18340 static void xinputSelectExtensionEvent(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18343 proto_tree_add_item(t
, hf_x11_xinput_SelectExtensionEvent_window
, tvb
, *offsetp
, 4, byte_order
);
18345 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18346 proto_tree_add_item(t
, hf_x11_xinput_SelectExtensionEvent_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18348 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18350 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_SelectExtensionEvent_classes
, hf_x11_xinput_SelectExtensionEvent_classes_item
, f_num_classes
, byte_order
);
18351 length
-= f_num_classes
* 4;
18354 static void xinputGetSelectedExtensionEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18356 proto_tree_add_item(t
, hf_x11_xinput_GetSelectedExtensionEvents_window
, tvb
, *offsetp
, 4, byte_order
);
18359 static void xinputGetSelectedExtensionEvents_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18361 int sequence_number
;
18362 int f_num_this_classes
;
18363 int f_num_all_classes
;
18365 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSelectedExtensionEvents");
18368 proto_tree_add_item(t
, hf_x11_xinput_GetSelectedExtensionEvents_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18370 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18371 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18372 "%d (xinput-GetSelectedExtensionEvents)", sequence_number
);
18374 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18376 f_num_this_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18377 proto_tree_add_item(t
, hf_x11_xinput_GetSelectedExtensionEvents_reply_num_this_classes
, tvb
, *offsetp
, 2, byte_order
);
18379 f_num_all_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18380 proto_tree_add_item(t
, hf_x11_xinput_GetSelectedExtensionEvents_reply_num_all_classes
, tvb
, *offsetp
, 2, byte_order
);
18382 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
18384 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GetSelectedExtensionEvents_reply_this_classes
, hf_x11_xinput_GetSelectedExtensionEvents_reply_this_classes_item
, f_num_this_classes
, byte_order
);
18385 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GetSelectedExtensionEvents_reply_all_classes
, hf_x11_xinput_GetSelectedExtensionEvents_reply_all_classes_item
, f_num_all_classes
, byte_order
);
18388 static void xinputChangeDeviceDontPropagateList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18391 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceDontPropagateList_window
, tvb
, *offsetp
, 4, byte_order
);
18393 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18394 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceDontPropagateList_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18396 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceDontPropagateList_mode
, byte_order
);
18397 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
18399 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceDontPropagateList_classes
, hf_x11_xinput_ChangeDeviceDontPropagateList_classes_item
, f_num_classes
, byte_order
);
18400 length
-= f_num_classes
* 4;
18403 static void xinputGetDeviceDontPropagateList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18405 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceDontPropagateList_window
, tvb
, *offsetp
, 4, byte_order
);
18408 static void xinputGetDeviceDontPropagateList_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18410 int sequence_number
;
18413 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceDontPropagateList");
18416 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceDontPropagateList_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18418 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18419 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18420 "%d (xinput-GetDeviceDontPropagateList)", sequence_number
);
18422 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18424 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18425 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceDontPropagateList_reply_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18427 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
18429 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceDontPropagateList_reply_classes
, hf_x11_xinput_GetDeviceDontPropagateList_reply_classes_item
, f_num_classes
, byte_order
);
18432 static int struct_size_xinput_DeviceTimeCoord(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
, int p_num_axes
)
18435 size
+= p_num_axes
* 4;
18439 static void struct_xinput_DeviceTimeCoord(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
, int p_num_axes
)
18442 for (i
= 0; i
< count
; i
++) {
18446 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_DeviceTimeCoord
, tvb
, *offsetp
, struct_size_xinput_DeviceTimeCoord(tvb
, offsetp
, byte_order
, p_num_axes
), ENC_NA
);
18447 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18448 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceTimeCoord_time
, tvb
, *offsetp
, 4, byte_order
);
18450 listOfInt32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceTimeCoord_axisvalues
, hf_x11_struct_xinput_DeviceTimeCoord_axisvalues_item
, p_num_axes
, byte_order
);
18454 static void xinputGetDeviceMotionEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18456 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceMotionEvents_start
, tvb
, *offsetp
, 4, byte_order
);
18458 field32(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceMotionEvents_stop
, byte_order
);
18459 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceMotionEvents_device_id
, tvb
, *offsetp
, 1, byte_order
);
18461 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18464 static void xinputGetDeviceMotionEvents_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18466 int sequence_number
;
18470 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceMotionEvents");
18473 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceMotionEvents_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18475 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18476 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18477 "%d (xinput-GetDeviceMotionEvents)", sequence_number
);
18479 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18481 f_num_events
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
18482 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceMotionEvents_reply_num_events
, tvb
, *offsetp
, 4, byte_order
);
18484 f_num_axes
= tvb_get_uint8(tvb
, *offsetp
);
18485 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceMotionEvents_reply_num_axes
, tvb
, *offsetp
, 1, byte_order
);
18487 field8(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceMotionEvents_reply_device_mode
, byte_order
);
18488 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 18, ENC_NA
);
18490 struct_xinput_DeviceTimeCoord(tvb
, offsetp
, t
, byte_order
, f_num_events
, f_num_axes
);
18493 static void xinputChangeKeyboardDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18495 proto_tree_add_item(t
, hf_x11_xinput_ChangeKeyboardDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18497 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18500 static void xinputChangeKeyboardDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18502 int sequence_number
;
18504 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ChangeKeyboardDevice");
18507 proto_tree_add_item(t
, hf_x11_xinput_ChangeKeyboardDevice_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18509 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18510 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18511 "%d (xinput-ChangeKeyboardDevice)", sequence_number
);
18513 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18515 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeKeyboardDevice_reply_status
, byte_order
);
18516 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18520 static void xinputChangePointerDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18522 proto_tree_add_item(t
, hf_x11_xinput_ChangePointerDevice_x_axis
, tvb
, *offsetp
, 1, byte_order
);
18524 proto_tree_add_item(t
, hf_x11_xinput_ChangePointerDevice_y_axis
, tvb
, *offsetp
, 1, byte_order
);
18526 proto_tree_add_item(t
, hf_x11_xinput_ChangePointerDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18528 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
18531 static void xinputChangePointerDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18533 int sequence_number
;
18535 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ChangePointerDevice");
18538 proto_tree_add_item(t
, hf_x11_xinput_ChangePointerDevice_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18540 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18541 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18542 "%d (xinput-ChangePointerDevice)", sequence_number
);
18544 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18546 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangePointerDevice_reply_status
, byte_order
);
18547 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18551 static void xinputGrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18554 proto_tree_add_item(t
, hf_x11_xinput_GrabDevice_grab_window
, tvb
, *offsetp
, 4, byte_order
);
18556 field32(tvb
, offsetp
, t
, hf_x11_xinput_GrabDevice_time
, byte_order
);
18557 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18558 proto_tree_add_item(t
, hf_x11_xinput_GrabDevice_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18560 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDevice_this_device_mode
, byte_order
);
18561 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDevice_other_device_mode
, byte_order
);
18562 proto_tree_add_item(t
, hf_x11_xinput_GrabDevice_owner_events
, tvb
, *offsetp
, 1, byte_order
);
18564 proto_tree_add_item(t
, hf_x11_xinput_GrabDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18566 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18568 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GrabDevice_classes
, hf_x11_xinput_GrabDevice_classes_item
, f_num_classes
, byte_order
);
18569 length
-= f_num_classes
* 4;
18571 static void xinputGrabDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18573 int sequence_number
;
18575 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GrabDevice");
18578 proto_tree_add_item(t
, hf_x11_xinput_GrabDevice_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18580 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18581 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18582 "%d (xinput-GrabDevice)", sequence_number
);
18584 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18586 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDevice_reply_status
, byte_order
);
18587 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
18591 static void xinputUngrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18593 field32(tvb
, offsetp
, t
, hf_x11_xinput_UngrabDevice_time
, byte_order
);
18594 proto_tree_add_item(t
, hf_x11_xinput_UngrabDevice_device_id
, tvb
, *offsetp
, 1, byte_order
);
18596 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18600 static void xinputGrabDeviceKey(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18603 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceKey_grab_window
, tvb
, *offsetp
, 4, byte_order
);
18605 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18606 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceKey_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18609 static int* const modifiers_bits
[] = {
18610 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_Shift
,
18611 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_Lock
,
18612 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_Control
,
18613 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_1
,
18614 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_2
,
18615 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_3
,
18616 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_4
,
18617 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_5
,
18618 &hf_x11_xinput_GrabDeviceKey_modifiers_mask_Any
,
18621 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_GrabDeviceKey_modifiers
, ett_x11_rectangle
, modifiers_bits
, byte_order
);
18624 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceKey_modifier_device
, byte_order
);
18625 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceKey_grabbed_device
, tvb
, *offsetp
, 1, byte_order
);
18627 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceKey_key
, byte_order
);
18628 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceKey_this_device_mode
, byte_order
);
18629 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceKey_other_device_mode
, byte_order
);
18630 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceKey_owner_events
, tvb
, *offsetp
, 1, byte_order
);
18632 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18634 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceKey_classes
, hf_x11_xinput_GrabDeviceKey_classes_item
, f_num_classes
, byte_order
);
18635 length
-= f_num_classes
* 4;
18638 static void xinputUngrabDeviceKey(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18640 proto_tree_add_item(t
, hf_x11_xinput_UngrabDeviceKey_grabWindow
, tvb
, *offsetp
, 4, byte_order
);
18643 static int* const modifiers_bits
[] = {
18644 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Shift
,
18645 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Lock
,
18646 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Control
,
18647 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_1
,
18648 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_2
,
18649 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_3
,
18650 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_4
,
18651 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_5
,
18652 &hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Any
,
18655 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_UngrabDeviceKey_modifiers
, ett_x11_rectangle
, modifiers_bits
, byte_order
);
18658 field8(tvb
, offsetp
, t
, hf_x11_xinput_UngrabDeviceKey_modifier_device
, byte_order
);
18659 field8(tvb
, offsetp
, t
, hf_x11_xinput_UngrabDeviceKey_key
, byte_order
);
18660 proto_tree_add_item(t
, hf_x11_xinput_UngrabDeviceKey_grabbed_device
, tvb
, *offsetp
, 1, byte_order
);
18664 static void xinputGrabDeviceButton(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18667 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceButton_grab_window
, tvb
, *offsetp
, 4, byte_order
);
18669 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceButton_grabbed_device
, tvb
, *offsetp
, 1, byte_order
);
18671 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceButton_modifier_device
, byte_order
);
18672 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18673 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceButton_num_classes
, tvb
, *offsetp
, 2, byte_order
);
18676 static int* const modifiers_bits
[] = {
18677 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_Shift
,
18678 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_Lock
,
18679 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_Control
,
18680 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_1
,
18681 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_2
,
18682 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_3
,
18683 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_4
,
18684 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_5
,
18685 &hf_x11_xinput_GrabDeviceButton_modifiers_mask_Any
,
18688 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_GrabDeviceButton_modifiers
, ett_x11_rectangle
, modifiers_bits
, byte_order
);
18691 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceButton_this_device_mode
, byte_order
);
18692 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceButton_other_device_mode
, byte_order
);
18693 field8(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceButton_button
, byte_order
);
18694 proto_tree_add_item(t
, hf_x11_xinput_GrabDeviceButton_owner_events
, tvb
, *offsetp
, 1, byte_order
);
18696 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18698 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GrabDeviceButton_classes
, hf_x11_xinput_GrabDeviceButton_classes_item
, f_num_classes
, byte_order
);
18699 length
-= f_num_classes
* 4;
18702 static void xinputUngrabDeviceButton(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18704 proto_tree_add_item(t
, hf_x11_xinput_UngrabDeviceButton_grab_window
, tvb
, *offsetp
, 4, byte_order
);
18707 static int* const modifiers_bits
[] = {
18708 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Shift
,
18709 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Lock
,
18710 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Control
,
18711 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_1
,
18712 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_2
,
18713 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_3
,
18714 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_4
,
18715 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_5
,
18716 &hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Any
,
18719 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_UngrabDeviceButton_modifiers
, ett_x11_rectangle
, modifiers_bits
, byte_order
);
18722 field8(tvb
, offsetp
, t
, hf_x11_xinput_UngrabDeviceButton_modifier_device
, byte_order
);
18723 field8(tvb
, offsetp
, t
, hf_x11_xinput_UngrabDeviceButton_button
, byte_order
);
18724 proto_tree_add_item(t
, hf_x11_xinput_UngrabDeviceButton_grabbed_device
, tvb
, *offsetp
, 1, byte_order
);
18726 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18730 static void xinputAllowDeviceEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18732 field32(tvb
, offsetp
, t
, hf_x11_xinput_AllowDeviceEvents_time
, byte_order
);
18733 field8(tvb
, offsetp
, t
, hf_x11_xinput_AllowDeviceEvents_mode
, byte_order
);
18734 proto_tree_add_item(t
, hf_x11_xinput_AllowDeviceEvents_device_id
, tvb
, *offsetp
, 1, byte_order
);
18736 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18740 static void xinputGetDeviceFocus(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18742 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceFocus_device_id
, tvb
, *offsetp
, 1, byte_order
);
18744 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18747 static void xinputGetDeviceFocus_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18749 int sequence_number
;
18751 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceFocus");
18754 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceFocus_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18756 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18757 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18758 "%d (xinput-GetDeviceFocus)", sequence_number
);
18760 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18762 field32(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceFocus_reply_focus
, byte_order
);
18763 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceFocus_reply_time
, tvb
, *offsetp
, 4, byte_order
);
18765 field8(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceFocus_reply_revert_to
, byte_order
);
18766 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
18770 static void xinputSetDeviceFocus(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18772 field32(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceFocus_focus
, byte_order
);
18773 field32(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceFocus_time
, byte_order
);
18774 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceFocus_revert_to
, byte_order
);
18775 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceFocus_device_id
, tvb
, *offsetp
, 1, byte_order
);
18777 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18781 static int struct_size_xinput_FeedbackState(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
18787 static void struct_xinput_FeedbackState(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18790 for (i
= 0; i
< count
; i
++) {
18795 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_FeedbackState
, tvb
, *offsetp
, struct_size_xinput_FeedbackState(tvb
, offsetp
, byte_order
), ENC_NA
);
18796 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18797 f_class_id
= field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_FeedbackState_class_id
, byte_order
);
18798 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_feedback_id
, tvb
, *offsetp
, 1, byte_order
);
18800 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_len
, tvb
, *offsetp
, 2, byte_order
);
18802 if (f_class_id
== 0) {
18803 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_pitch
, tvb
, *offsetp
, 2, byte_order
);
18805 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_duration
, tvb
, *offsetp
, 2, byte_order
);
18807 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_led_mask
, tvb
, *offsetp
, 4, byte_order
);
18809 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_led_values
, tvb
, *offsetp
, 4, byte_order
);
18811 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_global_auto_repeat
, tvb
, *offsetp
, 1, byte_order
);
18813 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_click
, tvb
, *offsetp
, 1, byte_order
);
18815 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Keyboard_percent
, tvb
, *offsetp
, 1, byte_order
);
18817 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
18819 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xinput_FeedbackState_Keyboard_auto_repeats
, 32, byte_order
);
18821 if (f_class_id
== 1) {
18822 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18824 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Pointer_accel_num
, tvb
, *offsetp
, 2, byte_order
);
18826 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Pointer_accel_denom
, tvb
, *offsetp
, 2, byte_order
);
18828 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Pointer_threshold
, tvb
, *offsetp
, 2, byte_order
);
18831 if (f_class_id
== 2) {
18833 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_String_max_symbols
, tvb
, *offsetp
, 2, byte_order
);
18835 f_num_keysyms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18836 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_String_num_keysyms
, tvb
, *offsetp
, 2, byte_order
);
18838 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_FeedbackState_String_keysyms
, hf_x11_struct_xinput_FeedbackState_String_keysyms_item
, f_num_keysyms
, byte_order
);
18840 if (f_class_id
== 3) {
18841 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Integer_resolution
, tvb
, *offsetp
, 4, byte_order
);
18843 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Integer_min_value
, tvb
, *offsetp
, 4, byte_order
);
18845 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Integer_max_value
, tvb
, *offsetp
, 4, byte_order
);
18848 if (f_class_id
== 4) {
18849 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Led_led_mask
, tvb
, *offsetp
, 4, byte_order
);
18851 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Led_led_values
, tvb
, *offsetp
, 4, byte_order
);
18854 if (f_class_id
== 5) {
18855 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Bell_percent
, tvb
, *offsetp
, 1, byte_order
);
18857 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18859 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Bell_pitch
, tvb
, *offsetp
, 2, byte_order
);
18861 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackState_Bell_duration
, tvb
, *offsetp
, 2, byte_order
);
18867 static void xinputGetFeedbackControl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18869 proto_tree_add_item(t
, hf_x11_xinput_GetFeedbackControl_device_id
, tvb
, *offsetp
, 1, byte_order
);
18871 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18874 static void xinputGetFeedbackControl_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
18876 int sequence_number
;
18877 int f_num_feedbacks
;
18879 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetFeedbackControl");
18882 proto_tree_add_item(t
, hf_x11_xinput_GetFeedbackControl_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
18884 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18885 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
18886 "%d (xinput-GetFeedbackControl)", sequence_number
);
18888 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
18890 f_num_feedbacks
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18891 proto_tree_add_item(t
, hf_x11_xinput_GetFeedbackControl_reply_num_feedbacks
, tvb
, *offsetp
, 2, byte_order
);
18893 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
18895 struct_xinput_FeedbackState(tvb
, offsetp
, t
, byte_order
, f_num_feedbacks
);
18898 static int struct_size_xinput_FeedbackCtl(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
18904 static void struct_xinput_FeedbackCtl(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
18907 for (i
= 0; i
< count
; i
++) {
18912 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_FeedbackCtl
, tvb
, *offsetp
, struct_size_xinput_FeedbackCtl(tvb
, offsetp
, byte_order
), ENC_NA
);
18913 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
18914 f_class_id
= field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_FeedbackCtl_class_id
, byte_order
);
18915 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_feedback_id
, tvb
, *offsetp
, 1, byte_order
);
18917 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_len
, tvb
, *offsetp
, 2, byte_order
);
18919 if (f_class_id
== 0) {
18920 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_key
, tvb
, *offsetp
, 1, byte_order
);
18922 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_auto_repeat_mode
, tvb
, *offsetp
, 1, byte_order
);
18924 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_key_click_percent
, tvb
, *offsetp
, 1, byte_order
);
18926 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_bell_percent
, tvb
, *offsetp
, 1, byte_order
);
18928 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_bell_pitch
, tvb
, *offsetp
, 2, byte_order
);
18930 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_bell_duration
, tvb
, *offsetp
, 2, byte_order
);
18932 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_led_mask
, tvb
, *offsetp
, 4, byte_order
);
18934 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Keyboard_led_values
, tvb
, *offsetp
, 4, byte_order
);
18937 if (f_class_id
== 1) {
18938 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18940 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Pointer_num
, tvb
, *offsetp
, 2, byte_order
);
18942 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Pointer_denom
, tvb
, *offsetp
, 2, byte_order
);
18944 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Pointer_threshold
, tvb
, *offsetp
, 2, byte_order
);
18947 if (f_class_id
== 2) {
18949 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
18951 f_num_keysyms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
18952 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_String_num_keysyms
, tvb
, *offsetp
, 2, byte_order
);
18954 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_FeedbackCtl_String_keysyms
, hf_x11_struct_xinput_FeedbackCtl_String_keysyms_item
, f_num_keysyms
, byte_order
);
18956 if (f_class_id
== 3) {
18957 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Integer_int_to_display
, tvb
, *offsetp
, 4, byte_order
);
18960 if (f_class_id
== 4) {
18961 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Led_led_mask
, tvb
, *offsetp
, 4, byte_order
);
18963 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Led_led_values
, tvb
, *offsetp
, 4, byte_order
);
18966 if (f_class_id
== 5) {
18967 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Bell_percent
, tvb
, *offsetp
, 1, byte_order
);
18969 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
18971 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Bell_pitch
, tvb
, *offsetp
, 2, byte_order
);
18973 proto_tree_add_item(t
, hf_x11_struct_xinput_FeedbackCtl_Bell_duration
, tvb
, *offsetp
, 2, byte_order
);
18979 static void xinputChangeFeedbackControl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
18982 static int* const mask_bits
[] = {
18983 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_AccelNum
,
18984 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_AccelDenom
,
18985 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_Threshold
,
18986 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_Duration
,
18987 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_Led
,
18988 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_LedMode
,
18989 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_Key
,
18990 &hf_x11_xinput_ChangeFeedbackControl_mask_mask_AutoRepeatMode
,
18993 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_ChangeFeedbackControl_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
18996 proto_tree_add_item(t
, hf_x11_xinput_ChangeFeedbackControl_device_id
, tvb
, *offsetp
, 1, byte_order
);
18998 proto_tree_add_item(t
, hf_x11_xinput_ChangeFeedbackControl_feedback_id
, tvb
, *offsetp
, 1, byte_order
);
19000 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19002 struct_xinput_FeedbackCtl(tvb
, offsetp
, t
, byte_order
, 1);
19005 static void xinputGetDeviceKeyMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19007 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceKeyMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19009 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceKeyMapping_first_keycode
, tvb
, *offsetp
, 1, byte_order
);
19011 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceKeyMapping_count
, tvb
, *offsetp
, 1, byte_order
);
19013 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19016 static void xinputGetDeviceKeyMapping_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19018 int sequence_number
;
19021 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceKeyMapping");
19024 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceKeyMapping_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19026 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19027 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19028 "%d (xinput-GetDeviceKeyMapping)", sequence_number
);
19030 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
19031 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19033 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms_per_keycode
, tvb
, *offsetp
, 1, byte_order
);
19035 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19037 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms
, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms_item
, f_length
, byte_order
);
19040 static void xinputChangeDeviceKeyMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19042 int f_keysyms_per_keycode
;
19043 int f_keycode_count
;
19044 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceKeyMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19046 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceKeyMapping_first_keycode
, tvb
, *offsetp
, 1, byte_order
);
19048 f_keysyms_per_keycode
= tvb_get_uint8(tvb
, *offsetp
);
19049 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms_per_keycode
, tvb
, *offsetp
, 1, byte_order
);
19051 f_keycode_count
= tvb_get_uint8(tvb
, *offsetp
);
19052 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceKeyMapping_keycode_count
, tvb
, *offsetp
, 1, byte_order
);
19054 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms
, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms_item
, (f_keycode_count
* f_keysyms_per_keycode
), byte_order
);
19055 length
-= (f_keycode_count
* f_keysyms_per_keycode
) * 4;
19058 static void xinputGetDeviceModifierMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19060 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceModifierMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19062 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19065 static void xinputGetDeviceModifierMapping_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19067 int sequence_number
;
19068 int f_keycodes_per_modifier
;
19070 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceModifierMapping");
19073 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceModifierMapping_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19075 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19076 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19077 "%d (xinput-GetDeviceModifierMapping)", sequence_number
);
19079 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19081 f_keycodes_per_modifier
= tvb_get_uint8(tvb
, *offsetp
);
19082 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceModifierMapping_reply_keycodes_per_modifier
, tvb
, *offsetp
, 1, byte_order
);
19084 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19086 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceModifierMapping_reply_keymaps
, (f_keycodes_per_modifier
* 8), byte_order
);
19089 static void xinputSetDeviceModifierMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19091 int f_keycodes_per_modifier
;
19092 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceModifierMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19094 f_keycodes_per_modifier
= tvb_get_uint8(tvb
, *offsetp
);
19095 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceModifierMapping_keycodes_per_modifier
, tvb
, *offsetp
, 1, byte_order
);
19097 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19099 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceModifierMapping_keymaps
, (f_keycodes_per_modifier
* 8), byte_order
);
19100 length
-= (f_keycodes_per_modifier
* 8) * 1;
19102 static void xinputSetDeviceModifierMapping_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19104 int sequence_number
;
19106 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetDeviceModifierMapping");
19109 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceModifierMapping_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19111 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19112 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19113 "%d (xinput-SetDeviceModifierMapping)", sequence_number
);
19115 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19117 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceModifierMapping_reply_status
, byte_order
);
19118 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19122 static void xinputGetDeviceButtonMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19124 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceButtonMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19126 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19129 static void xinputGetDeviceButtonMapping_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19131 int sequence_number
;
19134 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceButtonMapping");
19137 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceButtonMapping_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19139 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19140 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19141 "%d (xinput-GetDeviceButtonMapping)", sequence_number
);
19143 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19145 f_map_size
= tvb_get_uint8(tvb
, *offsetp
);
19146 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceButtonMapping_reply_map_size
, tvb
, *offsetp
, 1, byte_order
);
19148 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19150 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceButtonMapping_reply_map
, f_map_size
, byte_order
);
19151 if (*offsetp
% 4) {
19152 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19153 *offsetp
+= (4 - *offsetp
% 4);
19157 static void xinputSetDeviceButtonMapping(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19160 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceButtonMapping_device_id
, tvb
, *offsetp
, 1, byte_order
);
19162 f_map_size
= tvb_get_uint8(tvb
, *offsetp
);
19163 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceButtonMapping_map_size
, tvb
, *offsetp
, 1, byte_order
);
19165 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19167 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceButtonMapping_map
, f_map_size
, byte_order
);
19168 length
-= f_map_size
* 1;
19170 static void xinputSetDeviceButtonMapping_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19172 int sequence_number
;
19174 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetDeviceButtonMapping");
19177 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceButtonMapping_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19179 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19180 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19181 "%d (xinput-SetDeviceButtonMapping)", sequence_number
);
19183 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19185 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceButtonMapping_reply_status
, byte_order
);
19186 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19190 static int struct_size_xinput_InputState(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19196 static void struct_xinput_InputState(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19199 for (i
= 0; i
< count
; i
++) {
19204 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_InputState
, tvb
, *offsetp
, struct_size_xinput_InputState(tvb
, offsetp
, byte_order
), ENC_NA
);
19205 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19206 f_class_id
= field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputState_class_id
, byte_order
);
19207 proto_tree_add_item(t
, hf_x11_struct_xinput_InputState_len
, tvb
, *offsetp
, 1, byte_order
);
19209 if (f_class_id
== 0) {
19210 proto_tree_add_item(t
, hf_x11_struct_xinput_InputState_Key_num_keys
, tvb
, *offsetp
, 1, byte_order
);
19212 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19214 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputState_Key_keys
, 32, byte_order
);
19216 if (f_class_id
== 1) {
19217 proto_tree_add_item(t
, hf_x11_struct_xinput_InputState_Button_num_buttons
, tvb
, *offsetp
, 1, byte_order
);
19219 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19221 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputState_Button_buttons
, 32, byte_order
);
19223 if (f_class_id
== 2) {
19224 int f_num_valuators
;
19225 f_num_valuators
= tvb_get_uint8(tvb
, *offsetp
);
19226 proto_tree_add_item(t
, hf_x11_struct_xinput_InputState_Valuator_num_valuators
, tvb
, *offsetp
, 1, byte_order
);
19229 static int* const mode_bits
[] = {
19230 &hf_x11_struct_xinput_InputState_Valuator_mode_mask_DeviceModeAbsolute
,
19231 &hf_x11_struct_xinput_InputState_Valuator_mode_mask_OutOfProximity
,
19234 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xinput_InputState_Valuator_mode
, ett_x11_rectangle
, mode_bits
, byte_order
);
19237 listOfInt32(tvb
, offsetp
, t
, hf_x11_struct_xinput_InputState_Valuator_valuators
, hf_x11_struct_xinput_InputState_Valuator_valuators_item
, f_num_valuators
, byte_order
);
19242 static void xinputQueryDeviceState(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19244 proto_tree_add_item(t
, hf_x11_xinput_QueryDeviceState_device_id
, tvb
, *offsetp
, 1, byte_order
);
19246 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19249 static void xinputQueryDeviceState_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19251 int sequence_number
;
19254 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryDeviceState");
19257 proto_tree_add_item(t
, hf_x11_xinput_QueryDeviceState_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19259 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19260 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19261 "%d (xinput-QueryDeviceState)", sequence_number
);
19263 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19265 f_num_classes
= tvb_get_uint8(tvb
, *offsetp
);
19266 proto_tree_add_item(t
, hf_x11_xinput_QueryDeviceState_reply_num_classes
, tvb
, *offsetp
, 1, byte_order
);
19268 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19270 struct_xinput_InputState(tvb
, offsetp
, t
, byte_order
, f_num_classes
);
19273 static void xinputDeviceBell(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19275 proto_tree_add_item(t
, hf_x11_xinput_DeviceBell_device_id
, tvb
, *offsetp
, 1, byte_order
);
19277 proto_tree_add_item(t
, hf_x11_xinput_DeviceBell_feedback_id
, tvb
, *offsetp
, 1, byte_order
);
19279 proto_tree_add_item(t
, hf_x11_xinput_DeviceBell_feedback_class
, tvb
, *offsetp
, 1, byte_order
);
19281 proto_tree_add_item(t
, hf_x11_xinput_DeviceBell_percent
, tvb
, *offsetp
, 1, byte_order
);
19285 static void xinputSetDeviceValuators(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19287 int f_num_valuators
;
19288 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceValuators_device_id
, tvb
, *offsetp
, 1, byte_order
);
19290 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceValuators_first_valuator
, tvb
, *offsetp
, 1, byte_order
);
19292 f_num_valuators
= tvb_get_uint8(tvb
, *offsetp
);
19293 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceValuators_num_valuators
, tvb
, *offsetp
, 1, byte_order
);
19295 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19297 listOfInt32(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceValuators_valuators
, hf_x11_xinput_SetDeviceValuators_valuators_item
, f_num_valuators
, byte_order
);
19298 length
-= f_num_valuators
* 4;
19300 static void xinputSetDeviceValuators_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19302 int sequence_number
;
19304 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetDeviceValuators");
19307 proto_tree_add_item(t
, hf_x11_xinput_SetDeviceValuators_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19309 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19310 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19311 "%d (xinput-SetDeviceValuators)", sequence_number
);
19313 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19315 field8(tvb
, offsetp
, t
, hf_x11_xinput_SetDeviceValuators_reply_status
, byte_order
);
19316 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19320 static int struct_size_xinput_DeviceState(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19326 static void struct_xinput_DeviceState(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19329 for (i
= 0; i
< count
; i
++) {
19334 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_DeviceState
, tvb
, *offsetp
, struct_size_xinput_DeviceState(tvb
, offsetp
, byte_order
), ENC_NA
);
19335 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19336 f_control_id
= field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceState_control_id
, byte_order
);
19337 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_len
, tvb
, *offsetp
, 2, byte_order
);
19339 if (f_control_id
== 1) {
19340 int f_num_valuators
;
19341 f_num_valuators
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
19342 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_resolution_num_valuators
, tvb
, *offsetp
, 4, byte_order
);
19344 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceState_resolution_resolution_values
, hf_x11_struct_xinput_DeviceState_resolution_resolution_values_item
, f_num_valuators
, byte_order
);
19345 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceState_resolution_resolution_min
, hf_x11_struct_xinput_DeviceState_resolution_resolution_min_item
, f_num_valuators
, byte_order
);
19346 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceState_resolution_resolution_max
, hf_x11_struct_xinput_DeviceState_resolution_resolution_max_item
, f_num_valuators
, byte_order
);
19348 if (f_control_id
== 2) {
19349 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_min_x
, tvb
, *offsetp
, 4, byte_order
);
19351 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_max_x
, tvb
, *offsetp
, 4, byte_order
);
19353 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_min_y
, tvb
, *offsetp
, 4, byte_order
);
19355 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_max_y
, tvb
, *offsetp
, 4, byte_order
);
19357 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_flip_x
, tvb
, *offsetp
, 4, byte_order
);
19359 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_flip_y
, tvb
, *offsetp
, 4, byte_order
);
19361 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_rotation
, tvb
, *offsetp
, 4, byte_order
);
19363 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_calib_button_threshold
, tvb
, *offsetp
, 4, byte_order
);
19366 if (f_control_id
== 3) {
19367 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_core_status
, tvb
, *offsetp
, 1, byte_order
);
19369 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_core_iscore
, tvb
, *offsetp
, 1, byte_order
);
19371 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19374 if (f_control_id
== 4) {
19375 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_enable_enable
, tvb
, *offsetp
, 1, byte_order
);
19377 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19380 if (f_control_id
== 5) {
19381 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_offset_x
, tvb
, *offsetp
, 4, byte_order
);
19383 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_offset_y
, tvb
, *offsetp
, 4, byte_order
);
19385 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_width
, tvb
, *offsetp
, 4, byte_order
);
19387 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_height
, tvb
, *offsetp
, 4, byte_order
);
19389 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_screen
, tvb
, *offsetp
, 4, byte_order
);
19391 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceState_abs_area_following
, tvb
, *offsetp
, 4, byte_order
);
19397 static void xinputGetDeviceControl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19399 field16(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceControl_control_id
, byte_order
);
19400 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceControl_device_id
, tvb
, *offsetp
, 1, byte_order
);
19402 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19405 static void xinputGetDeviceControl_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19407 int sequence_number
;
19409 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceControl");
19412 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceControl_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19414 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19415 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19416 "%d (xinput-GetDeviceControl)", sequence_number
);
19418 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19420 field8(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceControl_reply_status
, byte_order
);
19421 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19423 struct_xinput_DeviceState(tvb
, offsetp
, t
, byte_order
, 1);
19426 static int struct_size_xinput_DeviceCtl(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19432 static void struct_xinput_DeviceCtl(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19435 for (i
= 0; i
< count
; i
++) {
19440 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_DeviceCtl
, tvb
, *offsetp
, struct_size_xinput_DeviceCtl(tvb
, offsetp
, byte_order
), ENC_NA
);
19441 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19442 f_control_id
= field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceCtl_control_id
, byte_order
);
19443 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_len
, tvb
, *offsetp
, 2, byte_order
);
19445 if (f_control_id
== 1) {
19446 int f_num_valuators
;
19447 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_resolution_first_valuator
, tvb
, *offsetp
, 1, byte_order
);
19449 f_num_valuators
= tvb_get_uint8(tvb
, *offsetp
);
19450 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_resolution_num_valuators
, tvb
, *offsetp
, 1, byte_order
);
19452 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19454 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceCtl_resolution_resolution_values
, hf_x11_struct_xinput_DeviceCtl_resolution_resolution_values_item
, f_num_valuators
, byte_order
);
19456 if (f_control_id
== 2) {
19457 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_min_x
, tvb
, *offsetp
, 4, byte_order
);
19459 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_max_x
, tvb
, *offsetp
, 4, byte_order
);
19461 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_min_y
, tvb
, *offsetp
, 4, byte_order
);
19463 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_max_y
, tvb
, *offsetp
, 4, byte_order
);
19465 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_flip_x
, tvb
, *offsetp
, 4, byte_order
);
19467 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_flip_y
, tvb
, *offsetp
, 4, byte_order
);
19469 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_rotation
, tvb
, *offsetp
, 4, byte_order
);
19471 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_calib_button_threshold
, tvb
, *offsetp
, 4, byte_order
);
19474 if (f_control_id
== 3) {
19475 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_core_status
, tvb
, *offsetp
, 1, byte_order
);
19477 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19480 if (f_control_id
== 4) {
19481 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_enable_enable
, tvb
, *offsetp
, 1, byte_order
);
19483 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19486 if (f_control_id
== 5) {
19487 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_offset_x
, tvb
, *offsetp
, 4, byte_order
);
19489 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_offset_y
, tvb
, *offsetp
, 4, byte_order
);
19491 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_width
, tvb
, *offsetp
, 4, byte_order
);
19493 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_height
, tvb
, *offsetp
, 4, byte_order
);
19495 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_screen
, tvb
, *offsetp
, 4, byte_order
);
19497 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceCtl_abs_area_following
, tvb
, *offsetp
, 4, byte_order
);
19503 static void xinputChangeDeviceControl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19505 field16(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceControl_control_id
, byte_order
);
19506 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceControl_device_id
, tvb
, *offsetp
, 1, byte_order
);
19508 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19510 struct_xinput_DeviceCtl(tvb
, offsetp
, t
, byte_order
, 1);
19512 static void xinputChangeDeviceControl_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19514 int sequence_number
;
19516 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ChangeDeviceControl");
19519 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceControl_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19521 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19522 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19523 "%d (xinput-ChangeDeviceControl)", sequence_number
);
19525 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19527 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceControl_reply_status
, byte_order
);
19528 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
19532 static void xinputListDeviceProperties(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19534 proto_tree_add_item(t
, hf_x11_xinput_ListDeviceProperties_device_id
, tvb
, *offsetp
, 1, byte_order
);
19536 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19539 static void xinputListDeviceProperties_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19541 int sequence_number
;
19544 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListDeviceProperties");
19547 proto_tree_add_item(t
, hf_x11_xinput_ListDeviceProperties_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19549 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19550 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19551 "%d (xinput-ListDeviceProperties)", sequence_number
);
19553 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19555 f_num_atoms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19556 proto_tree_add_item(t
, hf_x11_xinput_ListDeviceProperties_reply_num_atoms
, tvb
, *offsetp
, 2, byte_order
);
19558 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
19560 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ListDeviceProperties_reply_atoms
, hf_x11_xinput_ListDeviceProperties_reply_atoms_item
, f_num_atoms
, byte_order
);
19563 static void xinputChangeDeviceProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19567 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceProperty_property
, tvb
, *offsetp
, 4, byte_order
);
19569 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceProperty_type
, tvb
, *offsetp
, 4, byte_order
);
19571 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceProperty_device_id
, tvb
, *offsetp
, 1, byte_order
);
19573 f_format
= field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceProperty_format
, byte_order
);
19574 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceProperty_mode
, byte_order
);
19575 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19577 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
19578 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceProperty_num_items
, tvb
, *offsetp
, 4, byte_order
);
19580 if (f_format
== 8) {
19581 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceProperty_8Bits_data8
, f_num_items
, byte_order
);
19582 length
-= f_num_items
* 1;
19583 if (*offsetp
% 4) {
19584 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19585 *offsetp
+= (4 - *offsetp
% 4);
19587 length
= ((length
+ 3) & ~3);
19589 if (f_format
== 16) {
19590 listOfCard16(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceProperty_16Bits_data16
, hf_x11_xinput_ChangeDeviceProperty_16Bits_data16_item
, f_num_items
, byte_order
);
19591 length
-= f_num_items
* 2;
19592 if (*offsetp
% 4) {
19593 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19594 *offsetp
+= (4 - *offsetp
% 4);
19596 length
= ((length
+ 3) & ~3);
19598 if (f_format
== 32) {
19599 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceProperty_32Bits_data32
, hf_x11_xinput_ChangeDeviceProperty_32Bits_data32_item
, f_num_items
, byte_order
);
19600 length
-= f_num_items
* 4;
19604 static void xinputDeleteDeviceProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19606 proto_tree_add_item(t
, hf_x11_xinput_DeleteDeviceProperty_property
, tvb
, *offsetp
, 4, byte_order
);
19608 proto_tree_add_item(t
, hf_x11_xinput_DeleteDeviceProperty_device_id
, tvb
, *offsetp
, 1, byte_order
);
19610 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19614 static void xinputGetDeviceProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19616 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_property
, tvb
, *offsetp
, 4, byte_order
);
19618 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_type
, tvb
, *offsetp
, 4, byte_order
);
19620 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_offset
, tvb
, *offsetp
, 4, byte_order
);
19622 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_len
, tvb
, *offsetp
, 4, byte_order
);
19624 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_device_id
, tvb
, *offsetp
, 1, byte_order
);
19626 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_delete
, tvb
, *offsetp
, 1, byte_order
);
19628 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19631 static void xinputGetDeviceProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19633 int sequence_number
;
19637 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceProperty");
19640 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_reply_xi_reply_type
, tvb
, *offsetp
, 1, byte_order
);
19642 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19643 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19644 "%d (xinput-GetDeviceProperty)", sequence_number
);
19646 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19648 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_reply_type
, tvb
, *offsetp
, 4, byte_order
);
19650 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_reply_bytes_after
, tvb
, *offsetp
, 4, byte_order
);
19652 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
19653 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_reply_num_items
, tvb
, *offsetp
, 4, byte_order
);
19655 f_format
= field8(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceProperty_reply_format
, byte_order
);
19656 proto_tree_add_item(t
, hf_x11_xinput_GetDeviceProperty_reply_device_id
, tvb
, *offsetp
, 1, byte_order
);
19658 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 10, ENC_NA
);
19660 if (f_format
== 8) {
19661 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceProperty_reply_8Bits_data8
, f_num_items
, byte_order
);
19662 if (*offsetp
% 4) {
19663 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19664 *offsetp
+= (4 - *offsetp
% 4);
19667 if (f_format
== 16) {
19668 listOfCard16(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceProperty_reply_16Bits_data16
, hf_x11_xinput_GetDeviceProperty_reply_16Bits_data16_item
, f_num_items
, byte_order
);
19669 if (*offsetp
% 4) {
19670 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19671 *offsetp
+= (4 - *offsetp
% 4);
19674 if (f_format
== 32) {
19675 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_GetDeviceProperty_reply_32Bits_data32
, hf_x11_xinput_GetDeviceProperty_reply_32Bits_data32_item
, f_num_items
, byte_order
);
19679 static void struct_xinput_GroupInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19682 for (i
= 0; i
< count
; i
++) {
19686 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_GroupInfo
, tvb
, *offsetp
, 4, ENC_NA
);
19687 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19688 proto_tree_add_item(t
, hf_x11_struct_xinput_GroupInfo_base
, tvb
, *offsetp
, 1, byte_order
);
19690 proto_tree_add_item(t
, hf_x11_struct_xinput_GroupInfo_latched
, tvb
, *offsetp
, 1, byte_order
);
19692 proto_tree_add_item(t
, hf_x11_struct_xinput_GroupInfo_locked
, tvb
, *offsetp
, 1, byte_order
);
19694 proto_tree_add_item(t
, hf_x11_struct_xinput_GroupInfo_effective
, tvb
, *offsetp
, 1, byte_order
);
19699 static void struct_xinput_ModifierInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19702 for (i
= 0; i
< count
; i
++) {
19706 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_ModifierInfo
, tvb
, *offsetp
, 16, ENC_NA
);
19707 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19708 proto_tree_add_item(t
, hf_x11_struct_xinput_ModifierInfo_base
, tvb
, *offsetp
, 4, byte_order
);
19710 proto_tree_add_item(t
, hf_x11_struct_xinput_ModifierInfo_latched
, tvb
, *offsetp
, 4, byte_order
);
19712 proto_tree_add_item(t
, hf_x11_struct_xinput_ModifierInfo_locked
, tvb
, *offsetp
, 4, byte_order
);
19714 proto_tree_add_item(t
, hf_x11_struct_xinput_ModifierInfo_effective
, tvb
, *offsetp
, 4, byte_order
);
19719 static void xinputXIQueryPointer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19721 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_window
, tvb
, *offsetp
, 4, byte_order
);
19723 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIQueryPointer_deviceid
, byte_order
);
19724 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19727 static void xinputXIQueryPointer_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19729 int sequence_number
;
19732 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIQueryPointer");
19735 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19737 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19738 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19739 "%d (xinput-XIQueryPointer)", sequence_number
);
19741 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19743 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_root
, tvb
, *offsetp
, 4, byte_order
);
19745 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_child
, tvb
, *offsetp
, 4, byte_order
);
19747 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_root_x
, tvb
, *offsetp
, 4, byte_order
);
19749 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_root_y
, tvb
, *offsetp
, 4, byte_order
);
19751 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_win_x
, tvb
, *offsetp
, 4, byte_order
);
19753 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_win_y
, tvb
, *offsetp
, 4, byte_order
);
19755 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_same_screen
, tvb
, *offsetp
, 1, byte_order
);
19757 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19759 f_buttons_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19760 proto_tree_add_item(t
, hf_x11_xinput_XIQueryPointer_reply_buttons_len
, tvb
, *offsetp
, 2, byte_order
);
19762 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
19763 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
19764 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIQueryPointer_reply_buttons
, hf_x11_xinput_XIQueryPointer_reply_buttons_item
, f_buttons_len
, byte_order
);
19767 static void xinputXIWarpPointer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19769 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_src_win
, tvb
, *offsetp
, 4, byte_order
);
19771 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_dst_win
, tvb
, *offsetp
, 4, byte_order
);
19773 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_src_x
, tvb
, *offsetp
, 4, byte_order
);
19775 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_src_y
, tvb
, *offsetp
, 4, byte_order
);
19777 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_src_width
, tvb
, *offsetp
, 2, byte_order
);
19779 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_src_height
, tvb
, *offsetp
, 2, byte_order
);
19781 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_dst_x
, tvb
, *offsetp
, 4, byte_order
);
19783 proto_tree_add_item(t
, hf_x11_xinput_XIWarpPointer_dst_y
, tvb
, *offsetp
, 4, byte_order
);
19785 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIWarpPointer_deviceid
, byte_order
);
19786 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19790 static void xinputXIChangeCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19792 proto_tree_add_item(t
, hf_x11_xinput_XIChangeCursor_window
, tvb
, *offsetp
, 4, byte_order
);
19794 proto_tree_add_item(t
, hf_x11_xinput_XIChangeCursor_cursor
, tvb
, *offsetp
, 4, byte_order
);
19796 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeCursor_deviceid
, byte_order
);
19797 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19801 static int struct_size_xinput_HierarchyChange(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19807 static void struct_xinput_HierarchyChange(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19810 for (i
= 0; i
< count
; i
++) {
19815 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_HierarchyChange
, tvb
, *offsetp
, struct_size_xinput_HierarchyChange(tvb
, offsetp
, byte_order
), ENC_NA
);
19816 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19817 f_type
= field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_type
, byte_order
);
19818 proto_tree_add_item(t
, hf_x11_struct_xinput_HierarchyChange_len
, tvb
, *offsetp
, 2, byte_order
);
19822 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19823 proto_tree_add_item(t
, hf_x11_struct_xinput_HierarchyChange_AddMaster_name_len
, tvb
, *offsetp
, 2, byte_order
);
19825 proto_tree_add_item(t
, hf_x11_struct_xinput_HierarchyChange_AddMaster_send_core
, tvb
, *offsetp
, 1, byte_order
);
19827 proto_tree_add_item(t
, hf_x11_struct_xinput_HierarchyChange_AddMaster_enable
, tvb
, *offsetp
, 1, byte_order
);
19829 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_AddMaster_name
, f_name_len
, byte_order
);
19830 if (*offsetp
% 4) {
19831 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
19832 *offsetp
+= (4 - *offsetp
% 4);
19836 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_RemoveMaster_deviceid
, byte_order
);
19837 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_RemoveMaster_return_mode
, byte_order
);
19838 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19840 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_RemoveMaster_return_pointer
, byte_order
);
19841 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_RemoveMaster_return_keyboard
, byte_order
);
19844 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_AttachSlave_deviceid
, byte_order
);
19845 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_AttachSlave_master
, byte_order
);
19848 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyChange_DetachSlave_deviceid
, byte_order
);
19849 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19855 static void xinputXIChangeHierarchy(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19858 f_num_changes
= tvb_get_uint8(tvb
, *offsetp
);
19859 proto_tree_add_item(t
, hf_x11_xinput_XIChangeHierarchy_num_changes
, tvb
, *offsetp
, 1, byte_order
);
19861 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
19863 struct_xinput_HierarchyChange(tvb
, offsetp
, t
, byte_order
, f_num_changes
);
19864 length
-= f_num_changes
* 0;
19867 static void xinputXISetClientPointer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19869 proto_tree_add_item(t
, hf_x11_xinput_XISetClientPointer_window
, tvb
, *offsetp
, 4, byte_order
);
19871 field16(tvb
, offsetp
, t
, hf_x11_xinput_XISetClientPointer_deviceid
, byte_order
);
19872 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19876 static void xinputXIGetClientPointer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19878 proto_tree_add_item(t
, hf_x11_xinput_XIGetClientPointer_window
, tvb
, *offsetp
, 4, byte_order
);
19881 static void xinputXIGetClientPointer_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19883 int sequence_number
;
19885 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIGetClientPointer");
19888 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19890 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19891 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19892 "%d (xinput-XIGetClientPointer)", sequence_number
);
19894 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19896 proto_tree_add_item(t
, hf_x11_xinput_XIGetClientPointer_reply_set
, tvb
, *offsetp
, 1, byte_order
);
19898 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19900 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIGetClientPointer_reply_deviceid
, byte_order
);
19901 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
19905 static int struct_size_xinput_EventMask(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19909 f_mask_len
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 2, byte_order
);
19910 size
+= f_mask_len
* 4;
19914 static void struct_xinput_EventMask(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19917 for (i
= 0; i
< count
; i
++) {
19922 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_EventMask
, tvb
, *offsetp
, struct_size_xinput_EventMask(tvb
, offsetp
, byte_order
), ENC_NA
);
19923 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19924 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_EventMask_deviceid
, byte_order
);
19925 f_mask_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19926 proto_tree_add_item(t
, hf_x11_struct_xinput_EventMask_mask_len
, tvb
, *offsetp
, 2, byte_order
);
19928 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_EventMask_mask
, hf_x11_struct_xinput_EventMask_mask_item
, f_mask_len
, byte_order
);
19932 static void xinputXISelectEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19935 proto_tree_add_item(t
, hf_x11_xinput_XISelectEvents_window
, tvb
, *offsetp
, 4, byte_order
);
19937 f_num_mask
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19938 proto_tree_add_item(t
, hf_x11_xinput_XISelectEvents_num_mask
, tvb
, *offsetp
, 2, byte_order
);
19940 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
19942 struct_xinput_EventMask(tvb
, offsetp
, t
, byte_order
, f_num_mask
);
19943 length
-= f_num_mask
* 0;
19946 static void xinputXIQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
19948 proto_tree_add_item(t
, hf_x11_xinput_XIQueryVersion_major_version
, tvb
, *offsetp
, 2, byte_order
);
19950 proto_tree_add_item(t
, hf_x11_xinput_XIQueryVersion_minor_version
, tvb
, *offsetp
, 2, byte_order
);
19953 static void xinputXIQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
19955 int sequence_number
;
19957 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIQueryVersion");
19960 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
19962 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
19963 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
19964 "%d (xinput-XIQueryVersion)", sequence_number
);
19966 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
19968 proto_tree_add_item(t
, hf_x11_xinput_XIQueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
19970 proto_tree_add_item(t
, hf_x11_xinput_XIQueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
19972 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
19976 static int struct_size_xinput_DeviceClass(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
19982 static void struct_xinput_DeviceClass(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
19985 for (i
= 0; i
< count
; i
++) {
19990 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_DeviceClass
, tvb
, *offsetp
, struct_size_xinput_DeviceClass(tvb
, offsetp
, byte_order
), ENC_NA
);
19991 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
19992 f_type
= field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_type
, byte_order
);
19993 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_len
, tvb
, *offsetp
, 2, byte_order
);
19995 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_sourceid
, tvb
, *offsetp
, 2, byte_order
);
19999 f_num_keys
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20000 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Key_num_keys
, tvb
, *offsetp
, 2, byte_order
);
20002 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Key_keys
, hf_x11_struct_xinput_DeviceClass_Key_keys_item
, f_num_keys
, byte_order
);
20006 f_num_buttons
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20007 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Button_num_buttons
, tvb
, *offsetp
, 2, byte_order
);
20009 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Button_state
, hf_x11_struct_xinput_DeviceClass_Button_state_item
, ((f_num_buttons
+ 31) / 32), byte_order
);
20010 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Button_labels
, hf_x11_struct_xinput_DeviceClass_Button_labels_item
, f_num_buttons
, byte_order
);
20013 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Valuator_number
, tvb
, *offsetp
, 2, byte_order
);
20015 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Valuator_label
, tvb
, *offsetp
, 4, byte_order
);
20017 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
20018 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
20019 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
20020 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Valuator_resolution
, tvb
, *offsetp
, 4, byte_order
);
20022 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Valuator_mode
, byte_order
);
20023 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
20027 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Scroll_number
, tvb
, *offsetp
, 2, byte_order
);
20029 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Scroll_scroll_type
, byte_order
);
20030 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20033 static int* const flags_bits
[] = {
20034 &hf_x11_struct_xinput_DeviceClass_Scroll_flags_mask_NoEmulation
,
20035 &hf_x11_struct_xinput_DeviceClass_Scroll_flags_mask_Preferred
,
20038 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xinput_DeviceClass_Scroll_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20041 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
20044 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_DeviceClass_Touch_mode
, byte_order
);
20045 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Touch_num_touches
, tvb
, *offsetp
, 1, byte_order
);
20049 proto_tree_add_item(t
, hf_x11_struct_xinput_DeviceClass_Gesture_num_touches
, tvb
, *offsetp
, 1, byte_order
);
20051 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20057 static int struct_size_xinput_XIDeviceInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
20063 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 6, byte_order
);
20064 f_name_len
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 8, byte_order
);
20065 size
+= f_name_len
* 1;
20066 size
= (size
+ 3) & ~3;
20067 for (i
= 0; i
< f_num_classes
; i
++) {
20068 off
= (*offsetp
) + size
+ 12;
20069 size
+= struct_size_xinput_DeviceClass(tvb
, &off
, byte_order
);
20074 static void struct_xinput_XIDeviceInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
20077 for (i
= 0; i
< count
; i
++) {
20083 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_XIDeviceInfo
, tvb
, *offsetp
, struct_size_xinput_XIDeviceInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
20084 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
20085 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_XIDeviceInfo_deviceid
, byte_order
);
20086 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_XIDeviceInfo_type
, byte_order
);
20087 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_XIDeviceInfo_attachment
, byte_order
);
20088 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20089 proto_tree_add_item(t
, hf_x11_struct_xinput_XIDeviceInfo_num_classes
, tvb
, *offsetp
, 2, byte_order
);
20091 f_name_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20092 proto_tree_add_item(t
, hf_x11_struct_xinput_XIDeviceInfo_name_len
, tvb
, *offsetp
, 2, byte_order
);
20094 proto_tree_add_item(t
, hf_x11_struct_xinput_XIDeviceInfo_enabled
, tvb
, *offsetp
, 1, byte_order
);
20096 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20098 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xinput_XIDeviceInfo_name
, f_name_len
, byte_order
);
20099 if (*offsetp
% 4) {
20100 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
20101 *offsetp
+= (4 - *offsetp
% 4);
20103 struct_xinput_DeviceClass(tvb
, offsetp
, t
, byte_order
, f_num_classes
);
20107 static void xinputXIQueryDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20109 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIQueryDevice_deviceid
, byte_order
);
20110 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20113 static void xinputXIQueryDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20115 int sequence_number
;
20118 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIQueryDevice");
20121 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20123 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20124 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20125 "%d (xinput-XIQueryDevice)", sequence_number
);
20127 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20129 f_num_infos
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20130 proto_tree_add_item(t
, hf_x11_xinput_XIQueryDevice_reply_num_infos
, tvb
, *offsetp
, 2, byte_order
);
20132 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
20134 struct_xinput_XIDeviceInfo(tvb
, offsetp
, t
, byte_order
, f_num_infos
);
20137 static void xinputXISetFocus(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20139 proto_tree_add_item(t
, hf_x11_xinput_XISetFocus_window
, tvb
, *offsetp
, 4, byte_order
);
20141 field32(tvb
, offsetp
, t
, hf_x11_xinput_XISetFocus_time
, byte_order
);
20142 field16(tvb
, offsetp
, t
, hf_x11_xinput_XISetFocus_deviceid
, byte_order
);
20143 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20147 static void xinputXIGetFocus(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20149 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIGetFocus_deviceid
, byte_order
);
20150 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20153 static void xinputXIGetFocus_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20155 int sequence_number
;
20157 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIGetFocus");
20160 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20162 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20163 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20164 "%d (xinput-XIGetFocus)", sequence_number
);
20166 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20168 proto_tree_add_item(t
, hf_x11_xinput_XIGetFocus_reply_focus
, tvb
, *offsetp
, 4, byte_order
);
20170 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
20174 static void xinputXIGrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20177 proto_tree_add_item(t
, hf_x11_xinput_XIGrabDevice_window
, tvb
, *offsetp
, 4, byte_order
);
20179 field32(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_time
, byte_order
);
20180 proto_tree_add_item(t
, hf_x11_xinput_XIGrabDevice_cursor
, tvb
, *offsetp
, 4, byte_order
);
20182 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_deviceid
, byte_order
);
20183 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_mode
, byte_order
);
20184 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_paired_device_mode
, byte_order
);
20185 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_owner_events
, byte_order
);
20186 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20188 f_mask_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20189 proto_tree_add_item(t
, hf_x11_xinput_XIGrabDevice_mask_len
, tvb
, *offsetp
, 2, byte_order
);
20191 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_mask
, hf_x11_xinput_XIGrabDevice_mask_item
, f_mask_len
, byte_order
);
20192 length
-= f_mask_len
* 4;
20194 static void xinputXIGrabDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20196 int sequence_number
;
20198 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIGrabDevice");
20201 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20203 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20204 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20205 "%d (xinput-XIGrabDevice)", sequence_number
);
20207 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20209 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIGrabDevice_reply_status
, byte_order
);
20210 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
20214 static void xinputXIUngrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20216 field32(tvb
, offsetp
, t
, hf_x11_xinput_XIUngrabDevice_time
, byte_order
);
20217 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIUngrabDevice_deviceid
, byte_order
);
20218 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20222 static void xinputXIAllowEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20224 field32(tvb
, offsetp
, t
, hf_x11_xinput_XIAllowEvents_time
, byte_order
);
20225 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIAllowEvents_deviceid
, byte_order
);
20226 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIAllowEvents_event_mode
, byte_order
);
20227 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20229 proto_tree_add_item(t
, hf_x11_xinput_XIAllowEvents_touchid
, tvb
, *offsetp
, 4, byte_order
);
20231 proto_tree_add_item(t
, hf_x11_xinput_XIAllowEvents_grab_window
, tvb
, *offsetp
, 4, byte_order
);
20235 static void struct_xinput_GrabModifierInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
20238 for (i
= 0; i
< count
; i
++) {
20242 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_GrabModifierInfo
, tvb
, *offsetp
, 8, ENC_NA
);
20243 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
20244 field32(tvb
, offsetp
, t
, hf_x11_struct_xinput_GrabModifierInfo_modifiers
, byte_order
);
20245 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_GrabModifierInfo_status
, byte_order
);
20246 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
20251 static void xinputXIPassiveGrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20253 int f_num_modifiers
;
20255 field32(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_time
, byte_order
);
20256 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_grab_window
, tvb
, *offsetp
, 4, byte_order
);
20258 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_cursor
, tvb
, *offsetp
, 4, byte_order
);
20260 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_detail
, tvb
, *offsetp
, 4, byte_order
);
20262 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_deviceid
, byte_order
);
20263 f_num_modifiers
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20264 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_num_modifiers
, tvb
, *offsetp
, 2, byte_order
);
20266 f_mask_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20267 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_mask_len
, tvb
, *offsetp
, 2, byte_order
);
20269 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_grab_type
, byte_order
);
20270 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_grab_mode
, byte_order
);
20271 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_paired_device_mode
, byte_order
);
20272 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_owner_events
, byte_order
);
20273 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20275 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_mask
, hf_x11_xinput_XIPassiveGrabDevice_mask_item
, f_mask_len
, byte_order
);
20276 length
-= f_mask_len
* 4;
20277 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveGrabDevice_modifiers
, hf_x11_xinput_XIPassiveGrabDevice_modifiers_item
, f_num_modifiers
, byte_order
);
20278 length
-= f_num_modifiers
* 4;
20280 static void xinputXIPassiveGrabDevice_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20282 int sequence_number
;
20283 int f_num_modifiers
;
20285 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIPassiveGrabDevice");
20288 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20290 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20291 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20292 "%d (xinput-XIPassiveGrabDevice)", sequence_number
);
20294 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20296 f_num_modifiers
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20297 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveGrabDevice_reply_num_modifiers
, tvb
, *offsetp
, 2, byte_order
);
20299 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
20301 struct_xinput_GrabModifierInfo(tvb
, offsetp
, t
, byte_order
, f_num_modifiers
);
20304 static void xinputXIPassiveUngrabDevice(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20306 int f_num_modifiers
;
20307 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveUngrabDevice_grab_window
, tvb
, *offsetp
, 4, byte_order
);
20309 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveUngrabDevice_detail
, tvb
, *offsetp
, 4, byte_order
);
20311 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveUngrabDevice_deviceid
, byte_order
);
20312 f_num_modifiers
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20313 proto_tree_add_item(t
, hf_x11_xinput_XIPassiveUngrabDevice_num_modifiers
, tvb
, *offsetp
, 2, byte_order
);
20315 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveUngrabDevice_grab_type
, byte_order
);
20316 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
20318 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIPassiveUngrabDevice_modifiers
, hf_x11_xinput_XIPassiveUngrabDevice_modifiers_item
, f_num_modifiers
, byte_order
);
20319 length
-= f_num_modifiers
* 4;
20322 static void xinputXIListProperties(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20324 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIListProperties_deviceid
, byte_order
);
20325 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20328 static void xinputXIListProperties_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20330 int sequence_number
;
20331 int f_num_properties
;
20333 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIListProperties");
20336 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20338 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20339 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20340 "%d (xinput-XIListProperties)", sequence_number
);
20342 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20344 f_num_properties
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20345 proto_tree_add_item(t
, hf_x11_xinput_XIListProperties_reply_num_properties
, tvb
, *offsetp
, 2, byte_order
);
20347 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
20349 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIListProperties_reply_properties
, hf_x11_xinput_XIListProperties_reply_properties_item
, f_num_properties
, byte_order
);
20352 static void xinputXIChangeProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20356 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_deviceid
, byte_order
);
20357 field8(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_mode
, byte_order
);
20358 f_format
= field8(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_format
, byte_order
);
20359 proto_tree_add_item(t
, hf_x11_xinput_XIChangeProperty_property
, tvb
, *offsetp
, 4, byte_order
);
20361 proto_tree_add_item(t
, hf_x11_xinput_XIChangeProperty_type
, tvb
, *offsetp
, 4, byte_order
);
20363 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
20364 proto_tree_add_item(t
, hf_x11_xinput_XIChangeProperty_num_items
, tvb
, *offsetp
, 4, byte_order
);
20366 if (f_format
== 8) {
20367 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_8Bits_data8
, f_num_items
, byte_order
);
20368 length
-= f_num_items
* 1;
20369 if (*offsetp
% 4) {
20370 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
20371 *offsetp
+= (4 - *offsetp
% 4);
20373 length
= ((length
+ 3) & ~3);
20375 if (f_format
== 16) {
20376 listOfCard16(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_16Bits_data16
, hf_x11_xinput_XIChangeProperty_16Bits_data16_item
, f_num_items
, byte_order
);
20377 length
-= f_num_items
* 2;
20378 if (*offsetp
% 4) {
20379 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
20380 *offsetp
+= (4 - *offsetp
% 4);
20382 length
= ((length
+ 3) & ~3);
20384 if (f_format
== 32) {
20385 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIChangeProperty_32Bits_data32
, hf_x11_xinput_XIChangeProperty_32Bits_data32_item
, f_num_items
, byte_order
);
20386 length
-= f_num_items
* 4;
20390 static void xinputXIDeleteProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20392 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIDeleteProperty_deviceid
, byte_order
);
20393 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20395 proto_tree_add_item(t
, hf_x11_xinput_XIDeleteProperty_property
, tvb
, *offsetp
, 4, byte_order
);
20399 static void xinputXIGetProperty(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20401 field16(tvb
, offsetp
, t
, hf_x11_xinput_XIGetProperty_deviceid
, byte_order
);
20402 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_delete
, tvb
, *offsetp
, 1, byte_order
);
20404 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20406 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_property
, tvb
, *offsetp
, 4, byte_order
);
20408 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_type
, tvb
, *offsetp
, 4, byte_order
);
20410 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_offset
, tvb
, *offsetp
, 4, byte_order
);
20412 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_len
, tvb
, *offsetp
, 4, byte_order
);
20415 static void xinputXIGetProperty_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20417 int sequence_number
;
20421 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIGetProperty");
20424 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20426 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20427 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20428 "%d (xinput-XIGetProperty)", sequence_number
);
20430 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20432 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_reply_type
, tvb
, *offsetp
, 4, byte_order
);
20434 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_reply_bytes_after
, tvb
, *offsetp
, 4, byte_order
);
20436 f_num_items
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
20437 proto_tree_add_item(t
, hf_x11_xinput_XIGetProperty_reply_num_items
, tvb
, *offsetp
, 4, byte_order
);
20439 f_format
= field8(tvb
, offsetp
, t
, hf_x11_xinput_XIGetProperty_reply_format
, byte_order
);
20440 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
20442 if (f_format
== 8) {
20443 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_XIGetProperty_reply_8Bits_data8
, f_num_items
, byte_order
);
20444 if (*offsetp
% 4) {
20445 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
20446 *offsetp
+= (4 - *offsetp
% 4);
20449 if (f_format
== 16) {
20450 listOfCard16(tvb
, offsetp
, t
, hf_x11_xinput_XIGetProperty_reply_16Bits_data16
, hf_x11_xinput_XIGetProperty_reply_16Bits_data16_item
, f_num_items
, byte_order
);
20451 if (*offsetp
% 4) {
20452 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
20453 *offsetp
+= (4 - *offsetp
% 4);
20456 if (f_format
== 32) {
20457 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_XIGetProperty_reply_32Bits_data32
, hf_x11_xinput_XIGetProperty_reply_32Bits_data32_item
, f_num_items
, byte_order
);
20461 static void xinputXIGetSelectedEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20463 proto_tree_add_item(t
, hf_x11_xinput_XIGetSelectedEvents_window
, tvb
, *offsetp
, 4, byte_order
);
20466 static void xinputXIGetSelectedEvents_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20468 int sequence_number
;
20471 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-XIGetSelectedEvents");
20474 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20476 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20477 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
20478 "%d (xinput-XIGetSelectedEvents)", sequence_number
);
20480 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
20482 f_num_masks
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20483 proto_tree_add_item(t
, hf_x11_xinput_XIGetSelectedEvents_reply_num_masks
, tvb
, *offsetp
, 2, byte_order
);
20485 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
20487 struct_xinput_EventMask(tvb
, offsetp
, t
, byte_order
, f_num_masks
);
20490 static void struct_xinput_BarrierReleasePointerInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
20493 for (i
= 0; i
< count
; i
++) {
20497 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_BarrierReleasePointerInfo
, tvb
, *offsetp
, 12, ENC_NA
);
20498 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
20499 proto_tree_add_item(t
, hf_x11_struct_xinput_BarrierReleasePointerInfo_deviceid
, tvb
, *offsetp
, 2, byte_order
);
20501 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20503 proto_tree_add_item(t
, hf_x11_struct_xinput_BarrierReleasePointerInfo_barrier
, tvb
, *offsetp
, 4, byte_order
);
20505 proto_tree_add_item(t
, hf_x11_struct_xinput_BarrierReleasePointerInfo_eventid
, tvb
, *offsetp
, 4, byte_order
);
20510 static void xinputXIBarrierReleasePointer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
20512 int f_num_barriers
;
20513 f_num_barriers
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
20514 proto_tree_add_item(t
, hf_x11_xinput_XIBarrierReleasePointer_num_barriers
, tvb
, *offsetp
, 4, byte_order
);
20516 struct_xinput_BarrierReleasePointerInfo(tvb
, offsetp
, t
, byte_order
, f_num_barriers
);
20517 length
-= f_num_barriers
* 12;
20520 static void xinputDeviceKeyPress(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20522 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_detail
, tvb
, *offsetp
, 1, ENC_NA
);
20524 CARD16(event_sequencenumber
);
20525 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_time
, tvb
, *offsetp
, 4, byte_order
);
20527 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_root
, tvb
, *offsetp
, 4, byte_order
);
20529 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_event
, tvb
, *offsetp
, 4, byte_order
);
20531 field32(tvb
, offsetp
, t
, hf_x11_xinput_DeviceKeyPress_child
, byte_order
);
20532 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_root_x
, tvb
, *offsetp
, 2, byte_order
);
20534 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_root_y
, tvb
, *offsetp
, 2, byte_order
);
20536 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_event_x
, tvb
, *offsetp
, 2, byte_order
);
20538 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_event_y
, tvb
, *offsetp
, 2, byte_order
);
20541 static int* const state_bits
[] = {
20542 &hf_x11_xinput_DeviceKeyPress_state_mask_Shift
,
20543 &hf_x11_xinput_DeviceKeyPress_state_mask_Lock
,
20544 &hf_x11_xinput_DeviceKeyPress_state_mask_Control
,
20545 &hf_x11_xinput_DeviceKeyPress_state_mask_Mod1
,
20546 &hf_x11_xinput_DeviceKeyPress_state_mask_Mod2
,
20547 &hf_x11_xinput_DeviceKeyPress_state_mask_Mod3
,
20548 &hf_x11_xinput_DeviceKeyPress_state_mask_Mod4
,
20549 &hf_x11_xinput_DeviceKeyPress_state_mask_Mod5
,
20550 &hf_x11_xinput_DeviceKeyPress_state_mask_Button1
,
20551 &hf_x11_xinput_DeviceKeyPress_state_mask_Button2
,
20552 &hf_x11_xinput_DeviceKeyPress_state_mask_Button3
,
20553 &hf_x11_xinput_DeviceKeyPress_state_mask_Button4
,
20554 &hf_x11_xinput_DeviceKeyPress_state_mask_Button5
,
20557 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_DeviceKeyPress_state
, ett_x11_rectangle
, state_bits
, byte_order
);
20560 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_same_screen
, tvb
, *offsetp
, 1, byte_order
);
20562 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyPress_device_id
, tvb
, *offsetp
, 1, byte_order
);
20567 static void xinputDeviceFocusIn(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20569 field8(tvb
, offsetp
, t
, hf_x11_xinput_DeviceFocusIn_detail
, byte_order
);
20570 CARD16(event_sequencenumber
);
20571 proto_tree_add_item(t
, hf_x11_xinput_DeviceFocusIn_time
, tvb
, *offsetp
, 4, byte_order
);
20573 proto_tree_add_item(t
, hf_x11_xinput_DeviceFocusIn_window
, tvb
, *offsetp
, 4, byte_order
);
20575 field8(tvb
, offsetp
, t
, hf_x11_xinput_DeviceFocusIn_mode
, byte_order
);
20576 proto_tree_add_item(t
, hf_x11_xinput_DeviceFocusIn_device_id
, tvb
, *offsetp
, 1, byte_order
);
20578 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 18, ENC_NA
);
20583 static void xinputDeviceStateNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20585 proto_tree_add_item(t
, hf_x11_xinput_DeviceStateNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20587 CARD16(event_sequencenumber
);
20588 proto_tree_add_item(t
, hf_x11_xinput_DeviceStateNotify_time
, tvb
, *offsetp
, 4, byte_order
);
20590 proto_tree_add_item(t
, hf_x11_xinput_DeviceStateNotify_num_keys
, tvb
, *offsetp
, 1, byte_order
);
20592 proto_tree_add_item(t
, hf_x11_xinput_DeviceStateNotify_num_buttons
, tvb
, *offsetp
, 1, byte_order
);
20594 proto_tree_add_item(t
, hf_x11_xinput_DeviceStateNotify_num_valuators
, tvb
, *offsetp
, 1, byte_order
);
20597 static int* const classes_reported_bits
[] = {
20598 &hf_x11_xinput_DeviceStateNotify_classes_reported_mask_ReportingKeys
,
20599 &hf_x11_xinput_DeviceStateNotify_classes_reported_mask_ReportingButtons
,
20600 &hf_x11_xinput_DeviceStateNotify_classes_reported_mask_ReportingValuators
,
20601 &hf_x11_xinput_DeviceStateNotify_classes_reported_mask_DeviceModeAbsolute
,
20602 &hf_x11_xinput_DeviceStateNotify_classes_reported_mask_OutOfProximity
,
20605 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_DeviceStateNotify_classes_reported
, ett_x11_rectangle
, classes_reported_bits
, byte_order
);
20608 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_DeviceStateNotify_buttons
, 4, byte_order
);
20609 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_DeviceStateNotify_keys
, 4, byte_order
);
20610 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_DeviceStateNotify_valuators
, hf_x11_xinput_DeviceStateNotify_valuators_item
, 3, byte_order
);
20614 static void xinputDeviceMappingNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20616 proto_tree_add_item(t
, hf_x11_xinput_DeviceMappingNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20618 CARD16(event_sequencenumber
);
20619 field8(tvb
, offsetp
, t
, hf_x11_xinput_DeviceMappingNotify_request
, byte_order
);
20620 proto_tree_add_item(t
, hf_x11_xinput_DeviceMappingNotify_first_keycode
, tvb
, *offsetp
, 1, byte_order
);
20622 proto_tree_add_item(t
, hf_x11_xinput_DeviceMappingNotify_count
, tvb
, *offsetp
, 1, byte_order
);
20624 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20626 proto_tree_add_item(t
, hf_x11_xinput_DeviceMappingNotify_time
, tvb
, *offsetp
, 4, byte_order
);
20628 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
20633 static void xinputChangeDeviceNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20635 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20637 CARD16(event_sequencenumber
);
20638 proto_tree_add_item(t
, hf_x11_xinput_ChangeDeviceNotify_time
, tvb
, *offsetp
, 4, byte_order
);
20640 field8(tvb
, offsetp
, t
, hf_x11_xinput_ChangeDeviceNotify_request
, byte_order
);
20641 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 23, ENC_NA
);
20646 static void xinputDeviceKeyStateNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20648 proto_tree_add_item(t
, hf_x11_xinput_DeviceKeyStateNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20650 CARD16(event_sequencenumber
);
20651 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_DeviceKeyStateNotify_keys
, 28, byte_order
);
20655 static void xinputDeviceButtonStateNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20657 proto_tree_add_item(t
, hf_x11_xinput_DeviceButtonStateNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20659 CARD16(event_sequencenumber
);
20660 listOfByte(tvb
, offsetp
, t
, hf_x11_xinput_DeviceButtonStateNotify_buttons
, 28, byte_order
);
20664 static void xinputDevicePresenceNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20666 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
20668 CARD16(event_sequencenumber
);
20669 proto_tree_add_item(t
, hf_x11_xinput_DevicePresenceNotify_time
, tvb
, *offsetp
, 4, byte_order
);
20671 field8(tvb
, offsetp
, t
, hf_x11_xinput_DevicePresenceNotify_devchange
, byte_order
);
20672 proto_tree_add_item(t
, hf_x11_xinput_DevicePresenceNotify_device_id
, tvb
, *offsetp
, 1, ENC_NA
);
20674 proto_tree_add_item(t
, hf_x11_xinput_DevicePresenceNotify_control
, tvb
, *offsetp
, 2, byte_order
);
20676 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
20681 static void xinputDevicePropertyNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20683 field8(tvb
, offsetp
, t
, hf_x11_xinput_DevicePropertyNotify_state
, byte_order
);
20684 CARD16(event_sequencenumber
);
20685 proto_tree_add_item(t
, hf_x11_xinput_DevicePropertyNotify_time
, tvb
, *offsetp
, 4, byte_order
);
20687 proto_tree_add_item(t
, hf_x11_xinput_DevicePropertyNotify_property
, tvb
, *offsetp
, 4, byte_order
);
20689 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 19, ENC_NA
);
20691 proto_tree_add_item(t
, hf_x11_xinput_DevicePropertyNotify_device_id
, tvb
, *offsetp
, 1, byte_order
);
20696 static void xinputDeviceChanged(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20699 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 1,
20700 "DeviceChanged (1)");
20701 field16(tvb
, offsetp
, t
, hf_x11_xinput_DeviceChanged_deviceid
, byte_order
);
20702 field32(tvb
, offsetp
, t
, hf_x11_xinput_DeviceChanged_time
, byte_order
);
20703 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20704 proto_tree_add_item(t
, hf_x11_xinput_DeviceChanged_num_classes
, tvb
, *offsetp
, 2, byte_order
);
20706 field16(tvb
, offsetp
, t
, hf_x11_xinput_DeviceChanged_sourceid
, byte_order
);
20707 field8(tvb
, offsetp
, t
, hf_x11_xinput_DeviceChanged_reason
, byte_order
);
20708 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
20710 struct_xinput_DeviceClass(tvb
, offsetp
, t
, byte_order
, f_num_classes
);
20714 static void xinputKeyPress(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20717 int f_valuators_len
;
20718 int sumof_valuator_mask
= 0;
20719 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 2,
20721 field16(tvb
, offsetp
, t
, hf_x11_xinput_KeyPress_deviceid
, byte_order
);
20722 field32(tvb
, offsetp
, t
, hf_x11_xinput_KeyPress_time
, byte_order
);
20723 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_detail
, tvb
, *offsetp
, 4, byte_order
);
20725 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_root
, tvb
, *offsetp
, 4, byte_order
);
20727 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_event
, tvb
, *offsetp
, 4, byte_order
);
20729 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_child
, tvb
, *offsetp
, 4, byte_order
);
20731 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_root_x
, tvb
, *offsetp
, 4, byte_order
);
20733 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_root_y
, tvb
, *offsetp
, 4, byte_order
);
20735 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_event_x
, tvb
, *offsetp
, 4, byte_order
);
20737 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_event_y
, tvb
, *offsetp
, 4, byte_order
);
20739 f_buttons_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20740 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_buttons_len
, tvb
, *offsetp
, 2, byte_order
);
20742 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20743 proto_tree_add_item(t
, hf_x11_xinput_KeyPress_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
20745 field16(tvb
, offsetp
, t
, hf_x11_xinput_KeyPress_sourceid
, byte_order
);
20746 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20749 static int* const flags_bits
[] = {
20750 &hf_x11_xinput_KeyPress_flags_mask_KeyRepeat
,
20753 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_KeyPress_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20756 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
20757 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
20758 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_KeyPress_button_mask
, hf_x11_xinput_KeyPress_button_mask_item
, f_buttons_len
, byte_order
);
20761 for (i
= 0; i
< f_valuators_len
; i
++) {
20762 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
20765 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_KeyPress_valuator_mask
, hf_x11_xinput_KeyPress_valuator_mask_item
, f_valuators_len
, byte_order
);
20766 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
20770 static void xinputButtonPress(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20773 int f_valuators_len
;
20774 int sumof_valuator_mask
= 0;
20775 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 4,
20776 "ButtonPress (4)");
20777 field16(tvb
, offsetp
, t
, hf_x11_xinput_ButtonPress_deviceid
, byte_order
);
20778 field32(tvb
, offsetp
, t
, hf_x11_xinput_ButtonPress_time
, byte_order
);
20779 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_detail
, tvb
, *offsetp
, 4, byte_order
);
20781 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_root
, tvb
, *offsetp
, 4, byte_order
);
20783 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_event
, tvb
, *offsetp
, 4, byte_order
);
20785 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_child
, tvb
, *offsetp
, 4, byte_order
);
20787 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_root_x
, tvb
, *offsetp
, 4, byte_order
);
20789 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_root_y
, tvb
, *offsetp
, 4, byte_order
);
20791 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_event_x
, tvb
, *offsetp
, 4, byte_order
);
20793 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_event_y
, tvb
, *offsetp
, 4, byte_order
);
20795 f_buttons_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20796 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_buttons_len
, tvb
, *offsetp
, 2, byte_order
);
20798 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20799 proto_tree_add_item(t
, hf_x11_xinput_ButtonPress_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
20801 field16(tvb
, offsetp
, t
, hf_x11_xinput_ButtonPress_sourceid
, byte_order
);
20802 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20805 static int* const flags_bits
[] = {
20806 &hf_x11_xinput_ButtonPress_flags_mask_PointerEmulated
,
20809 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_ButtonPress_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20812 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
20813 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
20814 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ButtonPress_button_mask
, hf_x11_xinput_ButtonPress_button_mask_item
, f_buttons_len
, byte_order
);
20817 for (i
= 0; i
< f_valuators_len
; i
++) {
20818 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
20821 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_ButtonPress_valuator_mask
, hf_x11_xinput_ButtonPress_valuator_mask_item
, f_valuators_len
, byte_order
);
20822 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
20826 static void xinputEnter(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20829 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 7,
20831 field16(tvb
, offsetp
, t
, hf_x11_xinput_Enter_deviceid
, byte_order
);
20832 field32(tvb
, offsetp
, t
, hf_x11_xinput_Enter_time
, byte_order
);
20833 field16(tvb
, offsetp
, t
, hf_x11_xinput_Enter_sourceid
, byte_order
);
20834 field8(tvb
, offsetp
, t
, hf_x11_xinput_Enter_mode
, byte_order
);
20835 field8(tvb
, offsetp
, t
, hf_x11_xinput_Enter_detail
, byte_order
);
20836 proto_tree_add_item(t
, hf_x11_xinput_Enter_root
, tvb
, *offsetp
, 4, byte_order
);
20838 proto_tree_add_item(t
, hf_x11_xinput_Enter_event
, tvb
, *offsetp
, 4, byte_order
);
20840 proto_tree_add_item(t
, hf_x11_xinput_Enter_child
, tvb
, *offsetp
, 4, byte_order
);
20842 proto_tree_add_item(t
, hf_x11_xinput_Enter_root_x
, tvb
, *offsetp
, 4, byte_order
);
20844 proto_tree_add_item(t
, hf_x11_xinput_Enter_root_y
, tvb
, *offsetp
, 4, byte_order
);
20846 proto_tree_add_item(t
, hf_x11_xinput_Enter_event_x
, tvb
, *offsetp
, 4, byte_order
);
20848 proto_tree_add_item(t
, hf_x11_xinput_Enter_event_y
, tvb
, *offsetp
, 4, byte_order
);
20850 proto_tree_add_item(t
, hf_x11_xinput_Enter_same_screen
, tvb
, *offsetp
, 1, byte_order
);
20852 proto_tree_add_item(t
, hf_x11_xinput_Enter_focus
, tvb
, *offsetp
, 1, byte_order
);
20854 f_buttons_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20855 proto_tree_add_item(t
, hf_x11_xinput_Enter_buttons_len
, tvb
, *offsetp
, 2, byte_order
);
20857 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
20858 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
20859 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_Enter_buttons
, hf_x11_xinput_Enter_buttons_item
, f_buttons_len
, byte_order
);
20863 static void struct_xinput_HierarchyInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
20866 for (i
= 0; i
< count
; i
++) {
20870 item
= proto_tree_add_item(root
, hf_x11_struct_xinput_HierarchyInfo
, tvb
, *offsetp
, 12, ENC_NA
);
20871 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
20872 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyInfo_deviceid
, byte_order
);
20873 field16(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyInfo_attachment
, byte_order
);
20874 field8(tvb
, offsetp
, t
, hf_x11_struct_xinput_HierarchyInfo_type
, byte_order
);
20875 proto_tree_add_item(t
, hf_x11_struct_xinput_HierarchyInfo_enabled
, tvb
, *offsetp
, 1, byte_order
);
20877 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
20880 static int* const flags_bits
[] = {
20881 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_MasterAdded
,
20882 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_MasterRemoved
,
20883 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_SlaveAdded
,
20884 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_SlaveRemoved
,
20885 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_SlaveAttached
,
20886 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_SlaveDetached
,
20887 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_DeviceEnabled
,
20888 &hf_x11_struct_xinput_HierarchyInfo_flags_mask_DeviceDisabled
,
20891 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xinput_HierarchyInfo_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20897 static void xinputHierarchy(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20900 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 11,
20902 field16(tvb
, offsetp
, t
, hf_x11_xinput_Hierarchy_deviceid
, byte_order
);
20903 field32(tvb
, offsetp
, t
, hf_x11_xinput_Hierarchy_time
, byte_order
);
20905 static int* const flags_bits
[] = {
20906 &hf_x11_xinput_Hierarchy_flags_mask_MasterAdded
,
20907 &hf_x11_xinput_Hierarchy_flags_mask_MasterRemoved
,
20908 &hf_x11_xinput_Hierarchy_flags_mask_SlaveAdded
,
20909 &hf_x11_xinput_Hierarchy_flags_mask_SlaveRemoved
,
20910 &hf_x11_xinput_Hierarchy_flags_mask_SlaveAttached
,
20911 &hf_x11_xinput_Hierarchy_flags_mask_SlaveDetached
,
20912 &hf_x11_xinput_Hierarchy_flags_mask_DeviceEnabled
,
20913 &hf_x11_xinput_Hierarchy_flags_mask_DeviceDisabled
,
20916 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_Hierarchy_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20919 f_num_infos
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20920 proto_tree_add_item(t
, hf_x11_xinput_Hierarchy_num_infos
, tvb
, *offsetp
, 2, byte_order
);
20922 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 10, ENC_NA
);
20924 struct_xinput_HierarchyInfo(tvb
, offsetp
, t
, byte_order
, f_num_infos
);
20928 static void xinputProperty(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20930 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 12,
20932 field16(tvb
, offsetp
, t
, hf_x11_xinput_Property_deviceid
, byte_order
);
20933 field32(tvb
, offsetp
, t
, hf_x11_xinput_Property_time
, byte_order
);
20934 proto_tree_add_item(t
, hf_x11_xinput_Property_property
, tvb
, *offsetp
, 4, byte_order
);
20936 field8(tvb
, offsetp
, t
, hf_x11_xinput_Property_what
, byte_order
);
20937 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
20942 static void xinputRawKeyPress(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20944 int f_valuators_len
;
20945 int sumof_valuator_mask
= 0;
20946 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 13,
20947 "RawKeyPress (13)");
20948 field16(tvb
, offsetp
, t
, hf_x11_xinput_RawKeyPress_deviceid
, byte_order
);
20949 field32(tvb
, offsetp
, t
, hf_x11_xinput_RawKeyPress_time
, byte_order
);
20950 proto_tree_add_item(t
, hf_x11_xinput_RawKeyPress_detail
, tvb
, *offsetp
, 4, byte_order
);
20952 proto_tree_add_item(t
, hf_x11_xinput_RawKeyPress_sourceid
, tvb
, *offsetp
, 2, byte_order
);
20954 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20955 proto_tree_add_item(t
, hf_x11_xinput_RawKeyPress_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
20958 static int* const flags_bits
[] = {
20959 &hf_x11_xinput_RawKeyPress_flags_mask_KeyRepeat
,
20962 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_RawKeyPress_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
20965 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
20969 for (i
= 0; i
< f_valuators_len
; i
++) {
20970 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
20973 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_RawKeyPress_valuator_mask
, hf_x11_xinput_RawKeyPress_valuator_mask_item
, f_valuators_len
, byte_order
);
20974 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
20975 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
20979 static void xinputRawButtonPress(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
20981 int f_valuators_len
;
20982 int sumof_valuator_mask
= 0;
20983 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 15,
20984 "RawButtonPress (15)");
20985 field16(tvb
, offsetp
, t
, hf_x11_xinput_RawButtonPress_deviceid
, byte_order
);
20986 field32(tvb
, offsetp
, t
, hf_x11_xinput_RawButtonPress_time
, byte_order
);
20987 proto_tree_add_item(t
, hf_x11_xinput_RawButtonPress_detail
, tvb
, *offsetp
, 4, byte_order
);
20989 proto_tree_add_item(t
, hf_x11_xinput_RawButtonPress_sourceid
, tvb
, *offsetp
, 2, byte_order
);
20991 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
20992 proto_tree_add_item(t
, hf_x11_xinput_RawButtonPress_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
20995 static int* const flags_bits
[] = {
20996 &hf_x11_xinput_RawButtonPress_flags_mask_PointerEmulated
,
20999 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_RawButtonPress_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21002 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
21006 for (i
= 0; i
< f_valuators_len
; i
++) {
21007 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
21010 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_RawButtonPress_valuator_mask
, hf_x11_xinput_RawButtonPress_valuator_mask_item
, f_valuators_len
, byte_order
);
21011 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
21012 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
21016 static void xinputTouchBegin(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21019 int f_valuators_len
;
21020 int sumof_valuator_mask
= 0;
21021 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 18,
21022 "TouchBegin (18)");
21023 field16(tvb
, offsetp
, t
, hf_x11_xinput_TouchBegin_deviceid
, byte_order
);
21024 field32(tvb
, offsetp
, t
, hf_x11_xinput_TouchBegin_time
, byte_order
);
21025 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_detail
, tvb
, *offsetp
, 4, byte_order
);
21027 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_root
, tvb
, *offsetp
, 4, byte_order
);
21029 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_event
, tvb
, *offsetp
, 4, byte_order
);
21031 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_child
, tvb
, *offsetp
, 4, byte_order
);
21033 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_root_x
, tvb
, *offsetp
, 4, byte_order
);
21035 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_root_y
, tvb
, *offsetp
, 4, byte_order
);
21037 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_event_x
, tvb
, *offsetp
, 4, byte_order
);
21039 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_event_y
, tvb
, *offsetp
, 4, byte_order
);
21041 f_buttons_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
21042 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_buttons_len
, tvb
, *offsetp
, 2, byte_order
);
21044 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
21045 proto_tree_add_item(t
, hf_x11_xinput_TouchBegin_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
21047 field16(tvb
, offsetp
, t
, hf_x11_xinput_TouchBegin_sourceid
, byte_order
);
21048 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21051 static int* const flags_bits
[] = {
21052 &hf_x11_xinput_TouchBegin_flags_mask_TouchPendingEnd
,
21053 &hf_x11_xinput_TouchBegin_flags_mask_TouchEmulatingPointer
,
21056 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_TouchBegin_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21059 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
21060 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
21061 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_TouchBegin_button_mask
, hf_x11_xinput_TouchBegin_button_mask_item
, f_buttons_len
, byte_order
);
21064 for (i
= 0; i
< f_valuators_len
; i
++) {
21065 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
21068 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_TouchBegin_valuator_mask
, hf_x11_xinput_TouchBegin_valuator_mask_item
, f_valuators_len
, byte_order
);
21069 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
21073 static void xinputTouchOwnership(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21075 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 21,
21076 "TouchOwnership (21)");
21077 field16(tvb
, offsetp
, t
, hf_x11_xinput_TouchOwnership_deviceid
, byte_order
);
21078 field32(tvb
, offsetp
, t
, hf_x11_xinput_TouchOwnership_time
, byte_order
);
21079 proto_tree_add_item(t
, hf_x11_xinput_TouchOwnership_touchid
, tvb
, *offsetp
, 4, byte_order
);
21081 proto_tree_add_item(t
, hf_x11_xinput_TouchOwnership_root
, tvb
, *offsetp
, 4, byte_order
);
21083 proto_tree_add_item(t
, hf_x11_xinput_TouchOwnership_event
, tvb
, *offsetp
, 4, byte_order
);
21085 proto_tree_add_item(t
, hf_x11_xinput_TouchOwnership_child
, tvb
, *offsetp
, 4, byte_order
);
21087 field16(tvb
, offsetp
, t
, hf_x11_xinput_TouchOwnership_sourceid
, byte_order
);
21088 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21090 field32(tvb
, offsetp
, t
, hf_x11_xinput_TouchOwnership_flags
, byte_order
);
21091 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
21096 static void xinputRawTouchBegin(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21098 int f_valuators_len
;
21099 int sumof_valuator_mask
= 0;
21100 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 22,
21101 "RawTouchBegin (22)");
21102 field16(tvb
, offsetp
, t
, hf_x11_xinput_RawTouchBegin_deviceid
, byte_order
);
21103 field32(tvb
, offsetp
, t
, hf_x11_xinput_RawTouchBegin_time
, byte_order
);
21104 proto_tree_add_item(t
, hf_x11_xinput_RawTouchBegin_detail
, tvb
, *offsetp
, 4, byte_order
);
21106 proto_tree_add_item(t
, hf_x11_xinput_RawTouchBegin_sourceid
, tvb
, *offsetp
, 2, byte_order
);
21108 f_valuators_len
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
21109 proto_tree_add_item(t
, hf_x11_xinput_RawTouchBegin_valuators_len
, tvb
, *offsetp
, 2, byte_order
);
21112 static int* const flags_bits
[] = {
21113 &hf_x11_xinput_RawTouchBegin_flags_mask_TouchPendingEnd
,
21114 &hf_x11_xinput_RawTouchBegin_flags_mask_TouchEmulatingPointer
,
21117 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_RawTouchBegin_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21120 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
21124 for (i
= 0; i
< f_valuators_len
; i
++) {
21125 sumof_valuator_mask
+= tvb_get_uint32(tvb
, *offsetp
+ i
* 4, byte_order
);
21128 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_RawTouchBegin_valuator_mask
, hf_x11_xinput_RawTouchBegin_valuator_mask_item
, f_valuators_len
, byte_order
);
21129 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
21130 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, sumof_valuator_mask
);
21134 static void xinputBarrierHit(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21136 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 25,
21137 "BarrierHit (25)");
21138 field16(tvb
, offsetp
, t
, hf_x11_xinput_BarrierHit_deviceid
, byte_order
);
21139 field32(tvb
, offsetp
, t
, hf_x11_xinput_BarrierHit_time
, byte_order
);
21140 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_eventid
, tvb
, *offsetp
, 4, byte_order
);
21142 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_root
, tvb
, *offsetp
, 4, byte_order
);
21144 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_event
, tvb
, *offsetp
, 4, byte_order
);
21146 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_barrier
, tvb
, *offsetp
, 4, byte_order
);
21148 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_dtime
, tvb
, *offsetp
, 4, byte_order
);
21151 static int* const flags_bits
[] = {
21152 &hf_x11_xinput_BarrierHit_flags_mask_PointerReleased
,
21153 &hf_x11_xinput_BarrierHit_flags_mask_DeviceIsGrabbed
,
21156 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_BarrierHit_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21159 field16(tvb
, offsetp
, t
, hf_x11_xinput_BarrierHit_sourceid
, byte_order
);
21160 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21162 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_root_x
, tvb
, *offsetp
, 4, byte_order
);
21164 proto_tree_add_item(t
, hf_x11_xinput_BarrierHit_root_y
, tvb
, *offsetp
, 4, byte_order
);
21166 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
21167 struct_xinput_FP3232(tvb
, offsetp
, t
, byte_order
, 1);
21171 static void xinputGesturePinchBegin(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21173 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 27,
21174 "GesturePinchBegin (27)");
21175 field16(tvb
, offsetp
, t
, hf_x11_xinput_GesturePinchBegin_deviceid
, byte_order
);
21176 field32(tvb
, offsetp
, t
, hf_x11_xinput_GesturePinchBegin_time
, byte_order
);
21177 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_detail
, tvb
, *offsetp
, 4, byte_order
);
21179 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_root
, tvb
, *offsetp
, 4, byte_order
);
21181 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_event
, tvb
, *offsetp
, 4, byte_order
);
21183 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_child
, tvb
, *offsetp
, 4, byte_order
);
21185 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_root_x
, tvb
, *offsetp
, 4, byte_order
);
21187 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_root_y
, tvb
, *offsetp
, 4, byte_order
);
21189 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_event_x
, tvb
, *offsetp
, 4, byte_order
);
21191 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_event_y
, tvb
, *offsetp
, 4, byte_order
);
21193 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_delta_x
, tvb
, *offsetp
, 4, byte_order
);
21195 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_delta_y
, tvb
, *offsetp
, 4, byte_order
);
21197 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_delta_unaccel_x
, tvb
, *offsetp
, 4, byte_order
);
21199 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_delta_unaccel_y
, tvb
, *offsetp
, 4, byte_order
);
21201 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_scale
, tvb
, *offsetp
, 4, byte_order
);
21203 proto_tree_add_item(t
, hf_x11_xinput_GesturePinchBegin_delta_angle
, tvb
, *offsetp
, 4, byte_order
);
21205 field16(tvb
, offsetp
, t
, hf_x11_xinput_GesturePinchBegin_sourceid
, byte_order
);
21206 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21208 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
21209 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
21211 static int* const flags_bits
[] = {
21212 &hf_x11_xinput_GesturePinchBegin_flags_mask_GesturePinchCancelled
,
21215 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_GesturePinchBegin_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21221 static void xinputGestureSwipeBegin(tvbuff_t
*tvb
, int length _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21223 proto_tree_add_uint_format_value(t
, hf_x11_minor_opcode
, tvb
, *offsetp
, 2, 30,
21224 "GestureSwipeBegin (30)");
21225 field16(tvb
, offsetp
, t
, hf_x11_xinput_GestureSwipeBegin_deviceid
, byte_order
);
21226 field32(tvb
, offsetp
, t
, hf_x11_xinput_GestureSwipeBegin_time
, byte_order
);
21227 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_detail
, tvb
, *offsetp
, 4, byte_order
);
21229 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_root
, tvb
, *offsetp
, 4, byte_order
);
21231 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_event
, tvb
, *offsetp
, 4, byte_order
);
21233 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_child
, tvb
, *offsetp
, 4, byte_order
);
21235 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_root_x
, tvb
, *offsetp
, 4, byte_order
);
21237 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_root_y
, tvb
, *offsetp
, 4, byte_order
);
21239 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_event_x
, tvb
, *offsetp
, 4, byte_order
);
21241 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_event_y
, tvb
, *offsetp
, 4, byte_order
);
21243 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_delta_x
, tvb
, *offsetp
, 4, byte_order
);
21245 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_delta_y
, tvb
, *offsetp
, 4, byte_order
);
21247 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_delta_unaccel_x
, tvb
, *offsetp
, 4, byte_order
);
21249 proto_tree_add_item(t
, hf_x11_xinput_GestureSwipeBegin_delta_unaccel_y
, tvb
, *offsetp
, 4, byte_order
);
21251 field16(tvb
, offsetp
, t
, hf_x11_xinput_GestureSwipeBegin_sourceid
, byte_order
);
21252 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21254 struct_xinput_ModifierInfo(tvb
, offsetp
, t
, byte_order
, 1);
21255 struct_xinput_GroupInfo(tvb
, offsetp
, t
, byte_order
, 1);
21257 static int* const flags_bits
[] = {
21258 &hf_x11_xinput_GestureSwipeBegin_flags_mask_GestureSwipeCancelled
,
21261 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xinput_GestureSwipeBegin_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
21267 static void xinputSendExtensionEvent(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
21271 proto_tree_add_item(t
, hf_x11_xinput_SendExtensionEvent_destination
, tvb
, *offsetp
, 4, byte_order
);
21273 proto_tree_add_item(t
, hf_x11_xinput_SendExtensionEvent_device_id
, tvb
, *offsetp
, 1, byte_order
);
21275 proto_tree_add_item(t
, hf_x11_xinput_SendExtensionEvent_propagate
, tvb
, *offsetp
, 1, byte_order
);
21277 f_num_classes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
21278 proto_tree_add_item(t
, hf_x11_xinput_SendExtensionEvent_num_classes
, tvb
, *offsetp
, 2, byte_order
);
21280 f_num_events
= tvb_get_uint8(tvb
, *offsetp
);
21281 proto_tree_add_item(t
, hf_x11_xinput_SendExtensionEvent_num_events
, tvb
, *offsetp
, 1, byte_order
);
21283 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
21285 length
-= f_num_events
* 1;
21286 listOfCard32(tvb
, offsetp
, t
, hf_x11_xinput_SendExtensionEvent_classes
, hf_x11_xinput_SendExtensionEvent_classes_item
, f_num_classes
, byte_order
);
21287 length
-= f_num_classes
* 4;
21289 static const value_string xinput_extension_minor
[] = {
21290 { 1, "GetExtensionVersion" },
21291 { 2, "ListInputDevices" },
21292 { 3, "OpenDevice" },
21293 { 4, "CloseDevice" },
21294 { 5, "SetDeviceMode" },
21295 { 6, "SelectExtensionEvent" },
21296 { 7, "GetSelectedExtensionEvents" },
21297 { 8, "ChangeDeviceDontPropagateList" },
21298 { 9, "GetDeviceDontPropagateList" },
21299 { 10, "GetDeviceMotionEvents" },
21300 { 11, "ChangeKeyboardDevice" },
21301 { 12, "ChangePointerDevice" },
21302 { 13, "GrabDevice" },
21303 { 14, "UngrabDevice" },
21304 { 15, "GrabDeviceKey" },
21305 { 16, "UngrabDeviceKey" },
21306 { 17, "GrabDeviceButton" },
21307 { 18, "UngrabDeviceButton" },
21308 { 19, "AllowDeviceEvents" },
21309 { 20, "GetDeviceFocus" },
21310 { 21, "SetDeviceFocus" },
21311 { 22, "GetFeedbackControl" },
21312 { 23, "ChangeFeedbackControl" },
21313 { 24, "GetDeviceKeyMapping" },
21314 { 25, "ChangeDeviceKeyMapping" },
21315 { 26, "GetDeviceModifierMapping" },
21316 { 27, "SetDeviceModifierMapping" },
21317 { 28, "GetDeviceButtonMapping" },
21318 { 29, "SetDeviceButtonMapping" },
21319 { 30, "QueryDeviceState" },
21320 { 31, "SendExtensionEvent" },
21321 { 32, "DeviceBell" },
21322 { 33, "SetDeviceValuators" },
21323 { 34, "GetDeviceControl" },
21324 { 35, "ChangeDeviceControl" },
21325 { 36, "ListDeviceProperties" },
21326 { 37, "ChangeDeviceProperty" },
21327 { 38, "DeleteDeviceProperty" },
21328 { 39, "GetDeviceProperty" },
21329 { 40, "XIQueryPointer" },
21330 { 41, "XIWarpPointer" },
21331 { 42, "XIChangeCursor" },
21332 { 43, "XIChangeHierarchy" },
21333 { 44, "XISetClientPointer" },
21334 { 45, "XIGetClientPointer" },
21335 { 46, "XISelectEvents" },
21336 { 47, "XIQueryVersion" },
21337 { 48, "XIQueryDevice" },
21338 { 49, "XISetFocus" },
21339 { 50, "XIGetFocus" },
21340 { 51, "XIGrabDevice" },
21341 { 52, "XIUngrabDevice" },
21342 { 53, "XIAllowEvents" },
21343 { 54, "XIPassiveGrabDevice" },
21344 { 55, "XIPassiveUngrabDevice" },
21345 { 56, "XIListProperties" },
21346 { 57, "XIChangeProperty" },
21347 { 58, "XIDeleteProperty" },
21348 { 59, "XIGetProperty" },
21349 { 60, "XIGetSelectedEvents" },
21350 { 61, "XIBarrierReleasePointer" },
21353 static const x11_event_info xinput_events
[] = {
21354 { "xinput-DeviceKeyPress", xinputDeviceKeyPress
},
21355 { "xinput-DeviceFocusIn", xinputDeviceFocusIn
},
21356 { "xinput-DeviceStateNotify", xinputDeviceStateNotify
},
21357 { "xinput-DeviceMappingNotify", xinputDeviceMappingNotify
},
21358 { "xinput-ChangeDeviceNotify", xinputChangeDeviceNotify
},
21359 { "xinput-DeviceKeyStateNotify", xinputDeviceKeyStateNotify
},
21360 { "xinput-DeviceButtonStateNotify", xinputDeviceButtonStateNotify
},
21361 { "xinput-DevicePresenceNotify", xinputDevicePresenceNotify
},
21362 { "xinput-DevicePropertyNotify", xinputDevicePropertyNotify
},
21365 static const x11_generic_event_info xinput_generic_events
[] = {
21366 { 1, xinputDeviceChanged
},
21367 { 2, xinputKeyPress
},
21368 { 4, xinputButtonPress
},
21369 { 7, xinputEnter
},
21370 { 11, xinputHierarchy
},
21371 { 12, xinputProperty
},
21372 { 13, xinputRawKeyPress
},
21373 { 15, xinputRawButtonPress
},
21374 { 18, xinputTouchBegin
},
21375 { 21, xinputTouchOwnership
},
21376 { 22, xinputRawTouchBegin
},
21377 { 25, xinputBarrierHit
},
21378 { 27, xinputGesturePinchBegin
},
21379 { 30, xinputGestureSwipeBegin
},
21383 static const x11_reply_info xinput_replies
[] = {
21384 { 1, xinputGetExtensionVersion_Reply
},
21385 { 2, xinputListInputDevices_Reply
},
21386 { 3, xinputOpenDevice_Reply
},
21387 { 5, xinputSetDeviceMode_Reply
},
21388 { 7, xinputGetSelectedExtensionEvents_Reply
},
21389 { 9, xinputGetDeviceDontPropagateList_Reply
},
21390 { 10, xinputGetDeviceMotionEvents_Reply
},
21391 { 11, xinputChangeKeyboardDevice_Reply
},
21392 { 12, xinputChangePointerDevice_Reply
},
21393 { 13, xinputGrabDevice_Reply
},
21394 { 20, xinputGetDeviceFocus_Reply
},
21395 { 22, xinputGetFeedbackControl_Reply
},
21396 { 24, xinputGetDeviceKeyMapping_Reply
},
21397 { 26, xinputGetDeviceModifierMapping_Reply
},
21398 { 27, xinputSetDeviceModifierMapping_Reply
},
21399 { 28, xinputGetDeviceButtonMapping_Reply
},
21400 { 29, xinputSetDeviceButtonMapping_Reply
},
21401 { 30, xinputQueryDeviceState_Reply
},
21402 { 33, xinputSetDeviceValuators_Reply
},
21403 { 34, xinputGetDeviceControl_Reply
},
21404 { 35, xinputChangeDeviceControl_Reply
},
21405 { 36, xinputListDeviceProperties_Reply
},
21406 { 39, xinputGetDeviceProperty_Reply
},
21407 { 40, xinputXIQueryPointer_Reply
},
21408 { 45, xinputXIGetClientPointer_Reply
},
21409 { 47, xinputXIQueryVersion_Reply
},
21410 { 48, xinputXIQueryDevice_Reply
},
21411 { 50, xinputXIGetFocus_Reply
},
21412 { 51, xinputXIGrabDevice_Reply
},
21413 { 54, xinputXIPassiveGrabDevice_Reply
},
21414 { 56, xinputXIListProperties_Reply
},
21415 { 59, xinputXIGetProperty_Reply
},
21416 { 60, xinputXIGetSelectedEvents_Reply
},
21420 static void dispatch_xinput(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
21423 minor
= CARD8(xinput_extension_minor
);
21424 length
= REQUEST_LENGTH();
21426 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
21427 val_to_str(minor
, xinput_extension_minor
,
21428 "<Unknown opcode %d>"));
21431 xinputGetExtensionVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21434 xinputListInputDevices(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21437 xinputOpenDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21440 xinputCloseDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21443 xinputSetDeviceMode(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21446 xinputSelectExtensionEvent(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21449 xinputGetSelectedExtensionEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21452 xinputChangeDeviceDontPropagateList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21455 xinputGetDeviceDontPropagateList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21458 xinputGetDeviceMotionEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21461 xinputChangeKeyboardDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21464 xinputChangePointerDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21467 xinputGrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21470 xinputUngrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21473 xinputGrabDeviceKey(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21476 xinputUngrabDeviceKey(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21479 xinputGrabDeviceButton(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21482 xinputUngrabDeviceButton(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21485 xinputAllowDeviceEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21488 xinputGetDeviceFocus(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21491 xinputSetDeviceFocus(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21494 xinputGetFeedbackControl(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21497 xinputChangeFeedbackControl(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21500 xinputGetDeviceKeyMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21503 xinputChangeDeviceKeyMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21506 xinputGetDeviceModifierMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21509 xinputSetDeviceModifierMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21512 xinputGetDeviceButtonMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21515 xinputSetDeviceButtonMapping(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21518 xinputQueryDeviceState(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21521 xinputSendExtensionEvent(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21524 xinputDeviceBell(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21527 xinputSetDeviceValuators(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21530 xinputGetDeviceControl(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21533 xinputChangeDeviceControl(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21536 xinputListDeviceProperties(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21539 xinputChangeDeviceProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21542 xinputDeleteDeviceProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21545 xinputGetDeviceProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21548 xinputXIQueryPointer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21551 xinputXIWarpPointer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21554 xinputXIChangeCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21557 xinputXIChangeHierarchy(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21560 xinputXISetClientPointer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21563 xinputXIGetClientPointer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21566 xinputXISelectEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21569 xinputXIQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21572 xinputXIQueryDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21575 xinputXISetFocus(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21578 xinputXIGetFocus(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21581 xinputXIGrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21584 xinputXIUngrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21587 xinputXIAllowEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21590 xinputXIPassiveGrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21593 xinputXIPassiveUngrabDevice(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21596 xinputXIListProperties(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21599 xinputXIChangeProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21602 xinputXIDeleteProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21605 xinputXIGetProperty(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21608 xinputXIGetSelectedEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21611 xinputXIBarrierReleasePointer(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
21613 /* No need for a default case here, since Unknown is printed above,
21614 and UNDECODED() is taken care of by dissect_x11_request */
21618 static void register_xinput(void)
21620 set_handler("XInputExtension", dispatch_xinput
, xinput_errors
, xinput_events
, xinput_generic_events
, xinput_replies
);
21623 static void struct_xkb_IndicatorMap(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21626 for (i
= 0; i
< count
; i
++) {
21630 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_IndicatorMap
, tvb
, *offsetp
, 12, ENC_NA
);
21631 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21632 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_IndicatorMap_flags
, byte_order
);
21633 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_IndicatorMap_whichGroups
, byte_order
);
21634 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_IndicatorMap_groups
, byte_order
);
21635 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_IndicatorMap_whichMods
, byte_order
);
21637 static int* const mods_bits
[] = {
21638 &hf_x11_struct_xkb_IndicatorMap_mods_mask_Shift
,
21639 &hf_x11_struct_xkb_IndicatorMap_mods_mask_Lock
,
21640 &hf_x11_struct_xkb_IndicatorMap_mods_mask_Control
,
21641 &hf_x11_struct_xkb_IndicatorMap_mods_mask_1
,
21642 &hf_x11_struct_xkb_IndicatorMap_mods_mask_2
,
21643 &hf_x11_struct_xkb_IndicatorMap_mods_mask_3
,
21644 &hf_x11_struct_xkb_IndicatorMap_mods_mask_4
,
21645 &hf_x11_struct_xkb_IndicatorMap_mods_mask_5
,
21646 &hf_x11_struct_xkb_IndicatorMap_mods_mask_Any
,
21649 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_IndicatorMap_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
21653 static int* const realMods_bits
[] = {
21654 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_Shift
,
21655 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_Lock
,
21656 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_Control
,
21657 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_1
,
21658 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_2
,
21659 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_3
,
21660 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_4
,
21661 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_5
,
21662 &hf_x11_struct_xkb_IndicatorMap_realMods_mask_Any
,
21665 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_IndicatorMap_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
21669 static int* const vmods_bits
[] = {
21670 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_0
,
21671 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_1
,
21672 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_2
,
21673 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_3
,
21674 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_4
,
21675 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_5
,
21676 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_6
,
21677 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_7
,
21678 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_8
,
21679 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_9
,
21680 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_10
,
21681 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_11
,
21682 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_12
,
21683 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_13
,
21684 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_14
,
21685 &hf_x11_struct_xkb_IndicatorMap_vmods_mask_15
,
21688 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_IndicatorMap_vmods
, ett_x11_rectangle
, vmods_bits
, byte_order
);
21692 static int* const ctrls_bits
[] = {
21693 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_RepeatKeys
,
21694 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_SlowKeys
,
21695 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_BounceKeys
,
21696 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_StickyKeys
,
21697 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_MouseKeys
,
21698 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_MouseKeysAccel
,
21699 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_AccessXKeys
,
21700 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_AccessXTimeoutMask
,
21701 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_AccessXFeedbackMask
,
21702 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_AudibleBellMask
,
21703 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_Overlay1Mask
,
21704 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_Overlay2Mask
,
21705 &hf_x11_struct_xkb_IndicatorMap_ctrls_mask_IgnoreGroupLockMask
,
21708 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_IndicatorMap_ctrls
, ett_x11_rectangle
, ctrls_bits
, byte_order
);
21714 static void struct_xkb_ModDef(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21717 for (i
= 0; i
< count
; i
++) {
21721 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_ModDef
, tvb
, *offsetp
, 4, ENC_NA
);
21722 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21724 static int* const mask_bits
[] = {
21725 &hf_x11_struct_xkb_ModDef_mask_mask_Shift
,
21726 &hf_x11_struct_xkb_ModDef_mask_mask_Lock
,
21727 &hf_x11_struct_xkb_ModDef_mask_mask_Control
,
21728 &hf_x11_struct_xkb_ModDef_mask_mask_1
,
21729 &hf_x11_struct_xkb_ModDef_mask_mask_2
,
21730 &hf_x11_struct_xkb_ModDef_mask_mask_3
,
21731 &hf_x11_struct_xkb_ModDef_mask_mask_4
,
21732 &hf_x11_struct_xkb_ModDef_mask_mask_5
,
21733 &hf_x11_struct_xkb_ModDef_mask_mask_Any
,
21736 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_ModDef_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
21740 static int* const realMods_bits
[] = {
21741 &hf_x11_struct_xkb_ModDef_realMods_mask_Shift
,
21742 &hf_x11_struct_xkb_ModDef_realMods_mask_Lock
,
21743 &hf_x11_struct_xkb_ModDef_realMods_mask_Control
,
21744 &hf_x11_struct_xkb_ModDef_realMods_mask_1
,
21745 &hf_x11_struct_xkb_ModDef_realMods_mask_2
,
21746 &hf_x11_struct_xkb_ModDef_realMods_mask_3
,
21747 &hf_x11_struct_xkb_ModDef_realMods_mask_4
,
21748 &hf_x11_struct_xkb_ModDef_realMods_mask_5
,
21749 &hf_x11_struct_xkb_ModDef_realMods_mask_Any
,
21752 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_ModDef_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
21756 static int* const vmods_bits
[] = {
21757 &hf_x11_struct_xkb_ModDef_vmods_mask_0
,
21758 &hf_x11_struct_xkb_ModDef_vmods_mask_1
,
21759 &hf_x11_struct_xkb_ModDef_vmods_mask_2
,
21760 &hf_x11_struct_xkb_ModDef_vmods_mask_3
,
21761 &hf_x11_struct_xkb_ModDef_vmods_mask_4
,
21762 &hf_x11_struct_xkb_ModDef_vmods_mask_5
,
21763 &hf_x11_struct_xkb_ModDef_vmods_mask_6
,
21764 &hf_x11_struct_xkb_ModDef_vmods_mask_7
,
21765 &hf_x11_struct_xkb_ModDef_vmods_mask_8
,
21766 &hf_x11_struct_xkb_ModDef_vmods_mask_9
,
21767 &hf_x11_struct_xkb_ModDef_vmods_mask_10
,
21768 &hf_x11_struct_xkb_ModDef_vmods_mask_11
,
21769 &hf_x11_struct_xkb_ModDef_vmods_mask_12
,
21770 &hf_x11_struct_xkb_ModDef_vmods_mask_13
,
21771 &hf_x11_struct_xkb_ModDef_vmods_mask_14
,
21772 &hf_x11_struct_xkb_ModDef_vmods_mask_15
,
21775 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_ModDef_vmods
, ett_x11_rectangle
, vmods_bits
, byte_order
);
21781 static void struct_xkb_KeyName(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21784 for (i
= 0; i
< count
; i
++) {
21788 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeyName
, tvb
, *offsetp
, 4, ENC_NA
);
21789 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21790 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_KeyName_name
, 4, byte_order
);
21794 static void struct_xkb_KeyAlias(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21797 for (i
= 0; i
< count
; i
++) {
21801 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeyAlias
, tvb
, *offsetp
, 8, ENC_NA
);
21802 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21803 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_KeyAlias_real
, 4, byte_order
);
21804 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_KeyAlias_alias
, 4, byte_order
);
21808 static int struct_size_xkb_CountedString16(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
21812 f_length
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 0, byte_order
);
21813 size
+= f_length
* 1;
21814 size
+= (((f_length
+ 5) & (~3)) - (f_length
+ 2)) * 1;
21818 static void struct_xkb_CountedString16(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21821 for (i
= 0; i
< count
; i
++) {
21826 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_CountedString16
, tvb
, *offsetp
, struct_size_xkb_CountedString16(tvb
, offsetp
, byte_order
), ENC_NA
);
21827 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21828 f_length
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
21829 proto_tree_add_item(t
, hf_x11_struct_xkb_CountedString16_length
, tvb
, *offsetp
, 2, byte_order
);
21831 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_CountedString16_string
, f_length
, byte_order
);
21832 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_CountedString16_alignment_pad
, (((f_length
+ 5) & (~3)) - (f_length
+ 2)), byte_order
);
21836 static void struct_xkb_KTMapEntry(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21839 for (i
= 0; i
< count
; i
++) {
21843 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KTMapEntry
, tvb
, *offsetp
, 8, ENC_NA
);
21844 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21845 proto_tree_add_item(t
, hf_x11_struct_xkb_KTMapEntry_active
, tvb
, *offsetp
, 1, byte_order
);
21848 static int* const mods_mask_bits
[] = {
21849 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_Shift
,
21850 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_Lock
,
21851 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_Control
,
21852 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_1
,
21853 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_2
,
21854 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_3
,
21855 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_4
,
21856 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_5
,
21857 &hf_x11_struct_xkb_KTMapEntry_mods_mask_mask_Any
,
21860 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KTMapEntry_mods_mask
, ett_x11_rectangle
, mods_mask_bits
, byte_order
);
21863 proto_tree_add_item(t
, hf_x11_struct_xkb_KTMapEntry_level
, tvb
, *offsetp
, 1, byte_order
);
21866 static int* const mods_mods_bits
[] = {
21867 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_Shift
,
21868 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_Lock
,
21869 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_Control
,
21870 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_1
,
21871 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_2
,
21872 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_3
,
21873 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_4
,
21874 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_5
,
21875 &hf_x11_struct_xkb_KTMapEntry_mods_mods_mask_Any
,
21878 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KTMapEntry_mods_mods
, ett_x11_rectangle
, mods_mods_bits
, byte_order
);
21882 static int* const mods_vmods_bits
[] = {
21883 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_0
,
21884 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_1
,
21885 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_2
,
21886 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_3
,
21887 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_4
,
21888 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_5
,
21889 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_6
,
21890 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_7
,
21891 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_8
,
21892 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_9
,
21893 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_10
,
21894 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_11
,
21895 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_12
,
21896 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_13
,
21897 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_14
,
21898 &hf_x11_struct_xkb_KTMapEntry_mods_vmods_mask_15
,
21901 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KTMapEntry_mods_vmods
, ett_x11_rectangle
, mods_vmods_bits
, byte_order
);
21904 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
21909 static int struct_size_xkb_KeyType(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
21914 f_nMapEntries
= tvb_get_uint8(tvb
, *offsetp
+ size
+ 5);
21915 f_hasPreserve
= tvb_get_uint8(tvb
, *offsetp
+ size
+ 6);
21916 size
+= f_nMapEntries
* 8;
21917 size
+= (f_hasPreserve
* f_nMapEntries
) * 4;
21921 static void struct_xkb_KeyType(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
21924 for (i
= 0; i
< count
; i
++) {
21930 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeyType
, tvb
, *offsetp
, struct_size_xkb_KeyType(tvb
, offsetp
, byte_order
), ENC_NA
);
21931 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
21933 static int* const mods_mask_bits
[] = {
21934 &hf_x11_struct_xkb_KeyType_mods_mask_mask_Shift
,
21935 &hf_x11_struct_xkb_KeyType_mods_mask_mask_Lock
,
21936 &hf_x11_struct_xkb_KeyType_mods_mask_mask_Control
,
21937 &hf_x11_struct_xkb_KeyType_mods_mask_mask_1
,
21938 &hf_x11_struct_xkb_KeyType_mods_mask_mask_2
,
21939 &hf_x11_struct_xkb_KeyType_mods_mask_mask_3
,
21940 &hf_x11_struct_xkb_KeyType_mods_mask_mask_4
,
21941 &hf_x11_struct_xkb_KeyType_mods_mask_mask_5
,
21942 &hf_x11_struct_xkb_KeyType_mods_mask_mask_Any
,
21945 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KeyType_mods_mask
, ett_x11_rectangle
, mods_mask_bits
, byte_order
);
21949 static int* const mods_mods_bits
[] = {
21950 &hf_x11_struct_xkb_KeyType_mods_mods_mask_Shift
,
21951 &hf_x11_struct_xkb_KeyType_mods_mods_mask_Lock
,
21952 &hf_x11_struct_xkb_KeyType_mods_mods_mask_Control
,
21953 &hf_x11_struct_xkb_KeyType_mods_mods_mask_1
,
21954 &hf_x11_struct_xkb_KeyType_mods_mods_mask_2
,
21955 &hf_x11_struct_xkb_KeyType_mods_mods_mask_3
,
21956 &hf_x11_struct_xkb_KeyType_mods_mods_mask_4
,
21957 &hf_x11_struct_xkb_KeyType_mods_mods_mask_5
,
21958 &hf_x11_struct_xkb_KeyType_mods_mods_mask_Any
,
21961 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KeyType_mods_mods
, ett_x11_rectangle
, mods_mods_bits
, byte_order
);
21965 static int* const mods_vmods_bits
[] = {
21966 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_0
,
21967 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_1
,
21968 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_2
,
21969 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_3
,
21970 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_4
,
21971 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_5
,
21972 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_6
,
21973 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_7
,
21974 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_8
,
21975 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_9
,
21976 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_10
,
21977 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_11
,
21978 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_12
,
21979 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_13
,
21980 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_14
,
21981 &hf_x11_struct_xkb_KeyType_mods_vmods_mask_15
,
21984 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KeyType_mods_vmods
, ett_x11_rectangle
, mods_vmods_bits
, byte_order
);
21987 proto_tree_add_item(t
, hf_x11_struct_xkb_KeyType_numLevels
, tvb
, *offsetp
, 1, byte_order
);
21989 f_nMapEntries
= tvb_get_uint8(tvb
, *offsetp
);
21990 proto_tree_add_item(t
, hf_x11_struct_xkb_KeyType_nMapEntries
, tvb
, *offsetp
, 1, byte_order
);
21992 f_hasPreserve
= tvb_get_uint8(tvb
, *offsetp
);
21993 proto_tree_add_item(t
, hf_x11_struct_xkb_KeyType_hasPreserve
, tvb
, *offsetp
, 1, byte_order
);
21995 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
21997 struct_xkb_KTMapEntry(tvb
, offsetp
, t
, byte_order
, f_nMapEntries
);
21998 struct_xkb_ModDef(tvb
, offsetp
, t
, byte_order
, (f_hasPreserve
* f_nMapEntries
));
22002 static int struct_size_xkb_KeySymMap(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
22006 f_nSyms
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 6, byte_order
);
22007 size
+= f_nSyms
* 4;
22011 static void struct_xkb_KeySymMap(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22014 for (i
= 0; i
< count
; i
++) {
22019 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeySymMap
, tvb
, *offsetp
, struct_size_xkb_KeySymMap(tvb
, offsetp
, byte_order
), ENC_NA
);
22020 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22021 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_KeySymMap_kt_index
, 4, byte_order
);
22022 proto_tree_add_item(t
, hf_x11_struct_xkb_KeySymMap_groupInfo
, tvb
, *offsetp
, 1, byte_order
);
22024 proto_tree_add_item(t
, hf_x11_struct_xkb_KeySymMap_width
, tvb
, *offsetp
, 1, byte_order
);
22026 f_nSyms
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
22027 proto_tree_add_item(t
, hf_x11_struct_xkb_KeySymMap_nSyms
, tvb
, *offsetp
, 2, byte_order
);
22029 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xkb_KeySymMap_syms
, hf_x11_struct_xkb_KeySymMap_syms_item
, f_nSyms
, byte_order
);
22033 static void struct_xkb_CommonBehavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22036 for (i
= 0; i
< count
; i
++) {
22040 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_CommonBehavior
, tvb
, *offsetp
, 2, ENC_NA
);
22041 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22042 proto_tree_add_item(t
, hf_x11_struct_xkb_CommonBehavior_type
, tvb
, *offsetp
, 1, byte_order
);
22044 proto_tree_add_item(t
, hf_x11_struct_xkb_CommonBehavior_data
, tvb
, *offsetp
, 1, byte_order
);
22049 static void struct_xkb_DefaultBehavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22052 for (i
= 0; i
< count
; i
++) {
22056 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_DefaultBehavior
, tvb
, *offsetp
, 2, ENC_NA
);
22057 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22058 proto_tree_add_item(t
, hf_x11_struct_xkb_DefaultBehavior_type
, tvb
, *offsetp
, 1, byte_order
);
22060 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
22065 static void struct_xkb_RadioGroupBehavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22068 for (i
= 0; i
< count
; i
++) {
22072 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_RadioGroupBehavior
, tvb
, *offsetp
, 2, ENC_NA
);
22073 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22074 proto_tree_add_item(t
, hf_x11_struct_xkb_RadioGroupBehavior_type
, tvb
, *offsetp
, 1, byte_order
);
22076 proto_tree_add_item(t
, hf_x11_struct_xkb_RadioGroupBehavior_group
, tvb
, *offsetp
, 1, byte_order
);
22081 static void struct_xkb_OverlayBehavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22084 for (i
= 0; i
< count
; i
++) {
22088 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_OverlayBehavior
, tvb
, *offsetp
, 2, ENC_NA
);
22089 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22090 proto_tree_add_item(t
, hf_x11_struct_xkb_OverlayBehavior_type
, tvb
, *offsetp
, 1, byte_order
);
22092 proto_tree_add_item(t
, hf_x11_struct_xkb_OverlayBehavior_key
, tvb
, *offsetp
, 1, byte_order
);
22097 static void struct_xkb_Behavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order
, int count
)
22100 int base
= *offsetp
;
22101 for (i
= 0; i
< count
; i
++) {
22104 item
= proto_tree_add_item(root
, hf_x11_union_xkb_Behavior
, tvb
, base
, 2, ENC_NA
);
22105 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22108 struct_xkb_CommonBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22110 struct_xkb_DefaultBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22112 struct_xkb_DefaultBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22114 struct_xkb_RadioGroupBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22116 struct_xkb_OverlayBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22118 struct_xkb_OverlayBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22120 struct_xkb_DefaultBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22122 struct_xkb_RadioGroupBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22124 struct_xkb_OverlayBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22126 struct_xkb_OverlayBehavior(tvb
, offsetp
, t
, byte_order
, 1);
22128 proto_tree_add_item(t
, hf_x11_union_xkb_Behavior_type
, tvb
, *offsetp
, 1, byte_order
);
22135 static void struct_xkb_SetBehavior(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22138 for (i
= 0; i
< count
; i
++) {
22142 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SetBehavior
, tvb
, *offsetp
, 4, ENC_NA
);
22143 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22144 proto_tree_add_item(t
, hf_x11_struct_xkb_SetBehavior_keycode
, tvb
, *offsetp
, 1, byte_order
);
22146 struct_xkb_Behavior(tvb
, offsetp
, t
, byte_order
, 1);
22147 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
22152 static void struct_xkb_SetExplicit(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22155 for (i
= 0; i
< count
; i
++) {
22159 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SetExplicit
, tvb
, *offsetp
, 2, ENC_NA
);
22160 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22161 proto_tree_add_item(t
, hf_x11_struct_xkb_SetExplicit_keycode
, tvb
, *offsetp
, 1, byte_order
);
22164 static int* const explicit_bits
[] = {
22165 &hf_x11_struct_xkb_SetExplicit_explicit_mask_KeyType1
,
22166 &hf_x11_struct_xkb_SetExplicit_explicit_mask_KeyType2
,
22167 &hf_x11_struct_xkb_SetExplicit_explicit_mask_KeyType3
,
22168 &hf_x11_struct_xkb_SetExplicit_explicit_mask_KeyType4
,
22169 &hf_x11_struct_xkb_SetExplicit_explicit_mask_Interpret
,
22170 &hf_x11_struct_xkb_SetExplicit_explicit_mask_AutoRepeat
,
22171 &hf_x11_struct_xkb_SetExplicit_explicit_mask_Behavior
,
22172 &hf_x11_struct_xkb_SetExplicit_explicit_mask_VModMap
,
22175 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SetExplicit_explicit
, ett_x11_rectangle
, explicit_bits
, byte_order
);
22181 static void struct_xkb_KeyModMap(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22184 for (i
= 0; i
< count
; i
++) {
22188 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeyModMap
, tvb
, *offsetp
, 2, ENC_NA
);
22189 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22190 proto_tree_add_item(t
, hf_x11_struct_xkb_KeyModMap_keycode
, tvb
, *offsetp
, 1, byte_order
);
22193 static int* const mods_bits
[] = {
22194 &hf_x11_struct_xkb_KeyModMap_mods_mask_Shift
,
22195 &hf_x11_struct_xkb_KeyModMap_mods_mask_Lock
,
22196 &hf_x11_struct_xkb_KeyModMap_mods_mask_Control
,
22197 &hf_x11_struct_xkb_KeyModMap_mods_mask_1
,
22198 &hf_x11_struct_xkb_KeyModMap_mods_mask_2
,
22199 &hf_x11_struct_xkb_KeyModMap_mods_mask_3
,
22200 &hf_x11_struct_xkb_KeyModMap_mods_mask_4
,
22201 &hf_x11_struct_xkb_KeyModMap_mods_mask_5
,
22202 &hf_x11_struct_xkb_KeyModMap_mods_mask_Any
,
22205 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KeyModMap_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
22211 static void struct_xkb_KeyVModMap(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22214 for (i
= 0; i
< count
; i
++) {
22218 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KeyVModMap
, tvb
, *offsetp
, 4, ENC_NA
);
22219 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22220 proto_tree_add_item(t
, hf_x11_struct_xkb_KeyVModMap_keycode
, tvb
, *offsetp
, 1, byte_order
);
22222 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
22225 static int* const vmods_bits
[] = {
22226 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_0
,
22227 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_1
,
22228 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_2
,
22229 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_3
,
22230 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_4
,
22231 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_5
,
22232 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_6
,
22233 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_7
,
22234 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_8
,
22235 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_9
,
22236 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_10
,
22237 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_11
,
22238 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_12
,
22239 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_13
,
22240 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_14
,
22241 &hf_x11_struct_xkb_KeyVModMap_vmods_mask_15
,
22244 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KeyVModMap_vmods
, ett_x11_rectangle
, vmods_bits
, byte_order
);
22250 static void struct_xkb_KTSetMapEntry(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22253 for (i
= 0; i
< count
; i
++) {
22257 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_KTSetMapEntry
, tvb
, *offsetp
, 4, ENC_NA
);
22258 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22259 proto_tree_add_item(t
, hf_x11_struct_xkb_KTSetMapEntry_level
, tvb
, *offsetp
, 1, byte_order
);
22262 static int* const realMods_bits
[] = {
22263 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_Shift
,
22264 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_Lock
,
22265 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_Control
,
22266 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_1
,
22267 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_2
,
22268 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_3
,
22269 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_4
,
22270 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_5
,
22271 &hf_x11_struct_xkb_KTSetMapEntry_realMods_mask_Any
,
22274 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KTSetMapEntry_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
22278 static int* const virtualMods_bits
[] = {
22279 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_0
,
22280 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_1
,
22281 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_2
,
22282 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_3
,
22283 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_4
,
22284 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_5
,
22285 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_6
,
22286 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_7
,
22287 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_8
,
22288 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_9
,
22289 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_10
,
22290 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_11
,
22291 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_12
,
22292 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_13
,
22293 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_14
,
22294 &hf_x11_struct_xkb_KTSetMapEntry_virtualMods_mask_15
,
22297 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_KTSetMapEntry_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
22303 static int struct_size_xkb_SetKeyType(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
22308 f_nMapEntries
= tvb_get_uint8(tvb
, *offsetp
+ size
+ 5);
22309 f_preserve
= tvb_get_uint8(tvb
, *offsetp
+ size
+ 6);
22310 size
+= f_nMapEntries
* 4;
22311 size
+= (f_preserve
* f_nMapEntries
) * 4;
22315 static void struct_xkb_SetKeyType(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22318 for (i
= 0; i
< count
; i
++) {
22324 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SetKeyType
, tvb
, *offsetp
, struct_size_xkb_SetKeyType(tvb
, offsetp
, byte_order
), ENC_NA
);
22325 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22327 static int* const mask_bits
[] = {
22328 &hf_x11_struct_xkb_SetKeyType_mask_mask_Shift
,
22329 &hf_x11_struct_xkb_SetKeyType_mask_mask_Lock
,
22330 &hf_x11_struct_xkb_SetKeyType_mask_mask_Control
,
22331 &hf_x11_struct_xkb_SetKeyType_mask_mask_1
,
22332 &hf_x11_struct_xkb_SetKeyType_mask_mask_2
,
22333 &hf_x11_struct_xkb_SetKeyType_mask_mask_3
,
22334 &hf_x11_struct_xkb_SetKeyType_mask_mask_4
,
22335 &hf_x11_struct_xkb_SetKeyType_mask_mask_5
,
22336 &hf_x11_struct_xkb_SetKeyType_mask_mask_Any
,
22339 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SetKeyType_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
22343 static int* const realMods_bits
[] = {
22344 &hf_x11_struct_xkb_SetKeyType_realMods_mask_Shift
,
22345 &hf_x11_struct_xkb_SetKeyType_realMods_mask_Lock
,
22346 &hf_x11_struct_xkb_SetKeyType_realMods_mask_Control
,
22347 &hf_x11_struct_xkb_SetKeyType_realMods_mask_1
,
22348 &hf_x11_struct_xkb_SetKeyType_realMods_mask_2
,
22349 &hf_x11_struct_xkb_SetKeyType_realMods_mask_3
,
22350 &hf_x11_struct_xkb_SetKeyType_realMods_mask_4
,
22351 &hf_x11_struct_xkb_SetKeyType_realMods_mask_5
,
22352 &hf_x11_struct_xkb_SetKeyType_realMods_mask_Any
,
22355 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SetKeyType_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
22359 static int* const virtualMods_bits
[] = {
22360 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_0
,
22361 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_1
,
22362 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_2
,
22363 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_3
,
22364 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_4
,
22365 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_5
,
22366 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_6
,
22367 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_7
,
22368 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_8
,
22369 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_9
,
22370 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_10
,
22371 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_11
,
22372 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_12
,
22373 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_13
,
22374 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_14
,
22375 &hf_x11_struct_xkb_SetKeyType_virtualMods_mask_15
,
22378 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SetKeyType_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
22381 proto_tree_add_item(t
, hf_x11_struct_xkb_SetKeyType_numLevels
, tvb
, *offsetp
, 1, byte_order
);
22383 f_nMapEntries
= tvb_get_uint8(tvb
, *offsetp
);
22384 proto_tree_add_item(t
, hf_x11_struct_xkb_SetKeyType_nMapEntries
, tvb
, *offsetp
, 1, byte_order
);
22386 f_preserve
= tvb_get_uint8(tvb
, *offsetp
);
22387 proto_tree_add_item(t
, hf_x11_struct_xkb_SetKeyType_preserve
, tvb
, *offsetp
, 1, byte_order
);
22389 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
22391 struct_xkb_KTSetMapEntry(tvb
, offsetp
, t
, byte_order
, f_nMapEntries
);
22392 struct_xkb_KTSetMapEntry(tvb
, offsetp
, t
, byte_order
, (f_preserve
* f_nMapEntries
));
22396 static int struct_size_xkb_Listing(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
22400 f_length
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 2, byte_order
);
22401 size
+= f_length
* 1;
22402 size
= (size
+ 1) & ~1;
22406 static void struct_xkb_Listing(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22409 for (i
= 0; i
< count
; i
++) {
22414 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_Listing
, tvb
, *offsetp
, struct_size_xkb_Listing(tvb
, offsetp
, byte_order
), ENC_NA
);
22415 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22416 proto_tree_add_item(t
, hf_x11_struct_xkb_Listing_flags
, tvb
, *offsetp
, 2, byte_order
);
22418 f_length
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
22419 proto_tree_add_item(t
, hf_x11_struct_xkb_Listing_length
, tvb
, *offsetp
, 2, byte_order
);
22421 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_Listing_string
, f_length
, byte_order
);
22422 if (*offsetp
% 2) {
22423 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (2 - *offsetp
% 2), ENC_NA
);
22424 *offsetp
+= (2 - *offsetp
% 2);
22429 static int struct_size_xkb_DeviceLedInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
22433 int f_namesPresent
;
22434 f_namesPresent
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 4, byte_order
);
22435 f_mapsPresent
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 8, byte_order
);
22436 size
+= ws_count_ones(f_namesPresent
) * 4;
22437 size
+= ws_count_ones(f_mapsPresent
) * 12;
22441 static void struct_xkb_DeviceLedInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22444 for (i
= 0; i
< count
; i
++) {
22447 int f_namesPresent
;
22450 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_DeviceLedInfo
, tvb
, *offsetp
, struct_size_xkb_DeviceLedInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
22451 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22452 field16(tvb
, offsetp
, t
, hf_x11_struct_xkb_DeviceLedInfo_ledClass
, byte_order
);
22453 field16(tvb
, offsetp
, t
, hf_x11_struct_xkb_DeviceLedInfo_ledID
, byte_order
);
22454 f_namesPresent
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
22455 proto_tree_add_item(t
, hf_x11_struct_xkb_DeviceLedInfo_namesPresent
, tvb
, *offsetp
, 4, byte_order
);
22457 f_mapsPresent
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
22458 proto_tree_add_item(t
, hf_x11_struct_xkb_DeviceLedInfo_mapsPresent
, tvb
, *offsetp
, 4, byte_order
);
22460 proto_tree_add_item(t
, hf_x11_struct_xkb_DeviceLedInfo_physIndicators
, tvb
, *offsetp
, 4, byte_order
);
22462 proto_tree_add_item(t
, hf_x11_struct_xkb_DeviceLedInfo_state
, tvb
, *offsetp
, 4, byte_order
);
22464 listOfCard32(tvb
, offsetp
, t
, hf_x11_struct_xkb_DeviceLedInfo_names
, hf_x11_struct_xkb_DeviceLedInfo_names_item
, ws_count_ones(f_namesPresent
), byte_order
);
22465 struct_xkb_IndicatorMap(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_mapsPresent
));
22469 static void struct_xkb_SANoAction(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22472 for (i
= 0; i
< count
; i
++) {
22476 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SANoAction
, tvb
, *offsetp
, 8, ENC_NA
);
22477 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22478 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SANoAction_type
, byte_order
);
22479 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 7, ENC_NA
);
22484 static void struct_xkb_SASetMods(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22487 for (i
= 0; i
< count
; i
++) {
22491 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SASetMods
, tvb
, *offsetp
, 8, ENC_NA
);
22492 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22493 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SASetMods_type
, byte_order
);
22495 static int* const flags_bits
[] = {
22496 &hf_x11_struct_xkb_SASetMods_flags_mask_ClearLocks
,
22497 &hf_x11_struct_xkb_SASetMods_flags_mask_LatchToLock
,
22498 &hf_x11_struct_xkb_SASetMods_flags_mask_GroupAbsolute
,
22501 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetMods_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22505 static int* const mask_bits
[] = {
22506 &hf_x11_struct_xkb_SASetMods_mask_mask_Shift
,
22507 &hf_x11_struct_xkb_SASetMods_mask_mask_Lock
,
22508 &hf_x11_struct_xkb_SASetMods_mask_mask_Control
,
22509 &hf_x11_struct_xkb_SASetMods_mask_mask_1
,
22510 &hf_x11_struct_xkb_SASetMods_mask_mask_2
,
22511 &hf_x11_struct_xkb_SASetMods_mask_mask_3
,
22512 &hf_x11_struct_xkb_SASetMods_mask_mask_4
,
22513 &hf_x11_struct_xkb_SASetMods_mask_mask_5
,
22514 &hf_x11_struct_xkb_SASetMods_mask_mask_Any
,
22517 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetMods_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
22521 static int* const realMods_bits
[] = {
22522 &hf_x11_struct_xkb_SASetMods_realMods_mask_Shift
,
22523 &hf_x11_struct_xkb_SASetMods_realMods_mask_Lock
,
22524 &hf_x11_struct_xkb_SASetMods_realMods_mask_Control
,
22525 &hf_x11_struct_xkb_SASetMods_realMods_mask_1
,
22526 &hf_x11_struct_xkb_SASetMods_realMods_mask_2
,
22527 &hf_x11_struct_xkb_SASetMods_realMods_mask_3
,
22528 &hf_x11_struct_xkb_SASetMods_realMods_mask_4
,
22529 &hf_x11_struct_xkb_SASetMods_realMods_mask_5
,
22530 &hf_x11_struct_xkb_SASetMods_realMods_mask_Any
,
22533 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetMods_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
22537 static int* const vmodsHigh_bits
[] = {
22538 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_8
,
22539 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_9
,
22540 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_10
,
22541 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_11
,
22542 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_12
,
22543 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_13
,
22544 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_14
,
22545 &hf_x11_struct_xkb_SASetMods_vmodsHigh_mask_15
,
22548 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetMods_vmodsHigh
, ett_x11_rectangle
, vmodsHigh_bits
, byte_order
);
22552 static int* const vmodsLow_bits
[] = {
22553 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_0
,
22554 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_1
,
22555 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_2
,
22556 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_3
,
22557 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_4
,
22558 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_5
,
22559 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_6
,
22560 &hf_x11_struct_xkb_SASetMods_vmodsLow_mask_7
,
22563 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetMods_vmodsLow
, ett_x11_rectangle
, vmodsLow_bits
, byte_order
);
22566 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
22571 static void struct_xkb_SASetGroup(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22574 for (i
= 0; i
< count
; i
++) {
22578 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SASetGroup
, tvb
, *offsetp
, 8, ENC_NA
);
22579 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22580 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SASetGroup_type
, byte_order
);
22582 static int* const flags_bits
[] = {
22583 &hf_x11_struct_xkb_SASetGroup_flags_mask_ClearLocks
,
22584 &hf_x11_struct_xkb_SASetGroup_flags_mask_LatchToLock
,
22585 &hf_x11_struct_xkb_SASetGroup_flags_mask_GroupAbsolute
,
22588 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetGroup_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22591 proto_tree_add_item(t
, hf_x11_struct_xkb_SASetGroup_group
, tvb
, *offsetp
, 1, byte_order
);
22593 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 5, ENC_NA
);
22598 static void struct_xkb_SAMovePtr(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22601 for (i
= 0; i
< count
; i
++) {
22605 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SAMovePtr
, tvb
, *offsetp
, 8, ENC_NA
);
22606 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22607 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SAMovePtr_type
, byte_order
);
22609 static int* const flags_bits
[] = {
22610 &hf_x11_struct_xkb_SAMovePtr_flags_mask_NoAcceleration
,
22611 &hf_x11_struct_xkb_SAMovePtr_flags_mask_MoveAbsoluteX
,
22612 &hf_x11_struct_xkb_SAMovePtr_flags_mask_MoveAbsoluteY
,
22615 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAMovePtr_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22618 proto_tree_add_item(t
, hf_x11_struct_xkb_SAMovePtr_xHigh
, tvb
, *offsetp
, 1, byte_order
);
22620 proto_tree_add_item(t
, hf_x11_struct_xkb_SAMovePtr_xLow
, tvb
, *offsetp
, 1, byte_order
);
22622 proto_tree_add_item(t
, hf_x11_struct_xkb_SAMovePtr_yHigh
, tvb
, *offsetp
, 1, byte_order
);
22624 proto_tree_add_item(t
, hf_x11_struct_xkb_SAMovePtr_yLow
, tvb
, *offsetp
, 1, byte_order
);
22626 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
22631 static void struct_xkb_SAPtrBtn(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22634 for (i
= 0; i
< count
; i
++) {
22638 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SAPtrBtn
, tvb
, *offsetp
, 8, ENC_NA
);
22639 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22640 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SAPtrBtn_type
, byte_order
);
22641 proto_tree_add_item(t
, hf_x11_struct_xkb_SAPtrBtn_flags
, tvb
, *offsetp
, 1, byte_order
);
22643 proto_tree_add_item(t
, hf_x11_struct_xkb_SAPtrBtn_count
, tvb
, *offsetp
, 1, byte_order
);
22645 proto_tree_add_item(t
, hf_x11_struct_xkb_SAPtrBtn_button
, tvb
, *offsetp
, 1, byte_order
);
22647 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
22652 static void struct_xkb_SALockPtrBtn(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22655 for (i
= 0; i
< count
; i
++) {
22659 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SALockPtrBtn
, tvb
, *offsetp
, 8, ENC_NA
);
22660 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22661 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SALockPtrBtn_type
, byte_order
);
22662 proto_tree_add_item(t
, hf_x11_struct_xkb_SALockPtrBtn_flags
, tvb
, *offsetp
, 1, byte_order
);
22664 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
22666 proto_tree_add_item(t
, hf_x11_struct_xkb_SALockPtrBtn_button
, tvb
, *offsetp
, 1, byte_order
);
22668 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
22673 static void struct_xkb_SASetPtrDflt(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22676 for (i
= 0; i
< count
; i
++) {
22680 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SASetPtrDflt
, tvb
, *offsetp
, 8, ENC_NA
);
22681 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22682 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SASetPtrDflt_type
, byte_order
);
22684 static int* const flags_bits
[] = {
22685 &hf_x11_struct_xkb_SASetPtrDflt_flags_mask_AffectDfltButton
,
22686 &hf_x11_struct_xkb_SASetPtrDflt_flags_mask_DfltBtnAbsolute
,
22689 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetPtrDflt_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22693 static int* const affect_bits
[] = {
22694 &hf_x11_struct_xkb_SASetPtrDflt_affect_mask_AffectDfltButton
,
22695 &hf_x11_struct_xkb_SASetPtrDflt_affect_mask_DfltBtnAbsolute
,
22698 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetPtrDflt_affect
, ett_x11_rectangle
, affect_bits
, byte_order
);
22701 proto_tree_add_item(t
, hf_x11_struct_xkb_SASetPtrDflt_value
, tvb
, *offsetp
, 1, byte_order
);
22703 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
22708 static void struct_xkb_SAIsoLock(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22711 for (i
= 0; i
< count
; i
++) {
22715 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SAIsoLock
, tvb
, *offsetp
, 8, ENC_NA
);
22716 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22717 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SAIsoLock_type
, byte_order
);
22719 static int* const flags_bits
[] = {
22720 &hf_x11_struct_xkb_SAIsoLock_flags_mask_NoLock
,
22721 &hf_x11_struct_xkb_SAIsoLock_flags_mask_NoUnlock
,
22722 &hf_x11_struct_xkb_SAIsoLock_flags_mask_GroupAbsolute
,
22723 &hf_x11_struct_xkb_SAIsoLock_flags_mask_ISODfltIsGroup
,
22726 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22730 static int* const mask_bits
[] = {
22731 &hf_x11_struct_xkb_SAIsoLock_mask_mask_Shift
,
22732 &hf_x11_struct_xkb_SAIsoLock_mask_mask_Lock
,
22733 &hf_x11_struct_xkb_SAIsoLock_mask_mask_Control
,
22734 &hf_x11_struct_xkb_SAIsoLock_mask_mask_1
,
22735 &hf_x11_struct_xkb_SAIsoLock_mask_mask_2
,
22736 &hf_x11_struct_xkb_SAIsoLock_mask_mask_3
,
22737 &hf_x11_struct_xkb_SAIsoLock_mask_mask_4
,
22738 &hf_x11_struct_xkb_SAIsoLock_mask_mask_5
,
22739 &hf_x11_struct_xkb_SAIsoLock_mask_mask_Any
,
22742 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
22746 static int* const realMods_bits
[] = {
22747 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_Shift
,
22748 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_Lock
,
22749 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_Control
,
22750 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_1
,
22751 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_2
,
22752 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_3
,
22753 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_4
,
22754 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_5
,
22755 &hf_x11_struct_xkb_SAIsoLock_realMods_mask_Any
,
22758 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_realMods
, ett_x11_rectangle
, realMods_bits
, byte_order
);
22761 proto_tree_add_item(t
, hf_x11_struct_xkb_SAIsoLock_group
, tvb
, *offsetp
, 1, byte_order
);
22764 static int* const affect_bits
[] = {
22765 &hf_x11_struct_xkb_SAIsoLock_affect_mask_Ctrls
,
22766 &hf_x11_struct_xkb_SAIsoLock_affect_mask_Ptr
,
22767 &hf_x11_struct_xkb_SAIsoLock_affect_mask_Group
,
22768 &hf_x11_struct_xkb_SAIsoLock_affect_mask_Mods
,
22771 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_affect
, ett_x11_rectangle
, affect_bits
, byte_order
);
22775 static int* const vmodsHigh_bits
[] = {
22776 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_8
,
22777 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_9
,
22778 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_10
,
22779 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_11
,
22780 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_12
,
22781 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_13
,
22782 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_14
,
22783 &hf_x11_struct_xkb_SAIsoLock_vmodsHigh_mask_15
,
22786 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_vmodsHigh
, ett_x11_rectangle
, vmodsHigh_bits
, byte_order
);
22790 static int* const vmodsLow_bits
[] = {
22791 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_0
,
22792 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_1
,
22793 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_2
,
22794 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_3
,
22795 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_4
,
22796 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_5
,
22797 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_6
,
22798 &hf_x11_struct_xkb_SAIsoLock_vmodsLow_mask_7
,
22801 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAIsoLock_vmodsLow
, ett_x11_rectangle
, vmodsLow_bits
, byte_order
);
22807 static void struct_xkb_SATerminate(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22810 for (i
= 0; i
< count
; i
++) {
22814 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SATerminate
, tvb
, *offsetp
, 8, ENC_NA
);
22815 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22816 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SATerminate_type
, byte_order
);
22817 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 7, ENC_NA
);
22822 static void struct_xkb_SASwitchScreen(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22825 for (i
= 0; i
< count
; i
++) {
22829 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SASwitchScreen
, tvb
, *offsetp
, 8, ENC_NA
);
22830 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22831 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SASwitchScreen_type
, byte_order
);
22832 proto_tree_add_item(t
, hf_x11_struct_xkb_SASwitchScreen_flags
, tvb
, *offsetp
, 1, byte_order
);
22834 proto_tree_add_item(t
, hf_x11_struct_xkb_SASwitchScreen_newScreen
, tvb
, *offsetp
, 1, byte_order
);
22836 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 5, ENC_NA
);
22841 static void struct_xkb_SASetControls(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22844 for (i
= 0; i
< count
; i
++) {
22848 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SASetControls
, tvb
, *offsetp
, 8, ENC_NA
);
22849 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22850 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SASetControls_type
, byte_order
);
22851 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
22854 static int* const boolCtrlsHigh_bits
[] = {
22855 &hf_x11_struct_xkb_SASetControls_boolCtrlsHigh_mask_AccessXFeedback
,
22856 &hf_x11_struct_xkb_SASetControls_boolCtrlsHigh_mask_AudibleBell
,
22857 &hf_x11_struct_xkb_SASetControls_boolCtrlsHigh_mask_Overlay1
,
22858 &hf_x11_struct_xkb_SASetControls_boolCtrlsHigh_mask_Overlay2
,
22859 &hf_x11_struct_xkb_SASetControls_boolCtrlsHigh_mask_IgnoreGroupLock
,
22862 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetControls_boolCtrlsHigh
, ett_x11_rectangle
, boolCtrlsHigh_bits
, byte_order
);
22866 static int* const boolCtrlsLow_bits
[] = {
22867 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_RepeatKeys
,
22868 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_SlowKeys
,
22869 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_BounceKeys
,
22870 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_StickyKeys
,
22871 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_MouseKeys
,
22872 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_MouseKeysAccel
,
22873 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_AccessXKeys
,
22874 &hf_x11_struct_xkb_SASetControls_boolCtrlsLow_mask_AccessXTimeout
,
22877 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SASetControls_boolCtrlsLow
, ett_x11_rectangle
, boolCtrlsLow_bits
, byte_order
);
22880 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
22885 static void struct_xkb_SAActionMessage(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22888 for (i
= 0; i
< count
; i
++) {
22892 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SAActionMessage
, tvb
, *offsetp
, 8, ENC_NA
);
22893 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22894 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SAActionMessage_type
, byte_order
);
22896 static int* const flags_bits
[] = {
22897 &hf_x11_struct_xkb_SAActionMessage_flags_mask_OnPress
,
22898 &hf_x11_struct_xkb_SAActionMessage_flags_mask_OnRelease
,
22899 &hf_x11_struct_xkb_SAActionMessage_flags_mask_GenKeyEvent
,
22902 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SAActionMessage_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
22905 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_SAActionMessage_message
, 6, byte_order
);
22909 static void struct_xkb_SARedirectKey(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
22912 for (i
= 0; i
< count
; i
++) {
22916 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SARedirectKey
, tvb
, *offsetp
, 8, ENC_NA
);
22917 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
22918 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SARedirectKey_type
, byte_order
);
22919 proto_tree_add_item(t
, hf_x11_struct_xkb_SARedirectKey_newkey
, tvb
, *offsetp
, 1, byte_order
);
22922 static int* const mask_bits
[] = {
22923 &hf_x11_struct_xkb_SARedirectKey_mask_mask_Shift
,
22924 &hf_x11_struct_xkb_SARedirectKey_mask_mask_Lock
,
22925 &hf_x11_struct_xkb_SARedirectKey_mask_mask_Control
,
22926 &hf_x11_struct_xkb_SARedirectKey_mask_mask_1
,
22927 &hf_x11_struct_xkb_SARedirectKey_mask_mask_2
,
22928 &hf_x11_struct_xkb_SARedirectKey_mask_mask_3
,
22929 &hf_x11_struct_xkb_SARedirectKey_mask_mask_4
,
22930 &hf_x11_struct_xkb_SARedirectKey_mask_mask_5
,
22931 &hf_x11_struct_xkb_SARedirectKey_mask_mask_Any
,
22934 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_mask
, ett_x11_rectangle
, mask_bits
, byte_order
);
22938 static int* const realModifiers_bits
[] = {
22939 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_Shift
,
22940 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_Lock
,
22941 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_Control
,
22942 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_1
,
22943 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_2
,
22944 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_3
,
22945 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_4
,
22946 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_5
,
22947 &hf_x11_struct_xkb_SARedirectKey_realModifiers_mask_Any
,
22950 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_realModifiers
, ett_x11_rectangle
, realModifiers_bits
, byte_order
);
22954 static int* const vmodsMaskHigh_bits
[] = {
22955 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_8
,
22956 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_9
,
22957 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_10
,
22958 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_11
,
22959 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_12
,
22960 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_13
,
22961 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_14
,
22962 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh_mask_15
,
22965 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_vmodsMaskHigh
, ett_x11_rectangle
, vmodsMaskHigh_bits
, byte_order
);
22969 static int* const vmodsMaskLow_bits
[] = {
22970 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_0
,
22971 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_1
,
22972 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_2
,
22973 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_3
,
22974 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_4
,
22975 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_5
,
22976 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_6
,
22977 &hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow_mask_7
,
22980 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_vmodsMaskLow
, ett_x11_rectangle
, vmodsMaskLow_bits
, byte_order
);
22984 static int* const vmodsHigh_bits
[] = {
22985 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_8
,
22986 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_9
,
22987 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_10
,
22988 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_11
,
22989 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_12
,
22990 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_13
,
22991 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_14
,
22992 &hf_x11_struct_xkb_SARedirectKey_vmodsHigh_mask_15
,
22995 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_vmodsHigh
, ett_x11_rectangle
, vmodsHigh_bits
, byte_order
);
22999 static int* const vmodsLow_bits
[] = {
23000 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_0
,
23001 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_1
,
23002 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_2
,
23003 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_3
,
23004 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_4
,
23005 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_5
,
23006 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_6
,
23007 &hf_x11_struct_xkb_SARedirectKey_vmodsLow_mask_7
,
23010 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SARedirectKey_vmodsLow
, ett_x11_rectangle
, vmodsLow_bits
, byte_order
);
23016 static void struct_xkb_SADeviceBtn(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
23019 for (i
= 0; i
< count
; i
++) {
23023 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SADeviceBtn
, tvb
, *offsetp
, 8, ENC_NA
);
23024 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23025 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SADeviceBtn_type
, byte_order
);
23026 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceBtn_flags
, tvb
, *offsetp
, 1, byte_order
);
23028 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceBtn_count
, tvb
, *offsetp
, 1, byte_order
);
23030 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceBtn_button
, tvb
, *offsetp
, 1, byte_order
);
23032 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceBtn_device
, tvb
, *offsetp
, 1, byte_order
);
23034 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
23039 static void struct_xkb_SALockDeviceBtn(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
23042 for (i
= 0; i
< count
; i
++) {
23046 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SALockDeviceBtn
, tvb
, *offsetp
, 8, ENC_NA
);
23047 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23048 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SALockDeviceBtn_type
, byte_order
);
23050 static int* const flags_bits
[] = {
23051 &hf_x11_struct_xkb_SALockDeviceBtn_flags_mask_NoLock
,
23052 &hf_x11_struct_xkb_SALockDeviceBtn_flags_mask_NoUnlock
,
23055 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SALockDeviceBtn_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
23058 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23060 proto_tree_add_item(t
, hf_x11_struct_xkb_SALockDeviceBtn_button
, tvb
, *offsetp
, 1, byte_order
);
23062 proto_tree_add_item(t
, hf_x11_struct_xkb_SALockDeviceBtn_device
, tvb
, *offsetp
, 1, byte_order
);
23064 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
23069 static void struct_xkb_SADeviceValuator(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
23072 for (i
= 0; i
< count
; i
++) {
23076 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SADeviceValuator
, tvb
, *offsetp
, 8, ENC_NA
);
23077 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23078 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SADeviceValuator_type
, byte_order
);
23079 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceValuator_device
, tvb
, *offsetp
, 1, byte_order
);
23081 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SADeviceValuator_val1what
, byte_order
);
23082 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceValuator_val1index
, tvb
, *offsetp
, 1, byte_order
);
23084 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceValuator_val1value
, tvb
, *offsetp
, 1, byte_order
);
23086 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SADeviceValuator_val2what
, byte_order
);
23087 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceValuator_val2index
, tvb
, *offsetp
, 1, byte_order
);
23089 proto_tree_add_item(t
, hf_x11_struct_xkb_SADeviceValuator_val2value
, tvb
, *offsetp
, 1, byte_order
);
23094 static void struct_xkb_SIAction(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
23097 for (i
= 0; i
< count
; i
++) {
23101 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SIAction
, tvb
, *offsetp
, 8, ENC_NA
);
23102 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23103 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SIAction_type
, byte_order
);
23104 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xkb_SIAction_data
, 7, byte_order
);
23108 static void struct_xkb_SymInterpret(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
23111 for (i
= 0; i
< count
; i
++) {
23115 item
= proto_tree_add_item(root
, hf_x11_struct_xkb_SymInterpret
, tvb
, *offsetp
, 16, ENC_NA
);
23116 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23117 proto_tree_add_item(t
, hf_x11_struct_xkb_SymInterpret_sym
, tvb
, *offsetp
, 4, byte_order
);
23120 static int* const mods_bits
[] = {
23121 &hf_x11_struct_xkb_SymInterpret_mods_mask_Shift
,
23122 &hf_x11_struct_xkb_SymInterpret_mods_mask_Lock
,
23123 &hf_x11_struct_xkb_SymInterpret_mods_mask_Control
,
23124 &hf_x11_struct_xkb_SymInterpret_mods_mask_1
,
23125 &hf_x11_struct_xkb_SymInterpret_mods_mask_2
,
23126 &hf_x11_struct_xkb_SymInterpret_mods_mask_3
,
23127 &hf_x11_struct_xkb_SymInterpret_mods_mask_4
,
23128 &hf_x11_struct_xkb_SymInterpret_mods_mask_5
,
23129 &hf_x11_struct_xkb_SymInterpret_mods_mask_Any
,
23132 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SymInterpret_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
23135 field8(tvb
, offsetp
, t
, hf_x11_struct_xkb_SymInterpret_match
, byte_order
);
23137 static int* const virtualMod_bits
[] = {
23138 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_0
,
23139 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_1
,
23140 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_2
,
23141 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_3
,
23142 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_4
,
23143 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_5
,
23144 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_6
,
23145 &hf_x11_struct_xkb_SymInterpret_virtualMod_mask_7
,
23148 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xkb_SymInterpret_virtualMod
, ett_x11_rectangle
, virtualMod_bits
, byte_order
);
23151 proto_tree_add_item(t
, hf_x11_struct_xkb_SymInterpret_flags
, tvb
, *offsetp
, 1, byte_order
);
23153 struct_xkb_SIAction(tvb
, offsetp
, t
, byte_order
, 1);
23157 static void struct_xkb_Action(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order
, int count
)
23160 int base
= *offsetp
;
23161 for (i
= 0; i
< count
; i
++) {
23164 item
= proto_tree_add_item(root
, hf_x11_union_xkb_Action
, tvb
, base
, 8, ENC_NA
);
23165 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
23168 struct_xkb_SANoAction(tvb
, offsetp
, t
, byte_order
, 1);
23170 struct_xkb_SASetMods(tvb
, offsetp
, t
, byte_order
, 1);
23172 struct_xkb_SASetMods(tvb
, offsetp
, t
, byte_order
, 1);
23174 struct_xkb_SASetMods(tvb
, offsetp
, t
, byte_order
, 1);
23176 struct_xkb_SASetGroup(tvb
, offsetp
, t
, byte_order
, 1);
23178 struct_xkb_SASetGroup(tvb
, offsetp
, t
, byte_order
, 1);
23180 struct_xkb_SASetGroup(tvb
, offsetp
, t
, byte_order
, 1);
23182 struct_xkb_SAMovePtr(tvb
, offsetp
, t
, byte_order
, 1);
23184 struct_xkb_SAPtrBtn(tvb
, offsetp
, t
, byte_order
, 1);
23186 struct_xkb_SALockPtrBtn(tvb
, offsetp
, t
, byte_order
, 1);
23188 struct_xkb_SASetPtrDflt(tvb
, offsetp
, t
, byte_order
, 1);
23190 struct_xkb_SAIsoLock(tvb
, offsetp
, t
, byte_order
, 1);
23192 struct_xkb_SATerminate(tvb
, offsetp
, t
, byte_order
, 1);
23194 struct_xkb_SASwitchScreen(tvb
, offsetp
, t
, byte_order
, 1);
23196 struct_xkb_SASetControls(tvb
, offsetp
, t
, byte_order
, 1);
23198 struct_xkb_SASetControls(tvb
, offsetp
, t
, byte_order
, 1);
23200 struct_xkb_SAActionMessage(tvb
, offsetp
, t
, byte_order
, 1);
23202 struct_xkb_SARedirectKey(tvb
, offsetp
, t
, byte_order
, 1);
23204 struct_xkb_SADeviceBtn(tvb
, offsetp
, t
, byte_order
, 1);
23206 struct_xkb_SALockDeviceBtn(tvb
, offsetp
, t
, byte_order
, 1);
23208 struct_xkb_SADeviceValuator(tvb
, offsetp
, t
, byte_order
, 1);
23210 field8(tvb
, offsetp
, t
, hf_x11_union_xkb_Action_type
, byte_order
);
23216 static void xkbUseExtension(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23218 proto_tree_add_item(t
, hf_x11_xkb_UseExtension_wantedMajor
, tvb
, *offsetp
, 2, byte_order
);
23220 proto_tree_add_item(t
, hf_x11_xkb_UseExtension_wantedMinor
, tvb
, *offsetp
, 2, byte_order
);
23223 static void xkbUseExtension_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
23225 int sequence_number
;
23227 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-UseExtension");
23230 proto_tree_add_item(t
, hf_x11_xkb_UseExtension_reply_supported
, tvb
, *offsetp
, 1, byte_order
);
23232 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23233 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
23234 "%d (xkb-UseExtension)", sequence_number
);
23236 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
23238 proto_tree_add_item(t
, hf_x11_xkb_UseExtension_reply_serverMajor
, tvb
, *offsetp
, 2, byte_order
);
23240 proto_tree_add_item(t
, hf_x11_xkb_UseExtension_reply_serverMinor
, tvb
, *offsetp
, 2, byte_order
);
23242 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
23246 static void xkbSelectEvents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23251 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
23253 f_affectWhich
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23255 static int* const affectWhich_bits
[] = {
23256 &hf_x11_xkb_SelectEvents_affectWhich_mask_NewKeyboardNotify
,
23257 &hf_x11_xkb_SelectEvents_affectWhich_mask_MapNotify
,
23258 &hf_x11_xkb_SelectEvents_affectWhich_mask_StateNotify
,
23259 &hf_x11_xkb_SelectEvents_affectWhich_mask_ControlsNotify
,
23260 &hf_x11_xkb_SelectEvents_affectWhich_mask_IndicatorStateNotify
,
23261 &hf_x11_xkb_SelectEvents_affectWhich_mask_IndicatorMapNotify
,
23262 &hf_x11_xkb_SelectEvents_affectWhich_mask_NamesNotify
,
23263 &hf_x11_xkb_SelectEvents_affectWhich_mask_CompatMapNotify
,
23264 &hf_x11_xkb_SelectEvents_affectWhich_mask_BellNotify
,
23265 &hf_x11_xkb_SelectEvents_affectWhich_mask_ActionMessage
,
23266 &hf_x11_xkb_SelectEvents_affectWhich_mask_AccessXNotify
,
23267 &hf_x11_xkb_SelectEvents_affectWhich_mask_ExtensionDeviceNotify
,
23270 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_affectWhich
, ett_x11_rectangle
, affectWhich_bits
, byte_order
);
23273 f_clear
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23275 static int* const clear_bits
[] = {
23276 &hf_x11_xkb_SelectEvents_clear_mask_NewKeyboardNotify
,
23277 &hf_x11_xkb_SelectEvents_clear_mask_MapNotify
,
23278 &hf_x11_xkb_SelectEvents_clear_mask_StateNotify
,
23279 &hf_x11_xkb_SelectEvents_clear_mask_ControlsNotify
,
23280 &hf_x11_xkb_SelectEvents_clear_mask_IndicatorStateNotify
,
23281 &hf_x11_xkb_SelectEvents_clear_mask_IndicatorMapNotify
,
23282 &hf_x11_xkb_SelectEvents_clear_mask_NamesNotify
,
23283 &hf_x11_xkb_SelectEvents_clear_mask_CompatMapNotify
,
23284 &hf_x11_xkb_SelectEvents_clear_mask_BellNotify
,
23285 &hf_x11_xkb_SelectEvents_clear_mask_ActionMessage
,
23286 &hf_x11_xkb_SelectEvents_clear_mask_AccessXNotify
,
23287 &hf_x11_xkb_SelectEvents_clear_mask_ExtensionDeviceNotify
,
23290 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_clear
, ett_x11_rectangle
, clear_bits
, byte_order
);
23293 f_selectAll
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23295 static int* const selectAll_bits
[] = {
23296 &hf_x11_xkb_SelectEvents_selectAll_mask_NewKeyboardNotify
,
23297 &hf_x11_xkb_SelectEvents_selectAll_mask_MapNotify
,
23298 &hf_x11_xkb_SelectEvents_selectAll_mask_StateNotify
,
23299 &hf_x11_xkb_SelectEvents_selectAll_mask_ControlsNotify
,
23300 &hf_x11_xkb_SelectEvents_selectAll_mask_IndicatorStateNotify
,
23301 &hf_x11_xkb_SelectEvents_selectAll_mask_IndicatorMapNotify
,
23302 &hf_x11_xkb_SelectEvents_selectAll_mask_NamesNotify
,
23303 &hf_x11_xkb_SelectEvents_selectAll_mask_CompatMapNotify
,
23304 &hf_x11_xkb_SelectEvents_selectAll_mask_BellNotify
,
23305 &hf_x11_xkb_SelectEvents_selectAll_mask_ActionMessage
,
23306 &hf_x11_xkb_SelectEvents_selectAll_mask_AccessXNotify
,
23307 &hf_x11_xkb_SelectEvents_selectAll_mask_ExtensionDeviceNotify
,
23310 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_selectAll
, ett_x11_rectangle
, selectAll_bits
, byte_order
);
23314 static int* const affectMap_bits
[] = {
23315 &hf_x11_xkb_SelectEvents_affectMap_mask_KeyTypes
,
23316 &hf_x11_xkb_SelectEvents_affectMap_mask_KeySyms
,
23317 &hf_x11_xkb_SelectEvents_affectMap_mask_ModifierMap
,
23318 &hf_x11_xkb_SelectEvents_affectMap_mask_ExplicitComponents
,
23319 &hf_x11_xkb_SelectEvents_affectMap_mask_KeyActions
,
23320 &hf_x11_xkb_SelectEvents_affectMap_mask_KeyBehaviors
,
23321 &hf_x11_xkb_SelectEvents_affectMap_mask_VirtualMods
,
23322 &hf_x11_xkb_SelectEvents_affectMap_mask_VirtualModMap
,
23325 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_affectMap
, ett_x11_rectangle
, affectMap_bits
, byte_order
);
23329 static int* const map_bits
[] = {
23330 &hf_x11_xkb_SelectEvents_map_mask_KeyTypes
,
23331 &hf_x11_xkb_SelectEvents_map_mask_KeySyms
,
23332 &hf_x11_xkb_SelectEvents_map_mask_ModifierMap
,
23333 &hf_x11_xkb_SelectEvents_map_mask_ExplicitComponents
,
23334 &hf_x11_xkb_SelectEvents_map_mask_KeyActions
,
23335 &hf_x11_xkb_SelectEvents_map_mask_KeyBehaviors
,
23336 &hf_x11_xkb_SelectEvents_map_mask_VirtualMods
,
23337 &hf_x11_xkb_SelectEvents_map_mask_VirtualModMap
,
23340 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_map
, ett_x11_rectangle
, map_bits
, byte_order
);
23343 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 0)) {
23345 static int* const affectNewKeyboard_bits
[] = {
23346 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_Keycodes
,
23347 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_Geometry
,
23348 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_DeviceID
,
23351 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard
, ett_x11_rectangle
, affectNewKeyboard_bits
, byte_order
);
23355 static int* const newKeyboardDetails_bits
[] = {
23356 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_Keycodes
,
23357 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_Geometry
,
23358 &hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_DeviceID
,
23361 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails
, ett_x11_rectangle
, newKeyboardDetails_bits
, byte_order
);
23365 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 2)) {
23367 static int* const affectState_bits
[] = {
23368 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierState
,
23369 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierBase
,
23370 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierLatch
,
23371 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierLock
,
23372 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupState
,
23373 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupBase
,
23374 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupLatch
,
23375 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupLock
,
23376 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatState
,
23377 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GrabMods
,
23378 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatGrabMods
,
23379 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_LookupMods
,
23380 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatLookupMods
,
23381 &hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_PointerButtons
,
23384 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_StateNotify_affectState
, ett_x11_rectangle
, affectState_bits
, byte_order
);
23388 static int* const stateDetails_bits
[] = {
23389 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierState
,
23390 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierBase
,
23391 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierLatch
,
23392 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierLock
,
23393 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupState
,
23394 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupBase
,
23395 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupLatch
,
23396 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupLock
,
23397 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatState
,
23398 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GrabMods
,
23399 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatGrabMods
,
23400 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_LookupMods
,
23401 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatLookupMods
,
23402 &hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_PointerButtons
,
23405 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_StateNotify_stateDetails
, ett_x11_rectangle
, stateDetails_bits
, byte_order
);
23409 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 3)) {
23411 static int* const affectCtrls_bits
[] = {
23412 &hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_GroupsWrap
,
23413 &hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_InternalMods
,
23414 &hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_IgnoreLockMods
,
23415 &hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_PerKeyRepeat
,
23416 &hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_ControlsEnabled
,
23419 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls
, ett_x11_rectangle
, affectCtrls_bits
, byte_order
);
23423 static int* const ctrlDetails_bits
[] = {
23424 &hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_GroupsWrap
,
23425 &hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_InternalMods
,
23426 &hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_IgnoreLockMods
,
23427 &hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_PerKeyRepeat
,
23428 &hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_ControlsEnabled
,
23431 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails
, ett_x11_rectangle
, ctrlDetails_bits
, byte_order
);
23435 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 4)) {
23436 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_IndicatorStateNotify_affectIndicatorState
, tvb
, *offsetp
, 4, byte_order
);
23438 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_IndicatorStateNotify_indicatorStateDetails
, tvb
, *offsetp
, 4, byte_order
);
23441 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 5)) {
23442 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_IndicatorMapNotify_affectIndicatorMap
, tvb
, *offsetp
, 4, byte_order
);
23444 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_IndicatorMapNotify_indicatorMapDetails
, tvb
, *offsetp
, 4, byte_order
);
23447 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 6)) {
23449 static int* const affectNames_bits
[] = {
23450 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Keycodes
,
23451 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Geometry
,
23452 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Symbols
,
23453 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_PhysSymbols
,
23454 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Types
,
23455 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Compat
,
23456 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyTypeNames
,
23457 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KTLevelNames
,
23458 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_IndicatorNames
,
23459 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyNames
,
23460 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyAliases
,
23461 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_VirtualModNames
,
23462 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_GroupNames
,
23463 &hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_RGNames
,
23466 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_NamesNotify_affectNames
, ett_x11_rectangle
, affectNames_bits
, byte_order
);
23470 static int* const namesDetails_bits
[] = {
23471 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Keycodes
,
23472 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Geometry
,
23473 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Symbols
,
23474 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_PhysSymbols
,
23475 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Types
,
23476 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Compat
,
23477 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyTypeNames
,
23478 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KTLevelNames
,
23479 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_IndicatorNames
,
23480 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyNames
,
23481 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyAliases
,
23482 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_VirtualModNames
,
23483 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_GroupNames
,
23484 &hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_RGNames
,
23487 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails
, ett_x11_rectangle
, namesDetails_bits
, byte_order
);
23491 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 7)) {
23493 static int* const affectCompat_bits
[] = {
23494 &hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat_mask_SymInterp
,
23495 &hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat_mask_GroupCompat
,
23498 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat
, ett_x11_rectangle
, affectCompat_bits
, byte_order
);
23502 static int* const compatDetails_bits
[] = {
23503 &hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails_mask_SymInterp
,
23504 &hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails_mask_GroupCompat
,
23507 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails
, ett_x11_rectangle
, compatDetails_bits
, byte_order
);
23511 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 8)) {
23512 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_BellNotify_affectBell
, tvb
, *offsetp
, 1, byte_order
);
23514 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_BellNotify_bellDetails
, tvb
, *offsetp
, 1, byte_order
);
23517 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 9)) {
23518 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_ActionMessage_affectMsgDetails
, tvb
, *offsetp
, 1, byte_order
);
23520 proto_tree_add_item(t
, hf_x11_xkb_SelectEvents_ActionMessage_msgDetails
, tvb
, *offsetp
, 1, byte_order
);
23523 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 10)) {
23525 static int* const affectAccessX_bits
[] = {
23526 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKPress
,
23527 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKAccept
,
23528 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKReject
,
23529 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKRelease
,
23530 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_BKAccept
,
23531 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_BKReject
,
23532 &hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_AXKWarning
,
23535 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX
, ett_x11_rectangle
, affectAccessX_bits
, byte_order
);
23539 static int* const accessXDetails_bits
[] = {
23540 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKPress
,
23541 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKAccept
,
23542 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKReject
,
23543 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKRelease
,
23544 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_BKAccept
,
23545 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_BKReject
,
23546 &hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_AXKWarning
,
23549 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails
, ett_x11_rectangle
, accessXDetails_bits
, byte_order
);
23553 if ((f_affectWhich
& ((~f_clear
) & (~f_selectAll
))) & (1U << 11)) {
23555 static int* const affectExtDev_bits
[] = {
23556 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_Keyboards
,
23557 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_ButtonActions
,
23558 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorNames
,
23559 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorMaps
,
23560 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorState
,
23563 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev
, ett_x11_rectangle
, affectExtDev_bits
, byte_order
);
23567 static int* const extdevDetails_bits
[] = {
23568 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_Keyboards
,
23569 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_ButtonActions
,
23570 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorNames
,
23571 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorMaps
,
23572 &hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorState
,
23575 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails
, ett_x11_rectangle
, extdevDetails_bits
, byte_order
);
23581 static void xkbBell(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23583 proto_tree_add_item(t
, hf_x11_xkb_Bell_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
23585 proto_tree_add_item(t
, hf_x11_xkb_Bell_bellClass
, tvb
, *offsetp
, 2, byte_order
);
23587 proto_tree_add_item(t
, hf_x11_xkb_Bell_bellID
, tvb
, *offsetp
, 2, byte_order
);
23589 proto_tree_add_item(t
, hf_x11_xkb_Bell_percent
, tvb
, *offsetp
, 1, byte_order
);
23591 proto_tree_add_item(t
, hf_x11_xkb_Bell_forceSound
, tvb
, *offsetp
, 1, byte_order
);
23593 proto_tree_add_item(t
, hf_x11_xkb_Bell_eventOnly
, tvb
, *offsetp
, 1, byte_order
);
23595 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23597 proto_tree_add_item(t
, hf_x11_xkb_Bell_pitch
, tvb
, *offsetp
, 2, byte_order
);
23599 proto_tree_add_item(t
, hf_x11_xkb_Bell_duration
, tvb
, *offsetp
, 2, byte_order
);
23601 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
23603 proto_tree_add_item(t
, hf_x11_xkb_Bell_name
, tvb
, *offsetp
, 4, byte_order
);
23605 proto_tree_add_item(t
, hf_x11_xkb_Bell_window
, tvb
, *offsetp
, 4, byte_order
);
23609 static void xkbGetState(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23611 proto_tree_add_item(t
, hf_x11_xkb_GetState_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
23613 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
23616 static void xkbGetState_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
23618 int sequence_number
;
23620 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetState");
23623 proto_tree_add_item(t
, hf_x11_xkb_GetState_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
23625 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23626 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
23627 "%d (xkb-GetState)", sequence_number
);
23629 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
23632 static int* const mods_bits
[] = {
23633 &hf_x11_xkb_GetState_reply_mods_mask_Shift
,
23634 &hf_x11_xkb_GetState_reply_mods_mask_Lock
,
23635 &hf_x11_xkb_GetState_reply_mods_mask_Control
,
23636 &hf_x11_xkb_GetState_reply_mods_mask_1
,
23637 &hf_x11_xkb_GetState_reply_mods_mask_2
,
23638 &hf_x11_xkb_GetState_reply_mods_mask_3
,
23639 &hf_x11_xkb_GetState_reply_mods_mask_4
,
23640 &hf_x11_xkb_GetState_reply_mods_mask_5
,
23641 &hf_x11_xkb_GetState_reply_mods_mask_Any
,
23644 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
23648 static int* const baseMods_bits
[] = {
23649 &hf_x11_xkb_GetState_reply_baseMods_mask_Shift
,
23650 &hf_x11_xkb_GetState_reply_baseMods_mask_Lock
,
23651 &hf_x11_xkb_GetState_reply_baseMods_mask_Control
,
23652 &hf_x11_xkb_GetState_reply_baseMods_mask_1
,
23653 &hf_x11_xkb_GetState_reply_baseMods_mask_2
,
23654 &hf_x11_xkb_GetState_reply_baseMods_mask_3
,
23655 &hf_x11_xkb_GetState_reply_baseMods_mask_4
,
23656 &hf_x11_xkb_GetState_reply_baseMods_mask_5
,
23657 &hf_x11_xkb_GetState_reply_baseMods_mask_Any
,
23660 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_baseMods
, ett_x11_rectangle
, baseMods_bits
, byte_order
);
23664 static int* const latchedMods_bits
[] = {
23665 &hf_x11_xkb_GetState_reply_latchedMods_mask_Shift
,
23666 &hf_x11_xkb_GetState_reply_latchedMods_mask_Lock
,
23667 &hf_x11_xkb_GetState_reply_latchedMods_mask_Control
,
23668 &hf_x11_xkb_GetState_reply_latchedMods_mask_1
,
23669 &hf_x11_xkb_GetState_reply_latchedMods_mask_2
,
23670 &hf_x11_xkb_GetState_reply_latchedMods_mask_3
,
23671 &hf_x11_xkb_GetState_reply_latchedMods_mask_4
,
23672 &hf_x11_xkb_GetState_reply_latchedMods_mask_5
,
23673 &hf_x11_xkb_GetState_reply_latchedMods_mask_Any
,
23676 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_latchedMods
, ett_x11_rectangle
, latchedMods_bits
, byte_order
);
23680 static int* const lockedMods_bits
[] = {
23681 &hf_x11_xkb_GetState_reply_lockedMods_mask_Shift
,
23682 &hf_x11_xkb_GetState_reply_lockedMods_mask_Lock
,
23683 &hf_x11_xkb_GetState_reply_lockedMods_mask_Control
,
23684 &hf_x11_xkb_GetState_reply_lockedMods_mask_1
,
23685 &hf_x11_xkb_GetState_reply_lockedMods_mask_2
,
23686 &hf_x11_xkb_GetState_reply_lockedMods_mask_3
,
23687 &hf_x11_xkb_GetState_reply_lockedMods_mask_4
,
23688 &hf_x11_xkb_GetState_reply_lockedMods_mask_5
,
23689 &hf_x11_xkb_GetState_reply_lockedMods_mask_Any
,
23692 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_lockedMods
, ett_x11_rectangle
, lockedMods_bits
, byte_order
);
23695 field8(tvb
, offsetp
, t
, hf_x11_xkb_GetState_reply_group
, byte_order
);
23696 field8(tvb
, offsetp
, t
, hf_x11_xkb_GetState_reply_lockedGroup
, byte_order
);
23697 proto_tree_add_item(t
, hf_x11_xkb_GetState_reply_baseGroup
, tvb
, *offsetp
, 2, byte_order
);
23699 proto_tree_add_item(t
, hf_x11_xkb_GetState_reply_latchedGroup
, tvb
, *offsetp
, 2, byte_order
);
23702 static int* const compatState_bits
[] = {
23703 &hf_x11_xkb_GetState_reply_compatState_mask_Shift
,
23704 &hf_x11_xkb_GetState_reply_compatState_mask_Lock
,
23705 &hf_x11_xkb_GetState_reply_compatState_mask_Control
,
23706 &hf_x11_xkb_GetState_reply_compatState_mask_1
,
23707 &hf_x11_xkb_GetState_reply_compatState_mask_2
,
23708 &hf_x11_xkb_GetState_reply_compatState_mask_3
,
23709 &hf_x11_xkb_GetState_reply_compatState_mask_4
,
23710 &hf_x11_xkb_GetState_reply_compatState_mask_5
,
23711 &hf_x11_xkb_GetState_reply_compatState_mask_Any
,
23714 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_compatState
, ett_x11_rectangle
, compatState_bits
, byte_order
);
23718 static int* const grabMods_bits
[] = {
23719 &hf_x11_xkb_GetState_reply_grabMods_mask_Shift
,
23720 &hf_x11_xkb_GetState_reply_grabMods_mask_Lock
,
23721 &hf_x11_xkb_GetState_reply_grabMods_mask_Control
,
23722 &hf_x11_xkb_GetState_reply_grabMods_mask_1
,
23723 &hf_x11_xkb_GetState_reply_grabMods_mask_2
,
23724 &hf_x11_xkb_GetState_reply_grabMods_mask_3
,
23725 &hf_x11_xkb_GetState_reply_grabMods_mask_4
,
23726 &hf_x11_xkb_GetState_reply_grabMods_mask_5
,
23727 &hf_x11_xkb_GetState_reply_grabMods_mask_Any
,
23730 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_grabMods
, ett_x11_rectangle
, grabMods_bits
, byte_order
);
23734 static int* const compatGrabMods_bits
[] = {
23735 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_Shift
,
23736 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_Lock
,
23737 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_Control
,
23738 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_1
,
23739 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_2
,
23740 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_3
,
23741 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_4
,
23742 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_5
,
23743 &hf_x11_xkb_GetState_reply_compatGrabMods_mask_Any
,
23746 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_compatGrabMods
, ett_x11_rectangle
, compatGrabMods_bits
, byte_order
);
23750 static int* const lookupMods_bits
[] = {
23751 &hf_x11_xkb_GetState_reply_lookupMods_mask_Shift
,
23752 &hf_x11_xkb_GetState_reply_lookupMods_mask_Lock
,
23753 &hf_x11_xkb_GetState_reply_lookupMods_mask_Control
,
23754 &hf_x11_xkb_GetState_reply_lookupMods_mask_1
,
23755 &hf_x11_xkb_GetState_reply_lookupMods_mask_2
,
23756 &hf_x11_xkb_GetState_reply_lookupMods_mask_3
,
23757 &hf_x11_xkb_GetState_reply_lookupMods_mask_4
,
23758 &hf_x11_xkb_GetState_reply_lookupMods_mask_5
,
23759 &hf_x11_xkb_GetState_reply_lookupMods_mask_Any
,
23762 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_lookupMods
, ett_x11_rectangle
, lookupMods_bits
, byte_order
);
23766 static int* const compatLookupMods_bits
[] = {
23767 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_Shift
,
23768 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_Lock
,
23769 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_Control
,
23770 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_1
,
23771 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_2
,
23772 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_3
,
23773 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_4
,
23774 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_5
,
23775 &hf_x11_xkb_GetState_reply_compatLookupMods_mask_Any
,
23778 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_compatLookupMods
, ett_x11_rectangle
, compatLookupMods_bits
, byte_order
);
23781 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23784 static int* const ptrBtnState_bits
[] = {
23785 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Shift
,
23786 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Lock
,
23787 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Control
,
23788 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod1
,
23789 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod2
,
23790 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod3
,
23791 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod4
,
23792 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod5
,
23793 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button1
,
23794 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button2
,
23795 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button3
,
23796 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button4
,
23797 &hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button5
,
23800 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetState_reply_ptrBtnState
, ett_x11_rectangle
, ptrBtnState_bits
, byte_order
);
23803 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 6, ENC_NA
);
23807 static void xkbLatchLockState(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23809 proto_tree_add_item(t
, hf_x11_xkb_LatchLockState_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
23812 static int* const affectModLocks_bits
[] = {
23813 &hf_x11_xkb_LatchLockState_affectModLocks_mask_Shift
,
23814 &hf_x11_xkb_LatchLockState_affectModLocks_mask_Lock
,
23815 &hf_x11_xkb_LatchLockState_affectModLocks_mask_Control
,
23816 &hf_x11_xkb_LatchLockState_affectModLocks_mask_1
,
23817 &hf_x11_xkb_LatchLockState_affectModLocks_mask_2
,
23818 &hf_x11_xkb_LatchLockState_affectModLocks_mask_3
,
23819 &hf_x11_xkb_LatchLockState_affectModLocks_mask_4
,
23820 &hf_x11_xkb_LatchLockState_affectModLocks_mask_5
,
23821 &hf_x11_xkb_LatchLockState_affectModLocks_mask_Any
,
23824 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_LatchLockState_affectModLocks
, ett_x11_rectangle
, affectModLocks_bits
, byte_order
);
23828 static int* const modLocks_bits
[] = {
23829 &hf_x11_xkb_LatchLockState_modLocks_mask_Shift
,
23830 &hf_x11_xkb_LatchLockState_modLocks_mask_Lock
,
23831 &hf_x11_xkb_LatchLockState_modLocks_mask_Control
,
23832 &hf_x11_xkb_LatchLockState_modLocks_mask_1
,
23833 &hf_x11_xkb_LatchLockState_modLocks_mask_2
,
23834 &hf_x11_xkb_LatchLockState_modLocks_mask_3
,
23835 &hf_x11_xkb_LatchLockState_modLocks_mask_4
,
23836 &hf_x11_xkb_LatchLockState_modLocks_mask_5
,
23837 &hf_x11_xkb_LatchLockState_modLocks_mask_Any
,
23840 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_LatchLockState_modLocks
, ett_x11_rectangle
, modLocks_bits
, byte_order
);
23843 proto_tree_add_item(t
, hf_x11_xkb_LatchLockState_lockGroup
, tvb
, *offsetp
, 1, byte_order
);
23845 field8(tvb
, offsetp
, t
, hf_x11_xkb_LatchLockState_groupLock
, byte_order
);
23847 static int* const affectModLatches_bits
[] = {
23848 &hf_x11_xkb_LatchLockState_affectModLatches_mask_Shift
,
23849 &hf_x11_xkb_LatchLockState_affectModLatches_mask_Lock
,
23850 &hf_x11_xkb_LatchLockState_affectModLatches_mask_Control
,
23851 &hf_x11_xkb_LatchLockState_affectModLatches_mask_1
,
23852 &hf_x11_xkb_LatchLockState_affectModLatches_mask_2
,
23853 &hf_x11_xkb_LatchLockState_affectModLatches_mask_3
,
23854 &hf_x11_xkb_LatchLockState_affectModLatches_mask_4
,
23855 &hf_x11_xkb_LatchLockState_affectModLatches_mask_5
,
23856 &hf_x11_xkb_LatchLockState_affectModLatches_mask_Any
,
23859 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_LatchLockState_affectModLatches
, ett_x11_rectangle
, affectModLatches_bits
, byte_order
);
23862 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23864 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23866 proto_tree_add_item(t
, hf_x11_xkb_LatchLockState_latchGroup
, tvb
, *offsetp
, 1, byte_order
);
23868 proto_tree_add_item(t
, hf_x11_xkb_LatchLockState_groupLatch
, tvb
, *offsetp
, 2, byte_order
);
23872 static void xkbGetControls(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
23874 proto_tree_add_item(t
, hf_x11_xkb_GetControls_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
23876 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
23879 static void xkbGetControls_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
23881 int sequence_number
;
23883 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetControls");
23886 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
23888 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
23889 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
23890 "%d (xkb-GetControls)", sequence_number
);
23892 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
23894 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysDfltBtn
, tvb
, *offsetp
, 1, byte_order
);
23896 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_numGroups
, tvb
, *offsetp
, 1, byte_order
);
23898 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_groupsWrap
, tvb
, *offsetp
, 1, byte_order
);
23901 static int* const internalModsMask_bits
[] = {
23902 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_Shift
,
23903 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_Lock
,
23904 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_Control
,
23905 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_1
,
23906 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_2
,
23907 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_3
,
23908 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_4
,
23909 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_5
,
23910 &hf_x11_xkb_GetControls_reply_internalModsMask_mask_Any
,
23913 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_internalModsMask
, ett_x11_rectangle
, internalModsMask_bits
, byte_order
);
23917 static int* const ignoreLockModsMask_bits
[] = {
23918 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Shift
,
23919 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Lock
,
23920 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Control
,
23921 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_1
,
23922 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_2
,
23923 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_3
,
23924 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_4
,
23925 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_5
,
23926 &hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Any
,
23929 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_ignoreLockModsMask
, ett_x11_rectangle
, ignoreLockModsMask_bits
, byte_order
);
23933 static int* const internalModsRealMods_bits
[] = {
23934 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Shift
,
23935 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Lock
,
23936 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Control
,
23937 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_1
,
23938 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_2
,
23939 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_3
,
23940 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_4
,
23941 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_5
,
23942 &hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Any
,
23945 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_internalModsRealMods
, ett_x11_rectangle
, internalModsRealMods_bits
, byte_order
);
23949 static int* const ignoreLockModsRealMods_bits
[] = {
23950 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Shift
,
23951 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Lock
,
23952 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Control
,
23953 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_1
,
23954 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_2
,
23955 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_3
,
23956 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_4
,
23957 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_5
,
23958 &hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Any
,
23961 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods
, ett_x11_rectangle
, ignoreLockModsRealMods_bits
, byte_order
);
23964 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
23967 static int* const internalModsVmods_bits
[] = {
23968 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_0
,
23969 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_1
,
23970 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_2
,
23971 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_3
,
23972 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_4
,
23973 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_5
,
23974 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_6
,
23975 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_7
,
23976 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_8
,
23977 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_9
,
23978 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_10
,
23979 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_11
,
23980 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_12
,
23981 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_13
,
23982 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_14
,
23983 &hf_x11_xkb_GetControls_reply_internalModsVmods_mask_15
,
23986 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_internalModsVmods
, ett_x11_rectangle
, internalModsVmods_bits
, byte_order
);
23990 static int* const ignoreLockModsVmods_bits
[] = {
23991 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_0
,
23992 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_1
,
23993 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_2
,
23994 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_3
,
23995 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_4
,
23996 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_5
,
23997 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_6
,
23998 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_7
,
23999 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_8
,
24000 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_9
,
24001 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_10
,
24002 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_11
,
24003 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_12
,
24004 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_13
,
24005 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_14
,
24006 &hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_15
,
24009 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods
, ett_x11_rectangle
, ignoreLockModsVmods_bits
, byte_order
);
24012 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_repeatDelay
, tvb
, *offsetp
, 2, byte_order
);
24014 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_repeatInterval
, tvb
, *offsetp
, 2, byte_order
);
24016 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_slowKeysDelay
, tvb
, *offsetp
, 2, byte_order
);
24018 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_debounceDelay
, tvb
, *offsetp
, 2, byte_order
);
24020 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysDelay
, tvb
, *offsetp
, 2, byte_order
);
24022 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysInterval
, tvb
, *offsetp
, 2, byte_order
);
24024 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysTimeToMax
, tvb
, *offsetp
, 2, byte_order
);
24026 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysMaxSpeed
, tvb
, *offsetp
, 2, byte_order
);
24028 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_mouseKeysCurve
, tvb
, *offsetp
, 2, byte_order
);
24031 static int* const accessXOption_bits
[] = {
24032 &hf_x11_xkb_GetControls_reply_accessXOption_mask_SKPressFB
,
24033 &hf_x11_xkb_GetControls_reply_accessXOption_mask_SKAcceptFB
,
24034 &hf_x11_xkb_GetControls_reply_accessXOption_mask_FeatureFB
,
24035 &hf_x11_xkb_GetControls_reply_accessXOption_mask_SlowWarnFB
,
24036 &hf_x11_xkb_GetControls_reply_accessXOption_mask_IndicatorFB
,
24037 &hf_x11_xkb_GetControls_reply_accessXOption_mask_StickyKeysFB
,
24038 &hf_x11_xkb_GetControls_reply_accessXOption_mask_TwoKeys
,
24039 &hf_x11_xkb_GetControls_reply_accessXOption_mask_LatchToLock
,
24040 &hf_x11_xkb_GetControls_reply_accessXOption_mask_SKReleaseFB
,
24041 &hf_x11_xkb_GetControls_reply_accessXOption_mask_SKRejectFB
,
24042 &hf_x11_xkb_GetControls_reply_accessXOption_mask_BKRejectFB
,
24043 &hf_x11_xkb_GetControls_reply_accessXOption_mask_DumbBell
,
24046 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_accessXOption
, ett_x11_rectangle
, accessXOption_bits
, byte_order
);
24049 proto_tree_add_item(t
, hf_x11_xkb_GetControls_reply_accessXTimeout
, tvb
, *offsetp
, 2, byte_order
);
24052 static int* const accessXTimeoutOptionsMask_bits
[] = {
24053 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_SKPressFB
,
24054 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_SKAcceptFB
,
24055 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_FeatureFB
,
24056 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_SlowWarnFB
,
24057 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_IndicatorFB
,
24058 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_StickyKeysFB
,
24059 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_TwoKeys
,
24060 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_LatchToLock
,
24061 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_SKReleaseFB
,
24062 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_SKRejectFB
,
24063 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_BKRejectFB
,
24064 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask_mask_DumbBell
,
24067 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsMask
, ett_x11_rectangle
, accessXTimeoutOptionsMask_bits
, byte_order
);
24071 static int* const accessXTimeoutOptionsValues_bits
[] = {
24072 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_SKPressFB
,
24073 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_SKAcceptFB
,
24074 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_FeatureFB
,
24075 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_SlowWarnFB
,
24076 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_IndicatorFB
,
24077 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_StickyKeysFB
,
24078 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_TwoKeys
,
24079 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_LatchToLock
,
24080 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_SKReleaseFB
,
24081 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_SKRejectFB
,
24082 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_BKRejectFB
,
24083 &hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues_mask_DumbBell
,
24086 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_accessXTimeoutOptionsValues
, ett_x11_rectangle
, accessXTimeoutOptionsValues_bits
, byte_order
);
24089 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
24092 static int* const accessXTimeoutMask_bits
[] = {
24093 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_RepeatKeys
,
24094 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_SlowKeys
,
24095 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_BounceKeys
,
24096 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_StickyKeys
,
24097 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_MouseKeys
,
24098 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_MouseKeysAccel
,
24099 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_AccessXKeys
,
24100 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_AccessXTimeoutMask
,
24101 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_AccessXFeedbackMask
,
24102 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_AudibleBellMask
,
24103 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_Overlay1Mask
,
24104 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_Overlay2Mask
,
24105 &hf_x11_xkb_GetControls_reply_accessXTimeoutMask_mask_IgnoreGroupLockMask
,
24108 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_accessXTimeoutMask
, ett_x11_rectangle
, accessXTimeoutMask_bits
, byte_order
);
24112 static int* const accessXTimeoutValues_bits
[] = {
24113 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_RepeatKeys
,
24114 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_SlowKeys
,
24115 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_BounceKeys
,
24116 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_StickyKeys
,
24117 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_MouseKeys
,
24118 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_MouseKeysAccel
,
24119 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_AccessXKeys
,
24120 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_AccessXTimeoutMask
,
24121 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_AccessXFeedbackMask
,
24122 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_AudibleBellMask
,
24123 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_Overlay1Mask
,
24124 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_Overlay2Mask
,
24125 &hf_x11_xkb_GetControls_reply_accessXTimeoutValues_mask_IgnoreGroupLockMask
,
24128 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_accessXTimeoutValues
, ett_x11_rectangle
, accessXTimeoutValues_bits
, byte_order
);
24132 static int* const enabledControls_bits
[] = {
24133 &hf_x11_xkb_GetControls_reply_enabledControls_mask_RepeatKeys
,
24134 &hf_x11_xkb_GetControls_reply_enabledControls_mask_SlowKeys
,
24135 &hf_x11_xkb_GetControls_reply_enabledControls_mask_BounceKeys
,
24136 &hf_x11_xkb_GetControls_reply_enabledControls_mask_StickyKeys
,
24137 &hf_x11_xkb_GetControls_reply_enabledControls_mask_MouseKeys
,
24138 &hf_x11_xkb_GetControls_reply_enabledControls_mask_MouseKeysAccel
,
24139 &hf_x11_xkb_GetControls_reply_enabledControls_mask_AccessXKeys
,
24140 &hf_x11_xkb_GetControls_reply_enabledControls_mask_AccessXTimeoutMask
,
24141 &hf_x11_xkb_GetControls_reply_enabledControls_mask_AccessXFeedbackMask
,
24142 &hf_x11_xkb_GetControls_reply_enabledControls_mask_AudibleBellMask
,
24143 &hf_x11_xkb_GetControls_reply_enabledControls_mask_Overlay1Mask
,
24144 &hf_x11_xkb_GetControls_reply_enabledControls_mask_Overlay2Mask
,
24145 &hf_x11_xkb_GetControls_reply_enabledControls_mask_IgnoreGroupLockMask
,
24148 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetControls_reply_enabledControls
, ett_x11_rectangle
, enabledControls_bits
, byte_order
);
24151 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetControls_reply_perKeyRepeat
, 32, byte_order
);
24154 static void xkbSetControls(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
24156 proto_tree_add_item(t
, hf_x11_xkb_SetControls_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
24159 static int* const affectInternalRealMods_bits
[] = {
24160 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_Shift
,
24161 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_Lock
,
24162 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_Control
,
24163 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_1
,
24164 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_2
,
24165 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_3
,
24166 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_4
,
24167 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_5
,
24168 &hf_x11_xkb_SetControls_affectInternalRealMods_mask_Any
,
24171 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_affectInternalRealMods
, ett_x11_rectangle
, affectInternalRealMods_bits
, byte_order
);
24175 static int* const internalRealMods_bits
[] = {
24176 &hf_x11_xkb_SetControls_internalRealMods_mask_Shift
,
24177 &hf_x11_xkb_SetControls_internalRealMods_mask_Lock
,
24178 &hf_x11_xkb_SetControls_internalRealMods_mask_Control
,
24179 &hf_x11_xkb_SetControls_internalRealMods_mask_1
,
24180 &hf_x11_xkb_SetControls_internalRealMods_mask_2
,
24181 &hf_x11_xkb_SetControls_internalRealMods_mask_3
,
24182 &hf_x11_xkb_SetControls_internalRealMods_mask_4
,
24183 &hf_x11_xkb_SetControls_internalRealMods_mask_5
,
24184 &hf_x11_xkb_SetControls_internalRealMods_mask_Any
,
24187 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_internalRealMods
, ett_x11_rectangle
, internalRealMods_bits
, byte_order
);
24191 static int* const affectIgnoreLockRealMods_bits
[] = {
24192 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Shift
,
24193 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Lock
,
24194 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Control
,
24195 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_1
,
24196 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_2
,
24197 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_3
,
24198 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_4
,
24199 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_5
,
24200 &hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Any
,
24203 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_affectIgnoreLockRealMods
, ett_x11_rectangle
, affectIgnoreLockRealMods_bits
, byte_order
);
24207 static int* const ignoreLockRealMods_bits
[] = {
24208 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Shift
,
24209 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Lock
,
24210 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Control
,
24211 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_1
,
24212 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_2
,
24213 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_3
,
24214 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_4
,
24215 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_5
,
24216 &hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Any
,
24219 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_ignoreLockRealMods
, ett_x11_rectangle
, ignoreLockRealMods_bits
, byte_order
);
24223 static int* const affectInternalVirtualMods_bits
[] = {
24224 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_0
,
24225 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_1
,
24226 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_2
,
24227 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_3
,
24228 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_4
,
24229 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_5
,
24230 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_6
,
24231 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_7
,
24232 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_8
,
24233 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_9
,
24234 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_10
,
24235 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_11
,
24236 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_12
,
24237 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_13
,
24238 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_14
,
24239 &hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_15
,
24242 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_affectInternalVirtualMods
, ett_x11_rectangle
, affectInternalVirtualMods_bits
, byte_order
);
24246 static int* const internalVirtualMods_bits
[] = {
24247 &hf_x11_xkb_SetControls_internalVirtualMods_mask_0
,
24248 &hf_x11_xkb_SetControls_internalVirtualMods_mask_1
,
24249 &hf_x11_xkb_SetControls_internalVirtualMods_mask_2
,
24250 &hf_x11_xkb_SetControls_internalVirtualMods_mask_3
,
24251 &hf_x11_xkb_SetControls_internalVirtualMods_mask_4
,
24252 &hf_x11_xkb_SetControls_internalVirtualMods_mask_5
,
24253 &hf_x11_xkb_SetControls_internalVirtualMods_mask_6
,
24254 &hf_x11_xkb_SetControls_internalVirtualMods_mask_7
,
24255 &hf_x11_xkb_SetControls_internalVirtualMods_mask_8
,
24256 &hf_x11_xkb_SetControls_internalVirtualMods_mask_9
,
24257 &hf_x11_xkb_SetControls_internalVirtualMods_mask_10
,
24258 &hf_x11_xkb_SetControls_internalVirtualMods_mask_11
,
24259 &hf_x11_xkb_SetControls_internalVirtualMods_mask_12
,
24260 &hf_x11_xkb_SetControls_internalVirtualMods_mask_13
,
24261 &hf_x11_xkb_SetControls_internalVirtualMods_mask_14
,
24262 &hf_x11_xkb_SetControls_internalVirtualMods_mask_15
,
24265 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_internalVirtualMods
, ett_x11_rectangle
, internalVirtualMods_bits
, byte_order
);
24269 static int* const affectIgnoreLockVirtualMods_bits
[] = {
24270 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_0
,
24271 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_1
,
24272 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_2
,
24273 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_3
,
24274 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_4
,
24275 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_5
,
24276 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_6
,
24277 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_7
,
24278 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_8
,
24279 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_9
,
24280 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_10
,
24281 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_11
,
24282 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_12
,
24283 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_13
,
24284 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_14
,
24285 &hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_15
,
24288 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods
, ett_x11_rectangle
, affectIgnoreLockVirtualMods_bits
, byte_order
);
24292 static int* const ignoreLockVirtualMods_bits
[] = {
24293 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_0
,
24294 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_1
,
24295 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_2
,
24296 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_3
,
24297 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_4
,
24298 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_5
,
24299 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_6
,
24300 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_7
,
24301 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_8
,
24302 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_9
,
24303 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_10
,
24304 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_11
,
24305 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_12
,
24306 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_13
,
24307 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_14
,
24308 &hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_15
,
24311 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_ignoreLockVirtualMods
, ett_x11_rectangle
, ignoreLockVirtualMods_bits
, byte_order
);
24314 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysDfltBtn
, tvb
, *offsetp
, 1, byte_order
);
24316 proto_tree_add_item(t
, hf_x11_xkb_SetControls_groupsWrap
, tvb
, *offsetp
, 1, byte_order
);
24319 static int* const accessXOptions_bits
[] = {
24320 &hf_x11_xkb_SetControls_accessXOptions_mask_SKPressFB
,
24321 &hf_x11_xkb_SetControls_accessXOptions_mask_SKAcceptFB
,
24322 &hf_x11_xkb_SetControls_accessXOptions_mask_FeatureFB
,
24323 &hf_x11_xkb_SetControls_accessXOptions_mask_SlowWarnFB
,
24324 &hf_x11_xkb_SetControls_accessXOptions_mask_IndicatorFB
,
24325 &hf_x11_xkb_SetControls_accessXOptions_mask_StickyKeysFB
,
24326 &hf_x11_xkb_SetControls_accessXOptions_mask_TwoKeys
,
24327 &hf_x11_xkb_SetControls_accessXOptions_mask_LatchToLock
,
24328 &hf_x11_xkb_SetControls_accessXOptions_mask_SKReleaseFB
,
24329 &hf_x11_xkb_SetControls_accessXOptions_mask_SKRejectFB
,
24330 &hf_x11_xkb_SetControls_accessXOptions_mask_BKRejectFB
,
24331 &hf_x11_xkb_SetControls_accessXOptions_mask_DumbBell
,
24334 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_accessXOptions
, ett_x11_rectangle
, accessXOptions_bits
, byte_order
);
24337 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
24340 static int* const affectEnabledControls_bits
[] = {
24341 &hf_x11_xkb_SetControls_affectEnabledControls_mask_RepeatKeys
,
24342 &hf_x11_xkb_SetControls_affectEnabledControls_mask_SlowKeys
,
24343 &hf_x11_xkb_SetControls_affectEnabledControls_mask_BounceKeys
,
24344 &hf_x11_xkb_SetControls_affectEnabledControls_mask_StickyKeys
,
24345 &hf_x11_xkb_SetControls_affectEnabledControls_mask_MouseKeys
,
24346 &hf_x11_xkb_SetControls_affectEnabledControls_mask_MouseKeysAccel
,
24347 &hf_x11_xkb_SetControls_affectEnabledControls_mask_AccessXKeys
,
24348 &hf_x11_xkb_SetControls_affectEnabledControls_mask_AccessXTimeoutMask
,
24349 &hf_x11_xkb_SetControls_affectEnabledControls_mask_AccessXFeedbackMask
,
24350 &hf_x11_xkb_SetControls_affectEnabledControls_mask_AudibleBellMask
,
24351 &hf_x11_xkb_SetControls_affectEnabledControls_mask_Overlay1Mask
,
24352 &hf_x11_xkb_SetControls_affectEnabledControls_mask_Overlay2Mask
,
24353 &hf_x11_xkb_SetControls_affectEnabledControls_mask_IgnoreGroupLockMask
,
24356 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_affectEnabledControls
, ett_x11_rectangle
, affectEnabledControls_bits
, byte_order
);
24360 static int* const enabledControls_bits
[] = {
24361 &hf_x11_xkb_SetControls_enabledControls_mask_RepeatKeys
,
24362 &hf_x11_xkb_SetControls_enabledControls_mask_SlowKeys
,
24363 &hf_x11_xkb_SetControls_enabledControls_mask_BounceKeys
,
24364 &hf_x11_xkb_SetControls_enabledControls_mask_StickyKeys
,
24365 &hf_x11_xkb_SetControls_enabledControls_mask_MouseKeys
,
24366 &hf_x11_xkb_SetControls_enabledControls_mask_MouseKeysAccel
,
24367 &hf_x11_xkb_SetControls_enabledControls_mask_AccessXKeys
,
24368 &hf_x11_xkb_SetControls_enabledControls_mask_AccessXTimeoutMask
,
24369 &hf_x11_xkb_SetControls_enabledControls_mask_AccessXFeedbackMask
,
24370 &hf_x11_xkb_SetControls_enabledControls_mask_AudibleBellMask
,
24371 &hf_x11_xkb_SetControls_enabledControls_mask_Overlay1Mask
,
24372 &hf_x11_xkb_SetControls_enabledControls_mask_Overlay2Mask
,
24373 &hf_x11_xkb_SetControls_enabledControls_mask_IgnoreGroupLockMask
,
24376 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_enabledControls
, ett_x11_rectangle
, enabledControls_bits
, byte_order
);
24380 static int* const changeControls_bits
[] = {
24381 &hf_x11_xkb_SetControls_changeControls_mask_GroupsWrap
,
24382 &hf_x11_xkb_SetControls_changeControls_mask_InternalMods
,
24383 &hf_x11_xkb_SetControls_changeControls_mask_IgnoreLockMods
,
24384 &hf_x11_xkb_SetControls_changeControls_mask_PerKeyRepeat
,
24385 &hf_x11_xkb_SetControls_changeControls_mask_ControlsEnabled
,
24388 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_changeControls
, ett_x11_rectangle
, changeControls_bits
, byte_order
);
24391 proto_tree_add_item(t
, hf_x11_xkb_SetControls_repeatDelay
, tvb
, *offsetp
, 2, byte_order
);
24393 proto_tree_add_item(t
, hf_x11_xkb_SetControls_repeatInterval
, tvb
, *offsetp
, 2, byte_order
);
24395 proto_tree_add_item(t
, hf_x11_xkb_SetControls_slowKeysDelay
, tvb
, *offsetp
, 2, byte_order
);
24397 proto_tree_add_item(t
, hf_x11_xkb_SetControls_debounceDelay
, tvb
, *offsetp
, 2, byte_order
);
24399 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysDelay
, tvb
, *offsetp
, 2, byte_order
);
24401 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysInterval
, tvb
, *offsetp
, 2, byte_order
);
24403 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysTimeToMax
, tvb
, *offsetp
, 2, byte_order
);
24405 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysMaxSpeed
, tvb
, *offsetp
, 2, byte_order
);
24407 proto_tree_add_item(t
, hf_x11_xkb_SetControls_mouseKeysCurve
, tvb
, *offsetp
, 2, byte_order
);
24409 proto_tree_add_item(t
, hf_x11_xkb_SetControls_accessXTimeout
, tvb
, *offsetp
, 2, byte_order
);
24412 static int* const accessXTimeoutMask_bits
[] = {
24413 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_RepeatKeys
,
24414 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_SlowKeys
,
24415 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_BounceKeys
,
24416 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_StickyKeys
,
24417 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_MouseKeys
,
24418 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_MouseKeysAccel
,
24419 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_AccessXKeys
,
24420 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_AccessXTimeoutMask
,
24421 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_AccessXFeedbackMask
,
24422 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_AudibleBellMask
,
24423 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_Overlay1Mask
,
24424 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_Overlay2Mask
,
24425 &hf_x11_xkb_SetControls_accessXTimeoutMask_mask_IgnoreGroupLockMask
,
24428 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_accessXTimeoutMask
, ett_x11_rectangle
, accessXTimeoutMask_bits
, byte_order
);
24432 static int* const accessXTimeoutValues_bits
[] = {
24433 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_RepeatKeys
,
24434 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_SlowKeys
,
24435 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_BounceKeys
,
24436 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_StickyKeys
,
24437 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_MouseKeys
,
24438 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_MouseKeysAccel
,
24439 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_AccessXKeys
,
24440 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_AccessXTimeoutMask
,
24441 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_AccessXFeedbackMask
,
24442 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_AudibleBellMask
,
24443 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_Overlay1Mask
,
24444 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_Overlay2Mask
,
24445 &hf_x11_xkb_SetControls_accessXTimeoutValues_mask_IgnoreGroupLockMask
,
24448 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_accessXTimeoutValues
, ett_x11_rectangle
, accessXTimeoutValues_bits
, byte_order
);
24452 static int* const accessXTimeoutOptionsMask_bits
[] = {
24453 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_SKPressFB
,
24454 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_SKAcceptFB
,
24455 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_FeatureFB
,
24456 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_SlowWarnFB
,
24457 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_IndicatorFB
,
24458 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_StickyKeysFB
,
24459 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_TwoKeys
,
24460 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_LatchToLock
,
24461 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_SKReleaseFB
,
24462 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_SKRejectFB
,
24463 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_BKRejectFB
,
24464 &hf_x11_xkb_SetControls_accessXTimeoutOptionsMask_mask_DumbBell
,
24467 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_accessXTimeoutOptionsMask
, ett_x11_rectangle
, accessXTimeoutOptionsMask_bits
, byte_order
);
24471 static int* const accessXTimeoutOptionsValues_bits
[] = {
24472 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_SKPressFB
,
24473 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_SKAcceptFB
,
24474 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_FeatureFB
,
24475 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_SlowWarnFB
,
24476 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_IndicatorFB
,
24477 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_StickyKeysFB
,
24478 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_TwoKeys
,
24479 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_LatchToLock
,
24480 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_SKReleaseFB
,
24481 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_SKRejectFB
,
24482 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_BKRejectFB
,
24483 &hf_x11_xkb_SetControls_accessXTimeoutOptionsValues_mask_DumbBell
,
24486 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetControls_accessXTimeoutOptionsValues
, ett_x11_rectangle
, accessXTimeoutOptionsValues_bits
, byte_order
);
24489 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_SetControls_perKeyRepeat
, 32, byte_order
);
24493 static void xkbGetMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
24495 proto_tree_add_item(t
, hf_x11_xkb_GetMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
24498 static int* const full_bits
[] = {
24499 &hf_x11_xkb_GetMap_full_mask_KeyTypes
,
24500 &hf_x11_xkb_GetMap_full_mask_KeySyms
,
24501 &hf_x11_xkb_GetMap_full_mask_ModifierMap
,
24502 &hf_x11_xkb_GetMap_full_mask_ExplicitComponents
,
24503 &hf_x11_xkb_GetMap_full_mask_KeyActions
,
24504 &hf_x11_xkb_GetMap_full_mask_KeyBehaviors
,
24505 &hf_x11_xkb_GetMap_full_mask_VirtualMods
,
24506 &hf_x11_xkb_GetMap_full_mask_VirtualModMap
,
24509 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetMap_full
, ett_x11_rectangle
, full_bits
, byte_order
);
24513 static int* const partial_bits
[] = {
24514 &hf_x11_xkb_GetMap_partial_mask_KeyTypes
,
24515 &hf_x11_xkb_GetMap_partial_mask_KeySyms
,
24516 &hf_x11_xkb_GetMap_partial_mask_ModifierMap
,
24517 &hf_x11_xkb_GetMap_partial_mask_ExplicitComponents
,
24518 &hf_x11_xkb_GetMap_partial_mask_KeyActions
,
24519 &hf_x11_xkb_GetMap_partial_mask_KeyBehaviors
,
24520 &hf_x11_xkb_GetMap_partial_mask_VirtualMods
,
24521 &hf_x11_xkb_GetMap_partial_mask_VirtualModMap
,
24524 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetMap_partial
, ett_x11_rectangle
, partial_bits
, byte_order
);
24527 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstType
, tvb
, *offsetp
, 1, byte_order
);
24529 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nTypes
, tvb
, *offsetp
, 1, byte_order
);
24531 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstKeySym
, tvb
, *offsetp
, 1, byte_order
);
24533 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nKeySyms
, tvb
, *offsetp
, 1, byte_order
);
24535 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstKeyAction
, tvb
, *offsetp
, 1, byte_order
);
24537 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nKeyActions
, tvb
, *offsetp
, 1, byte_order
);
24539 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
24541 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
24544 static int* const virtualMods_bits
[] = {
24545 &hf_x11_xkb_GetMap_virtualMods_mask_0
,
24546 &hf_x11_xkb_GetMap_virtualMods_mask_1
,
24547 &hf_x11_xkb_GetMap_virtualMods_mask_2
,
24548 &hf_x11_xkb_GetMap_virtualMods_mask_3
,
24549 &hf_x11_xkb_GetMap_virtualMods_mask_4
,
24550 &hf_x11_xkb_GetMap_virtualMods_mask_5
,
24551 &hf_x11_xkb_GetMap_virtualMods_mask_6
,
24552 &hf_x11_xkb_GetMap_virtualMods_mask_7
,
24553 &hf_x11_xkb_GetMap_virtualMods_mask_8
,
24554 &hf_x11_xkb_GetMap_virtualMods_mask_9
,
24555 &hf_x11_xkb_GetMap_virtualMods_mask_10
,
24556 &hf_x11_xkb_GetMap_virtualMods_mask_11
,
24557 &hf_x11_xkb_GetMap_virtualMods_mask_12
,
24558 &hf_x11_xkb_GetMap_virtualMods_mask_13
,
24559 &hf_x11_xkb_GetMap_virtualMods_mask_14
,
24560 &hf_x11_xkb_GetMap_virtualMods_mask_15
,
24563 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetMap_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
24566 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24568 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24570 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24572 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24574 proto_tree_add_item(t
, hf_x11_xkb_GetMap_firstVModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24576 proto_tree_add_item(t
, hf_x11_xkb_GetMap_nVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24578 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
24581 static void xkbGetMap_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
24583 int sequence_number
;
24587 int f_totalActions
;
24589 int f_totalKeyBehaviors
;
24590 int f_totalKeyExplicit
;
24591 int f_totalModMapKeys
;
24592 int f_totalVModMapKeys
;
24595 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetMap");
24598 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
24600 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24601 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
24602 "%d (xkb-GetMap)", sequence_number
);
24604 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
24606 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
24608 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_minKeyCode
, tvb
, *offsetp
, 1, byte_order
);
24610 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_maxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
24612 f_present
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24614 static int* const present_bits
[] = {
24615 &hf_x11_xkb_GetMap_reply_present_mask_KeyTypes
,
24616 &hf_x11_xkb_GetMap_reply_present_mask_KeySyms
,
24617 &hf_x11_xkb_GetMap_reply_present_mask_ModifierMap
,
24618 &hf_x11_xkb_GetMap_reply_present_mask_ExplicitComponents
,
24619 &hf_x11_xkb_GetMap_reply_present_mask_KeyActions
,
24620 &hf_x11_xkb_GetMap_reply_present_mask_KeyBehaviors
,
24621 &hf_x11_xkb_GetMap_reply_present_mask_VirtualMods
,
24622 &hf_x11_xkb_GetMap_reply_present_mask_VirtualModMap
,
24625 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetMap_reply_present
, ett_x11_rectangle
, present_bits
, byte_order
);
24628 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstType
, tvb
, *offsetp
, 1, byte_order
);
24630 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
24631 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nTypes
, tvb
, *offsetp
, 1, byte_order
);
24633 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalTypes
, tvb
, *offsetp
, 1, byte_order
);
24635 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstKeySym
, tvb
, *offsetp
, 1, byte_order
);
24637 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalSyms
, tvb
, *offsetp
, 2, byte_order
);
24639 f_nKeySyms
= tvb_get_uint8(tvb
, *offsetp
);
24640 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nKeySyms
, tvb
, *offsetp
, 1, byte_order
);
24642 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstKeyAction
, tvb
, *offsetp
, 1, byte_order
);
24644 f_totalActions
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24645 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalActions
, tvb
, *offsetp
, 2, byte_order
);
24647 f_nKeyActions
= tvb_get_uint8(tvb
, *offsetp
);
24648 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nKeyActions
, tvb
, *offsetp
, 1, byte_order
);
24650 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
24652 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
24654 f_totalKeyBehaviors
= tvb_get_uint8(tvb
, *offsetp
);
24655 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
24657 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24659 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24661 f_totalKeyExplicit
= tvb_get_uint8(tvb
, *offsetp
);
24662 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24664 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24666 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24668 f_totalModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
24669 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24671 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_firstVModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24673 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_nVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24675 f_totalVModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
24676 proto_tree_add_item(t
, hf_x11_xkb_GetMap_reply_totalVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24678 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
24680 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24682 static int* const virtualMods_bits
[] = {
24683 &hf_x11_xkb_GetMap_reply_virtualMods_mask_0
,
24684 &hf_x11_xkb_GetMap_reply_virtualMods_mask_1
,
24685 &hf_x11_xkb_GetMap_reply_virtualMods_mask_2
,
24686 &hf_x11_xkb_GetMap_reply_virtualMods_mask_3
,
24687 &hf_x11_xkb_GetMap_reply_virtualMods_mask_4
,
24688 &hf_x11_xkb_GetMap_reply_virtualMods_mask_5
,
24689 &hf_x11_xkb_GetMap_reply_virtualMods_mask_6
,
24690 &hf_x11_xkb_GetMap_reply_virtualMods_mask_7
,
24691 &hf_x11_xkb_GetMap_reply_virtualMods_mask_8
,
24692 &hf_x11_xkb_GetMap_reply_virtualMods_mask_9
,
24693 &hf_x11_xkb_GetMap_reply_virtualMods_mask_10
,
24694 &hf_x11_xkb_GetMap_reply_virtualMods_mask_11
,
24695 &hf_x11_xkb_GetMap_reply_virtualMods_mask_12
,
24696 &hf_x11_xkb_GetMap_reply_virtualMods_mask_13
,
24697 &hf_x11_xkb_GetMap_reply_virtualMods_mask_14
,
24698 &hf_x11_xkb_GetMap_reply_virtualMods_mask_15
,
24701 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetMap_reply_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
24704 if (f_present
& (1U << 0)) {
24705 struct_xkb_KeyType(tvb
, offsetp
, t
, byte_order
, f_nTypes
);
24707 if (f_present
& (1U << 1)) {
24708 struct_xkb_KeySymMap(tvb
, offsetp
, t
, byte_order
, f_nKeySyms
);
24710 if (f_present
& (1U << 4)) {
24711 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetMap_reply_KeyActions_acts_rtrn_count
, f_nKeyActions
, byte_order
);
24712 if (*offsetp
% 4) {
24713 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24714 *offsetp
+= (4 - *offsetp
% 4);
24716 struct_xkb_Action(tvb
, offsetp
, t
, byte_order
, f_totalActions
);
24718 if (f_present
& (1U << 5)) {
24719 struct_xkb_SetBehavior(tvb
, offsetp
, t
, byte_order
, f_totalKeyBehaviors
);
24721 if (f_present
& (1U << 6)) {
24722 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetMap_reply_VirtualMods_vmods_rtrn
, ws_count_ones(f_virtualMods
), byte_order
);
24723 if (*offsetp
% 4) {
24724 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24725 *offsetp
+= (4 - *offsetp
% 4);
24728 if (f_present
& (1U << 3)) {
24729 struct_xkb_SetExplicit(tvb
, offsetp
, t
, byte_order
, f_totalKeyExplicit
);
24730 if (*offsetp
% 4) {
24731 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24732 *offsetp
+= (4 - *offsetp
% 4);
24735 if (f_present
& (1U << 2)) {
24736 struct_xkb_KeyModMap(tvb
, offsetp
, t
, byte_order
, f_totalModMapKeys
);
24737 if (*offsetp
% 4) {
24738 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24739 *offsetp
+= (4 - *offsetp
% 4);
24742 if (f_present
& (1U << 7)) {
24743 struct_xkb_KeyVModMap(tvb
, offsetp
, t
, byte_order
, f_totalVModMapKeys
);
24747 static void xkbSetMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
24753 int f_totalActions
;
24754 int f_totalKeyBehaviors
;
24755 int f_totalKeyExplicit
;
24756 int f_totalModMapKeys
;
24757 int f_totalVModMapKeys
;
24759 proto_tree_add_item(t
, hf_x11_xkb_SetMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
24761 f_present
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24763 static int* const present_bits
[] = {
24764 &hf_x11_xkb_SetMap_present_mask_KeyTypes
,
24765 &hf_x11_xkb_SetMap_present_mask_KeySyms
,
24766 &hf_x11_xkb_SetMap_present_mask_ModifierMap
,
24767 &hf_x11_xkb_SetMap_present_mask_ExplicitComponents
,
24768 &hf_x11_xkb_SetMap_present_mask_KeyActions
,
24769 &hf_x11_xkb_SetMap_present_mask_KeyBehaviors
,
24770 &hf_x11_xkb_SetMap_present_mask_VirtualMods
,
24771 &hf_x11_xkb_SetMap_present_mask_VirtualModMap
,
24774 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetMap_present
, ett_x11_rectangle
, present_bits
, byte_order
);
24778 static int* const flags_bits
[] = {
24779 &hf_x11_xkb_SetMap_flags_mask_ResizeTypes
,
24780 &hf_x11_xkb_SetMap_flags_mask_RecomputeActions
,
24783 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetMap_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
24786 proto_tree_add_item(t
, hf_x11_xkb_SetMap_minKeyCode
, tvb
, *offsetp
, 1, byte_order
);
24788 proto_tree_add_item(t
, hf_x11_xkb_SetMap_maxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
24790 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstType
, tvb
, *offsetp
, 1, byte_order
);
24792 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
24793 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nTypes
, tvb
, *offsetp
, 1, byte_order
);
24795 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstKeySym
, tvb
, *offsetp
, 1, byte_order
);
24797 f_nKeySyms
= tvb_get_uint8(tvb
, *offsetp
);
24798 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nKeySyms
, tvb
, *offsetp
, 1, byte_order
);
24800 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalSyms
, tvb
, *offsetp
, 2, byte_order
);
24802 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstKeyAction
, tvb
, *offsetp
, 1, byte_order
);
24804 f_nKeyActions
= tvb_get_uint8(tvb
, *offsetp
);
24805 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nKeyActions
, tvb
, *offsetp
, 1, byte_order
);
24807 f_totalActions
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24808 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalActions
, tvb
, *offsetp
, 2, byte_order
);
24810 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
24812 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
24814 f_totalKeyBehaviors
= tvb_get_uint8(tvb
, *offsetp
);
24815 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
24817 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24819 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24821 f_totalKeyExplicit
= tvb_get_uint8(tvb
, *offsetp
);
24822 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
24824 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24826 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24828 f_totalModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
24829 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24831 proto_tree_add_item(t
, hf_x11_xkb_SetMap_firstVModMapKey
, tvb
, *offsetp
, 1, byte_order
);
24833 proto_tree_add_item(t
, hf_x11_xkb_SetMap_nVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24835 f_totalVModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
24836 proto_tree_add_item(t
, hf_x11_xkb_SetMap_totalVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
24838 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24840 static int* const virtualMods_bits
[] = {
24841 &hf_x11_xkb_SetMap_virtualMods_mask_0
,
24842 &hf_x11_xkb_SetMap_virtualMods_mask_1
,
24843 &hf_x11_xkb_SetMap_virtualMods_mask_2
,
24844 &hf_x11_xkb_SetMap_virtualMods_mask_3
,
24845 &hf_x11_xkb_SetMap_virtualMods_mask_4
,
24846 &hf_x11_xkb_SetMap_virtualMods_mask_5
,
24847 &hf_x11_xkb_SetMap_virtualMods_mask_6
,
24848 &hf_x11_xkb_SetMap_virtualMods_mask_7
,
24849 &hf_x11_xkb_SetMap_virtualMods_mask_8
,
24850 &hf_x11_xkb_SetMap_virtualMods_mask_9
,
24851 &hf_x11_xkb_SetMap_virtualMods_mask_10
,
24852 &hf_x11_xkb_SetMap_virtualMods_mask_11
,
24853 &hf_x11_xkb_SetMap_virtualMods_mask_12
,
24854 &hf_x11_xkb_SetMap_virtualMods_mask_13
,
24855 &hf_x11_xkb_SetMap_virtualMods_mask_14
,
24856 &hf_x11_xkb_SetMap_virtualMods_mask_15
,
24859 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetMap_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
24862 if (f_present
& (1U << 0)) {
24863 struct_xkb_SetKeyType(tvb
, offsetp
, t
, byte_order
, f_nTypes
);
24864 length
-= f_nTypes
* 0;
24866 if (f_present
& (1U << 1)) {
24867 struct_xkb_KeySymMap(tvb
, offsetp
, t
, byte_order
, f_nKeySyms
);
24868 length
-= f_nKeySyms
* 0;
24870 if (f_present
& (1U << 4)) {
24871 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_SetMap_KeyActions_actionsCount
, f_nKeyActions
, byte_order
);
24872 length
-= f_nKeyActions
* 1;
24873 if (*offsetp
% 4) {
24874 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24875 *offsetp
+= (4 - *offsetp
% 4);
24877 length
= ((length
+ 3) & ~3);
24878 struct_xkb_Action(tvb
, offsetp
, t
, byte_order
, f_totalActions
);
24879 length
-= f_totalActions
* 8;
24881 if (f_present
& (1U << 5)) {
24882 struct_xkb_SetBehavior(tvb
, offsetp
, t
, byte_order
, f_totalKeyBehaviors
);
24883 length
-= f_totalKeyBehaviors
* 4;
24885 if (f_present
& (1U << 6)) {
24886 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_SetMap_VirtualMods_vmods
, ws_count_ones(f_virtualMods
), byte_order
);
24887 length
-= ws_count_ones(f_virtualMods
) * 1;
24888 if (*offsetp
% 4) {
24889 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
24890 *offsetp
+= (4 - *offsetp
% 4);
24892 length
= ((length
+ 3) & ~3);
24894 if (f_present
& (1U << 3)) {
24895 struct_xkb_SetExplicit(tvb
, offsetp
, t
, byte_order
, f_totalKeyExplicit
);
24896 length
-= f_totalKeyExplicit
* 2;
24898 if (f_present
& (1U << 2)) {
24899 struct_xkb_KeyModMap(tvb
, offsetp
, t
, byte_order
, f_totalModMapKeys
);
24900 length
-= f_totalModMapKeys
* 2;
24902 if (f_present
& (1U << 7)) {
24903 struct_xkb_KeyVModMap(tvb
, offsetp
, t
, byte_order
, f_totalVModMapKeys
);
24904 length
-= f_totalVModMapKeys
* 4;
24908 static void xkbGetCompatMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
24910 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
24913 static int* const groups_bits
[] = {
24914 &hf_x11_xkb_GetCompatMap_groups_mask_Group1
,
24915 &hf_x11_xkb_GetCompatMap_groups_mask_Group2
,
24916 &hf_x11_xkb_GetCompatMap_groups_mask_Group3
,
24917 &hf_x11_xkb_GetCompatMap_groups_mask_Group4
,
24920 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetCompatMap_groups
, ett_x11_rectangle
, groups_bits
, byte_order
);
24923 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_getAllSI
, tvb
, *offsetp
, 1, byte_order
);
24925 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_firstSI
, tvb
, *offsetp
, 2, byte_order
);
24927 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_nSI
, tvb
, *offsetp
, 2, byte_order
);
24930 static void xkbGetCompatMap_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
24932 int sequence_number
;
24936 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetCompatMap");
24939 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
24941 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24942 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
24943 "%d (xkb-GetCompatMap)", sequence_number
);
24945 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
24947 f_groupsRtrn
= tvb_get_uint8(tvb
, *offsetp
);
24949 static int* const groupsRtrn_bits
[] = {
24950 &hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group1
,
24951 &hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group2
,
24952 &hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group3
,
24953 &hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group4
,
24956 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetCompatMap_reply_groupsRtrn
, ett_x11_rectangle
, groupsRtrn_bits
, byte_order
);
24959 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
24961 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_reply_firstSIRtrn
, tvb
, *offsetp
, 2, byte_order
);
24963 f_nSIRtrn
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
24964 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_reply_nSIRtrn
, tvb
, *offsetp
, 2, byte_order
);
24966 proto_tree_add_item(t
, hf_x11_xkb_GetCompatMap_reply_nTotalSI
, tvb
, *offsetp
, 2, byte_order
);
24968 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
24970 struct_xkb_SymInterpret(tvb
, offsetp
, t
, byte_order
, f_nSIRtrn
);
24971 struct_xkb_ModDef(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_groupsRtrn
));
24974 static void xkbSetCompatMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
24978 proto_tree_add_item(t
, hf_x11_xkb_SetCompatMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
24980 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
24982 proto_tree_add_item(t
, hf_x11_xkb_SetCompatMap_recomputeActions
, tvb
, *offsetp
, 1, byte_order
);
24984 proto_tree_add_item(t
, hf_x11_xkb_SetCompatMap_truncateSI
, tvb
, *offsetp
, 1, byte_order
);
24986 f_groups
= tvb_get_uint8(tvb
, *offsetp
);
24988 static int* const groups_bits
[] = {
24989 &hf_x11_xkb_SetCompatMap_groups_mask_Group1
,
24990 &hf_x11_xkb_SetCompatMap_groups_mask_Group2
,
24991 &hf_x11_xkb_SetCompatMap_groups_mask_Group3
,
24992 &hf_x11_xkb_SetCompatMap_groups_mask_Group4
,
24995 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetCompatMap_groups
, ett_x11_rectangle
, groups_bits
, byte_order
);
24998 proto_tree_add_item(t
, hf_x11_xkb_SetCompatMap_firstSI
, tvb
, *offsetp
, 2, byte_order
);
25000 f_nSI
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25001 proto_tree_add_item(t
, hf_x11_xkb_SetCompatMap_nSI
, tvb
, *offsetp
, 2, byte_order
);
25003 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25005 struct_xkb_SymInterpret(tvb
, offsetp
, t
, byte_order
, f_nSI
);
25006 length
-= f_nSI
* 16;
25007 struct_xkb_ModDef(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_groups
));
25008 length
-= ws_count_ones(f_groups
) * 4;
25011 static void xkbGetIndicatorState(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25013 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorState_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25015 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25018 static void xkbGetIndicatorState_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25020 int sequence_number
;
25022 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetIndicatorState");
25025 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorState_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25027 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25028 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25029 "%d (xkb-GetIndicatorState)", sequence_number
);
25031 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25033 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorState_reply_state
, tvb
, *offsetp
, 4, byte_order
);
25035 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
25039 static void xkbGetIndicatorMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25041 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25043 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25045 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_which
, tvb
, *offsetp
, 4, byte_order
);
25048 static void xkbGetIndicatorMap_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25050 int sequence_number
;
25053 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetIndicatorMap");
25056 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25058 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25059 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25060 "%d (xkb-GetIndicatorMap)", sequence_number
);
25062 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25064 f_which
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25065 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_reply_which
, tvb
, *offsetp
, 4, byte_order
);
25067 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_reply_realIndicators
, tvb
, *offsetp
, 4, byte_order
);
25069 proto_tree_add_item(t
, hf_x11_xkb_GetIndicatorMap_reply_nIndicators
, tvb
, *offsetp
, 1, byte_order
);
25071 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
25073 struct_xkb_IndicatorMap(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_which
));
25076 static void xkbSetIndicatorMap(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25079 proto_tree_add_item(t
, hf_x11_xkb_SetIndicatorMap_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25081 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25083 f_which
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25084 proto_tree_add_item(t
, hf_x11_xkb_SetIndicatorMap_which
, tvb
, *offsetp
, 4, byte_order
);
25086 struct_xkb_IndicatorMap(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_which
));
25087 length
-= ws_count_ones(f_which
) * 12;
25090 static void xkbGetNamedIndicator(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25092 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25094 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetNamedIndicator_ledClass
, byte_order
);
25095 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetNamedIndicator_ledID
, byte_order
);
25096 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25098 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_indicator
, tvb
, *offsetp
, 4, byte_order
);
25101 static void xkbGetNamedIndicator_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25103 int sequence_number
;
25105 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetNamedIndicator");
25108 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25110 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25111 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25112 "%d (xkb-GetNamedIndicator)", sequence_number
);
25114 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25116 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_indicator
, tvb
, *offsetp
, 4, byte_order
);
25118 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_found
, tvb
, *offsetp
, 1, byte_order
);
25120 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_on
, tvb
, *offsetp
, 1, byte_order
);
25122 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_realIndicator
, tvb
, *offsetp
, 1, byte_order
);
25124 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_ndx
, tvb
, *offsetp
, 1, byte_order
);
25127 static int* const map_flags_bits
[] = {
25128 &hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_LEDDrivesKB
,
25129 &hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_NoAutomatic
,
25130 &hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_NoExplicit
,
25133 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_flags
, ett_x11_rectangle
, map_flags_bits
, byte_order
);
25137 static int* const map_whichGroups_bits
[] = {
25138 &hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseBase
,
25139 &hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseLatched
,
25140 &hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseLocked
,
25141 &hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseEffective
,
25142 &hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseCompat
,
25145 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups
, ett_x11_rectangle
, map_whichGroups_bits
, byte_order
);
25149 static int* const map_groups_bits
[] = {
25150 &hf_x11_xkb_GetNamedIndicator_reply_map_groups_mask_Any
,
25153 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_groups
, ett_x11_rectangle
, map_groups_bits
, byte_order
);
25157 static int* const map_whichMods_bits
[] = {
25158 &hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseBase
,
25159 &hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseLatched
,
25160 &hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseLocked
,
25161 &hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseEffective
,
25162 &hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseCompat
,
25165 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods
, ett_x11_rectangle
, map_whichMods_bits
, byte_order
);
25169 static int* const map_mods_bits
[] = {
25170 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Shift
,
25171 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Lock
,
25172 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Control
,
25173 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_1
,
25174 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_2
,
25175 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_3
,
25176 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_4
,
25177 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_5
,
25178 &hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Any
,
25181 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_mods
, ett_x11_rectangle
, map_mods_bits
, byte_order
);
25185 static int* const map_realMods_bits
[] = {
25186 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Shift
,
25187 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Lock
,
25188 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Control
,
25189 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_1
,
25190 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_2
,
25191 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_3
,
25192 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_4
,
25193 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_5
,
25194 &hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Any
,
25197 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_realMods
, ett_x11_rectangle
, map_realMods_bits
, byte_order
);
25201 static int* const map_vmod_bits
[] = {
25202 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_0
,
25203 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_1
,
25204 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_2
,
25205 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_3
,
25206 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_4
,
25207 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_5
,
25208 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_6
,
25209 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_7
,
25210 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_8
,
25211 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_9
,
25212 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_10
,
25213 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_11
,
25214 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_12
,
25215 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_13
,
25216 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_14
,
25217 &hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_15
,
25220 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_vmod
, ett_x11_rectangle
, map_vmod_bits
, byte_order
);
25224 static int* const map_ctrls_bits
[] = {
25225 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_RepeatKeys
,
25226 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_SlowKeys
,
25227 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_BounceKeys
,
25228 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_StickyKeys
,
25229 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_MouseKeys
,
25230 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_MouseKeysAccel
,
25231 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXKeys
,
25232 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXTimeoutMask
,
25233 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXFeedbackMask
,
25234 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AudibleBellMask
,
25235 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_Overlay1Mask
,
25236 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_Overlay2Mask
,
25237 &hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_IgnoreGroupLockMask
,
25240 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls
, ett_x11_rectangle
, map_ctrls_bits
, byte_order
);
25243 proto_tree_add_item(t
, hf_x11_xkb_GetNamedIndicator_reply_supported
, tvb
, *offsetp
, 1, byte_order
);
25245 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
25249 static void xkbSetNamedIndicator(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25251 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25253 field16(tvb
, offsetp
, t
, hf_x11_xkb_SetNamedIndicator_ledClass
, byte_order
);
25254 field16(tvb
, offsetp
, t
, hf_x11_xkb_SetNamedIndicator_ledID
, byte_order
);
25255 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25257 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_indicator
, tvb
, *offsetp
, 4, byte_order
);
25259 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_setState
, tvb
, *offsetp
, 1, byte_order
);
25261 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_on
, tvb
, *offsetp
, 1, byte_order
);
25263 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_setMap
, tvb
, *offsetp
, 1, byte_order
);
25265 proto_tree_add_item(t
, hf_x11_xkb_SetNamedIndicator_createMap
, tvb
, *offsetp
, 1, byte_order
);
25267 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
25270 static int* const map_flags_bits
[] = {
25271 &hf_x11_xkb_SetNamedIndicator_map_flags_mask_LEDDrivesKB
,
25272 &hf_x11_xkb_SetNamedIndicator_map_flags_mask_NoAutomatic
,
25273 &hf_x11_xkb_SetNamedIndicator_map_flags_mask_NoExplicit
,
25276 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_flags
, ett_x11_rectangle
, map_flags_bits
, byte_order
);
25280 static int* const map_whichGroups_bits
[] = {
25281 &hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseBase
,
25282 &hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseLatched
,
25283 &hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseLocked
,
25284 &hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseEffective
,
25285 &hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseCompat
,
25288 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_whichGroups
, ett_x11_rectangle
, map_whichGroups_bits
, byte_order
);
25292 static int* const map_groups_bits
[] = {
25293 &hf_x11_xkb_SetNamedIndicator_map_groups_mask_Any
,
25296 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_groups
, ett_x11_rectangle
, map_groups_bits
, byte_order
);
25300 static int* const map_whichMods_bits
[] = {
25301 &hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseBase
,
25302 &hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseLatched
,
25303 &hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseLocked
,
25304 &hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseEffective
,
25305 &hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseCompat
,
25308 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_whichMods
, ett_x11_rectangle
, map_whichMods_bits
, byte_order
);
25312 static int* const map_realMods_bits
[] = {
25313 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Shift
,
25314 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Lock
,
25315 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Control
,
25316 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_1
,
25317 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_2
,
25318 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_3
,
25319 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_4
,
25320 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_5
,
25321 &hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Any
,
25324 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_realMods
, ett_x11_rectangle
, map_realMods_bits
, byte_order
);
25328 static int* const map_vmods_bits
[] = {
25329 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_0
,
25330 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_1
,
25331 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_2
,
25332 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_3
,
25333 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_4
,
25334 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_5
,
25335 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_6
,
25336 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_7
,
25337 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_8
,
25338 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_9
,
25339 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_10
,
25340 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_11
,
25341 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_12
,
25342 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_13
,
25343 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_14
,
25344 &hf_x11_xkb_SetNamedIndicator_map_vmods_mask_15
,
25347 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_vmods
, ett_x11_rectangle
, map_vmods_bits
, byte_order
);
25351 static int* const map_ctrls_bits
[] = {
25352 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_RepeatKeys
,
25353 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_SlowKeys
,
25354 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_BounceKeys
,
25355 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_StickyKeys
,
25356 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_MouseKeys
,
25357 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_MouseKeysAccel
,
25358 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXKeys
,
25359 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXTimeoutMask
,
25360 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXFeedbackMask
,
25361 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AudibleBellMask
,
25362 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_Overlay1Mask
,
25363 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_Overlay2Mask
,
25364 &hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_IgnoreGroupLockMask
,
25367 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNamedIndicator_map_ctrls
, ett_x11_rectangle
, map_ctrls_bits
, byte_order
);
25372 static void xkbGetNames(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25374 proto_tree_add_item(t
, hf_x11_xkb_GetNames_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25376 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25379 static int* const which_bits
[] = {
25380 &hf_x11_xkb_GetNames_which_mask_Keycodes
,
25381 &hf_x11_xkb_GetNames_which_mask_Geometry
,
25382 &hf_x11_xkb_GetNames_which_mask_Symbols
,
25383 &hf_x11_xkb_GetNames_which_mask_PhysSymbols
,
25384 &hf_x11_xkb_GetNames_which_mask_Types
,
25385 &hf_x11_xkb_GetNames_which_mask_Compat
,
25386 &hf_x11_xkb_GetNames_which_mask_KeyTypeNames
,
25387 &hf_x11_xkb_GetNames_which_mask_KTLevelNames
,
25388 &hf_x11_xkb_GetNames_which_mask_IndicatorNames
,
25389 &hf_x11_xkb_GetNames_which_mask_KeyNames
,
25390 &hf_x11_xkb_GetNames_which_mask_KeyAliases
,
25391 &hf_x11_xkb_GetNames_which_mask_VirtualModNames
,
25392 &hf_x11_xkb_GetNames_which_mask_GroupNames
,
25393 &hf_x11_xkb_GetNames_which_mask_RGNames
,
25396 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNames_which
, ett_x11_rectangle
, which_bits
, byte_order
);
25400 static void xkbGetNames_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25402 int sequence_number
;
25409 int f_nRadioGroups
;
25412 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetNames");
25415 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25417 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25418 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25419 "%d (xkb-GetNames)", sequence_number
);
25421 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25423 f_which
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25425 static int* const which_bits
[] = {
25426 &hf_x11_xkb_GetNames_reply_which_mask_Keycodes
,
25427 &hf_x11_xkb_GetNames_reply_which_mask_Geometry
,
25428 &hf_x11_xkb_GetNames_reply_which_mask_Symbols
,
25429 &hf_x11_xkb_GetNames_reply_which_mask_PhysSymbols
,
25430 &hf_x11_xkb_GetNames_reply_which_mask_Types
,
25431 &hf_x11_xkb_GetNames_reply_which_mask_Compat
,
25432 &hf_x11_xkb_GetNames_reply_which_mask_KeyTypeNames
,
25433 &hf_x11_xkb_GetNames_reply_which_mask_KTLevelNames
,
25434 &hf_x11_xkb_GetNames_reply_which_mask_IndicatorNames
,
25435 &hf_x11_xkb_GetNames_reply_which_mask_KeyNames
,
25436 &hf_x11_xkb_GetNames_reply_which_mask_KeyAliases
,
25437 &hf_x11_xkb_GetNames_reply_which_mask_VirtualModNames
,
25438 &hf_x11_xkb_GetNames_reply_which_mask_GroupNames
,
25439 &hf_x11_xkb_GetNames_reply_which_mask_RGNames
,
25442 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNames_reply_which
, ett_x11_rectangle
, which_bits
, byte_order
);
25445 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_minKeyCode
, tvb
, *offsetp
, 1, byte_order
);
25447 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_maxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
25449 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
25450 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_nTypes
, tvb
, *offsetp
, 1, byte_order
);
25452 f_groupNames
= tvb_get_uint8(tvb
, *offsetp
);
25454 static int* const groupNames_bits
[] = {
25455 &hf_x11_xkb_GetNames_reply_groupNames_mask_Group1
,
25456 &hf_x11_xkb_GetNames_reply_groupNames_mask_Group2
,
25457 &hf_x11_xkb_GetNames_reply_groupNames_mask_Group3
,
25458 &hf_x11_xkb_GetNames_reply_groupNames_mask_Group4
,
25461 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNames_reply_groupNames
, ett_x11_rectangle
, groupNames_bits
, byte_order
);
25464 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25466 static int* const virtualMods_bits
[] = {
25467 &hf_x11_xkb_GetNames_reply_virtualMods_mask_0
,
25468 &hf_x11_xkb_GetNames_reply_virtualMods_mask_1
,
25469 &hf_x11_xkb_GetNames_reply_virtualMods_mask_2
,
25470 &hf_x11_xkb_GetNames_reply_virtualMods_mask_3
,
25471 &hf_x11_xkb_GetNames_reply_virtualMods_mask_4
,
25472 &hf_x11_xkb_GetNames_reply_virtualMods_mask_5
,
25473 &hf_x11_xkb_GetNames_reply_virtualMods_mask_6
,
25474 &hf_x11_xkb_GetNames_reply_virtualMods_mask_7
,
25475 &hf_x11_xkb_GetNames_reply_virtualMods_mask_8
,
25476 &hf_x11_xkb_GetNames_reply_virtualMods_mask_9
,
25477 &hf_x11_xkb_GetNames_reply_virtualMods_mask_10
,
25478 &hf_x11_xkb_GetNames_reply_virtualMods_mask_11
,
25479 &hf_x11_xkb_GetNames_reply_virtualMods_mask_12
,
25480 &hf_x11_xkb_GetNames_reply_virtualMods_mask_13
,
25481 &hf_x11_xkb_GetNames_reply_virtualMods_mask_14
,
25482 &hf_x11_xkb_GetNames_reply_virtualMods_mask_15
,
25485 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetNames_reply_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
25488 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_firstKey
, tvb
, *offsetp
, 1, byte_order
);
25490 f_nKeys
= tvb_get_uint8(tvb
, *offsetp
);
25491 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_nKeys
, tvb
, *offsetp
, 1, byte_order
);
25493 f_indicators
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25494 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_indicators
, tvb
, *offsetp
, 4, byte_order
);
25496 f_nRadioGroups
= tvb_get_uint8(tvb
, *offsetp
);
25497 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_nRadioGroups
, tvb
, *offsetp
, 1, byte_order
);
25499 f_nKeyAliases
= tvb_get_uint8(tvb
, *offsetp
);
25500 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_nKeyAliases
, tvb
, *offsetp
, 1, byte_order
);
25502 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_nKTLevels
, tvb
, *offsetp
, 2, byte_order
);
25504 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
25506 if (f_which
& (1U << 0)) {
25507 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_Keycodes_keycodesName
, tvb
, *offsetp
, 4, byte_order
);
25510 if (f_which
& (1U << 1)) {
25511 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_Geometry_geometryName
, tvb
, *offsetp
, 4, byte_order
);
25514 if (f_which
& (1U << 2)) {
25515 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_Symbols_symbolsName
, tvb
, *offsetp
, 4, byte_order
);
25518 if (f_which
& (1U << 3)) {
25519 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_PhysSymbols_physSymbolsName
, tvb
, *offsetp
, 4, byte_order
);
25522 if (f_which
& (1U << 4)) {
25523 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_Types_typesName
, tvb
, *offsetp
, 4, byte_order
);
25526 if (f_which
& (1U << 5)) {
25527 proto_tree_add_item(t
, hf_x11_xkb_GetNames_reply_Compat_compatName
, tvb
, *offsetp
, 4, byte_order
);
25530 if (f_which
& (1U << 6)) {
25531 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_KeyTypeNames_typeNames
, hf_x11_xkb_GetNames_reply_KeyTypeNames_typeNames_item
, f_nTypes
, byte_order
);
25533 if (f_which
& (1U << 7)) {
25534 int sumof_nLevelsPerType
= 0;
25537 for (i
= 0; i
< f_nTypes
; i
++) {
25538 sumof_nLevelsPerType
+= tvb_get_uint8(tvb
, *offsetp
+ i
* 1);
25541 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_KTLevelNames_nLevelsPerType
, f_nTypes
, byte_order
);
25542 if (*offsetp
% 4) {
25543 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
25544 *offsetp
+= (4 - *offsetp
% 4);
25546 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_KTLevelNames_ktLevelNames
, hf_x11_xkb_GetNames_reply_KTLevelNames_ktLevelNames_item
, sumof_nLevelsPerType
, byte_order
);
25548 if (f_which
& (1U << 8)) {
25549 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_IndicatorNames_indicatorNames
, hf_x11_xkb_GetNames_reply_IndicatorNames_indicatorNames_item
, ws_count_ones(f_indicators
), byte_order
);
25551 if (f_which
& (1U << 11)) {
25552 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_VirtualModNames_virtualModNames
, hf_x11_xkb_GetNames_reply_VirtualModNames_virtualModNames_item
, ws_count_ones(f_virtualMods
), byte_order
);
25554 if (f_which
& (1U << 12)) {
25555 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_GroupNames_groups
, hf_x11_xkb_GetNames_reply_GroupNames_groups_item
, ws_count_ones(f_groupNames
), byte_order
);
25557 if (f_which
& (1U << 9)) {
25558 struct_xkb_KeyName(tvb
, offsetp
, t
, byte_order
, f_nKeys
);
25560 if (f_which
& (1U << 10)) {
25561 struct_xkb_KeyAlias(tvb
, offsetp
, t
, byte_order
, f_nKeyAliases
);
25563 if (f_which
& (1U << 13)) {
25564 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetNames_reply_RGNames_radioGroupNames
, hf_x11_xkb_GetNames_reply_RGNames_radioGroupNames_item
, f_nRadioGroups
, byte_order
);
25568 static void xkbSetNames(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25575 int f_nRadioGroups
;
25578 proto_tree_add_item(t
, hf_x11_xkb_SetNames_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25580 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25582 static int* const virtualMods_bits
[] = {
25583 &hf_x11_xkb_SetNames_virtualMods_mask_0
,
25584 &hf_x11_xkb_SetNames_virtualMods_mask_1
,
25585 &hf_x11_xkb_SetNames_virtualMods_mask_2
,
25586 &hf_x11_xkb_SetNames_virtualMods_mask_3
,
25587 &hf_x11_xkb_SetNames_virtualMods_mask_4
,
25588 &hf_x11_xkb_SetNames_virtualMods_mask_5
,
25589 &hf_x11_xkb_SetNames_virtualMods_mask_6
,
25590 &hf_x11_xkb_SetNames_virtualMods_mask_7
,
25591 &hf_x11_xkb_SetNames_virtualMods_mask_8
,
25592 &hf_x11_xkb_SetNames_virtualMods_mask_9
,
25593 &hf_x11_xkb_SetNames_virtualMods_mask_10
,
25594 &hf_x11_xkb_SetNames_virtualMods_mask_11
,
25595 &hf_x11_xkb_SetNames_virtualMods_mask_12
,
25596 &hf_x11_xkb_SetNames_virtualMods_mask_13
,
25597 &hf_x11_xkb_SetNames_virtualMods_mask_14
,
25598 &hf_x11_xkb_SetNames_virtualMods_mask_15
,
25601 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNames_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
25604 f_which
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25606 static int* const which_bits
[] = {
25607 &hf_x11_xkb_SetNames_which_mask_Keycodes
,
25608 &hf_x11_xkb_SetNames_which_mask_Geometry
,
25609 &hf_x11_xkb_SetNames_which_mask_Symbols
,
25610 &hf_x11_xkb_SetNames_which_mask_PhysSymbols
,
25611 &hf_x11_xkb_SetNames_which_mask_Types
,
25612 &hf_x11_xkb_SetNames_which_mask_Compat
,
25613 &hf_x11_xkb_SetNames_which_mask_KeyTypeNames
,
25614 &hf_x11_xkb_SetNames_which_mask_KTLevelNames
,
25615 &hf_x11_xkb_SetNames_which_mask_IndicatorNames
,
25616 &hf_x11_xkb_SetNames_which_mask_KeyNames
,
25617 &hf_x11_xkb_SetNames_which_mask_KeyAliases
,
25618 &hf_x11_xkb_SetNames_which_mask_VirtualModNames
,
25619 &hf_x11_xkb_SetNames_which_mask_GroupNames
,
25620 &hf_x11_xkb_SetNames_which_mask_RGNames
,
25623 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNames_which
, ett_x11_rectangle
, which_bits
, byte_order
);
25626 proto_tree_add_item(t
, hf_x11_xkb_SetNames_firstType
, tvb
, *offsetp
, 1, byte_order
);
25628 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
25629 proto_tree_add_item(t
, hf_x11_xkb_SetNames_nTypes
, tvb
, *offsetp
, 1, byte_order
);
25631 proto_tree_add_item(t
, hf_x11_xkb_SetNames_firstKTLevelt
, tvb
, *offsetp
, 1, byte_order
);
25633 proto_tree_add_item(t
, hf_x11_xkb_SetNames_nKTLevels
, tvb
, *offsetp
, 1, byte_order
);
25635 f_indicators
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
25636 proto_tree_add_item(t
, hf_x11_xkb_SetNames_indicators
, tvb
, *offsetp
, 4, byte_order
);
25638 f_groupNames
= tvb_get_uint8(tvb
, *offsetp
);
25640 static int* const groupNames_bits
[] = {
25641 &hf_x11_xkb_SetNames_groupNames_mask_Group1
,
25642 &hf_x11_xkb_SetNames_groupNames_mask_Group2
,
25643 &hf_x11_xkb_SetNames_groupNames_mask_Group3
,
25644 &hf_x11_xkb_SetNames_groupNames_mask_Group4
,
25647 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetNames_groupNames
, ett_x11_rectangle
, groupNames_bits
, byte_order
);
25650 f_nRadioGroups
= tvb_get_uint8(tvb
, *offsetp
);
25651 proto_tree_add_item(t
, hf_x11_xkb_SetNames_nRadioGroups
, tvb
, *offsetp
, 1, byte_order
);
25653 proto_tree_add_item(t
, hf_x11_xkb_SetNames_firstKey
, tvb
, *offsetp
, 1, byte_order
);
25655 f_nKeys
= tvb_get_uint8(tvb
, *offsetp
);
25656 proto_tree_add_item(t
, hf_x11_xkb_SetNames_nKeys
, tvb
, *offsetp
, 1, byte_order
);
25658 f_nKeyAliases
= tvb_get_uint8(tvb
, *offsetp
);
25659 proto_tree_add_item(t
, hf_x11_xkb_SetNames_nKeyAliases
, tvb
, *offsetp
, 1, byte_order
);
25661 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
25663 proto_tree_add_item(t
, hf_x11_xkb_SetNames_totalKTLevelNames
, tvb
, *offsetp
, 2, byte_order
);
25665 if (f_which
& (1U << 0)) {
25666 proto_tree_add_item(t
, hf_x11_xkb_SetNames_Keycodes_keycodesName
, tvb
, *offsetp
, 4, byte_order
);
25669 if (f_which
& (1U << 1)) {
25670 proto_tree_add_item(t
, hf_x11_xkb_SetNames_Geometry_geometryName
, tvb
, *offsetp
, 4, byte_order
);
25673 if (f_which
& (1U << 2)) {
25674 proto_tree_add_item(t
, hf_x11_xkb_SetNames_Symbols_symbolsName
, tvb
, *offsetp
, 4, byte_order
);
25677 if (f_which
& (1U << 3)) {
25678 proto_tree_add_item(t
, hf_x11_xkb_SetNames_PhysSymbols_physSymbolsName
, tvb
, *offsetp
, 4, byte_order
);
25681 if (f_which
& (1U << 4)) {
25682 proto_tree_add_item(t
, hf_x11_xkb_SetNames_Types_typesName
, tvb
, *offsetp
, 4, byte_order
);
25685 if (f_which
& (1U << 5)) {
25686 proto_tree_add_item(t
, hf_x11_xkb_SetNames_Compat_compatName
, tvb
, *offsetp
, 4, byte_order
);
25689 if (f_which
& (1U << 6)) {
25690 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_KeyTypeNames_typeNames
, hf_x11_xkb_SetNames_KeyTypeNames_typeNames_item
, f_nTypes
, byte_order
);
25691 length
-= f_nTypes
* 4;
25693 if (f_which
& (1U << 7)) {
25694 int sumof_nLevelsPerType
= 0;
25697 for (i
= 0; i
< f_nTypes
; i
++) {
25698 sumof_nLevelsPerType
+= tvb_get_uint8(tvb
, *offsetp
+ i
* 1);
25701 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_KTLevelNames_nLevelsPerType
, f_nTypes
, byte_order
);
25702 length
-= f_nTypes
* 1;
25703 if (*offsetp
% 4) {
25704 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
25705 *offsetp
+= (4 - *offsetp
% 4);
25707 length
= ((length
+ 3) & ~3);
25708 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_KTLevelNames_ktLevelNames
, hf_x11_xkb_SetNames_KTLevelNames_ktLevelNames_item
, sumof_nLevelsPerType
, byte_order
);
25709 length
-= sumof_nLevelsPerType
* 4;
25711 if (f_which
& (1U << 8)) {
25712 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_IndicatorNames_indicatorNames
, hf_x11_xkb_SetNames_IndicatorNames_indicatorNames_item
, ws_count_ones(f_indicators
), byte_order
);
25713 length
-= ws_count_ones(f_indicators
) * 4;
25715 if (f_which
& (1U << 11)) {
25716 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_VirtualModNames_virtualModNames
, hf_x11_xkb_SetNames_VirtualModNames_virtualModNames_item
, ws_count_ones(f_virtualMods
), byte_order
);
25717 length
-= ws_count_ones(f_virtualMods
) * 4;
25719 if (f_which
& (1U << 12)) {
25720 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_GroupNames_groups
, hf_x11_xkb_SetNames_GroupNames_groups_item
, ws_count_ones(f_groupNames
), byte_order
);
25721 length
-= ws_count_ones(f_groupNames
) * 4;
25723 if (f_which
& (1U << 9)) {
25724 struct_xkb_KeyName(tvb
, offsetp
, t
, byte_order
, f_nKeys
);
25725 length
-= f_nKeys
* 4;
25727 if (f_which
& (1U << 10)) {
25728 struct_xkb_KeyAlias(tvb
, offsetp
, t
, byte_order
, f_nKeyAliases
);
25729 length
-= f_nKeyAliases
* 8;
25731 if (f_which
& (1U << 13)) {
25732 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_SetNames_RGNames_radioGroupNames
, hf_x11_xkb_SetNames_RGNames_radioGroupNames_item
, f_nRadioGroups
, byte_order
);
25733 length
-= f_nRadioGroups
* 4;
25737 static void xkbPerClientFlags(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25739 proto_tree_add_item(t
, hf_x11_xkb_PerClientFlags_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25741 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
25744 static int* const change_bits
[] = {
25745 &hf_x11_xkb_PerClientFlags_change_mask_DetectableAutoRepeat
,
25746 &hf_x11_xkb_PerClientFlags_change_mask_GrabsUseXKBState
,
25747 &hf_x11_xkb_PerClientFlags_change_mask_AutoResetControls
,
25748 &hf_x11_xkb_PerClientFlags_change_mask_LookupStateWhenGrabbed
,
25749 &hf_x11_xkb_PerClientFlags_change_mask_SendEventUsesXKBState
,
25752 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_change
, ett_x11_rectangle
, change_bits
, byte_order
);
25756 static int* const value_bits
[] = {
25757 &hf_x11_xkb_PerClientFlags_value_mask_DetectableAutoRepeat
,
25758 &hf_x11_xkb_PerClientFlags_value_mask_GrabsUseXKBState
,
25759 &hf_x11_xkb_PerClientFlags_value_mask_AutoResetControls
,
25760 &hf_x11_xkb_PerClientFlags_value_mask_LookupStateWhenGrabbed
,
25761 &hf_x11_xkb_PerClientFlags_value_mask_SendEventUsesXKBState
,
25764 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_value
, ett_x11_rectangle
, value_bits
, byte_order
);
25768 static int* const ctrlsToChange_bits
[] = {
25769 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_RepeatKeys
,
25770 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_SlowKeys
,
25771 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_BounceKeys
,
25772 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_StickyKeys
,
25773 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_MouseKeys
,
25774 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_MouseKeysAccel
,
25775 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXKeys
,
25776 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXTimeoutMask
,
25777 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXFeedbackMask
,
25778 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AudibleBellMask
,
25779 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_Overlay1Mask
,
25780 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_Overlay2Mask
,
25781 &hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_IgnoreGroupLockMask
,
25784 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_ctrlsToChange
, ett_x11_rectangle
, ctrlsToChange_bits
, byte_order
);
25788 static int* const autoCtrls_bits
[] = {
25789 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_RepeatKeys
,
25790 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_SlowKeys
,
25791 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_BounceKeys
,
25792 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_StickyKeys
,
25793 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_MouseKeys
,
25794 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_MouseKeysAccel
,
25795 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXKeys
,
25796 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXTimeoutMask
,
25797 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXFeedbackMask
,
25798 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_AudibleBellMask
,
25799 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_Overlay1Mask
,
25800 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_Overlay2Mask
,
25801 &hf_x11_xkb_PerClientFlags_autoCtrls_mask_IgnoreGroupLockMask
,
25804 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_autoCtrls
, ett_x11_rectangle
, autoCtrls_bits
, byte_order
);
25808 static int* const autoCtrlsValues_bits
[] = {
25809 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_RepeatKeys
,
25810 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_SlowKeys
,
25811 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_BounceKeys
,
25812 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_StickyKeys
,
25813 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_MouseKeys
,
25814 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_MouseKeysAccel
,
25815 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXKeys
,
25816 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXTimeoutMask
,
25817 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXFeedbackMask
,
25818 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AudibleBellMask
,
25819 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_Overlay1Mask
,
25820 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_Overlay2Mask
,
25821 &hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_IgnoreGroupLockMask
,
25824 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_autoCtrlsValues
, ett_x11_rectangle
, autoCtrlsValues_bits
, byte_order
);
25828 static void xkbPerClientFlags_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25830 int sequence_number
;
25832 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PerClientFlags");
25835 proto_tree_add_item(t
, hf_x11_xkb_PerClientFlags_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25837 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25838 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25839 "%d (xkb-PerClientFlags)", sequence_number
);
25841 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25844 static int* const supported_bits
[] = {
25845 &hf_x11_xkb_PerClientFlags_reply_supported_mask_DetectableAutoRepeat
,
25846 &hf_x11_xkb_PerClientFlags_reply_supported_mask_GrabsUseXKBState
,
25847 &hf_x11_xkb_PerClientFlags_reply_supported_mask_AutoResetControls
,
25848 &hf_x11_xkb_PerClientFlags_reply_supported_mask_LookupStateWhenGrabbed
,
25849 &hf_x11_xkb_PerClientFlags_reply_supported_mask_SendEventUsesXKBState
,
25852 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_reply_supported
, ett_x11_rectangle
, supported_bits
, byte_order
);
25856 static int* const value_bits
[] = {
25857 &hf_x11_xkb_PerClientFlags_reply_value_mask_DetectableAutoRepeat
,
25858 &hf_x11_xkb_PerClientFlags_reply_value_mask_GrabsUseXKBState
,
25859 &hf_x11_xkb_PerClientFlags_reply_value_mask_AutoResetControls
,
25860 &hf_x11_xkb_PerClientFlags_reply_value_mask_LookupStateWhenGrabbed
,
25861 &hf_x11_xkb_PerClientFlags_reply_value_mask_SendEventUsesXKBState
,
25864 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_reply_value
, ett_x11_rectangle
, value_bits
, byte_order
);
25868 static int* const autoCtrls_bits
[] = {
25869 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_RepeatKeys
,
25870 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_SlowKeys
,
25871 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_BounceKeys
,
25872 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_StickyKeys
,
25873 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_MouseKeys
,
25874 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_MouseKeysAccel
,
25875 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXKeys
,
25876 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXTimeoutMask
,
25877 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXFeedbackMask
,
25878 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AudibleBellMask
,
25879 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_Overlay1Mask
,
25880 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_Overlay2Mask
,
25881 &hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_IgnoreGroupLockMask
,
25884 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_reply_autoCtrls
, ett_x11_rectangle
, autoCtrls_bits
, byte_order
);
25888 static int* const autoCtrlsValues_bits
[] = {
25889 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_RepeatKeys
,
25890 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_SlowKeys
,
25891 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_BounceKeys
,
25892 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_StickyKeys
,
25893 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_MouseKeys
,
25894 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_MouseKeysAccel
,
25895 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXKeys
,
25896 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXTimeoutMask
,
25897 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXFeedbackMask
,
25898 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AudibleBellMask
,
25899 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_Overlay1Mask
,
25900 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_Overlay2Mask
,
25901 &hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_IgnoreGroupLockMask
,
25904 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues
, ett_x11_rectangle
, autoCtrlsValues_bits
, byte_order
);
25907 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
25911 static void xkbListComponents(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25913 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25915 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_maxNames
, tvb
, *offsetp
, 2, byte_order
);
25918 static void xkbListComponents_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
25920 int sequence_number
;
25928 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListComponents");
25931 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
25933 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25934 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
25935 "%d (xkb-ListComponents)", sequence_number
);
25937 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
25939 f_nKeymaps
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25940 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nKeymaps
, tvb
, *offsetp
, 2, byte_order
);
25942 f_nKeycodes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25943 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nKeycodes
, tvb
, *offsetp
, 2, byte_order
);
25945 f_nTypes
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25946 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nTypes
, tvb
, *offsetp
, 2, byte_order
);
25948 f_nCompatMaps
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25949 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nCompatMaps
, tvb
, *offsetp
, 2, byte_order
);
25951 f_nSymbols
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25952 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nSymbols
, tvb
, *offsetp
, 2, byte_order
);
25954 f_nGeometries
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
25955 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_nGeometries
, tvb
, *offsetp
, 2, byte_order
);
25957 proto_tree_add_item(t
, hf_x11_xkb_ListComponents_reply_extra
, tvb
, *offsetp
, 2, byte_order
);
25959 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 10, ENC_NA
);
25961 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nKeymaps
);
25962 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nKeycodes
);
25963 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nTypes
);
25964 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nCompatMaps
);
25965 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nSymbols
);
25966 struct_xkb_Listing(tvb
, offsetp
, t
, byte_order
, f_nGeometries
);
25969 static void xkbGetKbdByName(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
25971 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
25974 static int* const need_bits
[] = {
25975 &hf_x11_xkb_GetKbdByName_need_mask_Types
,
25976 &hf_x11_xkb_GetKbdByName_need_mask_CompatMap
,
25977 &hf_x11_xkb_GetKbdByName_need_mask_ClientSymbols
,
25978 &hf_x11_xkb_GetKbdByName_need_mask_ServerSymbols
,
25979 &hf_x11_xkb_GetKbdByName_need_mask_IndicatorMaps
,
25980 &hf_x11_xkb_GetKbdByName_need_mask_KeyNames
,
25981 &hf_x11_xkb_GetKbdByName_need_mask_Geometry
,
25982 &hf_x11_xkb_GetKbdByName_need_mask_OtherNames
,
25985 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_need
, ett_x11_rectangle
, need_bits
, byte_order
);
25989 static int* const want_bits
[] = {
25990 &hf_x11_xkb_GetKbdByName_want_mask_Types
,
25991 &hf_x11_xkb_GetKbdByName_want_mask_CompatMap
,
25992 &hf_x11_xkb_GetKbdByName_want_mask_ClientSymbols
,
25993 &hf_x11_xkb_GetKbdByName_want_mask_ServerSymbols
,
25994 &hf_x11_xkb_GetKbdByName_want_mask_IndicatorMaps
,
25995 &hf_x11_xkb_GetKbdByName_want_mask_KeyNames
,
25996 &hf_x11_xkb_GetKbdByName_want_mask_Geometry
,
25997 &hf_x11_xkb_GetKbdByName_want_mask_OtherNames
,
26000 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_want
, ett_x11_rectangle
, want_bits
, byte_order
);
26003 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_load
, tvb
, *offsetp
, 1, byte_order
);
26005 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26008 static void xkbGetKbdByName_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26010 int sequence_number
;
26013 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetKbdByName");
26016 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
26018 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26019 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
26020 "%d (xkb-GetKbdByName)", sequence_number
);
26022 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
26024 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_minKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26026 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_maxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26028 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_loaded
, tvb
, *offsetp
, 1, byte_order
);
26030 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_newKeyboard
, tvb
, *offsetp
, 1, byte_order
);
26033 static int* const found_bits
[] = {
26034 &hf_x11_xkb_GetKbdByName_reply_found_mask_Types
,
26035 &hf_x11_xkb_GetKbdByName_reply_found_mask_CompatMap
,
26036 &hf_x11_xkb_GetKbdByName_reply_found_mask_ClientSymbols
,
26037 &hf_x11_xkb_GetKbdByName_reply_found_mask_ServerSymbols
,
26038 &hf_x11_xkb_GetKbdByName_reply_found_mask_IndicatorMaps
,
26039 &hf_x11_xkb_GetKbdByName_reply_found_mask_KeyNames
,
26040 &hf_x11_xkb_GetKbdByName_reply_found_mask_Geometry
,
26041 &hf_x11_xkb_GetKbdByName_reply_found_mask_OtherNames
,
26044 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_found
, ett_x11_rectangle
, found_bits
, byte_order
);
26047 f_reported
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26049 static int* const reported_bits
[] = {
26050 &hf_x11_xkb_GetKbdByName_reply_reported_mask_Types
,
26051 &hf_x11_xkb_GetKbdByName_reply_reported_mask_CompatMap
,
26052 &hf_x11_xkb_GetKbdByName_reply_reported_mask_ClientSymbols
,
26053 &hf_x11_xkb_GetKbdByName_reply_reported_mask_ServerSymbols
,
26054 &hf_x11_xkb_GetKbdByName_reply_reported_mask_IndicatorMaps
,
26055 &hf_x11_xkb_GetKbdByName_reply_reported_mask_KeyNames
,
26056 &hf_x11_xkb_GetKbdByName_reply_reported_mask_Geometry
,
26057 &hf_x11_xkb_GetKbdByName_reply_reported_mask_OtherNames
,
26060 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_reported
, ett_x11_rectangle
, reported_bits
, byte_order
);
26063 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
26065 if ((f_reported
& (1U << 0)) || (f_reported
& (1U << 2)) || (f_reported
& (1U << 3))) {
26069 int f_totalActions
;
26071 int f_totalKeyBehaviors
;
26072 int f_totalKeyExplicit
;
26073 int f_totalModMapKeys
;
26074 int f_totalVModMapKeys
;
26076 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_getmap_type
, tvb
, *offsetp
, 1, byte_order
);
26078 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_typeDeviceID
, tvb
, *offsetp
, 1, byte_order
);
26080 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_getmap_sequence
, tvb
, *offsetp
, 2, byte_order
);
26082 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_getmap_length
, tvb
, *offsetp
, 4, byte_order
);
26084 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
26086 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_typeMinKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26088 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_typeMaxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26090 f_present
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26092 static int* const present_bits
[] = {
26093 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_KeyTypes
,
26094 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_KeySyms
,
26095 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_ModifierMap
,
26096 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_ExplicitComponents
,
26097 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_KeyActions
,
26098 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_KeyBehaviors
,
26099 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_VirtualMods
,
26100 &hf_x11_xkb_GetKbdByName_reply_Types_present_mask_VirtualModMap
,
26103 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_Types_present
, ett_x11_rectangle
, present_bits
, byte_order
);
26106 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstType
, tvb
, *offsetp
, 1, byte_order
);
26108 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
26109 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nTypes
, tvb
, *offsetp
, 1, byte_order
);
26111 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalTypes
, tvb
, *offsetp
, 1, byte_order
);
26113 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstKeySym
, tvb
, *offsetp
, 1, byte_order
);
26115 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalSyms
, tvb
, *offsetp
, 2, byte_order
);
26117 f_nKeySyms
= tvb_get_uint8(tvb
, *offsetp
);
26118 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nKeySyms
, tvb
, *offsetp
, 1, byte_order
);
26120 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyAction
, tvb
, *offsetp
, 1, byte_order
);
26122 f_totalActions
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26123 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalActions
, tvb
, *offsetp
, 2, byte_order
);
26125 f_nKeyActions
= tvb_get_uint8(tvb
, *offsetp
);
26126 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nKeyActions
, tvb
, *offsetp
, 1, byte_order
);
26128 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
26130 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
26132 f_totalKeyBehaviors
= tvb_get_uint8(tvb
, *offsetp
);
26133 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalKeyBehaviors
, tvb
, *offsetp
, 1, byte_order
);
26135 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
26137 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
26139 f_totalKeyExplicit
= tvb_get_uint8(tvb
, *offsetp
);
26140 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
26142 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstModMapKey
, tvb
, *offsetp
, 1, byte_order
);
26144 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26146 f_totalModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
26147 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26149 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_firstVModMapKey
, tvb
, *offsetp
, 1, byte_order
);
26151 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_nVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26153 f_totalVModMapKeys
= tvb_get_uint8(tvb
, *offsetp
);
26154 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Types_totalVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26156 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26158 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26160 static int* const virtualMods_bits
[] = {
26161 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_0
,
26162 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_1
,
26163 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_2
,
26164 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_3
,
26165 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_4
,
26166 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_5
,
26167 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_6
,
26168 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_7
,
26169 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_8
,
26170 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_9
,
26171 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_10
,
26172 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_11
,
26173 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_12
,
26174 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_13
,
26175 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_14
,
26176 &hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_15
,
26179 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
26182 if (f_present
& (1U << 0)) {
26183 struct_xkb_KeyType(tvb
, offsetp
, t
, byte_order
, f_nTypes
);
26185 if (f_present
& (1U << 1)) {
26186 struct_xkb_KeySymMap(tvb
, offsetp
, t
, byte_order
, f_nKeySyms
);
26188 if (f_present
& (1U << 4)) {
26189 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_Types_KeyActions_acts_rtrn_count
, f_nKeyActions
, byte_order
);
26190 if (*offsetp
% 4) {
26191 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26192 *offsetp
+= (4 - *offsetp
% 4);
26194 struct_xkb_Action(tvb
, offsetp
, t
, byte_order
, f_totalActions
);
26196 if (f_present
& (1U << 5)) {
26197 struct_xkb_SetBehavior(tvb
, offsetp
, t
, byte_order
, f_totalKeyBehaviors
);
26199 if (f_present
& (1U << 6)) {
26200 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_Types_VirtualMods_vmods_rtrn
, ws_count_ones(f_virtualMods
), byte_order
);
26201 if (*offsetp
% 4) {
26202 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26203 *offsetp
+= (4 - *offsetp
% 4);
26206 if (f_present
& (1U << 3)) {
26207 struct_xkb_SetExplicit(tvb
, offsetp
, t
, byte_order
, f_totalKeyExplicit
);
26208 if (*offsetp
% 4) {
26209 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26210 *offsetp
+= (4 - *offsetp
% 4);
26213 if (f_present
& (1U << 2)) {
26214 struct_xkb_KeyModMap(tvb
, offsetp
, t
, byte_order
, f_totalModMapKeys
);
26215 if (*offsetp
% 4) {
26216 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26217 *offsetp
+= (4 - *offsetp
% 4);
26220 if (f_present
& (1U << 7)) {
26221 struct_xkb_KeyVModMap(tvb
, offsetp
, t
, byte_order
, f_totalVModMapKeys
);
26224 if (f_reported
& (1U << 1)) {
26227 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_compatmap_type
, tvb
, *offsetp
, 1, byte_order
);
26229 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_compatDeviceID
, tvb
, *offsetp
, 1, byte_order
);
26231 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_compatmap_sequence
, tvb
, *offsetp
, 2, byte_order
);
26233 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_compatmap_length
, tvb
, *offsetp
, 4, byte_order
);
26235 f_groupsRtrn
= tvb_get_uint8(tvb
, *offsetp
);
26237 static int* const groupsRtrn_bits
[] = {
26238 &hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group1
,
26239 &hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group2
,
26240 &hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group3
,
26241 &hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group4
,
26244 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn
, ett_x11_rectangle
, groupsRtrn_bits
, byte_order
);
26247 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26249 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_firstSIRtrn
, tvb
, *offsetp
, 2, byte_order
);
26251 f_nSIRtrn
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26252 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_nSIRtrn
, tvb
, *offsetp
, 2, byte_order
);
26254 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_CompatMap_nTotalSI
, tvb
, *offsetp
, 2, byte_order
);
26256 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
26258 struct_xkb_SymInterpret(tvb
, offsetp
, t
, byte_order
, f_nSIRtrn
);
26259 struct_xkb_ModDef(tvb
, offsetp
, t
, byte_order
, ws_count_ones(f_groupsRtrn
));
26261 if (f_reported
& (1U << 4)) {
26263 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_indicatormap_type
, tvb
, *offsetp
, 1, byte_order
);
26265 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_indicatorDeviceID
, tvb
, *offsetp
, 1, byte_order
);
26267 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_indicatormap_sequence
, tvb
, *offsetp
, 2, byte_order
);
26269 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_indicatormap_length
, tvb
, *offsetp
, 4, byte_order
);
26271 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_which
, tvb
, *offsetp
, 4, byte_order
);
26273 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_realIndicators
, tvb
, *offsetp
, 4, byte_order
);
26275 f_nIndicators
= tvb_get_uint8(tvb
, *offsetp
);
26276 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_nIndicators
, tvb
, *offsetp
, 1, byte_order
);
26278 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 15, ENC_NA
);
26280 struct_xkb_IndicatorMap(tvb
, offsetp
, t
, byte_order
, f_nIndicators
);
26282 if ((f_reported
& (1U << 5)) || (f_reported
& (1U << 7))) {
26289 int f_nRadioGroups
;
26291 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyname_type
, tvb
, *offsetp
, 1, byte_order
);
26293 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyDeviceID
, tvb
, *offsetp
, 1, byte_order
);
26295 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyname_sequence
, tvb
, *offsetp
, 2, byte_order
);
26297 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyname_length
, tvb
, *offsetp
, 4, byte_order
);
26299 f_which
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
26301 static int* const which_bits
[] = {
26302 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Keycodes
,
26303 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Geometry
,
26304 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Symbols
,
26305 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_PhysSymbols
,
26306 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Types
,
26307 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Compat
,
26308 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyTypeNames
,
26309 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KTLevelNames
,
26310 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_IndicatorNames
,
26311 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyNames
,
26312 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyAliases
,
26313 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_VirtualModNames
,
26314 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_GroupNames
,
26315 &hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_RGNames
,
26318 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_KeyNames_which
, ett_x11_rectangle
, which_bits
, byte_order
);
26321 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyMinKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26323 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyMaxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26325 f_nTypes
= tvb_get_uint8(tvb
, *offsetp
);
26326 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_nTypes
, tvb
, *offsetp
, 1, byte_order
);
26328 f_groupNames
= tvb_get_uint8(tvb
, *offsetp
);
26330 static int* const groupNames_bits
[] = {
26331 &hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group1
,
26332 &hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group2
,
26333 &hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group3
,
26334 &hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group4
,
26337 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames
, ett_x11_rectangle
, groupNames_bits
, byte_order
);
26340 f_virtualMods
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26342 static int* const virtualMods_bits
[] = {
26343 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_0
,
26344 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_1
,
26345 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_2
,
26346 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_3
,
26347 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_4
,
26348 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_5
,
26349 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_6
,
26350 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_7
,
26351 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_8
,
26352 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_9
,
26353 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_10
,
26354 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_11
,
26355 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_12
,
26356 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_13
,
26357 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_14
,
26358 &hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_15
,
26361 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
26364 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_firstKey
, tvb
, *offsetp
, 1, byte_order
);
26366 f_nKeys
= tvb_get_uint8(tvb
, *offsetp
);
26367 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKeys
, tvb
, *offsetp
, 1, byte_order
);
26369 f_indicators
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
26370 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_indicators
, tvb
, *offsetp
, 4, byte_order
);
26372 f_nRadioGroups
= tvb_get_uint8(tvb
, *offsetp
);
26373 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_nRadioGroups
, tvb
, *offsetp
, 1, byte_order
);
26375 f_nKeyAliases
= tvb_get_uint8(tvb
, *offsetp
);
26376 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKeyAliases
, tvb
, *offsetp
, 1, byte_order
);
26378 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKTLevels
, tvb
, *offsetp
, 2, byte_order
);
26380 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
26382 if (f_which
& (1U << 0)) {
26383 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_Keycodes_keycodesName
, tvb
, *offsetp
, 4, byte_order
);
26386 if (f_which
& (1U << 1)) {
26387 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_Geometry_geometryName
, tvb
, *offsetp
, 4, byte_order
);
26390 if (f_which
& (1U << 2)) {
26391 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_Symbols_symbolsName
, tvb
, *offsetp
, 4, byte_order
);
26394 if (f_which
& (1U << 3)) {
26395 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_PhysSymbols_physSymbolsName
, tvb
, *offsetp
, 4, byte_order
);
26398 if (f_which
& (1U << 4)) {
26399 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_Types_typesName
, tvb
, *offsetp
, 4, byte_order
);
26402 if (f_which
& (1U << 5)) {
26403 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_Compat_compatName
, tvb
, *offsetp
, 4, byte_order
);
26406 if (f_which
& (1U << 6)) {
26407 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_KeyTypeNames_typeNames
, hf_x11_xkb_GetKbdByName_reply_KeyNames_KeyTypeNames_typeNames_item
, f_nTypes
, byte_order
);
26409 if (f_which
& (1U << 7)) {
26410 int sumof_nLevelsPerType
= 0;
26413 for (i
= 0; i
< f_nTypes
; i
++) {
26414 sumof_nLevelsPerType
+= tvb_get_uint8(tvb
, *offsetp
+ i
* 1);
26417 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_nLevelsPerType
, f_nTypes
, byte_order
);
26418 if (*offsetp
% 4) {
26419 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26420 *offsetp
+= (4 - *offsetp
% 4);
26422 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_ktLevelNames
, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_ktLevelNames_item
, sumof_nLevelsPerType
, byte_order
);
26424 if (f_which
& (1U << 8)) {
26425 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_IndicatorNames_indicatorNames
, hf_x11_xkb_GetKbdByName_reply_KeyNames_IndicatorNames_indicatorNames_item
, ws_count_ones(f_indicators
), byte_order
);
26427 if (f_which
& (1U << 11)) {
26428 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_VirtualModNames_virtualModNames
, hf_x11_xkb_GetKbdByName_reply_KeyNames_VirtualModNames_virtualModNames_item
, ws_count_ones(f_virtualMods
), byte_order
);
26430 if (f_which
& (1U << 12)) {
26431 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_GroupNames_groups
, hf_x11_xkb_GetKbdByName_reply_KeyNames_GroupNames_groups_item
, ws_count_ones(f_groupNames
), byte_order
);
26433 if (f_which
& (1U << 9)) {
26434 struct_xkb_KeyName(tvb
, offsetp
, t
, byte_order
, f_nKeys
);
26436 if (f_which
& (1U << 10)) {
26437 struct_xkb_KeyAlias(tvb
, offsetp
, t
, byte_order
, f_nKeyAliases
);
26439 if (f_which
& (1U << 13)) {
26440 listOfCard32(tvb
, offsetp
, t
, hf_x11_xkb_GetKbdByName_reply_KeyNames_RGNames_radioGroupNames
, hf_x11_xkb_GetKbdByName_reply_KeyNames_RGNames_radioGroupNames_item
, f_nRadioGroups
, byte_order
);
26443 if (f_reported
& (1U << 6)) {
26444 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_geometry_type
, tvb
, *offsetp
, 1, byte_order
);
26446 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_geometryDeviceID
, tvb
, *offsetp
, 1, byte_order
);
26448 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_geometry_sequence
, tvb
, *offsetp
, 2, byte_order
);
26450 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_geometry_length
, tvb
, *offsetp
, 4, byte_order
);
26452 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_name
, tvb
, *offsetp
, 4, byte_order
);
26454 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_geometryFound
, tvb
, *offsetp
, 1, byte_order
);
26456 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26458 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_widthMM
, tvb
, *offsetp
, 2, byte_order
);
26460 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_heightMM
, tvb
, *offsetp
, 2, byte_order
);
26462 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nProperties
, tvb
, *offsetp
, 2, byte_order
);
26464 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nColors
, tvb
, *offsetp
, 2, byte_order
);
26466 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nShapes
, tvb
, *offsetp
, 2, byte_order
);
26468 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nSections
, tvb
, *offsetp
, 2, byte_order
);
26470 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nDoodads
, tvb
, *offsetp
, 2, byte_order
);
26472 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_nKeyAliases
, tvb
, *offsetp
, 2, byte_order
);
26474 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_baseColorNdx
, tvb
, *offsetp
, 1, byte_order
);
26476 proto_tree_add_item(t
, hf_x11_xkb_GetKbdByName_reply_Geometry_labelColorNdx
, tvb
, *offsetp
, 1, byte_order
);
26478 struct_xkb_CountedString16(tvb
, offsetp
, t
, byte_order
, 1);
26482 static void xkbGetDeviceInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
26484 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
26487 static int* const wanted_bits
[] = {
26488 &hf_x11_xkb_GetDeviceInfo_wanted_mask_Keyboards
,
26489 &hf_x11_xkb_GetDeviceInfo_wanted_mask_ButtonActions
,
26490 &hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorNames
,
26491 &hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorMaps
,
26492 &hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorState
,
26495 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetDeviceInfo_wanted
, ett_x11_rectangle
, wanted_bits
, byte_order
);
26498 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_allButtons
, tvb
, *offsetp
, 1, byte_order
);
26500 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_firstButton
, tvb
, *offsetp
, 1, byte_order
);
26502 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_nButtons
, tvb
, *offsetp
, 1, byte_order
);
26504 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26506 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetDeviceInfo_ledClass
, byte_order
);
26507 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetDeviceInfo_ledID
, byte_order
);
26509 static void xkbGetDeviceInfo_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26511 int sequence_number
;
26512 int f_nDeviceLedFBs
;
26516 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceInfo");
26519 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_deviceID
, tvb
, *offsetp
, 1, byte_order
);
26521 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26522 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
26523 "%d (xkb-GetDeviceInfo)", sequence_number
);
26525 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
26528 static int* const present_bits
[] = {
26529 &hf_x11_xkb_GetDeviceInfo_reply_present_mask_Keyboards
,
26530 &hf_x11_xkb_GetDeviceInfo_reply_present_mask_ButtonActions
,
26531 &hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorNames
,
26532 &hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorMaps
,
26533 &hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorState
,
26536 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetDeviceInfo_reply_present
, ett_x11_rectangle
, present_bits
, byte_order
);
26540 static int* const supported_bits
[] = {
26541 &hf_x11_xkb_GetDeviceInfo_reply_supported_mask_Keyboards
,
26542 &hf_x11_xkb_GetDeviceInfo_reply_supported_mask_ButtonActions
,
26543 &hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorNames
,
26544 &hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorMaps
,
26545 &hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorState
,
26548 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetDeviceInfo_reply_supported
, ett_x11_rectangle
, supported_bits
, byte_order
);
26552 static int* const unsupported_bits
[] = {
26553 &hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_Keyboards
,
26554 &hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_ButtonActions
,
26555 &hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorNames
,
26556 &hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorMaps
,
26557 &hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorState
,
26560 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_GetDeviceInfo_reply_unsupported
, ett_x11_rectangle
, unsupported_bits
, byte_order
);
26563 f_nDeviceLedFBs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26564 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_nDeviceLedFBs
, tvb
, *offsetp
, 2, byte_order
);
26566 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_firstBtnWanted
, tvb
, *offsetp
, 1, byte_order
);
26568 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_nBtnsWanted
, tvb
, *offsetp
, 1, byte_order
);
26570 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_firstBtnRtrn
, tvb
, *offsetp
, 1, byte_order
);
26572 f_nBtnsRtrn
= tvb_get_uint8(tvb
, *offsetp
);
26573 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_nBtnsRtrn
, tvb
, *offsetp
, 1, byte_order
);
26575 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_totalBtns
, tvb
, *offsetp
, 1, byte_order
);
26577 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_hasOwnState
, tvb
, *offsetp
, 1, byte_order
);
26579 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetDeviceInfo_reply_dfltKbdFB
, byte_order
);
26580 field16(tvb
, offsetp
, t
, hf_x11_xkb_GetDeviceInfo_reply_dfltLedFB
, byte_order
);
26581 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
26583 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_devType
, tvb
, *offsetp
, 4, byte_order
);
26585 f_nameLen
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26586 proto_tree_add_item(t
, hf_x11_xkb_GetDeviceInfo_reply_nameLen
, tvb
, *offsetp
, 2, byte_order
);
26588 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_GetDeviceInfo_reply_name
, f_nameLen
, byte_order
);
26589 if (*offsetp
% 4) {
26590 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
26591 *offsetp
+= (4 - *offsetp
% 4);
26593 struct_xkb_Action(tvb
, offsetp
, t
, byte_order
, f_nBtnsRtrn
);
26594 struct_xkb_DeviceLedInfo(tvb
, offsetp
, t
, byte_order
, f_nDeviceLedFBs
);
26597 static void xkbSetDeviceInfo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
26600 int f_nDeviceLedFBs
;
26601 proto_tree_add_item(t
, hf_x11_xkb_SetDeviceInfo_deviceSpec
, tvb
, *offsetp
, 2, byte_order
);
26603 proto_tree_add_item(t
, hf_x11_xkb_SetDeviceInfo_firstBtn
, tvb
, *offsetp
, 1, byte_order
);
26605 f_nBtns
= tvb_get_uint8(tvb
, *offsetp
);
26606 proto_tree_add_item(t
, hf_x11_xkb_SetDeviceInfo_nBtns
, tvb
, *offsetp
, 1, byte_order
);
26609 static int* const change_bits
[] = {
26610 &hf_x11_xkb_SetDeviceInfo_change_mask_Keyboards
,
26611 &hf_x11_xkb_SetDeviceInfo_change_mask_ButtonActions
,
26612 &hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorNames
,
26613 &hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorMaps
,
26614 &hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorState
,
26617 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_SetDeviceInfo_change
, ett_x11_rectangle
, change_bits
, byte_order
);
26620 f_nDeviceLedFBs
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26621 proto_tree_add_item(t
, hf_x11_xkb_SetDeviceInfo_nDeviceLedFBs
, tvb
, *offsetp
, 2, byte_order
);
26623 struct_xkb_Action(tvb
, offsetp
, t
, byte_order
, f_nBtns
);
26624 length
-= f_nBtns
* 8;
26625 struct_xkb_DeviceLedInfo(tvb
, offsetp
, t
, byte_order
, f_nDeviceLedFBs
);
26626 length
-= f_nDeviceLedFBs
* 0;
26629 static void xkbSetDebuggingFlags(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
26632 f_msgLength
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26633 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_msgLength
, tvb
, *offsetp
, 2, byte_order
);
26635 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
26637 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_affectFlags
, tvb
, *offsetp
, 4, byte_order
);
26639 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_flags
, tvb
, *offsetp
, 4, byte_order
);
26641 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_affectCtrls
, tvb
, *offsetp
, 4, byte_order
);
26643 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_ctrls
, tvb
, *offsetp
, 4, byte_order
);
26645 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_SetDebuggingFlags_message
, f_msgLength
, byte_order
);
26646 length
-= f_msgLength
* 1;
26648 static void xkbSetDebuggingFlags_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26650 int sequence_number
;
26652 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-SetDebuggingFlags");
26655 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
26657 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
26658 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
26659 "%d (xkb-SetDebuggingFlags)", sequence_number
);
26661 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
26663 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_reply_currentFlags
, tvb
, *offsetp
, 4, byte_order
);
26665 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_reply_currentCtrls
, tvb
, *offsetp
, 4, byte_order
);
26667 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_reply_supportedFlags
, tvb
, *offsetp
, 4, byte_order
);
26669 proto_tree_add_item(t
, hf_x11_xkb_SetDebuggingFlags_reply_supportedCtrls
, tvb
, *offsetp
, 4, byte_order
);
26671 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
26675 static void xkbMapNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26677 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
26679 CARD16(event_sequencenumber
);
26680 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_time
, tvb
, *offsetp
, 4, byte_order
);
26682 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
26684 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_ptrBtnActions
, tvb
, *offsetp
, 1, byte_order
);
26687 static int* const changed_bits
[] = {
26688 &hf_x11_xkb_MapNotify_changed_mask_KeyTypes
,
26689 &hf_x11_xkb_MapNotify_changed_mask_KeySyms
,
26690 &hf_x11_xkb_MapNotify_changed_mask_ModifierMap
,
26691 &hf_x11_xkb_MapNotify_changed_mask_ExplicitComponents
,
26692 &hf_x11_xkb_MapNotify_changed_mask_KeyActions
,
26693 &hf_x11_xkb_MapNotify_changed_mask_KeyBehaviors
,
26694 &hf_x11_xkb_MapNotify_changed_mask_VirtualMods
,
26695 &hf_x11_xkb_MapNotify_changed_mask_VirtualModMap
,
26698 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_MapNotify_changed
, ett_x11_rectangle
, changed_bits
, byte_order
);
26701 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_minKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26703 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_maxKeyCode
, tvb
, *offsetp
, 1, byte_order
);
26705 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstType
, tvb
, *offsetp
, 1, byte_order
);
26707 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nTypes
, tvb
, *offsetp
, 1, byte_order
);
26709 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstKeySym
, tvb
, *offsetp
, 1, byte_order
);
26711 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nKeySyms
, tvb
, *offsetp
, 1, byte_order
);
26713 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstKeyAct
, tvb
, *offsetp
, 1, byte_order
);
26715 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nKeyActs
, tvb
, *offsetp
, 1, byte_order
);
26717 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
26719 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nKeyBehavior
, tvb
, *offsetp
, 1, byte_order
);
26721 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
26723 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nKeyExplicit
, tvb
, *offsetp
, 1, byte_order
);
26725 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstModMapKey
, tvb
, *offsetp
, 1, byte_order
);
26727 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26729 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_firstVModMapKey
, tvb
, *offsetp
, 1, byte_order
);
26731 proto_tree_add_item(t
, hf_x11_xkb_MapNotify_nVModMapKeys
, tvb
, *offsetp
, 1, byte_order
);
26734 static int* const virtualMods_bits
[] = {
26735 &hf_x11_xkb_MapNotify_virtualMods_mask_0
,
26736 &hf_x11_xkb_MapNotify_virtualMods_mask_1
,
26737 &hf_x11_xkb_MapNotify_virtualMods_mask_2
,
26738 &hf_x11_xkb_MapNotify_virtualMods_mask_3
,
26739 &hf_x11_xkb_MapNotify_virtualMods_mask_4
,
26740 &hf_x11_xkb_MapNotify_virtualMods_mask_5
,
26741 &hf_x11_xkb_MapNotify_virtualMods_mask_6
,
26742 &hf_x11_xkb_MapNotify_virtualMods_mask_7
,
26743 &hf_x11_xkb_MapNotify_virtualMods_mask_8
,
26744 &hf_x11_xkb_MapNotify_virtualMods_mask_9
,
26745 &hf_x11_xkb_MapNotify_virtualMods_mask_10
,
26746 &hf_x11_xkb_MapNotify_virtualMods_mask_11
,
26747 &hf_x11_xkb_MapNotify_virtualMods_mask_12
,
26748 &hf_x11_xkb_MapNotify_virtualMods_mask_13
,
26749 &hf_x11_xkb_MapNotify_virtualMods_mask_14
,
26750 &hf_x11_xkb_MapNotify_virtualMods_mask_15
,
26753 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_MapNotify_virtualMods
, ett_x11_rectangle
, virtualMods_bits
, byte_order
);
26756 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
26761 static void xkbStateNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26763 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
26765 CARD16(event_sequencenumber
);
26766 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_time
, tvb
, *offsetp
, 4, byte_order
);
26768 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
26771 static int* const mods_bits
[] = {
26772 &hf_x11_xkb_StateNotify_mods_mask_Shift
,
26773 &hf_x11_xkb_StateNotify_mods_mask_Lock
,
26774 &hf_x11_xkb_StateNotify_mods_mask_Control
,
26775 &hf_x11_xkb_StateNotify_mods_mask_1
,
26776 &hf_x11_xkb_StateNotify_mods_mask_2
,
26777 &hf_x11_xkb_StateNotify_mods_mask_3
,
26778 &hf_x11_xkb_StateNotify_mods_mask_4
,
26779 &hf_x11_xkb_StateNotify_mods_mask_5
,
26780 &hf_x11_xkb_StateNotify_mods_mask_Any
,
26783 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
26787 static int* const baseMods_bits
[] = {
26788 &hf_x11_xkb_StateNotify_baseMods_mask_Shift
,
26789 &hf_x11_xkb_StateNotify_baseMods_mask_Lock
,
26790 &hf_x11_xkb_StateNotify_baseMods_mask_Control
,
26791 &hf_x11_xkb_StateNotify_baseMods_mask_1
,
26792 &hf_x11_xkb_StateNotify_baseMods_mask_2
,
26793 &hf_x11_xkb_StateNotify_baseMods_mask_3
,
26794 &hf_x11_xkb_StateNotify_baseMods_mask_4
,
26795 &hf_x11_xkb_StateNotify_baseMods_mask_5
,
26796 &hf_x11_xkb_StateNotify_baseMods_mask_Any
,
26799 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_baseMods
, ett_x11_rectangle
, baseMods_bits
, byte_order
);
26803 static int* const latchedMods_bits
[] = {
26804 &hf_x11_xkb_StateNotify_latchedMods_mask_Shift
,
26805 &hf_x11_xkb_StateNotify_latchedMods_mask_Lock
,
26806 &hf_x11_xkb_StateNotify_latchedMods_mask_Control
,
26807 &hf_x11_xkb_StateNotify_latchedMods_mask_1
,
26808 &hf_x11_xkb_StateNotify_latchedMods_mask_2
,
26809 &hf_x11_xkb_StateNotify_latchedMods_mask_3
,
26810 &hf_x11_xkb_StateNotify_latchedMods_mask_4
,
26811 &hf_x11_xkb_StateNotify_latchedMods_mask_5
,
26812 &hf_x11_xkb_StateNotify_latchedMods_mask_Any
,
26815 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_latchedMods
, ett_x11_rectangle
, latchedMods_bits
, byte_order
);
26819 static int* const lockedMods_bits
[] = {
26820 &hf_x11_xkb_StateNotify_lockedMods_mask_Shift
,
26821 &hf_x11_xkb_StateNotify_lockedMods_mask_Lock
,
26822 &hf_x11_xkb_StateNotify_lockedMods_mask_Control
,
26823 &hf_x11_xkb_StateNotify_lockedMods_mask_1
,
26824 &hf_x11_xkb_StateNotify_lockedMods_mask_2
,
26825 &hf_x11_xkb_StateNotify_lockedMods_mask_3
,
26826 &hf_x11_xkb_StateNotify_lockedMods_mask_4
,
26827 &hf_x11_xkb_StateNotify_lockedMods_mask_5
,
26828 &hf_x11_xkb_StateNotify_lockedMods_mask_Any
,
26831 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_lockedMods
, ett_x11_rectangle
, lockedMods_bits
, byte_order
);
26834 field8(tvb
, offsetp
, t
, hf_x11_xkb_StateNotify_group
, byte_order
);
26835 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_baseGroup
, tvb
, *offsetp
, 2, byte_order
);
26837 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_latchedGroup
, tvb
, *offsetp
, 2, byte_order
);
26839 field8(tvb
, offsetp
, t
, hf_x11_xkb_StateNotify_lockedGroup
, byte_order
);
26841 static int* const compatState_bits
[] = {
26842 &hf_x11_xkb_StateNotify_compatState_mask_Shift
,
26843 &hf_x11_xkb_StateNotify_compatState_mask_Lock
,
26844 &hf_x11_xkb_StateNotify_compatState_mask_Control
,
26845 &hf_x11_xkb_StateNotify_compatState_mask_1
,
26846 &hf_x11_xkb_StateNotify_compatState_mask_2
,
26847 &hf_x11_xkb_StateNotify_compatState_mask_3
,
26848 &hf_x11_xkb_StateNotify_compatState_mask_4
,
26849 &hf_x11_xkb_StateNotify_compatState_mask_5
,
26850 &hf_x11_xkb_StateNotify_compatState_mask_Any
,
26853 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_compatState
, ett_x11_rectangle
, compatState_bits
, byte_order
);
26857 static int* const grabMods_bits
[] = {
26858 &hf_x11_xkb_StateNotify_grabMods_mask_Shift
,
26859 &hf_x11_xkb_StateNotify_grabMods_mask_Lock
,
26860 &hf_x11_xkb_StateNotify_grabMods_mask_Control
,
26861 &hf_x11_xkb_StateNotify_grabMods_mask_1
,
26862 &hf_x11_xkb_StateNotify_grabMods_mask_2
,
26863 &hf_x11_xkb_StateNotify_grabMods_mask_3
,
26864 &hf_x11_xkb_StateNotify_grabMods_mask_4
,
26865 &hf_x11_xkb_StateNotify_grabMods_mask_5
,
26866 &hf_x11_xkb_StateNotify_grabMods_mask_Any
,
26869 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_grabMods
, ett_x11_rectangle
, grabMods_bits
, byte_order
);
26873 static int* const compatGrabMods_bits
[] = {
26874 &hf_x11_xkb_StateNotify_compatGrabMods_mask_Shift
,
26875 &hf_x11_xkb_StateNotify_compatGrabMods_mask_Lock
,
26876 &hf_x11_xkb_StateNotify_compatGrabMods_mask_Control
,
26877 &hf_x11_xkb_StateNotify_compatGrabMods_mask_1
,
26878 &hf_x11_xkb_StateNotify_compatGrabMods_mask_2
,
26879 &hf_x11_xkb_StateNotify_compatGrabMods_mask_3
,
26880 &hf_x11_xkb_StateNotify_compatGrabMods_mask_4
,
26881 &hf_x11_xkb_StateNotify_compatGrabMods_mask_5
,
26882 &hf_x11_xkb_StateNotify_compatGrabMods_mask_Any
,
26885 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_compatGrabMods
, ett_x11_rectangle
, compatGrabMods_bits
, byte_order
);
26889 static int* const lookupMods_bits
[] = {
26890 &hf_x11_xkb_StateNotify_lookupMods_mask_Shift
,
26891 &hf_x11_xkb_StateNotify_lookupMods_mask_Lock
,
26892 &hf_x11_xkb_StateNotify_lookupMods_mask_Control
,
26893 &hf_x11_xkb_StateNotify_lookupMods_mask_1
,
26894 &hf_x11_xkb_StateNotify_lookupMods_mask_2
,
26895 &hf_x11_xkb_StateNotify_lookupMods_mask_3
,
26896 &hf_x11_xkb_StateNotify_lookupMods_mask_4
,
26897 &hf_x11_xkb_StateNotify_lookupMods_mask_5
,
26898 &hf_x11_xkb_StateNotify_lookupMods_mask_Any
,
26901 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_lookupMods
, ett_x11_rectangle
, lookupMods_bits
, byte_order
);
26905 static int* const compatLoockupMods_bits
[] = {
26906 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_Shift
,
26907 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_Lock
,
26908 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_Control
,
26909 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_1
,
26910 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_2
,
26911 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_3
,
26912 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_4
,
26913 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_5
,
26914 &hf_x11_xkb_StateNotify_compatLoockupMods_mask_Any
,
26917 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_compatLoockupMods
, ett_x11_rectangle
, compatLoockupMods_bits
, byte_order
);
26921 static int* const ptrBtnState_bits
[] = {
26922 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Shift
,
26923 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Lock
,
26924 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Control
,
26925 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod1
,
26926 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod2
,
26927 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod3
,
26928 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod4
,
26929 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod5
,
26930 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Button1
,
26931 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Button2
,
26932 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Button3
,
26933 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Button4
,
26934 &hf_x11_xkb_StateNotify_ptrBtnState_mask_Button5
,
26937 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_ptrBtnState
, ett_x11_rectangle
, ptrBtnState_bits
, byte_order
);
26941 static int* const changed_bits
[] = {
26942 &hf_x11_xkb_StateNotify_changed_mask_ModifierState
,
26943 &hf_x11_xkb_StateNotify_changed_mask_ModifierBase
,
26944 &hf_x11_xkb_StateNotify_changed_mask_ModifierLatch
,
26945 &hf_x11_xkb_StateNotify_changed_mask_ModifierLock
,
26946 &hf_x11_xkb_StateNotify_changed_mask_GroupState
,
26947 &hf_x11_xkb_StateNotify_changed_mask_GroupBase
,
26948 &hf_x11_xkb_StateNotify_changed_mask_GroupLatch
,
26949 &hf_x11_xkb_StateNotify_changed_mask_GroupLock
,
26950 &hf_x11_xkb_StateNotify_changed_mask_CompatState
,
26951 &hf_x11_xkb_StateNotify_changed_mask_GrabMods
,
26952 &hf_x11_xkb_StateNotify_changed_mask_CompatGrabMods
,
26953 &hf_x11_xkb_StateNotify_changed_mask_LookupMods
,
26954 &hf_x11_xkb_StateNotify_changed_mask_CompatLookupMods
,
26955 &hf_x11_xkb_StateNotify_changed_mask_PointerButtons
,
26958 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_StateNotify_changed
, ett_x11_rectangle
, changed_bits
, byte_order
);
26961 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_keycode
, tvb
, *offsetp
, 1, byte_order
);
26963 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_eventType
, tvb
, *offsetp
, 1, byte_order
);
26965 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_requestMajor
, tvb
, *offsetp
, 1, byte_order
);
26967 proto_tree_add_item(t
, hf_x11_xkb_StateNotify_requestMinor
, tvb
, *offsetp
, 1, byte_order
);
26972 static void xkbControlsNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
26974 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
26976 CARD16(event_sequencenumber
);
26977 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_time
, tvb
, *offsetp
, 4, byte_order
);
26979 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
26981 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_numGroups
, tvb
, *offsetp
, 1, byte_order
);
26983 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
26986 static int* const changedControls_bits
[] = {
26987 &hf_x11_xkb_ControlsNotify_changedControls_mask_GroupsWrap
,
26988 &hf_x11_xkb_ControlsNotify_changedControls_mask_InternalMods
,
26989 &hf_x11_xkb_ControlsNotify_changedControls_mask_IgnoreLockMods
,
26990 &hf_x11_xkb_ControlsNotify_changedControls_mask_PerKeyRepeat
,
26991 &hf_x11_xkb_ControlsNotify_changedControls_mask_ControlsEnabled
,
26994 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ControlsNotify_changedControls
, ett_x11_rectangle
, changedControls_bits
, byte_order
);
26998 static int* const enabledControls_bits
[] = {
26999 &hf_x11_xkb_ControlsNotify_enabledControls_mask_RepeatKeys
,
27000 &hf_x11_xkb_ControlsNotify_enabledControls_mask_SlowKeys
,
27001 &hf_x11_xkb_ControlsNotify_enabledControls_mask_BounceKeys
,
27002 &hf_x11_xkb_ControlsNotify_enabledControls_mask_StickyKeys
,
27003 &hf_x11_xkb_ControlsNotify_enabledControls_mask_MouseKeys
,
27004 &hf_x11_xkb_ControlsNotify_enabledControls_mask_MouseKeysAccel
,
27005 &hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXKeys
,
27006 &hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXTimeoutMask
,
27007 &hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXFeedbackMask
,
27008 &hf_x11_xkb_ControlsNotify_enabledControls_mask_AudibleBellMask
,
27009 &hf_x11_xkb_ControlsNotify_enabledControls_mask_Overlay1Mask
,
27010 &hf_x11_xkb_ControlsNotify_enabledControls_mask_Overlay2Mask
,
27011 &hf_x11_xkb_ControlsNotify_enabledControls_mask_IgnoreGroupLockMask
,
27014 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ControlsNotify_enabledControls
, ett_x11_rectangle
, enabledControls_bits
, byte_order
);
27018 static int* const enabledControlChanges_bits
[] = {
27019 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_RepeatKeys
,
27020 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_SlowKeys
,
27021 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_BounceKeys
,
27022 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_StickyKeys
,
27023 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_MouseKeys
,
27024 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_MouseKeysAccel
,
27025 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXKeys
,
27026 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXTimeoutMask
,
27027 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXFeedbackMask
,
27028 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AudibleBellMask
,
27029 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_Overlay1Mask
,
27030 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_Overlay2Mask
,
27031 &hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_IgnoreGroupLockMask
,
27034 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ControlsNotify_enabledControlChanges
, ett_x11_rectangle
, enabledControlChanges_bits
, byte_order
);
27037 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_keycode
, tvb
, *offsetp
, 1, byte_order
);
27039 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_eventType
, tvb
, *offsetp
, 1, byte_order
);
27041 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_requestMajor
, tvb
, *offsetp
, 1, byte_order
);
27043 proto_tree_add_item(t
, hf_x11_xkb_ControlsNotify_requestMinor
, tvb
, *offsetp
, 1, byte_order
);
27045 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
27050 static void xkbIndicatorStateNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27052 proto_tree_add_item(t
, hf_x11_xkb_IndicatorStateNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27054 CARD16(event_sequencenumber
);
27055 proto_tree_add_item(t
, hf_x11_xkb_IndicatorStateNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27057 proto_tree_add_item(t
, hf_x11_xkb_IndicatorStateNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27059 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
27061 proto_tree_add_item(t
, hf_x11_xkb_IndicatorStateNotify_state
, tvb
, *offsetp
, 4, byte_order
);
27063 proto_tree_add_item(t
, hf_x11_xkb_IndicatorStateNotify_stateChanged
, tvb
, *offsetp
, 4, byte_order
);
27065 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
27070 static void xkbIndicatorMapNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27072 proto_tree_add_item(t
, hf_x11_xkb_IndicatorMapNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27074 CARD16(event_sequencenumber
);
27075 proto_tree_add_item(t
, hf_x11_xkb_IndicatorMapNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27077 proto_tree_add_item(t
, hf_x11_xkb_IndicatorMapNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27079 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
27081 proto_tree_add_item(t
, hf_x11_xkb_IndicatorMapNotify_state
, tvb
, *offsetp
, 4, byte_order
);
27083 proto_tree_add_item(t
, hf_x11_xkb_IndicatorMapNotify_mapChanged
, tvb
, *offsetp
, 4, byte_order
);
27085 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
27090 static void xkbNamesNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27092 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27094 CARD16(event_sequencenumber
);
27095 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27097 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27099 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27102 static int* const changed_bits
[] = {
27103 &hf_x11_xkb_NamesNotify_changed_mask_Keycodes
,
27104 &hf_x11_xkb_NamesNotify_changed_mask_Geometry
,
27105 &hf_x11_xkb_NamesNotify_changed_mask_Symbols
,
27106 &hf_x11_xkb_NamesNotify_changed_mask_PhysSymbols
,
27107 &hf_x11_xkb_NamesNotify_changed_mask_Types
,
27108 &hf_x11_xkb_NamesNotify_changed_mask_Compat
,
27109 &hf_x11_xkb_NamesNotify_changed_mask_KeyTypeNames
,
27110 &hf_x11_xkb_NamesNotify_changed_mask_KTLevelNames
,
27111 &hf_x11_xkb_NamesNotify_changed_mask_IndicatorNames
,
27112 &hf_x11_xkb_NamesNotify_changed_mask_KeyNames
,
27113 &hf_x11_xkb_NamesNotify_changed_mask_KeyAliases
,
27114 &hf_x11_xkb_NamesNotify_changed_mask_VirtualModNames
,
27115 &hf_x11_xkb_NamesNotify_changed_mask_GroupNames
,
27116 &hf_x11_xkb_NamesNotify_changed_mask_RGNames
,
27119 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_NamesNotify_changed
, ett_x11_rectangle
, changed_bits
, byte_order
);
27122 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_firstType
, tvb
, *offsetp
, 1, byte_order
);
27124 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_nTypes
, tvb
, *offsetp
, 1, byte_order
);
27126 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_firstLevelName
, tvb
, *offsetp
, 1, byte_order
);
27128 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_nLevelNames
, tvb
, *offsetp
, 1, byte_order
);
27130 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27132 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_nRadioGroups
, tvb
, *offsetp
, 1, byte_order
);
27134 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_nKeyAliases
, tvb
, *offsetp
, 1, byte_order
);
27137 static int* const changedGroupNames_bits
[] = {
27138 &hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group1
,
27139 &hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group2
,
27140 &hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group3
,
27141 &hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group4
,
27144 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_NamesNotify_changedGroupNames
, ett_x11_rectangle
, changedGroupNames_bits
, byte_order
);
27148 static int* const changedVirtualMods_bits
[] = {
27149 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_0
,
27150 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_1
,
27151 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_2
,
27152 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_3
,
27153 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_4
,
27154 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_5
,
27155 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_6
,
27156 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_7
,
27157 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_8
,
27158 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_9
,
27159 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_10
,
27160 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_11
,
27161 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_12
,
27162 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_13
,
27163 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_14
,
27164 &hf_x11_xkb_NamesNotify_changedVirtualMods_mask_15
,
27167 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_NamesNotify_changedVirtualMods
, ett_x11_rectangle
, changedVirtualMods_bits
, byte_order
);
27170 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_firstKey
, tvb
, *offsetp
, 1, byte_order
);
27172 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_nKeys
, tvb
, *offsetp
, 1, byte_order
);
27174 proto_tree_add_item(t
, hf_x11_xkb_NamesNotify_changedIndicators
, tvb
, *offsetp
, 4, byte_order
);
27176 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 4, ENC_NA
);
27181 static void xkbCompatMapNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27183 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27185 CARD16(event_sequencenumber
);
27186 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27188 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27191 static int* const changedGroups_bits
[] = {
27192 &hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group1
,
27193 &hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group2
,
27194 &hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group3
,
27195 &hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group4
,
27198 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_CompatMapNotify_changedGroups
, ett_x11_rectangle
, changedGroups_bits
, byte_order
);
27201 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_firstSI
, tvb
, *offsetp
, 2, byte_order
);
27203 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_nSI
, tvb
, *offsetp
, 2, byte_order
);
27205 proto_tree_add_item(t
, hf_x11_xkb_CompatMapNotify_nTotalSI
, tvb
, *offsetp
, 2, byte_order
);
27207 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
27212 static void xkbBellNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27214 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27216 CARD16(event_sequencenumber
);
27217 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27219 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27221 field8(tvb
, offsetp
, t
, hf_x11_xkb_BellNotify_bellClass
, byte_order
);
27222 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_bellID
, tvb
, *offsetp
, 1, byte_order
);
27224 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_percent
, tvb
, *offsetp
, 1, byte_order
);
27226 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_pitch
, tvb
, *offsetp
, 2, byte_order
);
27228 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_duration
, tvb
, *offsetp
, 2, byte_order
);
27230 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_name
, tvb
, *offsetp
, 4, byte_order
);
27232 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_window
, tvb
, *offsetp
, 4, byte_order
);
27234 proto_tree_add_item(t
, hf_x11_xkb_BellNotify_eventOnly
, tvb
, *offsetp
, 1, byte_order
);
27236 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 7, ENC_NA
);
27241 static void xkbActionMessage(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27243 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27245 CARD16(event_sequencenumber
);
27246 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_time
, tvb
, *offsetp
, 4, byte_order
);
27248 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27250 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_keycode
, tvb
, *offsetp
, 1, byte_order
);
27252 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_press
, tvb
, *offsetp
, 1, byte_order
);
27254 proto_tree_add_item(t
, hf_x11_xkb_ActionMessage_keyEventFollows
, tvb
, *offsetp
, 1, byte_order
);
27257 static int* const mods_bits
[] = {
27258 &hf_x11_xkb_ActionMessage_mods_mask_Shift
,
27259 &hf_x11_xkb_ActionMessage_mods_mask_Lock
,
27260 &hf_x11_xkb_ActionMessage_mods_mask_Control
,
27261 &hf_x11_xkb_ActionMessage_mods_mask_1
,
27262 &hf_x11_xkb_ActionMessage_mods_mask_2
,
27263 &hf_x11_xkb_ActionMessage_mods_mask_3
,
27264 &hf_x11_xkb_ActionMessage_mods_mask_4
,
27265 &hf_x11_xkb_ActionMessage_mods_mask_5
,
27266 &hf_x11_xkb_ActionMessage_mods_mask_Any
,
27269 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ActionMessage_mods
, ett_x11_rectangle
, mods_bits
, byte_order
);
27272 field8(tvb
, offsetp
, t
, hf_x11_xkb_ActionMessage_group
, byte_order
);
27273 listOfByte(tvb
, offsetp
, t
, hf_x11_xkb_ActionMessage_message
, 8, byte_order
);
27274 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 10, ENC_NA
);
27279 static void xkbAccessXNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27281 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27283 CARD16(event_sequencenumber
);
27284 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27286 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27288 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_keycode
, tvb
, *offsetp
, 1, byte_order
);
27291 static int* const detailt_bits
[] = {
27292 &hf_x11_xkb_AccessXNotify_detailt_mask_SKPress
,
27293 &hf_x11_xkb_AccessXNotify_detailt_mask_SKAccept
,
27294 &hf_x11_xkb_AccessXNotify_detailt_mask_SKReject
,
27295 &hf_x11_xkb_AccessXNotify_detailt_mask_SKRelease
,
27296 &hf_x11_xkb_AccessXNotify_detailt_mask_BKAccept
,
27297 &hf_x11_xkb_AccessXNotify_detailt_mask_BKReject
,
27298 &hf_x11_xkb_AccessXNotify_detailt_mask_AXKWarning
,
27301 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_AccessXNotify_detailt
, ett_x11_rectangle
, detailt_bits
, byte_order
);
27304 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_slowKeysDelay
, tvb
, *offsetp
, 2, byte_order
);
27306 proto_tree_add_item(t
, hf_x11_xkb_AccessXNotify_debounceDelay
, tvb
, *offsetp
, 2, byte_order
);
27308 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
27313 static void xkbExtensionDeviceNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27315 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_xkbType
, tvb
, *offsetp
, 1, byte_order
);
27317 CARD16(event_sequencenumber
);
27318 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_time
, tvb
, *offsetp
, 4, byte_order
);
27320 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_deviceID
, tvb
, *offsetp
, 1, byte_order
);
27322 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27325 static int* const reason_bits
[] = {
27326 &hf_x11_xkb_ExtensionDeviceNotify_reason_mask_Keyboards
,
27327 &hf_x11_xkb_ExtensionDeviceNotify_reason_mask_ButtonActions
,
27328 &hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorNames
,
27329 &hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorMaps
,
27330 &hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorState
,
27333 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ExtensionDeviceNotify_reason
, ett_x11_rectangle
, reason_bits
, byte_order
);
27336 field16(tvb
, offsetp
, t
, hf_x11_xkb_ExtensionDeviceNotify_ledClass
, byte_order
);
27337 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_ledID
, tvb
, *offsetp
, 2, byte_order
);
27339 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_ledsDefined
, tvb
, *offsetp
, 4, byte_order
);
27341 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_ledState
, tvb
, *offsetp
, 4, byte_order
);
27343 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_firstButton
, tvb
, *offsetp
, 1, byte_order
);
27345 proto_tree_add_item(t
, hf_x11_xkb_ExtensionDeviceNotify_nButtons
, tvb
, *offsetp
, 1, byte_order
);
27348 static int* const supported_bits
[] = {
27349 &hf_x11_xkb_ExtensionDeviceNotify_supported_mask_Keyboards
,
27350 &hf_x11_xkb_ExtensionDeviceNotify_supported_mask_ButtonActions
,
27351 &hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorNames
,
27352 &hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorMaps
,
27353 &hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorState
,
27356 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ExtensionDeviceNotify_supported
, ett_x11_rectangle
, supported_bits
, byte_order
);
27360 static int* const unsupported_bits
[] = {
27361 &hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_Keyboards
,
27362 &hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_ButtonActions
,
27363 &hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorNames
,
27364 &hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorMaps
,
27365 &hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorState
,
27368 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_xkb_ExtensionDeviceNotify_unsupported
, ett_x11_rectangle
, unsupported_bits
, byte_order
);
27371 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
27375 static const value_string xkb_extension_minor
[] = {
27376 { 0, "UseExtension" },
27377 { 1, "SelectEvents" },
27380 { 5, "LatchLockState" },
27381 { 6, "GetControls" },
27382 { 7, "SetControls" },
27385 { 10, "GetCompatMap" },
27386 { 11, "SetCompatMap" },
27387 { 12, "GetIndicatorState" },
27388 { 13, "GetIndicatorMap" },
27389 { 14, "SetIndicatorMap" },
27390 { 15, "GetNamedIndicator" },
27391 { 16, "SetNamedIndicator" },
27392 { 17, "GetNames" },
27393 { 18, "SetNames" },
27394 { 21, "PerClientFlags" },
27395 { 22, "ListComponents" },
27396 { 23, "GetKbdByName" },
27397 { 24, "GetDeviceInfo" },
27398 { 25, "SetDeviceInfo" },
27399 { 101, "SetDebuggingFlags" },
27402 static const x11_event_info xkb_events
[] = {
27403 { "xkb-MapNotify", xkbMapNotify
},
27404 { "xkb-StateNotify", xkbStateNotify
},
27405 { "xkb-ControlsNotify", xkbControlsNotify
},
27406 { "xkb-IndicatorStateNotify", xkbIndicatorStateNotify
},
27407 { "xkb-IndicatorMapNotify", xkbIndicatorMapNotify
},
27408 { "xkb-NamesNotify", xkbNamesNotify
},
27409 { "xkb-CompatMapNotify", xkbCompatMapNotify
},
27410 { "xkb-BellNotify", xkbBellNotify
},
27411 { "xkb-ActionMessage", xkbActionMessage
},
27412 { "xkb-AccessXNotify", xkbAccessXNotify
},
27413 { "xkb-ExtensionDeviceNotify", xkbExtensionDeviceNotify
},
27416 static const x11_reply_info xkb_replies
[] = {
27417 { 0, xkbUseExtension_Reply
},
27418 { 4, xkbGetState_Reply
},
27419 { 6, xkbGetControls_Reply
},
27420 { 8, xkbGetMap_Reply
},
27421 { 10, xkbGetCompatMap_Reply
},
27422 { 12, xkbGetIndicatorState_Reply
},
27423 { 13, xkbGetIndicatorMap_Reply
},
27424 { 15, xkbGetNamedIndicator_Reply
},
27425 { 17, xkbGetNames_Reply
},
27426 { 21, xkbPerClientFlags_Reply
},
27427 { 22, xkbListComponents_Reply
},
27428 { 23, xkbGetKbdByName_Reply
},
27429 { 24, xkbGetDeviceInfo_Reply
},
27430 { 101, xkbSetDebuggingFlags_Reply
},
27434 static void dispatch_xkb(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27437 minor
= CARD8(xkb_extension_minor
);
27438 length
= REQUEST_LENGTH();
27440 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
27441 val_to_str(minor
, xkb_extension_minor
,
27442 "<Unknown opcode %d>"));
27445 xkbUseExtension(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27448 xkbSelectEvents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27451 xkbBell(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27454 xkbGetState(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27457 xkbLatchLockState(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27460 xkbGetControls(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27463 xkbSetControls(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27466 xkbGetMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27469 xkbSetMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27472 xkbGetCompatMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27475 xkbSetCompatMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27478 xkbGetIndicatorState(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27481 xkbGetIndicatorMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27484 xkbSetIndicatorMap(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27487 xkbGetNamedIndicator(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27490 xkbSetNamedIndicator(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27493 xkbGetNames(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27496 xkbSetNames(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27499 xkbPerClientFlags(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27502 xkbListComponents(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27505 xkbGetKbdByName(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27508 xkbGetDeviceInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27511 xkbSetDeviceInfo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27514 xkbSetDebuggingFlags(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
27516 /* No need for a default case here, since Unknown is printed above,
27517 and UNDECODED() is taken care of by dissect_x11_request */
27521 static void register_xkb(void)
27523 set_handler("XKEYBOARD", dispatch_xkb
, xkb_errors
, xkb_events
, NULL
, xkb_replies
);
27526 static int struct_size_xprint_PRINTER(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
27531 f_nameLen
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 0, byte_order
);
27532 size
+= f_nameLen
* 1;
27533 size
= (size
+ 3) & ~3;
27534 f_descLen
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 4, byte_order
);
27535 size
+= f_descLen
* 1;
27536 size
= (size
+ 3) & ~3;
27540 static void struct_xprint_PRINTER(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
27543 for (i
= 0; i
< count
; i
++) {
27549 item
= proto_tree_add_item(root
, hf_x11_struct_xprint_PRINTER
, tvb
, *offsetp
, struct_size_xprint_PRINTER(tvb
, offsetp
, byte_order
), ENC_NA
);
27550 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
27551 f_nameLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27552 proto_tree_add_item(t
, hf_x11_struct_xprint_PRINTER_nameLen
, tvb
, *offsetp
, 4, byte_order
);
27554 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xprint_PRINTER_name
, f_nameLen
, byte_order
);
27555 if (*offsetp
% 4) {
27556 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27557 *offsetp
+= (4 - *offsetp
% 4);
27559 f_descLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27560 proto_tree_add_item(t
, hf_x11_struct_xprint_PRINTER_descLen
, tvb
, *offsetp
, 4, byte_order
);
27562 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xprint_PRINTER_description
, f_descLen
, byte_order
);
27563 if (*offsetp
% 4) {
27564 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27565 *offsetp
+= (4 - *offsetp
% 4);
27570 static void xprintPrintQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
27573 static void xprintPrintQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27575 int sequence_number
;
27577 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintQueryVersion");
27580 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27582 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27583 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27584 "%d (xprint-PrintQueryVersion)", sequence_number
);
27586 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27588 proto_tree_add_item(t
, hf_x11_xprint_PrintQueryVersion_reply_major_version
, tvb
, *offsetp
, 2, byte_order
);
27590 proto_tree_add_item(t
, hf_x11_xprint_PrintQueryVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
27594 static void xprintPrintGetPrinterList(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27596 int f_printerNameLen
;
27598 f_printerNameLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27599 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPrinterList_printerNameLen
, tvb
, *offsetp
, 4, byte_order
);
27601 f_localeLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27602 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPrinterList_localeLen
, tvb
, *offsetp
, 4, byte_order
);
27604 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetPrinterList_printer_name
, f_printerNameLen
, byte_order
);
27605 length
-= f_printerNameLen
* 1;
27606 if (*offsetp
% 4) {
27607 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27608 *offsetp
+= (4 - *offsetp
% 4);
27610 length
= ((length
+ 3) & ~3);
27611 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetPrinterList_locale
, f_localeLen
, byte_order
);
27612 length
-= f_localeLen
* 1;
27614 static void xprintPrintGetPrinterList_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27616 int sequence_number
;
27619 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetPrinterList");
27622 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27624 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27625 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27626 "%d (xprint-PrintGetPrinterList)", sequence_number
);
27628 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27630 f_listCount
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27631 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPrinterList_reply_listCount
, tvb
, *offsetp
, 4, byte_order
);
27633 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
27635 struct_xprint_PRINTER(tvb
, offsetp
, t
, byte_order
, f_listCount
);
27638 static void xprintPrintRehashPrinterList(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
27642 static void xprintCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27644 int f_printerNameLen
;
27646 proto_tree_add_item(t
, hf_x11_xprint_CreateContext_context_id
, tvb
, *offsetp
, 4, byte_order
);
27648 f_printerNameLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27649 proto_tree_add_item(t
, hf_x11_xprint_CreateContext_printerNameLen
, tvb
, *offsetp
, 4, byte_order
);
27651 f_localeLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27652 proto_tree_add_item(t
, hf_x11_xprint_CreateContext_localeLen
, tvb
, *offsetp
, 4, byte_order
);
27654 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_CreateContext_printerName
, f_printerNameLen
, byte_order
);
27655 length
-= f_printerNameLen
* 1;
27656 if (*offsetp
% 4) {
27657 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27658 *offsetp
+= (4 - *offsetp
% 4);
27660 length
= ((length
+ 3) & ~3);
27661 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_CreateContext_locale
, f_localeLen
, byte_order
);
27662 length
-= f_localeLen
* 1;
27665 static void xprintPrintSetContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27667 proto_tree_add_item(t
, hf_x11_xprint_PrintSetContext_context
, tvb
, *offsetp
, 4, byte_order
);
27671 static void xprintPrintGetContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
27674 static void xprintPrintGetContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27676 int sequence_number
;
27678 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetContext");
27681 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27683 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27684 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27685 "%d (xprint-PrintGetContext)", sequence_number
);
27687 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27689 proto_tree_add_item(t
, hf_x11_xprint_PrintGetContext_reply_context
, tvb
, *offsetp
, 4, byte_order
);
27693 static void xprintPrintDestroyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27695 proto_tree_add_item(t
, hf_x11_xprint_PrintDestroyContext_context
, tvb
, *offsetp
, 4, byte_order
);
27699 static void xprintPrintGetScreenOfContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
27702 static void xprintPrintGetScreenOfContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27704 int sequence_number
;
27706 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetScreenOfContext");
27709 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27711 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27712 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27713 "%d (xprint-PrintGetScreenOfContext)", sequence_number
);
27715 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27717 proto_tree_add_item(t
, hf_x11_xprint_PrintGetScreenOfContext_reply_root
, tvb
, *offsetp
, 4, byte_order
);
27721 static void xprintPrintStartJob(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27723 proto_tree_add_item(t
, hf_x11_xprint_PrintStartJob_output_mode
, tvb
, *offsetp
, 1, byte_order
);
27727 static void xprintPrintEndJob(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27729 proto_tree_add_item(t
, hf_x11_xprint_PrintEndJob_cancel
, tvb
, *offsetp
, 1, byte_order
);
27733 static void xprintPrintStartDoc(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27735 proto_tree_add_item(t
, hf_x11_xprint_PrintStartDoc_driver_mode
, tvb
, *offsetp
, 1, byte_order
);
27739 static void xprintPrintEndDoc(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27741 proto_tree_add_item(t
, hf_x11_xprint_PrintEndDoc_cancel
, tvb
, *offsetp
, 1, byte_order
);
27745 static void xprintPrintPutDocumentData(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27750 proto_tree_add_item(t
, hf_x11_xprint_PrintPutDocumentData_drawable
, tvb
, *offsetp
, 4, byte_order
);
27752 f_len_data
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27753 proto_tree_add_item(t
, hf_x11_xprint_PrintPutDocumentData_len_data
, tvb
, *offsetp
, 4, byte_order
);
27755 f_len_fmt
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27756 proto_tree_add_item(t
, hf_x11_xprint_PrintPutDocumentData_len_fmt
, tvb
, *offsetp
, 2, byte_order
);
27758 f_len_options
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27759 proto_tree_add_item(t
, hf_x11_xprint_PrintPutDocumentData_len_options
, tvb
, *offsetp
, 2, byte_order
);
27761 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintPutDocumentData_data
, f_len_data
, byte_order
);
27762 length
-= f_len_data
* 1;
27763 if (*offsetp
% 4) {
27764 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27765 *offsetp
+= (4 - *offsetp
% 4);
27767 length
= ((length
+ 3) & ~3);
27768 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintPutDocumentData_doc_format
, f_len_fmt
, byte_order
);
27769 length
-= f_len_fmt
* 1;
27770 if (*offsetp
% 4) {
27771 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
27772 *offsetp
+= (4 - *offsetp
% 4);
27774 length
= ((length
+ 3) & ~3);
27775 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintPutDocumentData_options
, f_len_options
, byte_order
);
27776 length
-= f_len_options
* 1;
27779 static void xprintPrintGetDocumentData(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27781 proto_tree_add_item(t
, hf_x11_xprint_PrintGetDocumentData_context
, tvb
, *offsetp
, 4, byte_order
);
27783 proto_tree_add_item(t
, hf_x11_xprint_PrintGetDocumentData_max_bytes
, tvb
, *offsetp
, 4, byte_order
);
27786 static void xprintPrintGetDocumentData_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27788 int sequence_number
;
27791 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetDocumentData");
27794 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27796 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27797 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27798 "%d (xprint-PrintGetDocumentData)", sequence_number
);
27800 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27802 proto_tree_add_item(t
, hf_x11_xprint_PrintGetDocumentData_reply_status_code
, tvb
, *offsetp
, 4, byte_order
);
27804 proto_tree_add_item(t
, hf_x11_xprint_PrintGetDocumentData_reply_finished_flag
, tvb
, *offsetp
, 4, byte_order
);
27806 f_dataLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27807 proto_tree_add_item(t
, hf_x11_xprint_PrintGetDocumentData_reply_dataLen
, tvb
, *offsetp
, 4, byte_order
);
27809 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
27811 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetDocumentData_reply_data
, f_dataLen
, byte_order
);
27814 static void xprintPrintStartPage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27816 proto_tree_add_item(t
, hf_x11_xprint_PrintStartPage_window
, tvb
, *offsetp
, 4, byte_order
);
27820 static void xprintPrintEndPage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27822 proto_tree_add_item(t
, hf_x11_xprint_PrintEndPage_cancel
, tvb
, *offsetp
, 1, byte_order
);
27824 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
27828 static void xprintPrintSelectInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27830 proto_tree_add_item(t
, hf_x11_xprint_PrintSelectInput_context
, tvb
, *offsetp
, 4, byte_order
);
27832 proto_tree_add_item(t
, hf_x11_xprint_PrintSelectInput_event_mask
, tvb
, *offsetp
, 4, byte_order
);
27836 static void xprintPrintInputSelected(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27838 proto_tree_add_item(t
, hf_x11_xprint_PrintInputSelected_context
, tvb
, *offsetp
, 4, byte_order
);
27841 static void xprintPrintInputSelected_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27843 int sequence_number
;
27845 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintInputSelected");
27848 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27850 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27851 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27852 "%d (xprint-PrintInputSelected)", sequence_number
);
27854 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27856 proto_tree_add_item(t
, hf_x11_xprint_PrintInputSelected_reply_event_mask
, tvb
, *offsetp
, 4, byte_order
);
27858 proto_tree_add_item(t
, hf_x11_xprint_PrintInputSelected_reply_all_events_mask
, tvb
, *offsetp
, 4, byte_order
);
27862 static void xprintPrintGetAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27864 proto_tree_add_item(t
, hf_x11_xprint_PrintGetAttributes_context
, tvb
, *offsetp
, 4, byte_order
);
27866 proto_tree_add_item(t
, hf_x11_xprint_PrintGetAttributes_pool
, tvb
, *offsetp
, 1, byte_order
);
27868 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
27871 static void xprintPrintGetAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27873 int sequence_number
;
27876 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetAttributes");
27879 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27881 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27882 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27883 "%d (xprint-PrintGetAttributes)", sequence_number
);
27885 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27887 f_stringLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27888 proto_tree_add_item(t
, hf_x11_xprint_PrintGetAttributes_reply_stringLen
, tvb
, *offsetp
, 4, byte_order
);
27890 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
27892 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetAttributes_reply_attributes
, f_stringLen
, byte_order
);
27895 static void xprintPrintGetOneAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27898 proto_tree_add_item(t
, hf_x11_xprint_PrintGetOneAttributes_context
, tvb
, *offsetp
, 4, byte_order
);
27900 f_nameLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27901 proto_tree_add_item(t
, hf_x11_xprint_PrintGetOneAttributes_nameLen
, tvb
, *offsetp
, 4, byte_order
);
27903 proto_tree_add_item(t
, hf_x11_xprint_PrintGetOneAttributes_pool
, tvb
, *offsetp
, 1, byte_order
);
27905 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
27907 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetOneAttributes_name
, f_nameLen
, byte_order
);
27908 length
-= f_nameLen
* 1;
27910 static void xprintPrintGetOneAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27912 int sequence_number
;
27915 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetOneAttributes");
27918 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27920 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27921 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27922 "%d (xprint-PrintGetOneAttributes)", sequence_number
);
27924 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27926 f_valueLen
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
27927 proto_tree_add_item(t
, hf_x11_xprint_PrintGetOneAttributes_reply_valueLen
, tvb
, *offsetp
, 4, byte_order
);
27929 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
27931 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintGetOneAttributes_reply_value
, f_valueLen
, byte_order
);
27934 static void xprintPrintSetAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27936 proto_tree_add_item(t
, hf_x11_xprint_PrintSetAttributes_context
, tvb
, *offsetp
, 4, byte_order
);
27938 proto_tree_add_item(t
, hf_x11_xprint_PrintSetAttributes_stringLen
, tvb
, *offsetp
, 4, byte_order
);
27940 proto_tree_add_item(t
, hf_x11_xprint_PrintSetAttributes_pool
, tvb
, *offsetp
, 1, byte_order
);
27942 proto_tree_add_item(t
, hf_x11_xprint_PrintSetAttributes_rule
, tvb
, *offsetp
, 1, byte_order
);
27944 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
27946 listOfByte(tvb
, offsetp
, t
, hf_x11_xprint_PrintSetAttributes_attributes
, (length
- 16) / 1, byte_order
);
27949 static void xprintPrintGetPageDimensions(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
27951 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_context
, tvb
, *offsetp
, 4, byte_order
);
27954 static void xprintPrintGetPageDimensions_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27956 int sequence_number
;
27958 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetPageDimensions");
27961 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27963 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27964 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27965 "%d (xprint-PrintGetPageDimensions)", sequence_number
);
27967 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
27969 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_width
, tvb
, *offsetp
, 2, byte_order
);
27971 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_height
, tvb
, *offsetp
, 2, byte_order
);
27973 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_offset_x
, tvb
, *offsetp
, 2, byte_order
);
27975 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_offset_y
, tvb
, *offsetp
, 2, byte_order
);
27977 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_reproducible_width
, tvb
, *offsetp
, 2, byte_order
);
27979 proto_tree_add_item(t
, hf_x11_xprint_PrintGetPageDimensions_reply_reproducible_height
, tvb
, *offsetp
, 2, byte_order
);
27983 static void xprintPrintQueryScreens(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
27986 static void xprintPrintQueryScreens_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
27988 int sequence_number
;
27991 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintQueryScreens");
27994 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
27996 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
27997 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
27998 "%d (xprint-PrintQueryScreens)", sequence_number
);
28000 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28002 f_listCount
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28003 proto_tree_add_item(t
, hf_x11_xprint_PrintQueryScreens_reply_listCount
, tvb
, *offsetp
, 4, byte_order
);
28005 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28007 listOfCard32(tvb
, offsetp
, t
, hf_x11_xprint_PrintQueryScreens_reply_roots
, hf_x11_xprint_PrintQueryScreens_reply_roots_item
, f_listCount
, byte_order
);
28010 static void xprintPrintSetImageResolution(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28012 proto_tree_add_item(t
, hf_x11_xprint_PrintSetImageResolution_context
, tvb
, *offsetp
, 4, byte_order
);
28014 proto_tree_add_item(t
, hf_x11_xprint_PrintSetImageResolution_image_resolution
, tvb
, *offsetp
, 2, byte_order
);
28017 static void xprintPrintSetImageResolution_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28019 int sequence_number
;
28021 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintSetImageResolution");
28024 proto_tree_add_item(t
, hf_x11_xprint_PrintSetImageResolution_reply_status
, tvb
, *offsetp
, 1, byte_order
);
28026 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28027 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28028 "%d (xprint-PrintSetImageResolution)", sequence_number
);
28030 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28032 proto_tree_add_item(t
, hf_x11_xprint_PrintSetImageResolution_reply_previous_resolutions
, tvb
, *offsetp
, 2, byte_order
);
28036 static void xprintPrintGetImageResolution(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28038 proto_tree_add_item(t
, hf_x11_xprint_PrintGetImageResolution_context
, tvb
, *offsetp
, 4, byte_order
);
28041 static void xprintPrintGetImageResolution_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28043 int sequence_number
;
28045 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-PrintGetImageResolution");
28048 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28050 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28051 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28052 "%d (xprint-PrintGetImageResolution)", sequence_number
);
28054 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28056 proto_tree_add_item(t
, hf_x11_xprint_PrintGetImageResolution_reply_image_resolution
, tvb
, *offsetp
, 2, byte_order
);
28060 static void xprintAttributNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28062 proto_tree_add_item(t
, hf_x11_xprint_AttributNotify_detail
, tvb
, *offsetp
, 1, byte_order
);
28064 CARD16(event_sequencenumber
);
28065 proto_tree_add_item(t
, hf_x11_xprint_AttributNotify_context
, tvb
, *offsetp
, 4, byte_order
);
28069 static const value_string xprint_extension_minor
[] = {
28070 { 0, "PrintQueryVersion" },
28071 { 1, "PrintGetPrinterList" },
28072 { 2, "CreateContext" },
28073 { 3, "PrintSetContext" },
28074 { 4, "PrintGetContext" },
28075 { 5, "PrintDestroyContext" },
28076 { 6, "PrintGetScreenOfContext" },
28077 { 7, "PrintStartJob" },
28078 { 8, "PrintEndJob" },
28079 { 9, "PrintStartDoc" },
28080 { 10, "PrintEndDoc" },
28081 { 11, "PrintPutDocumentData" },
28082 { 12, "PrintGetDocumentData" },
28083 { 13, "PrintStartPage" },
28084 { 14, "PrintEndPage" },
28085 { 15, "PrintSelectInput" },
28086 { 16, "PrintInputSelected" },
28087 { 17, "PrintGetAttributes" },
28088 { 18, "PrintSetAttributes" },
28089 { 19, "PrintGetOneAttributes" },
28090 { 20, "PrintRehashPrinterList" },
28091 { 21, "PrintGetPageDimensions" },
28092 { 22, "PrintQueryScreens" },
28093 { 23, "PrintSetImageResolution" },
28094 { 24, "PrintGetImageResolution" },
28097 static const x11_event_info xprint_events
[] = {
28098 { "xprint-AttributNotify", xprintAttributNotify
},
28101 static const x11_reply_info xprint_replies
[] = {
28102 { 0, xprintPrintQueryVersion_Reply
},
28103 { 1, xprintPrintGetPrinterList_Reply
},
28104 { 4, xprintPrintGetContext_Reply
},
28105 { 6, xprintPrintGetScreenOfContext_Reply
},
28106 { 12, xprintPrintGetDocumentData_Reply
},
28107 { 16, xprintPrintInputSelected_Reply
},
28108 { 17, xprintPrintGetAttributes_Reply
},
28109 { 19, xprintPrintGetOneAttributes_Reply
},
28110 { 21, xprintPrintGetPageDimensions_Reply
},
28111 { 22, xprintPrintQueryScreens_Reply
},
28112 { 23, xprintPrintSetImageResolution_Reply
},
28113 { 24, xprintPrintGetImageResolution_Reply
},
28117 static void dispatch_xprint(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28120 minor
= CARD8(xprint_extension_minor
);
28121 length
= REQUEST_LENGTH();
28123 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
28124 val_to_str(minor
, xprint_extension_minor
,
28125 "<Unknown opcode %d>"));
28128 xprintPrintQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28131 xprintPrintGetPrinterList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28134 xprintCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28137 xprintPrintSetContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28140 xprintPrintGetContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28143 xprintPrintDestroyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28146 xprintPrintGetScreenOfContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28149 xprintPrintStartJob(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28152 xprintPrintEndJob(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28155 xprintPrintStartDoc(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28158 xprintPrintEndDoc(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28161 xprintPrintPutDocumentData(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28164 xprintPrintGetDocumentData(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28167 xprintPrintStartPage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28170 xprintPrintEndPage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28173 xprintPrintSelectInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28176 xprintPrintInputSelected(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28179 xprintPrintGetAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28182 xprintPrintSetAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28185 xprintPrintGetOneAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28188 xprintPrintRehashPrinterList(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28191 xprintPrintGetPageDimensions(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28194 xprintPrintQueryScreens(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28197 xprintPrintSetImageResolution(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28200 xprintPrintGetImageResolution(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28202 /* No need for a default case here, since Unknown is printed above,
28203 and UNDECODED() is taken care of by dissect_x11_request */
28207 static void register_xprint(void)
28209 set_handler("XpExtension", dispatch_xprint
, xprint_errors
, xprint_events
, NULL
, xprint_replies
);
28212 static void xselinuxQueryVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28214 proto_tree_add_item(t
, hf_x11_xselinux_QueryVersion_client_major
, tvb
, *offsetp
, 1, byte_order
);
28216 proto_tree_add_item(t
, hf_x11_xselinux_QueryVersion_client_minor
, tvb
, *offsetp
, 1, byte_order
);
28219 static void xselinuxQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28221 int sequence_number
;
28223 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
28226 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28228 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28229 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28230 "%d (xselinux-QueryVersion)", sequence_number
);
28232 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28234 proto_tree_add_item(t
, hf_x11_xselinux_QueryVersion_reply_server_major
, tvb
, *offsetp
, 2, byte_order
);
28236 proto_tree_add_item(t
, hf_x11_xselinux_QueryVersion_reply_server_minor
, tvb
, *offsetp
, 2, byte_order
);
28240 static void xselinuxSetDeviceCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28243 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28244 proto_tree_add_item(t
, hf_x11_xselinux_SetDeviceCreateContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28246 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetDeviceCreateContext_context
, f_context_len
, byte_order
);
28247 length
-= f_context_len
* 1;
28250 static void xselinuxGetDeviceCreateContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28253 static void xselinuxGetDeviceCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28255 int sequence_number
;
28258 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceCreateContext");
28261 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28263 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28264 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28265 "%d (xselinux-GetDeviceCreateContext)", sequence_number
);
28267 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28269 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28270 proto_tree_add_item(t
, hf_x11_xselinux_GetDeviceCreateContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28272 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28274 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetDeviceCreateContext_reply_context
, f_context_len
, byte_order
);
28277 static void xselinuxSetDeviceContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28280 proto_tree_add_item(t
, hf_x11_xselinux_SetDeviceContext_device
, tvb
, *offsetp
, 4, byte_order
);
28282 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28283 proto_tree_add_item(t
, hf_x11_xselinux_SetDeviceContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28285 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetDeviceContext_context
, f_context_len
, byte_order
);
28286 length
-= f_context_len
* 1;
28289 static void xselinuxGetDeviceContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28291 proto_tree_add_item(t
, hf_x11_xselinux_GetDeviceContext_device
, tvb
, *offsetp
, 4, byte_order
);
28294 static void xselinuxGetDeviceContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28296 int sequence_number
;
28299 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetDeviceContext");
28302 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28304 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28305 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28306 "%d (xselinux-GetDeviceContext)", sequence_number
);
28308 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28310 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28311 proto_tree_add_item(t
, hf_x11_xselinux_GetDeviceContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28313 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28315 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetDeviceContext_reply_context
, f_context_len
, byte_order
);
28318 static void xselinuxSetWindowCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28321 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28322 proto_tree_add_item(t
, hf_x11_xselinux_SetWindowCreateContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28324 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetWindowCreateContext_context
, f_context_len
, byte_order
);
28325 length
-= f_context_len
* 1;
28328 static void xselinuxGetWindowCreateContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28331 static void xselinuxGetWindowCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28333 int sequence_number
;
28336 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetWindowCreateContext");
28339 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28341 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28342 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28343 "%d (xselinux-GetWindowCreateContext)", sequence_number
);
28345 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28347 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28348 proto_tree_add_item(t
, hf_x11_xselinux_GetWindowCreateContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28350 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28352 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetWindowCreateContext_reply_context
, f_context_len
, byte_order
);
28355 static void xselinuxGetWindowContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28357 proto_tree_add_item(t
, hf_x11_xselinux_GetWindowContext_window
, tvb
, *offsetp
, 4, byte_order
);
28360 static void xselinuxGetWindowContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28362 int sequence_number
;
28365 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetWindowContext");
28368 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28370 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28371 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28372 "%d (xselinux-GetWindowContext)", sequence_number
);
28374 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28376 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28377 proto_tree_add_item(t
, hf_x11_xselinux_GetWindowContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28379 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28381 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetWindowContext_reply_context
, f_context_len
, byte_order
);
28384 static int struct_size_xselinux_ListItem(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
28387 int f_data_context_len
;
28388 int f_object_context_len
;
28389 f_object_context_len
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 4, byte_order
);
28390 f_data_context_len
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 8, byte_order
);
28391 size
+= f_object_context_len
* 1;
28392 size
= (size
+ 3) & ~3;
28393 size
+= f_data_context_len
* 1;
28394 size
= (size
+ 3) & ~3;
28398 static void struct_xselinux_ListItem(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
28401 for (i
= 0; i
< count
; i
++) {
28404 int f_object_context_len
;
28405 int f_data_context_len
;
28407 item
= proto_tree_add_item(root
, hf_x11_struct_xselinux_ListItem
, tvb
, *offsetp
, struct_size_xselinux_ListItem(tvb
, offsetp
, byte_order
), ENC_NA
);
28408 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
28409 proto_tree_add_item(t
, hf_x11_struct_xselinux_ListItem_name
, tvb
, *offsetp
, 4, byte_order
);
28411 f_object_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28412 proto_tree_add_item(t
, hf_x11_struct_xselinux_ListItem_object_context_len
, tvb
, *offsetp
, 4, byte_order
);
28414 f_data_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28415 proto_tree_add_item(t
, hf_x11_struct_xselinux_ListItem_data_context_len
, tvb
, *offsetp
, 4, byte_order
);
28417 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xselinux_ListItem_object_context
, f_object_context_len
, byte_order
);
28418 if (*offsetp
% 4) {
28419 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
28420 *offsetp
+= (4 - *offsetp
% 4);
28422 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xselinux_ListItem_data_context
, f_data_context_len
, byte_order
);
28423 if (*offsetp
% 4) {
28424 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
28425 *offsetp
+= (4 - *offsetp
% 4);
28430 static void xselinuxSetPropertyCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28433 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28434 proto_tree_add_item(t
, hf_x11_xselinux_SetPropertyCreateContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28436 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetPropertyCreateContext_context
, f_context_len
, byte_order
);
28437 length
-= f_context_len
* 1;
28440 static void xselinuxGetPropertyCreateContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28443 static void xselinuxGetPropertyCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28445 int sequence_number
;
28448 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPropertyCreateContext");
28451 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28453 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28454 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28455 "%d (xselinux-GetPropertyCreateContext)", sequence_number
);
28457 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28459 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28460 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyCreateContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28462 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28464 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetPropertyCreateContext_reply_context
, f_context_len
, byte_order
);
28467 static void xselinuxSetPropertyUseContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28470 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28471 proto_tree_add_item(t
, hf_x11_xselinux_SetPropertyUseContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28473 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetPropertyUseContext_context
, f_context_len
, byte_order
);
28474 length
-= f_context_len
* 1;
28477 static void xselinuxGetPropertyUseContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28480 static void xselinuxGetPropertyUseContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28482 int sequence_number
;
28485 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPropertyUseContext");
28488 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28490 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28491 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28492 "%d (xselinux-GetPropertyUseContext)", sequence_number
);
28494 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28496 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28497 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyUseContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28499 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28501 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetPropertyUseContext_reply_context
, f_context_len
, byte_order
);
28504 static void xselinuxGetPropertyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28506 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyContext_window
, tvb
, *offsetp
, 4, byte_order
);
28508 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyContext_property
, tvb
, *offsetp
, 4, byte_order
);
28511 static void xselinuxGetPropertyContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28513 int sequence_number
;
28516 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPropertyContext");
28519 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28521 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28522 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28523 "%d (xselinux-GetPropertyContext)", sequence_number
);
28525 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28527 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28528 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28530 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28532 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetPropertyContext_reply_context
, f_context_len
, byte_order
);
28535 static void xselinuxGetPropertyDataContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28537 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyDataContext_window
, tvb
, *offsetp
, 4, byte_order
);
28539 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyDataContext_property
, tvb
, *offsetp
, 4, byte_order
);
28542 static void xselinuxGetPropertyDataContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28544 int sequence_number
;
28547 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPropertyDataContext");
28550 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28552 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28553 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28554 "%d (xselinux-GetPropertyDataContext)", sequence_number
);
28556 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28558 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28559 proto_tree_add_item(t
, hf_x11_xselinux_GetPropertyDataContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28561 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28563 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetPropertyDataContext_reply_context
, f_context_len
, byte_order
);
28566 static void xselinuxListProperties(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28568 proto_tree_add_item(t
, hf_x11_xselinux_ListProperties_window
, tvb
, *offsetp
, 4, byte_order
);
28571 static void xselinuxListProperties_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28573 int sequence_number
;
28574 int f_properties_len
;
28576 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListProperties");
28579 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28581 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28582 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28583 "%d (xselinux-ListProperties)", sequence_number
);
28585 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28587 f_properties_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28588 proto_tree_add_item(t
, hf_x11_xselinux_ListProperties_reply_properties_len
, tvb
, *offsetp
, 4, byte_order
);
28590 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28592 struct_xselinux_ListItem(tvb
, offsetp
, t
, byte_order
, f_properties_len
);
28595 static void xselinuxSetSelectionCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28598 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28599 proto_tree_add_item(t
, hf_x11_xselinux_SetSelectionCreateContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28601 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetSelectionCreateContext_context
, f_context_len
, byte_order
);
28602 length
-= f_context_len
* 1;
28605 static void xselinuxGetSelectionCreateContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28608 static void xselinuxGetSelectionCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28610 int sequence_number
;
28613 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSelectionCreateContext");
28616 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28618 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28619 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28620 "%d (xselinux-GetSelectionCreateContext)", sequence_number
);
28622 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28624 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28625 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionCreateContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28627 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28629 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetSelectionCreateContext_reply_context
, f_context_len
, byte_order
);
28632 static void xselinuxSetSelectionUseContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28635 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28636 proto_tree_add_item(t
, hf_x11_xselinux_SetSelectionUseContext_context_len
, tvb
, *offsetp
, 4, byte_order
);
28638 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_SetSelectionUseContext_context
, f_context_len
, byte_order
);
28639 length
-= f_context_len
* 1;
28642 static void xselinuxGetSelectionUseContext(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28645 static void xselinuxGetSelectionUseContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28647 int sequence_number
;
28650 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSelectionUseContext");
28653 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28655 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28656 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28657 "%d (xselinux-GetSelectionUseContext)", sequence_number
);
28659 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28661 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28662 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionUseContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28664 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28666 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetSelectionUseContext_reply_context
, f_context_len
, byte_order
);
28669 static void xselinuxGetSelectionContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28671 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionContext_selection
, tvb
, *offsetp
, 4, byte_order
);
28674 static void xselinuxGetSelectionContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28676 int sequence_number
;
28679 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSelectionContext");
28682 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28684 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28685 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28686 "%d (xselinux-GetSelectionContext)", sequence_number
);
28688 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28690 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28691 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28693 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28695 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetSelectionContext_reply_context
, f_context_len
, byte_order
);
28698 static void xselinuxGetSelectionDataContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28700 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionDataContext_selection
, tvb
, *offsetp
, 4, byte_order
);
28703 static void xselinuxGetSelectionDataContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28705 int sequence_number
;
28708 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetSelectionDataContext");
28711 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28713 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28714 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28715 "%d (xselinux-GetSelectionDataContext)", sequence_number
);
28717 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28719 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28720 proto_tree_add_item(t
, hf_x11_xselinux_GetSelectionDataContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28722 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28724 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetSelectionDataContext_reply_context
, f_context_len
, byte_order
);
28727 static void xselinuxListSelections(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
28730 static void xselinuxListSelections_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28732 int sequence_number
;
28733 int f_selections_len
;
28735 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListSelections");
28738 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28740 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28741 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28742 "%d (xselinux-ListSelections)", sequence_number
);
28744 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28746 f_selections_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28747 proto_tree_add_item(t
, hf_x11_xselinux_ListSelections_reply_selections_len
, tvb
, *offsetp
, 4, byte_order
);
28749 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28751 struct_xselinux_ListItem(tvb
, offsetp
, t
, byte_order
, f_selections_len
);
28754 static void xselinuxGetClientContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28756 proto_tree_add_item(t
, hf_x11_xselinux_GetClientContext_resource
, tvb
, *offsetp
, 4, byte_order
);
28759 static void xselinuxGetClientContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28761 int sequence_number
;
28764 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetClientContext");
28767 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28769 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28770 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28771 "%d (xselinux-GetClientContext)", sequence_number
);
28773 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28775 f_context_len
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
28776 proto_tree_add_item(t
, hf_x11_xselinux_GetClientContext_reply_context_len
, tvb
, *offsetp
, 4, byte_order
);
28778 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
28780 listOfByte(tvb
, offsetp
, t
, hf_x11_xselinux_GetClientContext_reply_context
, f_context_len
, byte_order
);
28782 static const value_string xselinux_extension_minor
[] = {
28783 { 0, "QueryVersion" },
28784 { 1, "SetDeviceCreateContext" },
28785 { 2, "GetDeviceCreateContext" },
28786 { 3, "SetDeviceContext" },
28787 { 4, "GetDeviceContext" },
28788 { 5, "SetWindowCreateContext" },
28789 { 6, "GetWindowCreateContext" },
28790 { 7, "GetWindowContext" },
28791 { 8, "SetPropertyCreateContext" },
28792 { 9, "GetPropertyCreateContext" },
28793 { 10, "SetPropertyUseContext" },
28794 { 11, "GetPropertyUseContext" },
28795 { 12, "GetPropertyContext" },
28796 { 13, "GetPropertyDataContext" },
28797 { 14, "ListProperties" },
28798 { 15, "SetSelectionCreateContext" },
28799 { 16, "GetSelectionCreateContext" },
28800 { 17, "SetSelectionUseContext" },
28801 { 18, "GetSelectionUseContext" },
28802 { 19, "GetSelectionContext" },
28803 { 20, "GetSelectionDataContext" },
28804 { 21, "ListSelections" },
28805 { 22, "GetClientContext" },
28808 static const x11_event_info xselinux_events
[] = {
28811 static const x11_reply_info xselinux_replies
[] = {
28812 { 0, xselinuxQueryVersion_Reply
},
28813 { 2, xselinuxGetDeviceCreateContext_Reply
},
28814 { 4, xselinuxGetDeviceContext_Reply
},
28815 { 6, xselinuxGetWindowCreateContext_Reply
},
28816 { 7, xselinuxGetWindowContext_Reply
},
28817 { 9, xselinuxGetPropertyCreateContext_Reply
},
28818 { 11, xselinuxGetPropertyUseContext_Reply
},
28819 { 12, xselinuxGetPropertyContext_Reply
},
28820 { 13, xselinuxGetPropertyDataContext_Reply
},
28821 { 14, xselinuxListProperties_Reply
},
28822 { 16, xselinuxGetSelectionCreateContext_Reply
},
28823 { 18, xselinuxGetSelectionUseContext_Reply
},
28824 { 19, xselinuxGetSelectionContext_Reply
},
28825 { 20, xselinuxGetSelectionDataContext_Reply
},
28826 { 21, xselinuxListSelections_Reply
},
28827 { 22, xselinuxGetClientContext_Reply
},
28831 static void dispatch_xselinux(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28834 minor
= CARD8(xselinux_extension_minor
);
28835 length
= REQUEST_LENGTH();
28837 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
28838 val_to_str(minor
, xselinux_extension_minor
,
28839 "<Unknown opcode %d>"));
28842 xselinuxQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28845 xselinuxSetDeviceCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28848 xselinuxGetDeviceCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28851 xselinuxSetDeviceContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28854 xselinuxGetDeviceContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28857 xselinuxSetWindowCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28860 xselinuxGetWindowCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28863 xselinuxGetWindowContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28866 xselinuxSetPropertyCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28869 xselinuxGetPropertyCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28872 xselinuxSetPropertyUseContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28875 xselinuxGetPropertyUseContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28878 xselinuxGetPropertyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28881 xselinuxGetPropertyDataContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28884 xselinuxListProperties(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28887 xselinuxSetSelectionCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28890 xselinuxGetSelectionCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28893 xselinuxSetSelectionUseContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28896 xselinuxGetSelectionUseContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28899 xselinuxGetSelectionContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28902 xselinuxGetSelectionDataContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28905 xselinuxListSelections(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28908 xselinuxGetClientContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
28910 /* No need for a default case here, since Unknown is printed above,
28911 and UNDECODED() is taken care of by dissect_x11_request */
28915 static void register_xselinux(void)
28917 set_handler("SELinux", dispatch_xselinux
, xselinux_errors
, xselinux_events
, NULL
, xselinux_replies
);
28920 static void xtestGetVersion(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28922 proto_tree_add_item(t
, hf_x11_xtest_GetVersion_major_version
, tvb
, *offsetp
, 1, byte_order
);
28924 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
28926 proto_tree_add_item(t
, hf_x11_xtest_GetVersion_minor_version
, tvb
, *offsetp
, 2, byte_order
);
28929 static void xtestGetVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28931 int sequence_number
;
28933 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetVersion");
28936 proto_tree_add_item(t
, hf_x11_xtest_GetVersion_reply_major_version
, tvb
, *offsetp
, 1, byte_order
);
28938 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28939 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28940 "%d (xtest-GetVersion)", sequence_number
);
28942 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28944 proto_tree_add_item(t
, hf_x11_xtest_GetVersion_reply_minor_version
, tvb
, *offsetp
, 2, byte_order
);
28948 static void xtestCompareCursor(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28950 proto_tree_add_item(t
, hf_x11_xtest_CompareCursor_window
, tvb
, *offsetp
, 4, byte_order
);
28952 proto_tree_add_item(t
, hf_x11_xtest_CompareCursor_cursor
, tvb
, *offsetp
, 4, byte_order
);
28955 static void xtestCompareCursor_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
28957 int sequence_number
;
28959 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CompareCursor");
28962 proto_tree_add_item(t
, hf_x11_xtest_CompareCursor_reply_same
, tvb
, *offsetp
, 1, byte_order
);
28964 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
28965 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
28966 "%d (xtest-CompareCursor)", sequence_number
);
28968 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
28972 static void xtestFakeInput(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28974 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_type
, tvb
, *offsetp
, 1, ENC_NA
);
28976 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_detail
, tvb
, *offsetp
, 1, ENC_NA
);
28978 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
28980 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_time
, tvb
, *offsetp
, 4, byte_order
);
28982 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_root
, tvb
, *offsetp
, 4, byte_order
);
28984 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 8, ENC_NA
);
28986 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_rootX
, tvb
, *offsetp
, 2, byte_order
);
28988 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_rootY
, tvb
, *offsetp
, 2, byte_order
);
28990 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 7, ENC_NA
);
28992 proto_tree_add_item(t
, hf_x11_xtest_FakeInput_deviceid
, tvb
, *offsetp
, 1, byte_order
);
28996 static void xtestGrabControl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
28998 proto_tree_add_item(t
, hf_x11_xtest_GrabControl_impervious
, tvb
, *offsetp
, 1, byte_order
);
29000 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29003 static const value_string xtest_extension_minor
[] = {
29004 { 0, "GetVersion" },
29005 { 1, "CompareCursor" },
29006 { 2, "FakeInput" },
29007 { 3, "GrabControl" },
29010 static const x11_event_info xtest_events
[] = {
29013 static const x11_reply_info xtest_replies
[] = {
29014 { 0, xtestGetVersion_Reply
},
29015 { 1, xtestCompareCursor_Reply
},
29019 static void dispatch_xtest(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29022 minor
= CARD8(xtest_extension_minor
);
29023 length
= REQUEST_LENGTH();
29025 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
29026 val_to_str(minor
, xtest_extension_minor
,
29027 "<Unknown opcode %d>"));
29030 xtestGetVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29033 xtestCompareCursor(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29036 xtestFakeInput(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29039 xtestGrabControl(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29041 /* No need for a default case here, since Unknown is printed above,
29042 and UNDECODED() is taken care of by dissect_x11_request */
29046 static void register_xtest(void)
29048 set_handler("XTEST", dispatch_xtest
, xtest_errors
, xtest_events
, NULL
, xtest_replies
);
29051 static void struct_xv_Rational(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29054 for (i
= 0; i
< count
; i
++) {
29058 item
= proto_tree_add_item(root
, hf_x11_struct_xv_Rational
, tvb
, *offsetp
, 8, ENC_NA
);
29059 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29060 proto_tree_add_item(t
, hf_x11_struct_xv_Rational_numerator
, tvb
, *offsetp
, 4, byte_order
);
29062 proto_tree_add_item(t
, hf_x11_struct_xv_Rational_denominator
, tvb
, *offsetp
, 4, byte_order
);
29067 static void struct_xv_Format(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29070 for (i
= 0; i
< count
; i
++) {
29074 item
= proto_tree_add_item(root
, hf_x11_struct_xv_Format
, tvb
, *offsetp
, 8, ENC_NA
);
29075 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29076 proto_tree_add_item(t
, hf_x11_struct_xv_Format_visual
, tvb
, *offsetp
, 4, byte_order
);
29078 proto_tree_add_item(t
, hf_x11_struct_xv_Format_depth
, tvb
, *offsetp
, 1, byte_order
);
29080 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29085 static int struct_size_xv_AdaptorInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
29090 f_name_size
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 4, byte_order
);
29091 f_num_formats
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 8, byte_order
);
29092 size
+= f_name_size
* 1;
29093 size
= (size
+ 3) & ~3;
29094 size
+= f_num_formats
* 8;
29098 static void struct_xv_AdaptorInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29101 for (i
= 0; i
< count
; i
++) {
29107 item
= proto_tree_add_item(root
, hf_x11_struct_xv_AdaptorInfo
, tvb
, *offsetp
, struct_size_xv_AdaptorInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
29108 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29109 proto_tree_add_item(t
, hf_x11_struct_xv_AdaptorInfo_base_id
, tvb
, *offsetp
, 4, byte_order
);
29111 f_name_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29112 proto_tree_add_item(t
, hf_x11_struct_xv_AdaptorInfo_name_size
, tvb
, *offsetp
, 2, byte_order
);
29114 proto_tree_add_item(t
, hf_x11_struct_xv_AdaptorInfo_num_ports
, tvb
, *offsetp
, 2, byte_order
);
29116 f_num_formats
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29117 proto_tree_add_item(t
, hf_x11_struct_xv_AdaptorInfo_num_formats
, tvb
, *offsetp
, 2, byte_order
);
29120 static int* const type_bits
[] = {
29121 &hf_x11_struct_xv_AdaptorInfo_type_mask_InputMask
,
29122 &hf_x11_struct_xv_AdaptorInfo_type_mask_OutputMask
,
29123 &hf_x11_struct_xv_AdaptorInfo_type_mask_VideoMask
,
29124 &hf_x11_struct_xv_AdaptorInfo_type_mask_StillMask
,
29125 &hf_x11_struct_xv_AdaptorInfo_type_mask_ImageMask
,
29128 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xv_AdaptorInfo_type
, ett_x11_rectangle
, type_bits
, byte_order
);
29131 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29133 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xv_AdaptorInfo_name
, f_name_size
, byte_order
);
29134 if (*offsetp
% 4) {
29135 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
29136 *offsetp
+= (4 - *offsetp
% 4);
29138 struct_xv_Format(tvb
, offsetp
, t
, byte_order
, f_num_formats
);
29142 static int struct_size_xv_EncodingInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
29146 f_name_size
= tvb_get_uint16(tvb
, *offsetp
+ size
+ 4, byte_order
);
29147 size
+= f_name_size
* 1;
29148 size
= (size
+ 3) & ~3;
29152 static void struct_xv_EncodingInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29155 for (i
= 0; i
< count
; i
++) {
29160 item
= proto_tree_add_item(root
, hf_x11_struct_xv_EncodingInfo
, tvb
, *offsetp
, struct_size_xv_EncodingInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
29161 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29162 proto_tree_add_item(t
, hf_x11_struct_xv_EncodingInfo_encoding
, tvb
, *offsetp
, 4, byte_order
);
29164 f_name_size
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29165 proto_tree_add_item(t
, hf_x11_struct_xv_EncodingInfo_name_size
, tvb
, *offsetp
, 2, byte_order
);
29167 proto_tree_add_item(t
, hf_x11_struct_xv_EncodingInfo_width
, tvb
, *offsetp
, 2, byte_order
);
29169 proto_tree_add_item(t
, hf_x11_struct_xv_EncodingInfo_height
, tvb
, *offsetp
, 2, byte_order
);
29171 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
29173 struct_xv_Rational(tvb
, offsetp
, t
, byte_order
, 1);
29174 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xv_EncodingInfo_name
, f_name_size
, byte_order
);
29175 if (*offsetp
% 4) {
29176 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
29177 *offsetp
+= (4 - *offsetp
% 4);
29182 static int struct_size_xv_AttributeInfo(tvbuff_t
*tvb _U_
, int *offsetp _U_
, unsigned byte_order _U_
)
29186 f_size
= tvb_get_uint32(tvb
, *offsetp
+ size
+ 12, byte_order
);
29187 size
+= f_size
* 1;
29188 size
= (size
+ 3) & ~3;
29192 static void struct_xv_AttributeInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29195 for (i
= 0; i
< count
; i
++) {
29200 item
= proto_tree_add_item(root
, hf_x11_struct_xv_AttributeInfo
, tvb
, *offsetp
, struct_size_xv_AttributeInfo(tvb
, offsetp
, byte_order
), ENC_NA
);
29201 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29203 static int* const flags_bits
[] = {
29204 &hf_x11_struct_xv_AttributeInfo_flags_mask_Gettable
,
29205 &hf_x11_struct_xv_AttributeInfo_flags_mask_Settable
,
29208 proto_tree_add_bitmask(t
, tvb
, *offsetp
, hf_x11_struct_xv_AttributeInfo_flags
, ett_x11_rectangle
, flags_bits
, byte_order
);
29211 proto_tree_add_item(t
, hf_x11_struct_xv_AttributeInfo_min
, tvb
, *offsetp
, 4, byte_order
);
29213 proto_tree_add_item(t
, hf_x11_struct_xv_AttributeInfo_max
, tvb
, *offsetp
, 4, byte_order
);
29215 f_size
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
29216 proto_tree_add_item(t
, hf_x11_struct_xv_AttributeInfo_size
, tvb
, *offsetp
, 4, byte_order
);
29218 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xv_AttributeInfo_name
, f_size
, byte_order
);
29219 if (*offsetp
% 4) {
29220 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, (4 - *offsetp
% 4), ENC_NA
);
29221 *offsetp
+= (4 - *offsetp
% 4);
29226 static void struct_xv_ImageFormatInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29229 for (i
= 0; i
< count
; i
++) {
29233 item
= proto_tree_add_item(root
, hf_x11_struct_xv_ImageFormatInfo
, tvb
, *offsetp
, 128, ENC_NA
);
29234 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29235 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_id
, tvb
, *offsetp
, 4, byte_order
);
29237 field8(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_type
, byte_order
);
29238 field8(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_byte_order
, byte_order
);
29239 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
29241 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_guid
, 16, byte_order
);
29242 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_bpp
, tvb
, *offsetp
, 1, byte_order
);
29244 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_num_planes
, tvb
, *offsetp
, 1, byte_order
);
29246 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 2, ENC_NA
);
29248 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_depth
, tvb
, *offsetp
, 1, byte_order
);
29250 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29252 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_red_mask
, tvb
, *offsetp
, 4, byte_order
);
29254 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_green_mask
, tvb
, *offsetp
, 4, byte_order
);
29256 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_blue_mask
, tvb
, *offsetp
, 4, byte_order
);
29258 field8(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_format
, byte_order
);
29259 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29261 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_y_sample_bits
, tvb
, *offsetp
, 4, byte_order
);
29263 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_u_sample_bits
, tvb
, *offsetp
, 4, byte_order
);
29265 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_v_sample_bits
, tvb
, *offsetp
, 4, byte_order
);
29267 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vhorz_y_period
, tvb
, *offsetp
, 4, byte_order
);
29269 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vhorz_u_period
, tvb
, *offsetp
, 4, byte_order
);
29271 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vhorz_v_period
, tvb
, *offsetp
, 4, byte_order
);
29273 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vvert_y_period
, tvb
, *offsetp
, 4, byte_order
);
29275 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vvert_u_period
, tvb
, *offsetp
, 4, byte_order
);
29277 proto_tree_add_item(t
, hf_x11_struct_xv_ImageFormatInfo_vvert_v_period
, tvb
, *offsetp
, 4, byte_order
);
29279 listOfByte(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_vcomp_order
, 32, byte_order
);
29280 field8(tvb
, offsetp
, t
, hf_x11_struct_xv_ImageFormatInfo_vscanline_order
, byte_order
);
29281 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 11, ENC_NA
);
29286 static void xvPortNotify(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29288 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29290 CARD16(event_sequencenumber
);
29291 proto_tree_add_item(t
, hf_x11_xv_PortNotify_time
, tvb
, *offsetp
, 4, byte_order
);
29293 proto_tree_add_item(t
, hf_x11_xv_PortNotify_port
, tvb
, *offsetp
, 4, byte_order
);
29295 proto_tree_add_item(t
, hf_x11_xv_PortNotify_attribute
, tvb
, *offsetp
, 4, byte_order
);
29297 proto_tree_add_item(t
, hf_x11_xv_PortNotify_value
, tvb
, *offsetp
, 4, byte_order
);
29302 static void xvQueryExtension(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
29305 static void xvQueryExtension_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29307 int sequence_number
;
29309 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryExtension");
29312 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29314 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29315 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29316 "%d (xv-QueryExtension)", sequence_number
);
29318 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29320 proto_tree_add_item(t
, hf_x11_xv_QueryExtension_reply_major
, tvb
, *offsetp
, 2, byte_order
);
29322 proto_tree_add_item(t
, hf_x11_xv_QueryExtension_reply_minor
, tvb
, *offsetp
, 2, byte_order
);
29326 static void xvQueryAdaptors(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29328 proto_tree_add_item(t
, hf_x11_xv_QueryAdaptors_window
, tvb
, *offsetp
, 4, byte_order
);
29331 static void xvQueryAdaptors_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29333 int sequence_number
;
29334 int f_num_adaptors
;
29336 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryAdaptors");
29339 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29341 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29342 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29343 "%d (xv-QueryAdaptors)", sequence_number
);
29345 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29347 f_num_adaptors
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29348 proto_tree_add_item(t
, hf_x11_xv_QueryAdaptors_reply_num_adaptors
, tvb
, *offsetp
, 2, byte_order
);
29350 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
29352 struct_xv_AdaptorInfo(tvb
, offsetp
, t
, byte_order
, f_num_adaptors
);
29355 static void xvQueryEncodings(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29357 proto_tree_add_item(t
, hf_x11_xv_QueryEncodings_port
, tvb
, *offsetp
, 4, byte_order
);
29360 static void xvQueryEncodings_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29362 int sequence_number
;
29363 int f_num_encodings
;
29365 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryEncodings");
29368 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29370 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29371 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29372 "%d (xv-QueryEncodings)", sequence_number
);
29374 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29376 f_num_encodings
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29377 proto_tree_add_item(t
, hf_x11_xv_QueryEncodings_reply_num_encodings
, tvb
, *offsetp
, 2, byte_order
);
29379 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 22, ENC_NA
);
29381 struct_xv_EncodingInfo(tvb
, offsetp
, t
, byte_order
, f_num_encodings
);
29384 static void xvGrabPort(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29386 proto_tree_add_item(t
, hf_x11_xv_GrabPort_port
, tvb
, *offsetp
, 4, byte_order
);
29388 field32(tvb
, offsetp
, t
, hf_x11_xv_GrabPort_time
, byte_order
);
29390 static void xvGrabPort_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29392 int sequence_number
;
29394 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GrabPort");
29397 field8(tvb
, offsetp
, t
, hf_x11_xv_GrabPort_reply_result
, byte_order
);
29398 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29399 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29400 "%d (xv-GrabPort)", sequence_number
);
29402 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29406 static void xvUngrabPort(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29408 proto_tree_add_item(t
, hf_x11_xv_UngrabPort_port
, tvb
, *offsetp
, 4, byte_order
);
29410 field32(tvb
, offsetp
, t
, hf_x11_xv_UngrabPort_time
, byte_order
);
29413 static void xvPutVideo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29415 proto_tree_add_item(t
, hf_x11_xv_PutVideo_port
, tvb
, *offsetp
, 4, byte_order
);
29417 proto_tree_add_item(t
, hf_x11_xv_PutVideo_drawable
, tvb
, *offsetp
, 4, byte_order
);
29419 proto_tree_add_item(t
, hf_x11_xv_PutVideo_gc
, tvb
, *offsetp
, 4, byte_order
);
29421 proto_tree_add_item(t
, hf_x11_xv_PutVideo_vid_x
, tvb
, *offsetp
, 2, byte_order
);
29423 proto_tree_add_item(t
, hf_x11_xv_PutVideo_vid_y
, tvb
, *offsetp
, 2, byte_order
);
29425 proto_tree_add_item(t
, hf_x11_xv_PutVideo_vid_w
, tvb
, *offsetp
, 2, byte_order
);
29427 proto_tree_add_item(t
, hf_x11_xv_PutVideo_vid_h
, tvb
, *offsetp
, 2, byte_order
);
29429 proto_tree_add_item(t
, hf_x11_xv_PutVideo_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29431 proto_tree_add_item(t
, hf_x11_xv_PutVideo_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29433 proto_tree_add_item(t
, hf_x11_xv_PutVideo_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29435 proto_tree_add_item(t
, hf_x11_xv_PutVideo_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29439 static void xvPutStill(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29441 proto_tree_add_item(t
, hf_x11_xv_PutStill_port
, tvb
, *offsetp
, 4, byte_order
);
29443 proto_tree_add_item(t
, hf_x11_xv_PutStill_drawable
, tvb
, *offsetp
, 4, byte_order
);
29445 proto_tree_add_item(t
, hf_x11_xv_PutStill_gc
, tvb
, *offsetp
, 4, byte_order
);
29447 proto_tree_add_item(t
, hf_x11_xv_PutStill_vid_x
, tvb
, *offsetp
, 2, byte_order
);
29449 proto_tree_add_item(t
, hf_x11_xv_PutStill_vid_y
, tvb
, *offsetp
, 2, byte_order
);
29451 proto_tree_add_item(t
, hf_x11_xv_PutStill_vid_w
, tvb
, *offsetp
, 2, byte_order
);
29453 proto_tree_add_item(t
, hf_x11_xv_PutStill_vid_h
, tvb
, *offsetp
, 2, byte_order
);
29455 proto_tree_add_item(t
, hf_x11_xv_PutStill_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29457 proto_tree_add_item(t
, hf_x11_xv_PutStill_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29459 proto_tree_add_item(t
, hf_x11_xv_PutStill_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29461 proto_tree_add_item(t
, hf_x11_xv_PutStill_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29465 static void xvGetVideo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29467 proto_tree_add_item(t
, hf_x11_xv_GetVideo_port
, tvb
, *offsetp
, 4, byte_order
);
29469 proto_tree_add_item(t
, hf_x11_xv_GetVideo_drawable
, tvb
, *offsetp
, 4, byte_order
);
29471 proto_tree_add_item(t
, hf_x11_xv_GetVideo_gc
, tvb
, *offsetp
, 4, byte_order
);
29473 proto_tree_add_item(t
, hf_x11_xv_GetVideo_vid_x
, tvb
, *offsetp
, 2, byte_order
);
29475 proto_tree_add_item(t
, hf_x11_xv_GetVideo_vid_y
, tvb
, *offsetp
, 2, byte_order
);
29477 proto_tree_add_item(t
, hf_x11_xv_GetVideo_vid_w
, tvb
, *offsetp
, 2, byte_order
);
29479 proto_tree_add_item(t
, hf_x11_xv_GetVideo_vid_h
, tvb
, *offsetp
, 2, byte_order
);
29481 proto_tree_add_item(t
, hf_x11_xv_GetVideo_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29483 proto_tree_add_item(t
, hf_x11_xv_GetVideo_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29485 proto_tree_add_item(t
, hf_x11_xv_GetVideo_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29487 proto_tree_add_item(t
, hf_x11_xv_GetVideo_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29491 static void xvGetStill(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29493 proto_tree_add_item(t
, hf_x11_xv_GetStill_port
, tvb
, *offsetp
, 4, byte_order
);
29495 proto_tree_add_item(t
, hf_x11_xv_GetStill_drawable
, tvb
, *offsetp
, 4, byte_order
);
29497 proto_tree_add_item(t
, hf_x11_xv_GetStill_gc
, tvb
, *offsetp
, 4, byte_order
);
29499 proto_tree_add_item(t
, hf_x11_xv_GetStill_vid_x
, tvb
, *offsetp
, 2, byte_order
);
29501 proto_tree_add_item(t
, hf_x11_xv_GetStill_vid_y
, tvb
, *offsetp
, 2, byte_order
);
29503 proto_tree_add_item(t
, hf_x11_xv_GetStill_vid_w
, tvb
, *offsetp
, 2, byte_order
);
29505 proto_tree_add_item(t
, hf_x11_xv_GetStill_vid_h
, tvb
, *offsetp
, 2, byte_order
);
29507 proto_tree_add_item(t
, hf_x11_xv_GetStill_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29509 proto_tree_add_item(t
, hf_x11_xv_GetStill_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29511 proto_tree_add_item(t
, hf_x11_xv_GetStill_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29513 proto_tree_add_item(t
, hf_x11_xv_GetStill_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29517 static void xvStopVideo(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29519 proto_tree_add_item(t
, hf_x11_xv_StopVideo_port
, tvb
, *offsetp
, 4, byte_order
);
29521 proto_tree_add_item(t
, hf_x11_xv_StopVideo_drawable
, tvb
, *offsetp
, 4, byte_order
);
29525 static void xvSelectVideoNotify(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29527 proto_tree_add_item(t
, hf_x11_xv_SelectVideoNotify_drawable
, tvb
, *offsetp
, 4, byte_order
);
29529 proto_tree_add_item(t
, hf_x11_xv_SelectVideoNotify_onoff
, tvb
, *offsetp
, 1, byte_order
);
29531 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29535 static void xvSelectPortNotify(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29537 proto_tree_add_item(t
, hf_x11_xv_SelectPortNotify_port
, tvb
, *offsetp
, 4, byte_order
);
29539 proto_tree_add_item(t
, hf_x11_xv_SelectPortNotify_onoff
, tvb
, *offsetp
, 1, byte_order
);
29541 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29545 static void xvQueryBestSize(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29547 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_port
, tvb
, *offsetp
, 4, byte_order
);
29549 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_vid_w
, tvb
, *offsetp
, 2, byte_order
);
29551 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_vid_h
, tvb
, *offsetp
, 2, byte_order
);
29553 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29555 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29557 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_motion
, tvb
, *offsetp
, 1, byte_order
);
29559 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29562 static void xvQueryBestSize_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29564 int sequence_number
;
29566 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryBestSize");
29569 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29571 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29572 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29573 "%d (xv-QueryBestSize)", sequence_number
);
29575 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29577 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_reply_actual_width
, tvb
, *offsetp
, 2, byte_order
);
29579 proto_tree_add_item(t
, hf_x11_xv_QueryBestSize_reply_actual_height
, tvb
, *offsetp
, 2, byte_order
);
29583 static void xvSetPortAttribute(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29585 proto_tree_add_item(t
, hf_x11_xv_SetPortAttribute_port
, tvb
, *offsetp
, 4, byte_order
);
29587 proto_tree_add_item(t
, hf_x11_xv_SetPortAttribute_attribute
, tvb
, *offsetp
, 4, byte_order
);
29589 proto_tree_add_item(t
, hf_x11_xv_SetPortAttribute_value
, tvb
, *offsetp
, 4, byte_order
);
29593 static void xvGetPortAttribute(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29595 proto_tree_add_item(t
, hf_x11_xv_GetPortAttribute_port
, tvb
, *offsetp
, 4, byte_order
);
29597 proto_tree_add_item(t
, hf_x11_xv_GetPortAttribute_attribute
, tvb
, *offsetp
, 4, byte_order
);
29600 static void xvGetPortAttribute_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29602 int sequence_number
;
29604 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-GetPortAttribute");
29607 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29609 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29610 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29611 "%d (xv-GetPortAttribute)", sequence_number
);
29613 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29615 proto_tree_add_item(t
, hf_x11_xv_GetPortAttribute_reply_value
, tvb
, *offsetp
, 4, byte_order
);
29619 static void xvQueryPortAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29621 proto_tree_add_item(t
, hf_x11_xv_QueryPortAttributes_port
, tvb
, *offsetp
, 4, byte_order
);
29624 static void xvQueryPortAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29626 int sequence_number
;
29627 int f_num_attributes
;
29629 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryPortAttributes");
29632 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29634 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29635 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29636 "%d (xv-QueryPortAttributes)", sequence_number
);
29638 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29640 f_num_attributes
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
29641 proto_tree_add_item(t
, hf_x11_xv_QueryPortAttributes_reply_num_attributes
, tvb
, *offsetp
, 4, byte_order
);
29643 proto_tree_add_item(t
, hf_x11_xv_QueryPortAttributes_reply_text_size
, tvb
, *offsetp
, 4, byte_order
);
29645 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 16, ENC_NA
);
29647 struct_xv_AttributeInfo(tvb
, offsetp
, t
, byte_order
, f_num_attributes
);
29650 static void xvListImageFormats(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29652 proto_tree_add_item(t
, hf_x11_xv_ListImageFormats_port
, tvb
, *offsetp
, 4, byte_order
);
29655 static void xvListImageFormats_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29657 int sequence_number
;
29660 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListImageFormats");
29663 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29665 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29666 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29667 "%d (xv-ListImageFormats)", sequence_number
);
29669 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29671 f_num_formats
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
29672 proto_tree_add_item(t
, hf_x11_xv_ListImageFormats_reply_num_formats
, tvb
, *offsetp
, 4, byte_order
);
29674 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
29676 struct_xv_ImageFormatInfo(tvb
, offsetp
, t
, byte_order
, f_num_formats
);
29679 static void xvQueryImageAttributes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29681 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_port
, tvb
, *offsetp
, 4, byte_order
);
29683 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_id
, tvb
, *offsetp
, 4, byte_order
);
29685 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_width
, tvb
, *offsetp
, 2, byte_order
);
29687 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_height
, tvb
, *offsetp
, 2, byte_order
);
29690 static void xvQueryImageAttributes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29692 int sequence_number
;
29695 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryImageAttributes");
29698 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29700 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29701 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29702 "%d (xv-QueryImageAttributes)", sequence_number
);
29704 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29706 f_num_planes
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
29707 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_reply_num_planes
, tvb
, *offsetp
, 4, byte_order
);
29709 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_reply_data_size
, tvb
, *offsetp
, 4, byte_order
);
29711 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_reply_width
, tvb
, *offsetp
, 2, byte_order
);
29713 proto_tree_add_item(t
, hf_x11_xv_QueryImageAttributes_reply_height
, tvb
, *offsetp
, 2, byte_order
);
29715 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
29717 listOfCard32(tvb
, offsetp
, t
, hf_x11_xv_QueryImageAttributes_reply_pitches
, hf_x11_xv_QueryImageAttributes_reply_pitches_item
, f_num_planes
, byte_order
);
29718 listOfCard32(tvb
, offsetp
, t
, hf_x11_xv_QueryImageAttributes_reply_offsets
, hf_x11_xv_QueryImageAttributes_reply_offsets_item
, f_num_planes
, byte_order
);
29721 static void xvPutImage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29723 proto_tree_add_item(t
, hf_x11_xv_PutImage_port
, tvb
, *offsetp
, 4, byte_order
);
29725 proto_tree_add_item(t
, hf_x11_xv_PutImage_drawable
, tvb
, *offsetp
, 4, byte_order
);
29727 proto_tree_add_item(t
, hf_x11_xv_PutImage_gc
, tvb
, *offsetp
, 4, byte_order
);
29729 proto_tree_add_item(t
, hf_x11_xv_PutImage_id
, tvb
, *offsetp
, 4, byte_order
);
29731 proto_tree_add_item(t
, hf_x11_xv_PutImage_src_x
, tvb
, *offsetp
, 2, byte_order
);
29733 proto_tree_add_item(t
, hf_x11_xv_PutImage_src_y
, tvb
, *offsetp
, 2, byte_order
);
29735 proto_tree_add_item(t
, hf_x11_xv_PutImage_src_w
, tvb
, *offsetp
, 2, byte_order
);
29737 proto_tree_add_item(t
, hf_x11_xv_PutImage_src_h
, tvb
, *offsetp
, 2, byte_order
);
29739 proto_tree_add_item(t
, hf_x11_xv_PutImage_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29741 proto_tree_add_item(t
, hf_x11_xv_PutImage_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29743 proto_tree_add_item(t
, hf_x11_xv_PutImage_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29745 proto_tree_add_item(t
, hf_x11_xv_PutImage_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29747 proto_tree_add_item(t
, hf_x11_xv_PutImage_width
, tvb
, *offsetp
, 2, byte_order
);
29749 proto_tree_add_item(t
, hf_x11_xv_PutImage_height
, tvb
, *offsetp
, 2, byte_order
);
29751 listOfByte(tvb
, offsetp
, t
, hf_x11_xv_PutImage_data
, (length
- 40) / 1, byte_order
);
29754 static void xvShmPutImage(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29756 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_port
, tvb
, *offsetp
, 4, byte_order
);
29758 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_drawable
, tvb
, *offsetp
, 4, byte_order
);
29760 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_gc
, tvb
, *offsetp
, 4, byte_order
);
29762 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_shmseg
, tvb
, *offsetp
, 4, byte_order
);
29764 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_id
, tvb
, *offsetp
, 4, byte_order
);
29766 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_offset
, tvb
, *offsetp
, 4, byte_order
);
29768 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_src_x
, tvb
, *offsetp
, 2, byte_order
);
29770 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_src_y
, tvb
, *offsetp
, 2, byte_order
);
29772 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_src_w
, tvb
, *offsetp
, 2, byte_order
);
29774 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_src_h
, tvb
, *offsetp
, 2, byte_order
);
29776 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_drw_x
, tvb
, *offsetp
, 2, byte_order
);
29778 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_drw_y
, tvb
, *offsetp
, 2, byte_order
);
29780 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_drw_w
, tvb
, *offsetp
, 2, byte_order
);
29782 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_drw_h
, tvb
, *offsetp
, 2, byte_order
);
29784 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_width
, tvb
, *offsetp
, 2, byte_order
);
29786 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_height
, tvb
, *offsetp
, 2, byte_order
);
29788 proto_tree_add_item(t
, hf_x11_xv_ShmPutImage_send_event
, tvb
, *offsetp
, 1, byte_order
);
29790 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 3, ENC_NA
);
29793 static const value_string xv_extension_minor
[] = {
29794 { 0, "QueryExtension" },
29795 { 1, "QueryAdaptors" },
29796 { 2, "QueryEncodings" },
29798 { 4, "UngrabPort" },
29803 { 9, "StopVideo" },
29804 { 10, "SelectVideoNotify" },
29805 { 11, "SelectPortNotify" },
29806 { 12, "QueryBestSize" },
29807 { 13, "SetPortAttribute" },
29808 { 14, "GetPortAttribute" },
29809 { 15, "QueryPortAttributes" },
29810 { 16, "ListImageFormats" },
29811 { 17, "QueryImageAttributes" },
29812 { 18, "PutImage" },
29813 { 19, "ShmPutImage" },
29816 static const x11_event_info xv_events
[] = {
29817 { "xv-PortNotify", xvPortNotify
},
29820 static const x11_reply_info xv_replies
[] = {
29821 { 0, xvQueryExtension_Reply
},
29822 { 1, xvQueryAdaptors_Reply
},
29823 { 2, xvQueryEncodings_Reply
},
29824 { 3, xvGrabPort_Reply
},
29825 { 12, xvQueryBestSize_Reply
},
29826 { 14, xvGetPortAttribute_Reply
},
29827 { 15, xvQueryPortAttributes_Reply
},
29828 { 16, xvListImageFormats_Reply
},
29829 { 17, xvQueryImageAttributes_Reply
},
29833 static void dispatch_xv(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29836 minor
= CARD8(xv_extension_minor
);
29837 length
= REQUEST_LENGTH();
29839 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
29840 val_to_str(minor
, xv_extension_minor
,
29841 "<Unknown opcode %d>"));
29844 xvQueryExtension(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29847 xvQueryAdaptors(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29850 xvQueryEncodings(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29853 xvGrabPort(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29856 xvUngrabPort(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29859 xvPutVideo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29862 xvPutStill(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29865 xvGetVideo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29868 xvGetStill(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29871 xvStopVideo(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29874 xvSelectVideoNotify(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29877 xvSelectPortNotify(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29880 xvQueryBestSize(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29883 xvSetPortAttribute(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29886 xvGetPortAttribute(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29889 xvQueryPortAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29892 xvListImageFormats(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29895 xvQueryImageAttributes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29898 xvPutImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29901 xvShmPutImage(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
29903 /* No need for a default case here, since Unknown is printed above,
29904 and UNDECODED() is taken care of by dissect_x11_request */
29908 static void register_xv(void)
29910 set_handler("XVideo", dispatch_xv
, xv_errors
, xv_events
, NULL
, xv_replies
);
29913 static void struct_xvmc_SurfaceInfo(tvbuff_t
*tvb
, int *offsetp
, proto_tree
*root
, unsigned byte_order _U_
, int count
)
29916 for (i
= 0; i
< count
; i
++) {
29920 item
= proto_tree_add_item(root
, hf_x11_struct_xvmc_SurfaceInfo
, tvb
, *offsetp
, 24, ENC_NA
);
29921 t
= proto_item_add_subtree(item
, ett_x11_rectangle
);
29922 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_id
, tvb
, *offsetp
, 4, byte_order
);
29924 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_chroma_format
, tvb
, *offsetp
, 2, byte_order
);
29926 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_pad0
, tvb
, *offsetp
, 2, byte_order
);
29928 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_max_width
, tvb
, *offsetp
, 2, byte_order
);
29930 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_max_height
, tvb
, *offsetp
, 2, byte_order
);
29932 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_subpicture_max_width
, tvb
, *offsetp
, 2, byte_order
);
29934 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_subpicture_max_height
, tvb
, *offsetp
, 2, byte_order
);
29936 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_mc_type
, tvb
, *offsetp
, 4, byte_order
);
29938 proto_tree_add_item(t
, hf_x11_struct_xvmc_SurfaceInfo_flags
, tvb
, *offsetp
, 4, byte_order
);
29943 static void xvmcQueryVersion(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, int *offsetp _U_
, proto_tree
*t _U_
, unsigned byte_order _U_
, int length _U_
)
29946 static void xvmcQueryVersion_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29948 int sequence_number
;
29950 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-QueryVersion");
29953 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29955 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29956 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29957 "%d (xvmc-QueryVersion)", sequence_number
);
29959 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29961 proto_tree_add_item(t
, hf_x11_xvmc_QueryVersion_reply_major
, tvb
, *offsetp
, 4, byte_order
);
29963 proto_tree_add_item(t
, hf_x11_xvmc_QueryVersion_reply_minor
, tvb
, *offsetp
, 4, byte_order
);
29967 static void xvmcListSurfaceTypes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29969 proto_tree_add_item(t
, hf_x11_xvmc_ListSurfaceTypes_port_id
, tvb
, *offsetp
, 4, byte_order
);
29972 static void xvmcListSurfaceTypes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
29974 int sequence_number
;
29977 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListSurfaceTypes");
29980 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
29982 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
29983 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
29984 "%d (xvmc-ListSurfaceTypes)", sequence_number
);
29986 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
29988 f_num
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
29989 proto_tree_add_item(t
, hf_x11_xvmc_ListSurfaceTypes_reply_num
, tvb
, *offsetp
, 4, byte_order
);
29991 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
29993 struct_xvmc_SurfaceInfo(tvb
, offsetp
, t
, byte_order
, f_num
);
29996 static void xvmcCreateContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
29998 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_context_id
, tvb
, *offsetp
, 4, byte_order
);
30000 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_port_id
, tvb
, *offsetp
, 4, byte_order
);
30002 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_surface_id
, tvb
, *offsetp
, 4, byte_order
);
30004 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_width
, tvb
, *offsetp
, 2, byte_order
);
30006 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_height
, tvb
, *offsetp
, 2, byte_order
);
30008 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_flags
, tvb
, *offsetp
, 4, byte_order
);
30011 static void xvmcCreateContext_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
30013 int sequence_number
;
30016 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateContext");
30019 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
30021 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
30022 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
30023 "%d (xvmc-CreateContext)", sequence_number
);
30025 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
30026 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
30028 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_reply_width_actual
, tvb
, *offsetp
, 2, byte_order
);
30030 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_reply_height_actual
, tvb
, *offsetp
, 2, byte_order
);
30032 proto_tree_add_item(t
, hf_x11_xvmc_CreateContext_reply_flags_return
, tvb
, *offsetp
, 4, byte_order
);
30034 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
30036 listOfCard32(tvb
, offsetp
, t
, hf_x11_xvmc_CreateContext_reply_priv_data
, hf_x11_xvmc_CreateContext_reply_priv_data_item
, f_length
, byte_order
);
30039 static void xvmcDestroyContext(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30041 proto_tree_add_item(t
, hf_x11_xvmc_DestroyContext_context_id
, tvb
, *offsetp
, 4, byte_order
);
30045 static void xvmcCreateSurface(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30047 proto_tree_add_item(t
, hf_x11_xvmc_CreateSurface_surface_id
, tvb
, *offsetp
, 4, byte_order
);
30049 proto_tree_add_item(t
, hf_x11_xvmc_CreateSurface_context_id
, tvb
, *offsetp
, 4, byte_order
);
30052 static void xvmcCreateSurface_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
30054 int sequence_number
;
30057 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateSurface");
30060 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
30062 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
30063 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
30064 "%d (xvmc-CreateSurface)", sequence_number
);
30066 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
30067 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
30069 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 24, ENC_NA
);
30071 listOfCard32(tvb
, offsetp
, t
, hf_x11_xvmc_CreateSurface_reply_priv_data
, hf_x11_xvmc_CreateSurface_reply_priv_data_item
, f_length
, byte_order
);
30074 static void xvmcDestroySurface(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30076 proto_tree_add_item(t
, hf_x11_xvmc_DestroySurface_surface_id
, tvb
, *offsetp
, 4, byte_order
);
30080 static void xvmcCreateSubpicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30082 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_subpicture_id
, tvb
, *offsetp
, 4, byte_order
);
30084 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_context
, tvb
, *offsetp
, 4, byte_order
);
30086 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_xvimage_id
, tvb
, *offsetp
, 4, byte_order
);
30088 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_width
, tvb
, *offsetp
, 2, byte_order
);
30090 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_height
, tvb
, *offsetp
, 2, byte_order
);
30093 static void xvmcCreateSubpicture_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
30095 int sequence_number
;
30098 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-CreateSubpicture");
30101 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
30103 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
30104 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
30105 "%d (xvmc-CreateSubpicture)", sequence_number
);
30107 f_length
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
30108 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
30110 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_reply_width_actual
, tvb
, *offsetp
, 2, byte_order
);
30112 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_reply_height_actual
, tvb
, *offsetp
, 2, byte_order
);
30114 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_reply_num_palette_entries
, tvb
, *offsetp
, 2, byte_order
);
30116 proto_tree_add_item(t
, hf_x11_xvmc_CreateSubpicture_reply_entry_bytes
, tvb
, *offsetp
, 2, byte_order
);
30118 listOfByte(tvb
, offsetp
, t
, hf_x11_xvmc_CreateSubpicture_reply_component_order
, 4, byte_order
);
30119 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 12, ENC_NA
);
30121 listOfCard32(tvb
, offsetp
, t
, hf_x11_xvmc_CreateSubpicture_reply_priv_data
, hf_x11_xvmc_CreateSubpicture_reply_priv_data_item
, f_length
, byte_order
);
30124 static void xvmcDestroySubpicture(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30126 proto_tree_add_item(t
, hf_x11_xvmc_DestroySubpicture_subpicture_id
, tvb
, *offsetp
, 4, byte_order
);
30130 static void xvmcListSubpictureTypes(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, int *offsetp
, proto_tree
*t
, unsigned byte_order
, int length _U_
)
30132 proto_tree_add_item(t
, hf_x11_xvmc_ListSubpictureTypes_port_id
, tvb
, *offsetp
, 4, byte_order
);
30134 proto_tree_add_item(t
, hf_x11_xvmc_ListSubpictureTypes_surface_id
, tvb
, *offsetp
, 4, byte_order
);
30137 static void xvmcListSubpictureTypes_Reply(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
30139 int sequence_number
;
30142 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-ListSubpictureTypes");
30145 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 1, ENC_NA
);
30147 sequence_number
= tvb_get_uint16(tvb
, *offsetp
, byte_order
);
30148 proto_tree_add_uint_format_value(t
, hf_x11_reply_sequencenumber
, tvb
, *offsetp
, 2, sequence_number
,
30149 "%d (xvmc-ListSubpictureTypes)", sequence_number
);
30151 proto_tree_add_item(t
, hf_x11_replylength
, tvb
, *offsetp
, 4, byte_order
);
30153 f_num
= tvb_get_uint32(tvb
, *offsetp
, byte_order
);
30154 proto_tree_add_item(t
, hf_x11_xvmc_ListSubpictureTypes_reply_num
, tvb
, *offsetp
, 4, byte_order
);
30156 proto_tree_add_item(t
, hf_x11_unused
, tvb
, *offsetp
, 20, ENC_NA
);
30158 struct_xv_ImageFormatInfo(tvb
, offsetp
, t
, byte_order
, f_num
);
30160 static const value_string xvmc_extension_minor
[] = {
30161 { 0, "QueryVersion" },
30162 { 1, "ListSurfaceTypes" },
30163 { 2, "CreateContext" },
30164 { 3, "DestroyContext" },
30165 { 4, "CreateSurface" },
30166 { 5, "DestroySurface" },
30167 { 6, "CreateSubpicture" },
30168 { 7, "DestroySubpicture" },
30169 { 8, "ListSubpictureTypes" },
30172 static const x11_event_info xvmc_events
[] = {
30175 static const x11_reply_info xvmc_replies
[] = {
30176 { 0, xvmcQueryVersion_Reply
},
30177 { 1, xvmcListSurfaceTypes_Reply
},
30178 { 2, xvmcCreateContext_Reply
},
30179 { 4, xvmcCreateSurface_Reply
},
30180 { 6, xvmcCreateSubpicture_Reply
},
30181 { 8, xvmcListSubpictureTypes_Reply
},
30185 static void dispatch_xvmc(tvbuff_t
*tvb
, packet_info
*pinfo
, int *offsetp
, proto_tree
*t
, unsigned byte_order
)
30188 minor
= CARD8(xvmc_extension_minor
);
30189 length
= REQUEST_LENGTH();
30191 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "-%s",
30192 val_to_str(minor
, xvmc_extension_minor
,
30193 "<Unknown opcode %d>"));
30196 xvmcQueryVersion(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30199 xvmcListSurfaceTypes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30202 xvmcCreateContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30205 xvmcDestroyContext(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30208 xvmcCreateSurface(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30211 xvmcDestroySurface(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30214 xvmcCreateSubpicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30217 xvmcDestroySubpicture(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30220 xvmcListSubpictureTypes(tvb
, pinfo
, offsetp
, t
, byte_order
, length
);
30222 /* No need for a default case here, since Unknown is printed above,
30223 and UNDECODED() is taken care of by dissect_x11_request */
30227 static void register_xvmc(void)
30229 set_handler("XVideo-MotionCompensation", dispatch_xvmc
, xvmc_errors
, xvmc_events
, NULL
, xvmc_replies
);
30231 static void register_x11_extensions(void)
30234 register_composite();
30242 register_present();
30247 register_screensaver();
30251 register_xc_misc();
30253 register_xf86dri();
30254 register_xf86vidmode();
30256 register_xinerama();
30260 register_xselinux();