HACK: 2nd try to match RowsetProperties
[wireshark-wip.git] / epan / dissectors / x11-extension-implementation.h
bloba443b7ec1a7aa580ab6a482dea47157f22fb367c
1 /* Do not modify this file. */
2 /* It was automatically generated by ../../tools/process-x11-xcb.pl
3 using xcbproto version 1.8-2-gc0d65da */
4 /* $Id$ */
6 /*
7 * Copyright 2008, 2009 Open Text Corporation <pharris[AT]opentext.com>
9 * Wireshark - Network traffic analyzer
10 * By Gerald Combs <gerald[AT]wireshark.org>
11 * Copyright 1998 Gerald Combs
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option) any later version.
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
23 * You should have received a copy of the GNU General Public License along
24 * with this program; if not, write to the Free Software Foundation, Inc.,
25 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
28 #if defined(__GNUC__)
29 #pragma GCC diagnostic ignored "-Wunused-but-set-variable"
30 #endif
32 #include "x11-glx-render-enum.h"
34 static void mesa_CallList(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
36 proto_tree_add_item(t, hf_x11_glx_render_CallList_list, tvb, *offsetp, 4, byte_order);
37 *offsetp += 4;
40 static void mesa_CallLists(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
42 int n;
43 n = VALUE32(tvb, *offsetp);
44 proto_tree_add_item(t, hf_x11_glx_render_CallLists_n, tvb, *offsetp, 4, byte_order);
45 *offsetp += 4;
46 proto_tree_add_item(t, hf_x11_glx_render_CallLists_type, tvb, *offsetp, 4, byte_order);
47 *offsetp += 4;
48 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CallLists_lists, (length - 8) / 1, byte_order);
51 static void mesa_ListBase(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
53 proto_tree_add_item(t, hf_x11_glx_render_ListBase_base, tvb, *offsetp, 4, byte_order);
54 *offsetp += 4;
57 static void mesa_Begin(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
59 proto_tree_add_item(t, hf_x11_glx_render_Begin_mode, tvb, *offsetp, 4, byte_order);
60 *offsetp += 4;
63 static void mesa_Bitmap(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
65 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_swapbytes, tvb, *offsetp, 1, byte_order);
66 *offsetp += 1;
67 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_lsbfirst, tvb, *offsetp, 1, byte_order);
68 *offsetp += 1;
69 UNUSED(2);
70 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_rowlength, tvb, *offsetp, 4, byte_order);
71 *offsetp += 4;
72 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_skiprows, tvb, *offsetp, 4, byte_order);
73 *offsetp += 4;
74 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_skippixels, tvb, *offsetp, 4, byte_order);
75 *offsetp += 4;
76 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_alignment, tvb, *offsetp, 4, byte_order);
77 *offsetp += 4;
78 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_width, tvb, *offsetp, 4, byte_order);
79 *offsetp += 4;
80 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_height, tvb, *offsetp, 4, byte_order);
81 *offsetp += 4;
82 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_xorig, tvb, *offsetp, 4, byte_order);
83 *offsetp += 4;
84 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_yorig, tvb, *offsetp, 4, byte_order);
85 *offsetp += 4;
86 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_xmove, tvb, *offsetp, 4, byte_order);
87 *offsetp += 4;
88 proto_tree_add_item(t, hf_x11_glx_render_Bitmap_ymove, tvb, *offsetp, 4, byte_order);
89 *offsetp += 4;
90 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Bitmap_bitmap, (length - 44) / 1, byte_order);
93 static void mesa_Color3bv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
95 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Color3bv_v, 3, byte_order);
98 static void mesa_Color3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
100 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Color3dv_v, hf_x11_glx_render_Color3dv_v_item, 3, byte_order);
103 static void mesa_Color3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
105 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Color3fv_v, hf_x11_glx_render_Color3fv_v_item, 3, byte_order);
108 static void mesa_Color3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
110 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Color3iv_v, hf_x11_glx_render_Color3iv_v_item, 3, byte_order);
113 static void mesa_Color3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
115 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Color3sv_v, hf_x11_glx_render_Color3sv_v_item, 3, byte_order);
118 static void mesa_Color3ubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
120 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Color3ubv_v, 3, byte_order);
123 static void mesa_Color3uiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
125 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_Color3uiv_v, hf_x11_glx_render_Color3uiv_v_item, 3, byte_order);
128 static void mesa_Color3usv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
130 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_Color3usv_v, hf_x11_glx_render_Color3usv_v_item, 3, byte_order);
133 static void mesa_Color4bv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
135 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Color4bv_v, 4, byte_order);
138 static void mesa_Color4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
140 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Color4dv_v, hf_x11_glx_render_Color4dv_v_item, 4, byte_order);
143 static void mesa_Color4fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
145 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Color4fv_v, hf_x11_glx_render_Color4fv_v_item, 4, byte_order);
148 static void mesa_Color4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
150 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Color4iv_v, hf_x11_glx_render_Color4iv_v_item, 4, byte_order);
153 static void mesa_Color4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
155 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Color4sv_v, hf_x11_glx_render_Color4sv_v_item, 4, byte_order);
158 static void mesa_Color4ubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
160 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Color4ubv_v, 4, byte_order);
163 static void mesa_Color4uiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
165 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_Color4uiv_v, hf_x11_glx_render_Color4uiv_v_item, 4, byte_order);
168 static void mesa_Color4usv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
170 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_Color4usv_v, hf_x11_glx_render_Color4usv_v_item, 4, byte_order);
173 static void mesa_EdgeFlagv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
175 listOfByte(tvb, offsetp, t, hf_x11_glx_render_EdgeFlagv_flag, 1, byte_order);
178 static void mesa_End(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
182 static void mesa_Indexdv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
184 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Indexdv_c, hf_x11_glx_render_Indexdv_c_item, 1, byte_order);
187 static void mesa_Indexfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
189 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Indexfv_c, hf_x11_glx_render_Indexfv_c_item, 1, byte_order);
192 static void mesa_Indexiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
194 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Indexiv_c, hf_x11_glx_render_Indexiv_c_item, 1, byte_order);
197 static void mesa_Indexsv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
199 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Indexsv_c, hf_x11_glx_render_Indexsv_c_item, 1, byte_order);
202 static void mesa_Normal3bv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
204 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Normal3bv_v, 3, byte_order);
207 static void mesa_Normal3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
209 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Normal3dv_v, hf_x11_glx_render_Normal3dv_v_item, 3, byte_order);
212 static void mesa_Normal3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
214 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Normal3fv_v, hf_x11_glx_render_Normal3fv_v_item, 3, byte_order);
217 static void mesa_Normal3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
219 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Normal3iv_v, hf_x11_glx_render_Normal3iv_v_item, 3, byte_order);
222 static void mesa_Normal3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
224 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Normal3sv_v, hf_x11_glx_render_Normal3sv_v_item, 3, byte_order);
227 static void mesa_RasterPos2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
229 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_RasterPos2dv_v, hf_x11_glx_render_RasterPos2dv_v_item, 2, byte_order);
232 static void mesa_RasterPos2fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
234 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_RasterPos2fv_v, hf_x11_glx_render_RasterPos2fv_v_item, 2, byte_order);
237 static void mesa_RasterPos2iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
239 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_RasterPos2iv_v, hf_x11_glx_render_RasterPos2iv_v_item, 2, byte_order);
242 static void mesa_RasterPos2sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
244 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_RasterPos2sv_v, hf_x11_glx_render_RasterPos2sv_v_item, 2, byte_order);
247 static void mesa_RasterPos3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
249 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_RasterPos3dv_v, hf_x11_glx_render_RasterPos3dv_v_item, 3, byte_order);
252 static void mesa_RasterPos3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
254 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_RasterPos3fv_v, hf_x11_glx_render_RasterPos3fv_v_item, 3, byte_order);
257 static void mesa_RasterPos3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
259 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_RasterPos3iv_v, hf_x11_glx_render_RasterPos3iv_v_item, 3, byte_order);
262 static void mesa_RasterPos3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
264 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_RasterPos3sv_v, hf_x11_glx_render_RasterPos3sv_v_item, 3, byte_order);
267 static void mesa_RasterPos4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
269 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_RasterPos4dv_v, hf_x11_glx_render_RasterPos4dv_v_item, 4, byte_order);
272 static void mesa_RasterPos4fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
274 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_RasterPos4fv_v, hf_x11_glx_render_RasterPos4fv_v_item, 4, byte_order);
277 static void mesa_RasterPos4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
279 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_RasterPos4iv_v, hf_x11_glx_render_RasterPos4iv_v_item, 4, byte_order);
282 static void mesa_RasterPos4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
284 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_RasterPos4sv_v, hf_x11_glx_render_RasterPos4sv_v_item, 4, byte_order);
287 static void mesa_Rectdv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
289 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Rectdv_v1, hf_x11_glx_render_Rectdv_v1_item, 2, byte_order);
290 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Rectdv_v2, hf_x11_glx_render_Rectdv_v2_item, 2, byte_order);
293 static void mesa_Rectfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
295 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Rectfv_v1, hf_x11_glx_render_Rectfv_v1_item, 2, byte_order);
296 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Rectfv_v2, hf_x11_glx_render_Rectfv_v2_item, 2, byte_order);
299 static void mesa_Rectiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
301 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Rectiv_v1, hf_x11_glx_render_Rectiv_v1_item, 2, byte_order);
302 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Rectiv_v2, hf_x11_glx_render_Rectiv_v2_item, 2, byte_order);
305 static void mesa_Rectsv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
307 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Rectsv_v1, hf_x11_glx_render_Rectsv_v1_item, 2, byte_order);
308 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Rectsv_v2, hf_x11_glx_render_Rectsv_v2_item, 2, byte_order);
311 static void mesa_TexCoord1dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
313 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_TexCoord1dv_v, hf_x11_glx_render_TexCoord1dv_v_item, 1, byte_order);
316 static void mesa_TexCoord1fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
318 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexCoord1fv_v, hf_x11_glx_render_TexCoord1fv_v_item, 1, byte_order);
321 static void mesa_TexCoord1iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
323 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexCoord1iv_v, hf_x11_glx_render_TexCoord1iv_v_item, 1, byte_order);
326 static void mesa_TexCoord1sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
328 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_TexCoord1sv_v, hf_x11_glx_render_TexCoord1sv_v_item, 1, byte_order);
331 static void mesa_TexCoord2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
333 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_TexCoord2dv_v, hf_x11_glx_render_TexCoord2dv_v_item, 2, byte_order);
336 static void mesa_TexCoord2fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
338 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexCoord2fv_v, hf_x11_glx_render_TexCoord2fv_v_item, 2, byte_order);
341 static void mesa_TexCoord2iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
343 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexCoord2iv_v, hf_x11_glx_render_TexCoord2iv_v_item, 2, byte_order);
346 static void mesa_TexCoord2sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
348 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_TexCoord2sv_v, hf_x11_glx_render_TexCoord2sv_v_item, 2, byte_order);
351 static void mesa_TexCoord3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
353 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_TexCoord3dv_v, hf_x11_glx_render_TexCoord3dv_v_item, 3, byte_order);
356 static void mesa_TexCoord3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
358 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexCoord3fv_v, hf_x11_glx_render_TexCoord3fv_v_item, 3, byte_order);
361 static void mesa_TexCoord3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
363 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexCoord3iv_v, hf_x11_glx_render_TexCoord3iv_v_item, 3, byte_order);
366 static void mesa_TexCoord3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
368 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_TexCoord3sv_v, hf_x11_glx_render_TexCoord3sv_v_item, 3, byte_order);
371 static void mesa_TexCoord4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
373 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_TexCoord4dv_v, hf_x11_glx_render_TexCoord4dv_v_item, 4, byte_order);
376 static void mesa_TexCoord4fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
378 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexCoord4fv_v, hf_x11_glx_render_TexCoord4fv_v_item, 4, byte_order);
381 static void mesa_TexCoord4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
383 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexCoord4iv_v, hf_x11_glx_render_TexCoord4iv_v_item, 4, byte_order);
386 static void mesa_TexCoord4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
388 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_TexCoord4sv_v, hf_x11_glx_render_TexCoord4sv_v_item, 4, byte_order);
391 static void mesa_Vertex2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
393 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Vertex2dv_v, hf_x11_glx_render_Vertex2dv_v_item, 2, byte_order);
396 static void mesa_Vertex2fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
398 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Vertex2fv_v, hf_x11_glx_render_Vertex2fv_v_item, 2, byte_order);
401 static void mesa_Vertex2iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
403 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Vertex2iv_v, hf_x11_glx_render_Vertex2iv_v_item, 2, byte_order);
406 static void mesa_Vertex2sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
408 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Vertex2sv_v, hf_x11_glx_render_Vertex2sv_v_item, 2, byte_order);
411 static void mesa_Vertex3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
413 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Vertex3dv_v, hf_x11_glx_render_Vertex3dv_v_item, 3, byte_order);
416 static void mesa_Vertex3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
418 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Vertex3fv_v, hf_x11_glx_render_Vertex3fv_v_item, 3, byte_order);
421 static void mesa_Vertex3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
423 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Vertex3iv_v, hf_x11_glx_render_Vertex3iv_v_item, 3, byte_order);
426 static void mesa_Vertex3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
428 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Vertex3sv_v, hf_x11_glx_render_Vertex3sv_v_item, 3, byte_order);
431 static void mesa_Vertex4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
433 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Vertex4dv_v, hf_x11_glx_render_Vertex4dv_v_item, 4, byte_order);
436 static void mesa_Vertex4fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
438 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Vertex4fv_v, hf_x11_glx_render_Vertex4fv_v_item, 4, byte_order);
441 static void mesa_Vertex4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
443 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Vertex4iv_v, hf_x11_glx_render_Vertex4iv_v_item, 4, byte_order);
446 static void mesa_Vertex4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
448 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_Vertex4sv_v, hf_x11_glx_render_Vertex4sv_v_item, 4, byte_order);
451 static void mesa_ClipPlane(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
453 proto_tree_add_item(t, hf_x11_glx_render_ClipPlane_plane, tvb, *offsetp, 4, byte_order);
454 *offsetp += 4;
455 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ClipPlane_equation, hf_x11_glx_render_ClipPlane_equation_item, 4, byte_order);
458 static void mesa_ColorMaterial(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
460 proto_tree_add_item(t, hf_x11_glx_render_ColorMaterial_face, tvb, *offsetp, 4, byte_order);
461 *offsetp += 4;
462 proto_tree_add_item(t, hf_x11_glx_render_ColorMaterial_mode, tvb, *offsetp, 4, byte_order);
463 *offsetp += 4;
466 static void mesa_CullFace(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
468 proto_tree_add_item(t, hf_x11_glx_render_CullFace_mode, tvb, *offsetp, 4, byte_order);
469 *offsetp += 4;
472 static void mesa_Fogf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
474 proto_tree_add_item(t, hf_x11_glx_render_Fogf_pname, tvb, *offsetp, 4, byte_order);
475 *offsetp += 4;
476 proto_tree_add_item(t, hf_x11_glx_render_Fogf_param, tvb, *offsetp, 4, byte_order);
477 *offsetp += 4;
480 static void mesa_Fogfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
482 proto_tree_add_item(t, hf_x11_glx_render_Fogfv_pname, tvb, *offsetp, 4, byte_order);
483 *offsetp += 4;
484 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Fogfv_params, hf_x11_glx_render_Fogfv_params_item, (length - 4) / 4, byte_order);
487 static void mesa_Fogi(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
489 proto_tree_add_item(t, hf_x11_glx_render_Fogi_pname, tvb, *offsetp, 4, byte_order);
490 *offsetp += 4;
491 proto_tree_add_item(t, hf_x11_glx_render_Fogi_param, tvb, *offsetp, 4, byte_order);
492 *offsetp += 4;
495 static void mesa_Fogiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
497 proto_tree_add_item(t, hf_x11_glx_render_Fogiv_pname, tvb, *offsetp, 4, byte_order);
498 *offsetp += 4;
499 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Fogiv_params, hf_x11_glx_render_Fogiv_params_item, (length - 4) / 4, byte_order);
502 static void mesa_FrontFace(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
504 proto_tree_add_item(t, hf_x11_glx_render_FrontFace_mode, tvb, *offsetp, 4, byte_order);
505 *offsetp += 4;
508 static void mesa_Hint(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
510 proto_tree_add_item(t, hf_x11_glx_render_Hint_target, tvb, *offsetp, 4, byte_order);
511 *offsetp += 4;
512 proto_tree_add_item(t, hf_x11_glx_render_Hint_mode, tvb, *offsetp, 4, byte_order);
513 *offsetp += 4;
516 static void mesa_Lightf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
518 proto_tree_add_item(t, hf_x11_glx_render_Lightf_light, tvb, *offsetp, 4, byte_order);
519 *offsetp += 4;
520 proto_tree_add_item(t, hf_x11_glx_render_Lightf_pname, tvb, *offsetp, 4, byte_order);
521 *offsetp += 4;
522 proto_tree_add_item(t, hf_x11_glx_render_Lightf_param, tvb, *offsetp, 4, byte_order);
523 *offsetp += 4;
526 static void mesa_Lightfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
528 proto_tree_add_item(t, hf_x11_glx_render_Lightfv_light, tvb, *offsetp, 4, byte_order);
529 *offsetp += 4;
530 proto_tree_add_item(t, hf_x11_glx_render_Lightfv_pname, tvb, *offsetp, 4, byte_order);
531 *offsetp += 4;
532 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Lightfv_params, hf_x11_glx_render_Lightfv_params_item, (length - 8) / 4, byte_order);
535 static void mesa_Lighti(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
537 proto_tree_add_item(t, hf_x11_glx_render_Lighti_light, tvb, *offsetp, 4, byte_order);
538 *offsetp += 4;
539 proto_tree_add_item(t, hf_x11_glx_render_Lighti_pname, tvb, *offsetp, 4, byte_order);
540 *offsetp += 4;
541 proto_tree_add_item(t, hf_x11_glx_render_Lighti_param, tvb, *offsetp, 4, byte_order);
542 *offsetp += 4;
545 static void mesa_Lightiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
547 proto_tree_add_item(t, hf_x11_glx_render_Lightiv_light, tvb, *offsetp, 4, byte_order);
548 *offsetp += 4;
549 proto_tree_add_item(t, hf_x11_glx_render_Lightiv_pname, tvb, *offsetp, 4, byte_order);
550 *offsetp += 4;
551 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Lightiv_params, hf_x11_glx_render_Lightiv_params_item, (length - 8) / 4, byte_order);
554 static void mesa_LightModelf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
556 proto_tree_add_item(t, hf_x11_glx_render_LightModelf_pname, tvb, *offsetp, 4, byte_order);
557 *offsetp += 4;
558 proto_tree_add_item(t, hf_x11_glx_render_LightModelf_param, tvb, *offsetp, 4, byte_order);
559 *offsetp += 4;
562 static void mesa_LightModelfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
564 proto_tree_add_item(t, hf_x11_glx_render_LightModelfv_pname, tvb, *offsetp, 4, byte_order);
565 *offsetp += 4;
566 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_LightModelfv_params, hf_x11_glx_render_LightModelfv_params_item, (length - 4) / 4, byte_order);
569 static void mesa_LightModeli(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
571 proto_tree_add_item(t, hf_x11_glx_render_LightModeli_pname, tvb, *offsetp, 4, byte_order);
572 *offsetp += 4;
573 proto_tree_add_item(t, hf_x11_glx_render_LightModeli_param, tvb, *offsetp, 4, byte_order);
574 *offsetp += 4;
577 static void mesa_LightModeliv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
579 proto_tree_add_item(t, hf_x11_glx_render_LightModeliv_pname, tvb, *offsetp, 4, byte_order);
580 *offsetp += 4;
581 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_LightModeliv_params, hf_x11_glx_render_LightModeliv_params_item, (length - 4) / 4, byte_order);
584 static void mesa_LineStipple(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
586 proto_tree_add_item(t, hf_x11_glx_render_LineStipple_factor, tvb, *offsetp, 4, byte_order);
587 *offsetp += 4;
588 proto_tree_add_item(t, hf_x11_glx_render_LineStipple_pattern, tvb, *offsetp, 2, byte_order);
589 *offsetp += 2;
592 static void mesa_LineWidth(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
594 proto_tree_add_item(t, hf_x11_glx_render_LineWidth_width, tvb, *offsetp, 4, byte_order);
595 *offsetp += 4;
598 static void mesa_Materialf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
600 proto_tree_add_item(t, hf_x11_glx_render_Materialf_face, tvb, *offsetp, 4, byte_order);
601 *offsetp += 4;
602 proto_tree_add_item(t, hf_x11_glx_render_Materialf_pname, tvb, *offsetp, 4, byte_order);
603 *offsetp += 4;
604 proto_tree_add_item(t, hf_x11_glx_render_Materialf_param, tvb, *offsetp, 4, byte_order);
605 *offsetp += 4;
608 static void mesa_Materialfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
610 proto_tree_add_item(t, hf_x11_glx_render_Materialfv_face, tvb, *offsetp, 4, byte_order);
611 *offsetp += 4;
612 proto_tree_add_item(t, hf_x11_glx_render_Materialfv_pname, tvb, *offsetp, 4, byte_order);
613 *offsetp += 4;
614 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Materialfv_params, hf_x11_glx_render_Materialfv_params_item, (length - 8) / 4, byte_order);
617 static void mesa_Materiali(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
619 proto_tree_add_item(t, hf_x11_glx_render_Materiali_face, tvb, *offsetp, 4, byte_order);
620 *offsetp += 4;
621 proto_tree_add_item(t, hf_x11_glx_render_Materiali_pname, tvb, *offsetp, 4, byte_order);
622 *offsetp += 4;
623 proto_tree_add_item(t, hf_x11_glx_render_Materiali_param, tvb, *offsetp, 4, byte_order);
624 *offsetp += 4;
627 static void mesa_Materialiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
629 proto_tree_add_item(t, hf_x11_glx_render_Materialiv_face, tvb, *offsetp, 4, byte_order);
630 *offsetp += 4;
631 proto_tree_add_item(t, hf_x11_glx_render_Materialiv_pname, tvb, *offsetp, 4, byte_order);
632 *offsetp += 4;
633 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_Materialiv_params, hf_x11_glx_render_Materialiv_params_item, (length - 8) / 4, byte_order);
636 static void mesa_PointSize(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
638 proto_tree_add_item(t, hf_x11_glx_render_PointSize_size, tvb, *offsetp, 4, byte_order);
639 *offsetp += 4;
642 static void mesa_PolygonMode(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
644 proto_tree_add_item(t, hf_x11_glx_render_PolygonMode_face, tvb, *offsetp, 4, byte_order);
645 *offsetp += 4;
646 proto_tree_add_item(t, hf_x11_glx_render_PolygonMode_mode, tvb, *offsetp, 4, byte_order);
647 *offsetp += 4;
650 static void mesa_PolygonStipple(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
652 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_swapbytes, tvb, *offsetp, 1, byte_order);
653 *offsetp += 1;
654 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_lsbfirst, tvb, *offsetp, 1, byte_order);
655 *offsetp += 1;
656 UNUSED(2);
657 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_rowlength, tvb, *offsetp, 4, byte_order);
658 *offsetp += 4;
659 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_skiprows, tvb, *offsetp, 4, byte_order);
660 *offsetp += 4;
661 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_skippixels, tvb, *offsetp, 4, byte_order);
662 *offsetp += 4;
663 proto_tree_add_item(t, hf_x11_glx_render_PolygonStipple_alignment, tvb, *offsetp, 4, byte_order);
664 *offsetp += 4;
665 listOfByte(tvb, offsetp, t, hf_x11_glx_render_PolygonStipple_mask, (length - 20) / 1, byte_order);
668 static void mesa_Scissor(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
670 proto_tree_add_item(t, hf_x11_glx_render_Scissor_x, tvb, *offsetp, 4, byte_order);
671 *offsetp += 4;
672 proto_tree_add_item(t, hf_x11_glx_render_Scissor_y, tvb, *offsetp, 4, byte_order);
673 *offsetp += 4;
674 proto_tree_add_item(t, hf_x11_glx_render_Scissor_width, tvb, *offsetp, 4, byte_order);
675 *offsetp += 4;
676 proto_tree_add_item(t, hf_x11_glx_render_Scissor_height, tvb, *offsetp, 4, byte_order);
677 *offsetp += 4;
680 static void mesa_ShadeModel(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
682 proto_tree_add_item(t, hf_x11_glx_render_ShadeModel_mode, tvb, *offsetp, 4, byte_order);
683 *offsetp += 4;
686 static void mesa_TexParameterf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
688 proto_tree_add_item(t, hf_x11_glx_render_TexParameterf_target, tvb, *offsetp, 4, byte_order);
689 *offsetp += 4;
690 proto_tree_add_item(t, hf_x11_glx_render_TexParameterf_pname, tvb, *offsetp, 4, byte_order);
691 *offsetp += 4;
692 proto_tree_add_item(t, hf_x11_glx_render_TexParameterf_param, tvb, *offsetp, 4, byte_order);
693 *offsetp += 4;
696 static void mesa_TexParameterfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
698 proto_tree_add_item(t, hf_x11_glx_render_TexParameterfv_target, tvb, *offsetp, 4, byte_order);
699 *offsetp += 4;
700 proto_tree_add_item(t, hf_x11_glx_render_TexParameterfv_pname, tvb, *offsetp, 4, byte_order);
701 *offsetp += 4;
702 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexParameterfv_params, hf_x11_glx_render_TexParameterfv_params_item, (length - 8) / 4, byte_order);
705 static void mesa_TexParameteri(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
707 proto_tree_add_item(t, hf_x11_glx_render_TexParameteri_target, tvb, *offsetp, 4, byte_order);
708 *offsetp += 4;
709 proto_tree_add_item(t, hf_x11_glx_render_TexParameteri_pname, tvb, *offsetp, 4, byte_order);
710 *offsetp += 4;
711 proto_tree_add_item(t, hf_x11_glx_render_TexParameteri_param, tvb, *offsetp, 4, byte_order);
712 *offsetp += 4;
715 static void mesa_TexParameteriv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
717 proto_tree_add_item(t, hf_x11_glx_render_TexParameteriv_target, tvb, *offsetp, 4, byte_order);
718 *offsetp += 4;
719 proto_tree_add_item(t, hf_x11_glx_render_TexParameteriv_pname, tvb, *offsetp, 4, byte_order);
720 *offsetp += 4;
721 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexParameteriv_params, hf_x11_glx_render_TexParameteriv_params_item, (length - 8) / 4, byte_order);
724 static void mesa_TexImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
726 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_swapbytes, tvb, *offsetp, 1, byte_order);
727 *offsetp += 1;
728 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_lsbfirst, tvb, *offsetp, 1, byte_order);
729 *offsetp += 1;
730 UNUSED(2);
731 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_rowlength, tvb, *offsetp, 4, byte_order);
732 *offsetp += 4;
733 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_skiprows, tvb, *offsetp, 4, byte_order);
734 *offsetp += 4;
735 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_skippixels, tvb, *offsetp, 4, byte_order);
736 *offsetp += 4;
737 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_alignment, tvb, *offsetp, 4, byte_order);
738 *offsetp += 4;
739 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_target, tvb, *offsetp, 4, byte_order);
740 *offsetp += 4;
741 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_level, tvb, *offsetp, 4, byte_order);
742 *offsetp += 4;
743 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_internalformat, tvb, *offsetp, 4, byte_order);
744 *offsetp += 4;
745 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_width, tvb, *offsetp, 4, byte_order);
746 *offsetp += 4;
747 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_border, tvb, *offsetp, 4, byte_order);
748 *offsetp += 4;
749 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_format, tvb, *offsetp, 4, byte_order);
750 *offsetp += 4;
751 proto_tree_add_item(t, hf_x11_glx_render_TexImage1D_type, tvb, *offsetp, 4, byte_order);
752 *offsetp += 4;
753 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexImage1D_pixels, (length - 48) / 1, byte_order);
756 static void mesa_TexImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
758 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_swapbytes, tvb, *offsetp, 1, byte_order);
759 *offsetp += 1;
760 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_lsbfirst, tvb, *offsetp, 1, byte_order);
761 *offsetp += 1;
762 UNUSED(2);
763 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_rowlength, tvb, *offsetp, 4, byte_order);
764 *offsetp += 4;
765 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_skiprows, tvb, *offsetp, 4, byte_order);
766 *offsetp += 4;
767 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_skippixels, tvb, *offsetp, 4, byte_order);
768 *offsetp += 4;
769 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_alignment, tvb, *offsetp, 4, byte_order);
770 *offsetp += 4;
771 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_target, tvb, *offsetp, 4, byte_order);
772 *offsetp += 4;
773 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_level, tvb, *offsetp, 4, byte_order);
774 *offsetp += 4;
775 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_internalformat, tvb, *offsetp, 4, byte_order);
776 *offsetp += 4;
777 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_width, tvb, *offsetp, 4, byte_order);
778 *offsetp += 4;
779 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_height, tvb, *offsetp, 4, byte_order);
780 *offsetp += 4;
781 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_border, tvb, *offsetp, 4, byte_order);
782 *offsetp += 4;
783 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_format, tvb, *offsetp, 4, byte_order);
784 *offsetp += 4;
785 proto_tree_add_item(t, hf_x11_glx_render_TexImage2D_type, tvb, *offsetp, 4, byte_order);
786 *offsetp += 4;
787 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexImage2D_pixels, (length - 52) / 1, byte_order);
790 static void mesa_TexEnvf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
792 proto_tree_add_item(t, hf_x11_glx_render_TexEnvf_target, tvb, *offsetp, 4, byte_order);
793 *offsetp += 4;
794 proto_tree_add_item(t, hf_x11_glx_render_TexEnvf_pname, tvb, *offsetp, 4, byte_order);
795 *offsetp += 4;
796 proto_tree_add_item(t, hf_x11_glx_render_TexEnvf_param, tvb, *offsetp, 4, byte_order);
797 *offsetp += 4;
800 static void mesa_TexEnvfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
802 proto_tree_add_item(t, hf_x11_glx_render_TexEnvfv_target, tvb, *offsetp, 4, byte_order);
803 *offsetp += 4;
804 proto_tree_add_item(t, hf_x11_glx_render_TexEnvfv_pname, tvb, *offsetp, 4, byte_order);
805 *offsetp += 4;
806 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexEnvfv_params, hf_x11_glx_render_TexEnvfv_params_item, (length - 8) / 4, byte_order);
809 static void mesa_TexEnvi(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
811 proto_tree_add_item(t, hf_x11_glx_render_TexEnvi_target, tvb, *offsetp, 4, byte_order);
812 *offsetp += 4;
813 proto_tree_add_item(t, hf_x11_glx_render_TexEnvi_pname, tvb, *offsetp, 4, byte_order);
814 *offsetp += 4;
815 proto_tree_add_item(t, hf_x11_glx_render_TexEnvi_param, tvb, *offsetp, 4, byte_order);
816 *offsetp += 4;
819 static void mesa_TexEnviv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
821 proto_tree_add_item(t, hf_x11_glx_render_TexEnviv_target, tvb, *offsetp, 4, byte_order);
822 *offsetp += 4;
823 proto_tree_add_item(t, hf_x11_glx_render_TexEnviv_pname, tvb, *offsetp, 4, byte_order);
824 *offsetp += 4;
825 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexEnviv_params, hf_x11_glx_render_TexEnviv_params_item, (length - 8) / 4, byte_order);
828 static void mesa_TexGend(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
830 proto_tree_add_item(t, hf_x11_glx_render_TexGend_coord, tvb, *offsetp, 4, byte_order);
831 *offsetp += 4;
832 proto_tree_add_item(t, hf_x11_glx_render_TexGend_pname, tvb, *offsetp, 4, byte_order);
833 *offsetp += 4;
834 proto_tree_add_item(t, hf_x11_glx_render_TexGend_param, tvb, *offsetp, 8, byte_order);
835 *offsetp += 8;
838 static void mesa_TexGendv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
840 proto_tree_add_item(t, hf_x11_glx_render_TexGendv_coord, tvb, *offsetp, 4, byte_order);
841 *offsetp += 4;
842 proto_tree_add_item(t, hf_x11_glx_render_TexGendv_pname, tvb, *offsetp, 4, byte_order);
843 *offsetp += 4;
844 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_TexGendv_params, hf_x11_glx_render_TexGendv_params_item, (length - 8) / 8, byte_order);
847 static void mesa_TexGenf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
849 proto_tree_add_item(t, hf_x11_glx_render_TexGenf_coord, tvb, *offsetp, 4, byte_order);
850 *offsetp += 4;
851 proto_tree_add_item(t, hf_x11_glx_render_TexGenf_pname, tvb, *offsetp, 4, byte_order);
852 *offsetp += 4;
853 proto_tree_add_item(t, hf_x11_glx_render_TexGenf_param, tvb, *offsetp, 4, byte_order);
854 *offsetp += 4;
857 static void mesa_TexGenfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
859 proto_tree_add_item(t, hf_x11_glx_render_TexGenfv_coord, tvb, *offsetp, 4, byte_order);
860 *offsetp += 4;
861 proto_tree_add_item(t, hf_x11_glx_render_TexGenfv_pname, tvb, *offsetp, 4, byte_order);
862 *offsetp += 4;
863 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexGenfv_params, hf_x11_glx_render_TexGenfv_params_item, (length - 8) / 4, byte_order);
866 static void mesa_TexGeni(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
868 proto_tree_add_item(t, hf_x11_glx_render_TexGeni_coord, tvb, *offsetp, 4, byte_order);
869 *offsetp += 4;
870 proto_tree_add_item(t, hf_x11_glx_render_TexGeni_pname, tvb, *offsetp, 4, byte_order);
871 *offsetp += 4;
872 proto_tree_add_item(t, hf_x11_glx_render_TexGeni_param, tvb, *offsetp, 4, byte_order);
873 *offsetp += 4;
876 static void mesa_TexGeniv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
878 proto_tree_add_item(t, hf_x11_glx_render_TexGeniv_coord, tvb, *offsetp, 4, byte_order);
879 *offsetp += 4;
880 proto_tree_add_item(t, hf_x11_glx_render_TexGeniv_pname, tvb, *offsetp, 4, byte_order);
881 *offsetp += 4;
882 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_TexGeniv_params, hf_x11_glx_render_TexGeniv_params_item, (length - 8) / 4, byte_order);
885 static void mesa_InitNames(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
889 static void mesa_LoadName(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
891 proto_tree_add_item(t, hf_x11_glx_render_LoadName_name, tvb, *offsetp, 4, byte_order);
892 *offsetp += 4;
895 static void mesa_PassThrough(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
897 proto_tree_add_item(t, hf_x11_glx_render_PassThrough_token, tvb, *offsetp, 4, byte_order);
898 *offsetp += 4;
901 static void mesa_PopName(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
905 static void mesa_PushName(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
907 proto_tree_add_item(t, hf_x11_glx_render_PushName_name, tvb, *offsetp, 4, byte_order);
908 *offsetp += 4;
911 static void mesa_DrawBuffer(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
913 proto_tree_add_item(t, hf_x11_glx_render_DrawBuffer_mode, tvb, *offsetp, 4, byte_order);
914 *offsetp += 4;
917 static void mesa_Clear(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
919 proto_tree_add_item(t, hf_x11_glx_render_Clear_mask, tvb, *offsetp, 4, byte_order);
920 *offsetp += 4;
923 static void mesa_ClearAccum(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
925 proto_tree_add_item(t, hf_x11_glx_render_ClearAccum_red, tvb, *offsetp, 4, byte_order);
926 *offsetp += 4;
927 proto_tree_add_item(t, hf_x11_glx_render_ClearAccum_green, tvb, *offsetp, 4, byte_order);
928 *offsetp += 4;
929 proto_tree_add_item(t, hf_x11_glx_render_ClearAccum_blue, tvb, *offsetp, 4, byte_order);
930 *offsetp += 4;
931 proto_tree_add_item(t, hf_x11_glx_render_ClearAccum_alpha, tvb, *offsetp, 4, byte_order);
932 *offsetp += 4;
935 static void mesa_ClearIndex(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
937 proto_tree_add_item(t, hf_x11_glx_render_ClearIndex_c, tvb, *offsetp, 4, byte_order);
938 *offsetp += 4;
941 static void mesa_ClearColor(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
943 proto_tree_add_item(t, hf_x11_glx_render_ClearColor_red, tvb, *offsetp, 4, byte_order);
944 *offsetp += 4;
945 proto_tree_add_item(t, hf_x11_glx_render_ClearColor_green, tvb, *offsetp, 4, byte_order);
946 *offsetp += 4;
947 proto_tree_add_item(t, hf_x11_glx_render_ClearColor_blue, tvb, *offsetp, 4, byte_order);
948 *offsetp += 4;
949 proto_tree_add_item(t, hf_x11_glx_render_ClearColor_alpha, tvb, *offsetp, 4, byte_order);
950 *offsetp += 4;
953 static void mesa_ClearStencil(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
955 proto_tree_add_item(t, hf_x11_glx_render_ClearStencil_s, tvb, *offsetp, 4, byte_order);
956 *offsetp += 4;
959 static void mesa_ClearDepth(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
961 proto_tree_add_item(t, hf_x11_glx_render_ClearDepth_depth, tvb, *offsetp, 8, byte_order);
962 *offsetp += 8;
965 static void mesa_StencilMask(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
967 proto_tree_add_item(t, hf_x11_glx_render_StencilMask_mask, tvb, *offsetp, 4, byte_order);
968 *offsetp += 4;
971 static void mesa_ColorMask(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
973 proto_tree_add_item(t, hf_x11_glx_render_ColorMask_red, tvb, *offsetp, 1, byte_order);
974 *offsetp += 1;
975 proto_tree_add_item(t, hf_x11_glx_render_ColorMask_green, tvb, *offsetp, 1, byte_order);
976 *offsetp += 1;
977 proto_tree_add_item(t, hf_x11_glx_render_ColorMask_blue, tvb, *offsetp, 1, byte_order);
978 *offsetp += 1;
979 proto_tree_add_item(t, hf_x11_glx_render_ColorMask_alpha, tvb, *offsetp, 1, byte_order);
980 *offsetp += 1;
983 static void mesa_DepthMask(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
985 proto_tree_add_item(t, hf_x11_glx_render_DepthMask_flag, tvb, *offsetp, 1, byte_order);
986 *offsetp += 1;
989 static void mesa_IndexMask(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
991 proto_tree_add_item(t, hf_x11_glx_render_IndexMask_mask, tvb, *offsetp, 4, byte_order);
992 *offsetp += 4;
995 static void mesa_Accum(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
997 proto_tree_add_item(t, hf_x11_glx_render_Accum_op, tvb, *offsetp, 4, byte_order);
998 *offsetp += 4;
999 proto_tree_add_item(t, hf_x11_glx_render_Accum_value, tvb, *offsetp, 4, byte_order);
1000 *offsetp += 4;
1003 static void mesa_Disable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1005 proto_tree_add_item(t, hf_x11_glx_render_Disable_cap, tvb, *offsetp, 4, byte_order);
1006 *offsetp += 4;
1009 static void mesa_Enable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1011 proto_tree_add_item(t, hf_x11_glx_render_Enable_cap, tvb, *offsetp, 4, byte_order);
1012 *offsetp += 4;
1015 static void mesa_PopAttrib(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
1019 static void mesa_PushAttrib(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1021 proto_tree_add_item(t, hf_x11_glx_render_PushAttrib_mask, tvb, *offsetp, 4, byte_order);
1022 *offsetp += 4;
1025 static void mesa_Map1d(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1027 proto_tree_add_item(t, hf_x11_glx_render_Map1d_target, tvb, *offsetp, 4, byte_order);
1028 *offsetp += 4;
1029 proto_tree_add_item(t, hf_x11_glx_render_Map1d_u1, tvb, *offsetp, 8, byte_order);
1030 *offsetp += 8;
1031 proto_tree_add_item(t, hf_x11_glx_render_Map1d_u2, tvb, *offsetp, 8, byte_order);
1032 *offsetp += 8;
1033 proto_tree_add_item(t, hf_x11_glx_render_Map1d_stride, tvb, *offsetp, 4, byte_order);
1034 *offsetp += 4;
1035 proto_tree_add_item(t, hf_x11_glx_render_Map1d_order, tvb, *offsetp, 4, byte_order);
1036 *offsetp += 4;
1037 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Map1d_points, hf_x11_glx_render_Map1d_points_item, (length - 28) / 8, byte_order);
1040 static void mesa_Map1f(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1042 proto_tree_add_item(t, hf_x11_glx_render_Map1f_target, tvb, *offsetp, 4, byte_order);
1043 *offsetp += 4;
1044 proto_tree_add_item(t, hf_x11_glx_render_Map1f_u1, tvb, *offsetp, 4, byte_order);
1045 *offsetp += 4;
1046 proto_tree_add_item(t, hf_x11_glx_render_Map1f_u2, tvb, *offsetp, 4, byte_order);
1047 *offsetp += 4;
1048 proto_tree_add_item(t, hf_x11_glx_render_Map1f_stride, tvb, *offsetp, 4, byte_order);
1049 *offsetp += 4;
1050 proto_tree_add_item(t, hf_x11_glx_render_Map1f_order, tvb, *offsetp, 4, byte_order);
1051 *offsetp += 4;
1052 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Map1f_points, hf_x11_glx_render_Map1f_points_item, (length - 20) / 4, byte_order);
1055 static void mesa_Map2d(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1057 proto_tree_add_item(t, hf_x11_glx_render_Map2d_target, tvb, *offsetp, 4, byte_order);
1058 *offsetp += 4;
1059 proto_tree_add_item(t, hf_x11_glx_render_Map2d_u1, tvb, *offsetp, 8, byte_order);
1060 *offsetp += 8;
1061 proto_tree_add_item(t, hf_x11_glx_render_Map2d_u2, tvb, *offsetp, 8, byte_order);
1062 *offsetp += 8;
1063 proto_tree_add_item(t, hf_x11_glx_render_Map2d_ustride, tvb, *offsetp, 4, byte_order);
1064 *offsetp += 4;
1065 proto_tree_add_item(t, hf_x11_glx_render_Map2d_uorder, tvb, *offsetp, 4, byte_order);
1066 *offsetp += 4;
1067 proto_tree_add_item(t, hf_x11_glx_render_Map2d_v1, tvb, *offsetp, 8, byte_order);
1068 *offsetp += 8;
1069 proto_tree_add_item(t, hf_x11_glx_render_Map2d_v2, tvb, *offsetp, 8, byte_order);
1070 *offsetp += 8;
1071 proto_tree_add_item(t, hf_x11_glx_render_Map2d_vstride, tvb, *offsetp, 4, byte_order);
1072 *offsetp += 4;
1073 proto_tree_add_item(t, hf_x11_glx_render_Map2d_vorder, tvb, *offsetp, 4, byte_order);
1074 *offsetp += 4;
1075 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_Map2d_points, hf_x11_glx_render_Map2d_points_item, (length - 52) / 8, byte_order);
1078 static void mesa_Map2f(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1080 proto_tree_add_item(t, hf_x11_glx_render_Map2f_target, tvb, *offsetp, 4, byte_order);
1081 *offsetp += 4;
1082 proto_tree_add_item(t, hf_x11_glx_render_Map2f_u1, tvb, *offsetp, 4, byte_order);
1083 *offsetp += 4;
1084 proto_tree_add_item(t, hf_x11_glx_render_Map2f_u2, tvb, *offsetp, 4, byte_order);
1085 *offsetp += 4;
1086 proto_tree_add_item(t, hf_x11_glx_render_Map2f_ustride, tvb, *offsetp, 4, byte_order);
1087 *offsetp += 4;
1088 proto_tree_add_item(t, hf_x11_glx_render_Map2f_uorder, tvb, *offsetp, 4, byte_order);
1089 *offsetp += 4;
1090 proto_tree_add_item(t, hf_x11_glx_render_Map2f_v1, tvb, *offsetp, 4, byte_order);
1091 *offsetp += 4;
1092 proto_tree_add_item(t, hf_x11_glx_render_Map2f_v2, tvb, *offsetp, 4, byte_order);
1093 *offsetp += 4;
1094 proto_tree_add_item(t, hf_x11_glx_render_Map2f_vstride, tvb, *offsetp, 4, byte_order);
1095 *offsetp += 4;
1096 proto_tree_add_item(t, hf_x11_glx_render_Map2f_vorder, tvb, *offsetp, 4, byte_order);
1097 *offsetp += 4;
1098 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_Map2f_points, hf_x11_glx_render_Map2f_points_item, (length - 36) / 4, byte_order);
1101 static void mesa_MapGrid1d(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1103 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1d_un, tvb, *offsetp, 4, byte_order);
1104 *offsetp += 4;
1105 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1d_u1, tvb, *offsetp, 8, byte_order);
1106 *offsetp += 8;
1107 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1d_u2, tvb, *offsetp, 8, byte_order);
1108 *offsetp += 8;
1111 static void mesa_MapGrid1f(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1113 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1f_un, tvb, *offsetp, 4, byte_order);
1114 *offsetp += 4;
1115 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1f_u1, tvb, *offsetp, 4, byte_order);
1116 *offsetp += 4;
1117 proto_tree_add_item(t, hf_x11_glx_render_MapGrid1f_u2, tvb, *offsetp, 4, byte_order);
1118 *offsetp += 4;
1121 static void mesa_MapGrid2d(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1123 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_un, tvb, *offsetp, 4, byte_order);
1124 *offsetp += 4;
1125 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_u1, tvb, *offsetp, 8, byte_order);
1126 *offsetp += 8;
1127 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_u2, tvb, *offsetp, 8, byte_order);
1128 *offsetp += 8;
1129 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_vn, tvb, *offsetp, 4, byte_order);
1130 *offsetp += 4;
1131 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_v1, tvb, *offsetp, 8, byte_order);
1132 *offsetp += 8;
1133 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2d_v2, tvb, *offsetp, 8, byte_order);
1134 *offsetp += 8;
1137 static void mesa_MapGrid2f(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1139 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_un, tvb, *offsetp, 4, byte_order);
1140 *offsetp += 4;
1141 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_u1, tvb, *offsetp, 4, byte_order);
1142 *offsetp += 4;
1143 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_u2, tvb, *offsetp, 4, byte_order);
1144 *offsetp += 4;
1145 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_vn, tvb, *offsetp, 4, byte_order);
1146 *offsetp += 4;
1147 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_v1, tvb, *offsetp, 4, byte_order);
1148 *offsetp += 4;
1149 proto_tree_add_item(t, hf_x11_glx_render_MapGrid2f_v2, tvb, *offsetp, 4, byte_order);
1150 *offsetp += 4;
1153 static void mesa_EvalCoord1dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1155 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_EvalCoord1dv_u, hf_x11_glx_render_EvalCoord1dv_u_item, 1, byte_order);
1158 static void mesa_EvalCoord1fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1160 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_EvalCoord1fv_u, hf_x11_glx_render_EvalCoord1fv_u_item, 1, byte_order);
1163 static void mesa_EvalCoord2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1165 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_EvalCoord2dv_u, hf_x11_glx_render_EvalCoord2dv_u_item, 2, byte_order);
1168 static void mesa_EvalCoord2fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1170 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_EvalCoord2fv_u, hf_x11_glx_render_EvalCoord2fv_u_item, 2, byte_order);
1173 static void mesa_EvalMesh1(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1175 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh1_mode, tvb, *offsetp, 4, byte_order);
1176 *offsetp += 4;
1177 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh1_i1, tvb, *offsetp, 4, byte_order);
1178 *offsetp += 4;
1179 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh1_i2, tvb, *offsetp, 4, byte_order);
1180 *offsetp += 4;
1183 static void mesa_EvalPoint1(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1185 proto_tree_add_item(t, hf_x11_glx_render_EvalPoint1_i, tvb, *offsetp, 4, byte_order);
1186 *offsetp += 4;
1189 static void mesa_EvalMesh2(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1191 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh2_mode, tvb, *offsetp, 4, byte_order);
1192 *offsetp += 4;
1193 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh2_i1, tvb, *offsetp, 4, byte_order);
1194 *offsetp += 4;
1195 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh2_i2, tvb, *offsetp, 4, byte_order);
1196 *offsetp += 4;
1197 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh2_j1, tvb, *offsetp, 4, byte_order);
1198 *offsetp += 4;
1199 proto_tree_add_item(t, hf_x11_glx_render_EvalMesh2_j2, tvb, *offsetp, 4, byte_order);
1200 *offsetp += 4;
1203 static void mesa_EvalPoint2(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1205 proto_tree_add_item(t, hf_x11_glx_render_EvalPoint2_i, tvb, *offsetp, 4, byte_order);
1206 *offsetp += 4;
1207 proto_tree_add_item(t, hf_x11_glx_render_EvalPoint2_j, tvb, *offsetp, 4, byte_order);
1208 *offsetp += 4;
1211 static void mesa_AlphaFunc(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1213 proto_tree_add_item(t, hf_x11_glx_render_AlphaFunc_func, tvb, *offsetp, 4, byte_order);
1214 *offsetp += 4;
1215 proto_tree_add_item(t, hf_x11_glx_render_AlphaFunc_ref, tvb, *offsetp, 4, byte_order);
1216 *offsetp += 4;
1219 static void mesa_BlendFunc(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1221 proto_tree_add_item(t, hf_x11_glx_render_BlendFunc_sfactor, tvb, *offsetp, 4, byte_order);
1222 *offsetp += 4;
1223 proto_tree_add_item(t, hf_x11_glx_render_BlendFunc_dfactor, tvb, *offsetp, 4, byte_order);
1224 *offsetp += 4;
1227 static void mesa_LogicOp(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1229 proto_tree_add_item(t, hf_x11_glx_render_LogicOp_opcode, tvb, *offsetp, 4, byte_order);
1230 *offsetp += 4;
1233 static void mesa_StencilFunc(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1235 proto_tree_add_item(t, hf_x11_glx_render_StencilFunc_func, tvb, *offsetp, 4, byte_order);
1236 *offsetp += 4;
1237 proto_tree_add_item(t, hf_x11_glx_render_StencilFunc_ref, tvb, *offsetp, 4, byte_order);
1238 *offsetp += 4;
1239 proto_tree_add_item(t, hf_x11_glx_render_StencilFunc_mask, tvb, *offsetp, 4, byte_order);
1240 *offsetp += 4;
1243 static void mesa_StencilOp(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1245 proto_tree_add_item(t, hf_x11_glx_render_StencilOp_fail, tvb, *offsetp, 4, byte_order);
1246 *offsetp += 4;
1247 proto_tree_add_item(t, hf_x11_glx_render_StencilOp_zfail, tvb, *offsetp, 4, byte_order);
1248 *offsetp += 4;
1249 proto_tree_add_item(t, hf_x11_glx_render_StencilOp_zpass, tvb, *offsetp, 4, byte_order);
1250 *offsetp += 4;
1253 static void mesa_DepthFunc(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1255 proto_tree_add_item(t, hf_x11_glx_render_DepthFunc_func, tvb, *offsetp, 4, byte_order);
1256 *offsetp += 4;
1259 static void mesa_PixelZoom(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1261 proto_tree_add_item(t, hf_x11_glx_render_PixelZoom_xfactor, tvb, *offsetp, 4, byte_order);
1262 *offsetp += 4;
1263 proto_tree_add_item(t, hf_x11_glx_render_PixelZoom_yfactor, tvb, *offsetp, 4, byte_order);
1264 *offsetp += 4;
1267 static void mesa_PixelTransferf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1269 proto_tree_add_item(t, hf_x11_glx_render_PixelTransferf_pname, tvb, *offsetp, 4, byte_order);
1270 *offsetp += 4;
1271 proto_tree_add_item(t, hf_x11_glx_render_PixelTransferf_param, tvb, *offsetp, 4, byte_order);
1272 *offsetp += 4;
1275 static void mesa_PixelTransferi(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1277 proto_tree_add_item(t, hf_x11_glx_render_PixelTransferi_pname, tvb, *offsetp, 4, byte_order);
1278 *offsetp += 4;
1279 proto_tree_add_item(t, hf_x11_glx_render_PixelTransferi_param, tvb, *offsetp, 4, byte_order);
1280 *offsetp += 4;
1283 static void mesa_PixelMapfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1285 int mapsize;
1286 proto_tree_add_item(t, hf_x11_glx_render_PixelMapfv_map, tvb, *offsetp, 4, byte_order);
1287 *offsetp += 4;
1288 mapsize = VALUE32(tvb, *offsetp);
1289 proto_tree_add_item(t, hf_x11_glx_render_PixelMapfv_mapsize, tvb, *offsetp, 4, byte_order);
1290 *offsetp += 4;
1291 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_PixelMapfv_values, hf_x11_glx_render_PixelMapfv_values_item, mapsize, byte_order);
1294 static void mesa_PixelMapuiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1296 int mapsize;
1297 proto_tree_add_item(t, hf_x11_glx_render_PixelMapuiv_map, tvb, *offsetp, 4, byte_order);
1298 *offsetp += 4;
1299 mapsize = VALUE32(tvb, *offsetp);
1300 proto_tree_add_item(t, hf_x11_glx_render_PixelMapuiv_mapsize, tvb, *offsetp, 4, byte_order);
1301 *offsetp += 4;
1302 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_PixelMapuiv_values, hf_x11_glx_render_PixelMapuiv_values_item, mapsize, byte_order);
1305 static void mesa_PixelMapusv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1307 int mapsize;
1308 proto_tree_add_item(t, hf_x11_glx_render_PixelMapusv_map, tvb, *offsetp, 4, byte_order);
1309 *offsetp += 4;
1310 mapsize = VALUE32(tvb, *offsetp);
1311 proto_tree_add_item(t, hf_x11_glx_render_PixelMapusv_mapsize, tvb, *offsetp, 4, byte_order);
1312 *offsetp += 4;
1313 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_PixelMapusv_values, hf_x11_glx_render_PixelMapusv_values_item, mapsize, byte_order);
1316 static void mesa_ReadBuffer(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1318 proto_tree_add_item(t, hf_x11_glx_render_ReadBuffer_mode, tvb, *offsetp, 4, byte_order);
1319 *offsetp += 4;
1322 static void mesa_CopyPixels(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1324 proto_tree_add_item(t, hf_x11_glx_render_CopyPixels_x, tvb, *offsetp, 4, byte_order);
1325 *offsetp += 4;
1326 proto_tree_add_item(t, hf_x11_glx_render_CopyPixels_y, tvb, *offsetp, 4, byte_order);
1327 *offsetp += 4;
1328 proto_tree_add_item(t, hf_x11_glx_render_CopyPixels_width, tvb, *offsetp, 4, byte_order);
1329 *offsetp += 4;
1330 proto_tree_add_item(t, hf_x11_glx_render_CopyPixels_height, tvb, *offsetp, 4, byte_order);
1331 *offsetp += 4;
1332 proto_tree_add_item(t, hf_x11_glx_render_CopyPixels_type, tvb, *offsetp, 4, byte_order);
1333 *offsetp += 4;
1336 static void mesa_DrawPixels(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1338 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_swapbytes, tvb, *offsetp, 1, byte_order);
1339 *offsetp += 1;
1340 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_lsbfirst, tvb, *offsetp, 1, byte_order);
1341 *offsetp += 1;
1342 UNUSED(2);
1343 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_rowlength, tvb, *offsetp, 4, byte_order);
1344 *offsetp += 4;
1345 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_skiprows, tvb, *offsetp, 4, byte_order);
1346 *offsetp += 4;
1347 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_skippixels, tvb, *offsetp, 4, byte_order);
1348 *offsetp += 4;
1349 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_alignment, tvb, *offsetp, 4, byte_order);
1350 *offsetp += 4;
1351 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_width, tvb, *offsetp, 4, byte_order);
1352 *offsetp += 4;
1353 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_height, tvb, *offsetp, 4, byte_order);
1354 *offsetp += 4;
1355 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_format, tvb, *offsetp, 4, byte_order);
1356 *offsetp += 4;
1357 proto_tree_add_item(t, hf_x11_glx_render_DrawPixels_type, tvb, *offsetp, 4, byte_order);
1358 *offsetp += 4;
1359 listOfByte(tvb, offsetp, t, hf_x11_glx_render_DrawPixels_pixels, (length - 36) / 1, byte_order);
1362 static void mesa_DepthRange(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1364 proto_tree_add_item(t, hf_x11_glx_render_DepthRange_zNear, tvb, *offsetp, 8, byte_order);
1365 *offsetp += 8;
1366 proto_tree_add_item(t, hf_x11_glx_render_DepthRange_zFar, tvb, *offsetp, 8, byte_order);
1367 *offsetp += 8;
1370 static void mesa_Frustum(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1372 proto_tree_add_item(t, hf_x11_glx_render_Frustum_left, tvb, *offsetp, 8, byte_order);
1373 *offsetp += 8;
1374 proto_tree_add_item(t, hf_x11_glx_render_Frustum_right, tvb, *offsetp, 8, byte_order);
1375 *offsetp += 8;
1376 proto_tree_add_item(t, hf_x11_glx_render_Frustum_bottom, tvb, *offsetp, 8, byte_order);
1377 *offsetp += 8;
1378 proto_tree_add_item(t, hf_x11_glx_render_Frustum_top, tvb, *offsetp, 8, byte_order);
1379 *offsetp += 8;
1380 proto_tree_add_item(t, hf_x11_glx_render_Frustum_zNear, tvb, *offsetp, 8, byte_order);
1381 *offsetp += 8;
1382 proto_tree_add_item(t, hf_x11_glx_render_Frustum_zFar, tvb, *offsetp, 8, byte_order);
1383 *offsetp += 8;
1386 static void mesa_LoadIdentity(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
1390 static void mesa_LoadMatrixf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1392 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_LoadMatrixf_m, hf_x11_glx_render_LoadMatrixf_m_item, 16, byte_order);
1395 static void mesa_LoadMatrixd(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1397 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_LoadMatrixd_m, hf_x11_glx_render_LoadMatrixd_m_item, 16, byte_order);
1400 static void mesa_MatrixMode(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1402 proto_tree_add_item(t, hf_x11_glx_render_MatrixMode_mode, tvb, *offsetp, 4, byte_order);
1403 *offsetp += 4;
1406 static void mesa_MultMatrixf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1408 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_MultMatrixf_m, hf_x11_glx_render_MultMatrixf_m_item, 16, byte_order);
1411 static void mesa_MultMatrixd(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1413 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_MultMatrixd_m, hf_x11_glx_render_MultMatrixd_m_item, 16, byte_order);
1416 static void mesa_Ortho(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1418 proto_tree_add_item(t, hf_x11_glx_render_Ortho_left, tvb, *offsetp, 8, byte_order);
1419 *offsetp += 8;
1420 proto_tree_add_item(t, hf_x11_glx_render_Ortho_right, tvb, *offsetp, 8, byte_order);
1421 *offsetp += 8;
1422 proto_tree_add_item(t, hf_x11_glx_render_Ortho_bottom, tvb, *offsetp, 8, byte_order);
1423 *offsetp += 8;
1424 proto_tree_add_item(t, hf_x11_glx_render_Ortho_top, tvb, *offsetp, 8, byte_order);
1425 *offsetp += 8;
1426 proto_tree_add_item(t, hf_x11_glx_render_Ortho_zNear, tvb, *offsetp, 8, byte_order);
1427 *offsetp += 8;
1428 proto_tree_add_item(t, hf_x11_glx_render_Ortho_zFar, tvb, *offsetp, 8, byte_order);
1429 *offsetp += 8;
1432 static void mesa_PopMatrix(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
1436 static void mesa_PushMatrix(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
1440 static void mesa_Rotated(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1442 proto_tree_add_item(t, hf_x11_glx_render_Rotated_angle, tvb, *offsetp, 8, byte_order);
1443 *offsetp += 8;
1444 proto_tree_add_item(t, hf_x11_glx_render_Rotated_x, tvb, *offsetp, 8, byte_order);
1445 *offsetp += 8;
1446 proto_tree_add_item(t, hf_x11_glx_render_Rotated_y, tvb, *offsetp, 8, byte_order);
1447 *offsetp += 8;
1448 proto_tree_add_item(t, hf_x11_glx_render_Rotated_z, tvb, *offsetp, 8, byte_order);
1449 *offsetp += 8;
1452 static void mesa_Rotatef(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1454 proto_tree_add_item(t, hf_x11_glx_render_Rotatef_angle, tvb, *offsetp, 4, byte_order);
1455 *offsetp += 4;
1456 proto_tree_add_item(t, hf_x11_glx_render_Rotatef_x, tvb, *offsetp, 4, byte_order);
1457 *offsetp += 4;
1458 proto_tree_add_item(t, hf_x11_glx_render_Rotatef_y, tvb, *offsetp, 4, byte_order);
1459 *offsetp += 4;
1460 proto_tree_add_item(t, hf_x11_glx_render_Rotatef_z, tvb, *offsetp, 4, byte_order);
1461 *offsetp += 4;
1464 static void mesa_Scaled(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1466 proto_tree_add_item(t, hf_x11_glx_render_Scaled_x, tvb, *offsetp, 8, byte_order);
1467 *offsetp += 8;
1468 proto_tree_add_item(t, hf_x11_glx_render_Scaled_y, tvb, *offsetp, 8, byte_order);
1469 *offsetp += 8;
1470 proto_tree_add_item(t, hf_x11_glx_render_Scaled_z, tvb, *offsetp, 8, byte_order);
1471 *offsetp += 8;
1474 static void mesa_Scalef(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1476 proto_tree_add_item(t, hf_x11_glx_render_Scalef_x, tvb, *offsetp, 4, byte_order);
1477 *offsetp += 4;
1478 proto_tree_add_item(t, hf_x11_glx_render_Scalef_y, tvb, *offsetp, 4, byte_order);
1479 *offsetp += 4;
1480 proto_tree_add_item(t, hf_x11_glx_render_Scalef_z, tvb, *offsetp, 4, byte_order);
1481 *offsetp += 4;
1484 static void mesa_Translated(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1486 proto_tree_add_item(t, hf_x11_glx_render_Translated_x, tvb, *offsetp, 8, byte_order);
1487 *offsetp += 8;
1488 proto_tree_add_item(t, hf_x11_glx_render_Translated_y, tvb, *offsetp, 8, byte_order);
1489 *offsetp += 8;
1490 proto_tree_add_item(t, hf_x11_glx_render_Translated_z, tvb, *offsetp, 8, byte_order);
1491 *offsetp += 8;
1494 static void mesa_Translatef(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1496 proto_tree_add_item(t, hf_x11_glx_render_Translatef_x, tvb, *offsetp, 4, byte_order);
1497 *offsetp += 4;
1498 proto_tree_add_item(t, hf_x11_glx_render_Translatef_y, tvb, *offsetp, 4, byte_order);
1499 *offsetp += 4;
1500 proto_tree_add_item(t, hf_x11_glx_render_Translatef_z, tvb, *offsetp, 4, byte_order);
1501 *offsetp += 4;
1504 static void mesa_Viewport(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1506 proto_tree_add_item(t, hf_x11_glx_render_Viewport_x, tvb, *offsetp, 4, byte_order);
1507 *offsetp += 4;
1508 proto_tree_add_item(t, hf_x11_glx_render_Viewport_y, tvb, *offsetp, 4, byte_order);
1509 *offsetp += 4;
1510 proto_tree_add_item(t, hf_x11_glx_render_Viewport_width, tvb, *offsetp, 4, byte_order);
1511 *offsetp += 4;
1512 proto_tree_add_item(t, hf_x11_glx_render_Viewport_height, tvb, *offsetp, 4, byte_order);
1513 *offsetp += 4;
1516 static void mesa_DrawArrays(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1518 proto_tree_add_item(t, hf_x11_glx_render_DrawArrays_mode, tvb, *offsetp, 4, byte_order);
1519 *offsetp += 4;
1520 proto_tree_add_item(t, hf_x11_glx_render_DrawArrays_first, tvb, *offsetp, 4, byte_order);
1521 *offsetp += 4;
1522 proto_tree_add_item(t, hf_x11_glx_render_DrawArrays_count, tvb, *offsetp, 4, byte_order);
1523 *offsetp += 4;
1526 static void mesa_PolygonOffset(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1528 proto_tree_add_item(t, hf_x11_glx_render_PolygonOffset_factor, tvb, *offsetp, 4, byte_order);
1529 *offsetp += 4;
1530 proto_tree_add_item(t, hf_x11_glx_render_PolygonOffset_units, tvb, *offsetp, 4, byte_order);
1531 *offsetp += 4;
1534 static void mesa_CopyTexImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1536 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_target, tvb, *offsetp, 4, byte_order);
1537 *offsetp += 4;
1538 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_level, tvb, *offsetp, 4, byte_order);
1539 *offsetp += 4;
1540 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_internalformat, tvb, *offsetp, 4, byte_order);
1541 *offsetp += 4;
1542 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_x, tvb, *offsetp, 4, byte_order);
1543 *offsetp += 4;
1544 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_y, tvb, *offsetp, 4, byte_order);
1545 *offsetp += 4;
1546 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_width, tvb, *offsetp, 4, byte_order);
1547 *offsetp += 4;
1548 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage1D_border, tvb, *offsetp, 4, byte_order);
1549 *offsetp += 4;
1552 static void mesa_CopyTexImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1554 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_target, tvb, *offsetp, 4, byte_order);
1555 *offsetp += 4;
1556 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_level, tvb, *offsetp, 4, byte_order);
1557 *offsetp += 4;
1558 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_internalformat, tvb, *offsetp, 4, byte_order);
1559 *offsetp += 4;
1560 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_x, tvb, *offsetp, 4, byte_order);
1561 *offsetp += 4;
1562 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_y, tvb, *offsetp, 4, byte_order);
1563 *offsetp += 4;
1564 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_width, tvb, *offsetp, 4, byte_order);
1565 *offsetp += 4;
1566 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_height, tvb, *offsetp, 4, byte_order);
1567 *offsetp += 4;
1568 proto_tree_add_item(t, hf_x11_glx_render_CopyTexImage2D_border, tvb, *offsetp, 4, byte_order);
1569 *offsetp += 4;
1572 static void mesa_CopyTexSubImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1574 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_target, tvb, *offsetp, 4, byte_order);
1575 *offsetp += 4;
1576 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_level, tvb, *offsetp, 4, byte_order);
1577 *offsetp += 4;
1578 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_xoffset, tvb, *offsetp, 4, byte_order);
1579 *offsetp += 4;
1580 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_x, tvb, *offsetp, 4, byte_order);
1581 *offsetp += 4;
1582 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_y, tvb, *offsetp, 4, byte_order);
1583 *offsetp += 4;
1584 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage1D_width, tvb, *offsetp, 4, byte_order);
1585 *offsetp += 4;
1588 static void mesa_CopyTexSubImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1590 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_target, tvb, *offsetp, 4, byte_order);
1591 *offsetp += 4;
1592 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_level, tvb, *offsetp, 4, byte_order);
1593 *offsetp += 4;
1594 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_xoffset, tvb, *offsetp, 4, byte_order);
1595 *offsetp += 4;
1596 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_yoffset, tvb, *offsetp, 4, byte_order);
1597 *offsetp += 4;
1598 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_x, tvb, *offsetp, 4, byte_order);
1599 *offsetp += 4;
1600 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_y, tvb, *offsetp, 4, byte_order);
1601 *offsetp += 4;
1602 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_width, tvb, *offsetp, 4, byte_order);
1603 *offsetp += 4;
1604 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage2D_height, tvb, *offsetp, 4, byte_order);
1605 *offsetp += 4;
1608 static void mesa_TexSubImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1610 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_swapbytes, tvb, *offsetp, 1, byte_order);
1611 *offsetp += 1;
1612 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_lsbfirst, tvb, *offsetp, 1, byte_order);
1613 *offsetp += 1;
1614 UNUSED(2);
1615 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_rowlength, tvb, *offsetp, 4, byte_order);
1616 *offsetp += 4;
1617 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_skiprows, tvb, *offsetp, 4, byte_order);
1618 *offsetp += 4;
1619 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_skippixels, tvb, *offsetp, 4, byte_order);
1620 *offsetp += 4;
1621 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_alignment, tvb, *offsetp, 4, byte_order);
1622 *offsetp += 4;
1623 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_target, tvb, *offsetp, 4, byte_order);
1624 *offsetp += 4;
1625 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_level, tvb, *offsetp, 4, byte_order);
1626 *offsetp += 4;
1627 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_xoffset, tvb, *offsetp, 4, byte_order);
1628 *offsetp += 4;
1629 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_width, tvb, *offsetp, 4, byte_order);
1630 *offsetp += 4;
1631 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_format, tvb, *offsetp, 4, byte_order);
1632 *offsetp += 4;
1633 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_type, tvb, *offsetp, 4, byte_order);
1634 *offsetp += 4;
1635 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage1D_UNUSED, tvb, *offsetp, 4, byte_order);
1636 *offsetp += 4;
1637 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexSubImage1D_pixels, (length - 48) / 1, byte_order);
1640 static void mesa_TexSubImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1642 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_swapbytes, tvb, *offsetp, 1, byte_order);
1643 *offsetp += 1;
1644 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_lsbfirst, tvb, *offsetp, 1, byte_order);
1645 *offsetp += 1;
1646 UNUSED(2);
1647 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_rowlength, tvb, *offsetp, 4, byte_order);
1648 *offsetp += 4;
1649 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_skiprows, tvb, *offsetp, 4, byte_order);
1650 *offsetp += 4;
1651 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_skippixels, tvb, *offsetp, 4, byte_order);
1652 *offsetp += 4;
1653 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_alignment, tvb, *offsetp, 4, byte_order);
1654 *offsetp += 4;
1655 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_target, tvb, *offsetp, 4, byte_order);
1656 *offsetp += 4;
1657 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_level, tvb, *offsetp, 4, byte_order);
1658 *offsetp += 4;
1659 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_xoffset, tvb, *offsetp, 4, byte_order);
1660 *offsetp += 4;
1661 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_yoffset, tvb, *offsetp, 4, byte_order);
1662 *offsetp += 4;
1663 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_width, tvb, *offsetp, 4, byte_order);
1664 *offsetp += 4;
1665 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_height, tvb, *offsetp, 4, byte_order);
1666 *offsetp += 4;
1667 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_format, tvb, *offsetp, 4, byte_order);
1668 *offsetp += 4;
1669 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_type, tvb, *offsetp, 4, byte_order);
1670 *offsetp += 4;
1671 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage2D_UNUSED, tvb, *offsetp, 4, byte_order);
1672 *offsetp += 4;
1673 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexSubImage2D_pixels, (length - 56) / 1, byte_order);
1676 static void mesa_BindTexture(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1678 proto_tree_add_item(t, hf_x11_glx_render_BindTexture_target, tvb, *offsetp, 4, byte_order);
1679 *offsetp += 4;
1680 proto_tree_add_item(t, hf_x11_glx_render_BindTexture_texture, tvb, *offsetp, 4, byte_order);
1681 *offsetp += 4;
1684 static void mesa_PrioritizeTextures(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1686 int n;
1687 n = VALUE32(tvb, *offsetp);
1688 proto_tree_add_item(t, hf_x11_glx_render_PrioritizeTextures_n, tvb, *offsetp, 4, byte_order);
1689 *offsetp += 4;
1690 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_PrioritizeTextures_textures, hf_x11_glx_render_PrioritizeTextures_textures_item, n, byte_order);
1691 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_PrioritizeTextures_priorities, hf_x11_glx_render_PrioritizeTextures_priorities_item, n, byte_order);
1694 static void mesa_Indexubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1696 listOfByte(tvb, offsetp, t, hf_x11_glx_render_Indexubv_c, 1, byte_order);
1699 static void mesa_BlendColor(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1701 proto_tree_add_item(t, hf_x11_glx_render_BlendColor_red, tvb, *offsetp, 4, byte_order);
1702 *offsetp += 4;
1703 proto_tree_add_item(t, hf_x11_glx_render_BlendColor_green, tvb, *offsetp, 4, byte_order);
1704 *offsetp += 4;
1705 proto_tree_add_item(t, hf_x11_glx_render_BlendColor_blue, tvb, *offsetp, 4, byte_order);
1706 *offsetp += 4;
1707 proto_tree_add_item(t, hf_x11_glx_render_BlendColor_alpha, tvb, *offsetp, 4, byte_order);
1708 *offsetp += 4;
1711 static void mesa_BlendEquation(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1713 proto_tree_add_item(t, hf_x11_glx_render_BlendEquation_mode, tvb, *offsetp, 4, byte_order);
1714 *offsetp += 4;
1717 static void mesa_ColorTable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1719 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_swapbytes, tvb, *offsetp, 1, byte_order);
1720 *offsetp += 1;
1721 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_lsbfirst, tvb, *offsetp, 1, byte_order);
1722 *offsetp += 1;
1723 UNUSED(2);
1724 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_rowlength, tvb, *offsetp, 4, byte_order);
1725 *offsetp += 4;
1726 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_skiprows, tvb, *offsetp, 4, byte_order);
1727 *offsetp += 4;
1728 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_skippixels, tvb, *offsetp, 4, byte_order);
1729 *offsetp += 4;
1730 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_alignment, tvb, *offsetp, 4, byte_order);
1731 *offsetp += 4;
1732 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_target, tvb, *offsetp, 4, byte_order);
1733 *offsetp += 4;
1734 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_internalformat, tvb, *offsetp, 4, byte_order);
1735 *offsetp += 4;
1736 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_width, tvb, *offsetp, 4, byte_order);
1737 *offsetp += 4;
1738 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_format, tvb, *offsetp, 4, byte_order);
1739 *offsetp += 4;
1740 proto_tree_add_item(t, hf_x11_glx_render_ColorTable_type, tvb, *offsetp, 4, byte_order);
1741 *offsetp += 4;
1742 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ColorTable_table, (length - 40) / 1, byte_order);
1745 static void mesa_ColorTableParameterfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1747 proto_tree_add_item(t, hf_x11_glx_render_ColorTableParameterfv_target, tvb, *offsetp, 4, byte_order);
1748 *offsetp += 4;
1749 proto_tree_add_item(t, hf_x11_glx_render_ColorTableParameterfv_pname, tvb, *offsetp, 4, byte_order);
1750 *offsetp += 4;
1751 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ColorTableParameterfv_params, hf_x11_glx_render_ColorTableParameterfv_params_item, (length - 8) / 4, byte_order);
1754 static void mesa_ColorTableParameteriv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1756 proto_tree_add_item(t, hf_x11_glx_render_ColorTableParameteriv_target, tvb, *offsetp, 4, byte_order);
1757 *offsetp += 4;
1758 proto_tree_add_item(t, hf_x11_glx_render_ColorTableParameteriv_pname, tvb, *offsetp, 4, byte_order);
1759 *offsetp += 4;
1760 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_ColorTableParameteriv_params, hf_x11_glx_render_ColorTableParameteriv_params_item, (length - 8) / 4, byte_order);
1763 static void mesa_CopyColorTable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1765 proto_tree_add_item(t, hf_x11_glx_render_CopyColorTable_target, tvb, *offsetp, 4, byte_order);
1766 *offsetp += 4;
1767 proto_tree_add_item(t, hf_x11_glx_render_CopyColorTable_internalformat, tvb, *offsetp, 4, byte_order);
1768 *offsetp += 4;
1769 proto_tree_add_item(t, hf_x11_glx_render_CopyColorTable_x, tvb, *offsetp, 4, byte_order);
1770 *offsetp += 4;
1771 proto_tree_add_item(t, hf_x11_glx_render_CopyColorTable_y, tvb, *offsetp, 4, byte_order);
1772 *offsetp += 4;
1773 proto_tree_add_item(t, hf_x11_glx_render_CopyColorTable_width, tvb, *offsetp, 4, byte_order);
1774 *offsetp += 4;
1777 static void mesa_ColorSubTable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1779 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_swapbytes, tvb, *offsetp, 1, byte_order);
1780 *offsetp += 1;
1781 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_lsbfirst, tvb, *offsetp, 1, byte_order);
1782 *offsetp += 1;
1783 UNUSED(2);
1784 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_rowlength, tvb, *offsetp, 4, byte_order);
1785 *offsetp += 4;
1786 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_skiprows, tvb, *offsetp, 4, byte_order);
1787 *offsetp += 4;
1788 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_skippixels, tvb, *offsetp, 4, byte_order);
1789 *offsetp += 4;
1790 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_alignment, tvb, *offsetp, 4, byte_order);
1791 *offsetp += 4;
1792 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_target, tvb, *offsetp, 4, byte_order);
1793 *offsetp += 4;
1794 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_start, tvb, *offsetp, 4, byte_order);
1795 *offsetp += 4;
1796 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_count, tvb, *offsetp, 4, byte_order);
1797 *offsetp += 4;
1798 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_format, tvb, *offsetp, 4, byte_order);
1799 *offsetp += 4;
1800 proto_tree_add_item(t, hf_x11_glx_render_ColorSubTable_type, tvb, *offsetp, 4, byte_order);
1801 *offsetp += 4;
1802 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ColorSubTable_data, (length - 40) / 1, byte_order);
1805 static void mesa_CopyColorSubTable(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1807 proto_tree_add_item(t, hf_x11_glx_render_CopyColorSubTable_target, tvb, *offsetp, 4, byte_order);
1808 *offsetp += 4;
1809 proto_tree_add_item(t, hf_x11_glx_render_CopyColorSubTable_start, tvb, *offsetp, 4, byte_order);
1810 *offsetp += 4;
1811 proto_tree_add_item(t, hf_x11_glx_render_CopyColorSubTable_x, tvb, *offsetp, 4, byte_order);
1812 *offsetp += 4;
1813 proto_tree_add_item(t, hf_x11_glx_render_CopyColorSubTable_y, tvb, *offsetp, 4, byte_order);
1814 *offsetp += 4;
1815 proto_tree_add_item(t, hf_x11_glx_render_CopyColorSubTable_width, tvb, *offsetp, 4, byte_order);
1816 *offsetp += 4;
1819 static void mesa_ConvolutionFilter1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1821 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_swapbytes, tvb, *offsetp, 1, byte_order);
1822 *offsetp += 1;
1823 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_lsbfirst, tvb, *offsetp, 1, byte_order);
1824 *offsetp += 1;
1825 UNUSED(2);
1826 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_rowlength, tvb, *offsetp, 4, byte_order);
1827 *offsetp += 4;
1828 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_skiprows, tvb, *offsetp, 4, byte_order);
1829 *offsetp += 4;
1830 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_skippixels, tvb, *offsetp, 4, byte_order);
1831 *offsetp += 4;
1832 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_alignment, tvb, *offsetp, 4, byte_order);
1833 *offsetp += 4;
1834 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_target, tvb, *offsetp, 4, byte_order);
1835 *offsetp += 4;
1836 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_internalformat, tvb, *offsetp, 4, byte_order);
1837 *offsetp += 4;
1838 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_width, tvb, *offsetp, 4, byte_order);
1839 *offsetp += 4;
1840 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_format, tvb, *offsetp, 4, byte_order);
1841 *offsetp += 4;
1842 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter1D_type, tvb, *offsetp, 4, byte_order);
1843 *offsetp += 4;
1844 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ConvolutionFilter1D_image, (length - 40) / 1, byte_order);
1847 static void mesa_ConvolutionFilter2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1849 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_swapbytes, tvb, *offsetp, 1, byte_order);
1850 *offsetp += 1;
1851 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_lsbfirst, tvb, *offsetp, 1, byte_order);
1852 *offsetp += 1;
1853 UNUSED(2);
1854 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_rowlength, tvb, *offsetp, 4, byte_order);
1855 *offsetp += 4;
1856 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_skiprows, tvb, *offsetp, 4, byte_order);
1857 *offsetp += 4;
1858 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_skippixels, tvb, *offsetp, 4, byte_order);
1859 *offsetp += 4;
1860 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_alignment, tvb, *offsetp, 4, byte_order);
1861 *offsetp += 4;
1862 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_target, tvb, *offsetp, 4, byte_order);
1863 *offsetp += 4;
1864 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_internalformat, tvb, *offsetp, 4, byte_order);
1865 *offsetp += 4;
1866 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_width, tvb, *offsetp, 4, byte_order);
1867 *offsetp += 4;
1868 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_height, tvb, *offsetp, 4, byte_order);
1869 *offsetp += 4;
1870 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_format, tvb, *offsetp, 4, byte_order);
1871 *offsetp += 4;
1872 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionFilter2D_type, tvb, *offsetp, 4, byte_order);
1873 *offsetp += 4;
1874 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ConvolutionFilter2D_image, (length - 44) / 1, byte_order);
1877 static void mesa_ConvolutionParameterf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1879 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameterf_target, tvb, *offsetp, 4, byte_order);
1880 *offsetp += 4;
1881 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameterf_pname, tvb, *offsetp, 4, byte_order);
1882 *offsetp += 4;
1883 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameterf_params, tvb, *offsetp, 4, byte_order);
1884 *offsetp += 4;
1887 static void mesa_ConvolutionParameterfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1889 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameterfv_target, tvb, *offsetp, 4, byte_order);
1890 *offsetp += 4;
1891 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameterfv_pname, tvb, *offsetp, 4, byte_order);
1892 *offsetp += 4;
1893 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ConvolutionParameterfv_params, hf_x11_glx_render_ConvolutionParameterfv_params_item, (length - 8) / 4, byte_order);
1896 static void mesa_ConvolutionParameteri(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1898 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameteri_target, tvb, *offsetp, 4, byte_order);
1899 *offsetp += 4;
1900 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameteri_pname, tvb, *offsetp, 4, byte_order);
1901 *offsetp += 4;
1902 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameteri_params, tvb, *offsetp, 4, byte_order);
1903 *offsetp += 4;
1906 static void mesa_ConvolutionParameteriv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1908 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameteriv_target, tvb, *offsetp, 4, byte_order);
1909 *offsetp += 4;
1910 proto_tree_add_item(t, hf_x11_glx_render_ConvolutionParameteriv_pname, tvb, *offsetp, 4, byte_order);
1911 *offsetp += 4;
1912 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_ConvolutionParameteriv_params, hf_x11_glx_render_ConvolutionParameteriv_params_item, (length - 8) / 4, byte_order);
1915 static void mesa_CopyConvolutionFilter1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1917 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter1D_target, tvb, *offsetp, 4, byte_order);
1918 *offsetp += 4;
1919 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter1D_internalformat, tvb, *offsetp, 4, byte_order);
1920 *offsetp += 4;
1921 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter1D_x, tvb, *offsetp, 4, byte_order);
1922 *offsetp += 4;
1923 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter1D_y, tvb, *offsetp, 4, byte_order);
1924 *offsetp += 4;
1925 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter1D_width, tvb, *offsetp, 4, byte_order);
1926 *offsetp += 4;
1929 static void mesa_CopyConvolutionFilter2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1931 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_target, tvb, *offsetp, 4, byte_order);
1932 *offsetp += 4;
1933 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_internalformat, tvb, *offsetp, 4, byte_order);
1934 *offsetp += 4;
1935 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_x, tvb, *offsetp, 4, byte_order);
1936 *offsetp += 4;
1937 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_y, tvb, *offsetp, 4, byte_order);
1938 *offsetp += 4;
1939 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_width, tvb, *offsetp, 4, byte_order);
1940 *offsetp += 4;
1941 proto_tree_add_item(t, hf_x11_glx_render_CopyConvolutionFilter2D_height, tvb, *offsetp, 4, byte_order);
1942 *offsetp += 4;
1945 static void mesa_SeparableFilter2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1947 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_target, tvb, *offsetp, 4, byte_order);
1948 *offsetp += 4;
1949 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_internalformat, tvb, *offsetp, 4, byte_order);
1950 *offsetp += 4;
1951 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_width, tvb, *offsetp, 4, byte_order);
1952 *offsetp += 4;
1953 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_height, tvb, *offsetp, 4, byte_order);
1954 *offsetp += 4;
1955 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_format, tvb, *offsetp, 4, byte_order);
1956 *offsetp += 4;
1957 proto_tree_add_item(t, hf_x11_glx_render_SeparableFilter2D_type, tvb, *offsetp, 4, byte_order);
1958 *offsetp += 4;
1959 listOfByte(tvb, offsetp, t, hf_x11_glx_render_SeparableFilter2D_row, (length - 24) / 1, byte_order);
1960 listOfByte(tvb, offsetp, t, hf_x11_glx_render_SeparableFilter2D_column, (length - 24) / 1, byte_order);
1963 static void mesa_Histogram(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1965 proto_tree_add_item(t, hf_x11_glx_render_Histogram_target, tvb, *offsetp, 4, byte_order);
1966 *offsetp += 4;
1967 proto_tree_add_item(t, hf_x11_glx_render_Histogram_width, tvb, *offsetp, 4, byte_order);
1968 *offsetp += 4;
1969 proto_tree_add_item(t, hf_x11_glx_render_Histogram_internalformat, tvb, *offsetp, 4, byte_order);
1970 *offsetp += 4;
1971 proto_tree_add_item(t, hf_x11_glx_render_Histogram_sink, tvb, *offsetp, 1, byte_order);
1972 *offsetp += 1;
1975 static void mesa_Minmax(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1977 proto_tree_add_item(t, hf_x11_glx_render_Minmax_target, tvb, *offsetp, 4, byte_order);
1978 *offsetp += 4;
1979 proto_tree_add_item(t, hf_x11_glx_render_Minmax_internalformat, tvb, *offsetp, 4, byte_order);
1980 *offsetp += 4;
1981 proto_tree_add_item(t, hf_x11_glx_render_Minmax_sink, tvb, *offsetp, 1, byte_order);
1982 *offsetp += 1;
1985 static void mesa_ResetHistogram(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1987 proto_tree_add_item(t, hf_x11_glx_render_ResetHistogram_target, tvb, *offsetp, 4, byte_order);
1988 *offsetp += 4;
1991 static void mesa_ResetMinmax(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1993 proto_tree_add_item(t, hf_x11_glx_render_ResetMinmax_target, tvb, *offsetp, 4, byte_order);
1994 *offsetp += 4;
1997 static void mesa_TexImage3D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
1999 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_swapbytes, tvb, *offsetp, 1, byte_order);
2000 *offsetp += 1;
2001 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_lsbfirst, tvb, *offsetp, 1, byte_order);
2002 *offsetp += 1;
2003 UNUSED(2);
2004 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_rowlength, tvb, *offsetp, 4, byte_order);
2005 *offsetp += 4;
2006 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_skiprows, tvb, *offsetp, 4, byte_order);
2007 *offsetp += 4;
2008 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_skippixels, tvb, *offsetp, 4, byte_order);
2009 *offsetp += 4;
2010 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_alignment, tvb, *offsetp, 4, byte_order);
2011 *offsetp += 4;
2012 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_target, tvb, *offsetp, 4, byte_order);
2013 *offsetp += 4;
2014 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_level, tvb, *offsetp, 4, byte_order);
2015 *offsetp += 4;
2016 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_internalformat, tvb, *offsetp, 4, byte_order);
2017 *offsetp += 4;
2018 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_width, tvb, *offsetp, 4, byte_order);
2019 *offsetp += 4;
2020 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_height, tvb, *offsetp, 4, byte_order);
2021 *offsetp += 4;
2022 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_depth, tvb, *offsetp, 4, byte_order);
2023 *offsetp += 4;
2024 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_border, tvb, *offsetp, 4, byte_order);
2025 *offsetp += 4;
2026 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_format, tvb, *offsetp, 4, byte_order);
2027 *offsetp += 4;
2028 proto_tree_add_item(t, hf_x11_glx_render_TexImage3D_type, tvb, *offsetp, 4, byte_order);
2029 *offsetp += 4;
2030 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexImage3D_pixels, (length - 56) / 1, byte_order);
2033 static void mesa_TexSubImage3D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2035 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_swapbytes, tvb, *offsetp, 1, byte_order);
2036 *offsetp += 1;
2037 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_lsbfirst, tvb, *offsetp, 1, byte_order);
2038 *offsetp += 1;
2039 UNUSED(2);
2040 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_rowlength, tvb, *offsetp, 4, byte_order);
2041 *offsetp += 4;
2042 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_skiprows, tvb, *offsetp, 4, byte_order);
2043 *offsetp += 4;
2044 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_skippixels, tvb, *offsetp, 4, byte_order);
2045 *offsetp += 4;
2046 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_alignment, tvb, *offsetp, 4, byte_order);
2047 *offsetp += 4;
2048 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_target, tvb, *offsetp, 4, byte_order);
2049 *offsetp += 4;
2050 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_level, tvb, *offsetp, 4, byte_order);
2051 *offsetp += 4;
2052 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_xoffset, tvb, *offsetp, 4, byte_order);
2053 *offsetp += 4;
2054 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_yoffset, tvb, *offsetp, 4, byte_order);
2055 *offsetp += 4;
2056 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_zoffset, tvb, *offsetp, 4, byte_order);
2057 *offsetp += 4;
2058 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_width, tvb, *offsetp, 4, byte_order);
2059 *offsetp += 4;
2060 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_height, tvb, *offsetp, 4, byte_order);
2061 *offsetp += 4;
2062 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_depth, tvb, *offsetp, 4, byte_order);
2063 *offsetp += 4;
2064 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_format, tvb, *offsetp, 4, byte_order);
2065 *offsetp += 4;
2066 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_type, tvb, *offsetp, 4, byte_order);
2067 *offsetp += 4;
2068 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage3D_UNUSED, tvb, *offsetp, 4, byte_order);
2069 *offsetp += 4;
2070 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexSubImage3D_pixels, (length - 64) / 1, byte_order);
2073 static void mesa_CopyTexSubImage3D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2075 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_target, tvb, *offsetp, 4, byte_order);
2076 *offsetp += 4;
2077 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_level, tvb, *offsetp, 4, byte_order);
2078 *offsetp += 4;
2079 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_xoffset, tvb, *offsetp, 4, byte_order);
2080 *offsetp += 4;
2081 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_yoffset, tvb, *offsetp, 4, byte_order);
2082 *offsetp += 4;
2083 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_zoffset, tvb, *offsetp, 4, byte_order);
2084 *offsetp += 4;
2085 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_x, tvb, *offsetp, 4, byte_order);
2086 *offsetp += 4;
2087 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_y, tvb, *offsetp, 4, byte_order);
2088 *offsetp += 4;
2089 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_width, tvb, *offsetp, 4, byte_order);
2090 *offsetp += 4;
2091 proto_tree_add_item(t, hf_x11_glx_render_CopyTexSubImage3D_height, tvb, *offsetp, 4, byte_order);
2092 *offsetp += 4;
2095 static void mesa_ActiveTexture(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2097 proto_tree_add_item(t, hf_x11_glx_render_ActiveTexture_texture, tvb, *offsetp, 4, byte_order);
2098 *offsetp += 4;
2101 static void mesa_MultiTexCoord1dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2103 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord1dv_target, tvb, *offsetp, 4, byte_order);
2104 *offsetp += 4;
2105 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord1dv_v, hf_x11_glx_render_MultiTexCoord1dv_v_item, 1, byte_order);
2108 static void mesa_MultiTexCoord1iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2110 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord1iv_target, tvb, *offsetp, 4, byte_order);
2111 *offsetp += 4;
2112 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord1iv_v, hf_x11_glx_render_MultiTexCoord1iv_v_item, 1, byte_order);
2115 static void mesa_MultiTexCoord1sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2117 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord1sv_target, tvb, *offsetp, 4, byte_order);
2118 *offsetp += 4;
2119 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord1sv_v, hf_x11_glx_render_MultiTexCoord1sv_v_item, 1, byte_order);
2122 static void mesa_MultiTexCoord2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2124 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord2dv_target, tvb, *offsetp, 4, byte_order);
2125 *offsetp += 4;
2126 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord2dv_v, hf_x11_glx_render_MultiTexCoord2dv_v_item, 2, byte_order);
2129 static void mesa_MultiTexCoord2iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2131 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord2iv_target, tvb, *offsetp, 4, byte_order);
2132 *offsetp += 4;
2133 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord2iv_v, hf_x11_glx_render_MultiTexCoord2iv_v_item, 2, byte_order);
2136 static void mesa_MultiTexCoord2sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2138 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord2sv_target, tvb, *offsetp, 4, byte_order);
2139 *offsetp += 4;
2140 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord2sv_v, hf_x11_glx_render_MultiTexCoord2sv_v_item, 2, byte_order);
2143 static void mesa_MultiTexCoord3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2145 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord3dv_target, tvb, *offsetp, 4, byte_order);
2146 *offsetp += 4;
2147 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord3dv_v, hf_x11_glx_render_MultiTexCoord3dv_v_item, 3, byte_order);
2150 static void mesa_MultiTexCoord3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2152 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord3iv_target, tvb, *offsetp, 4, byte_order);
2153 *offsetp += 4;
2154 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord3iv_v, hf_x11_glx_render_MultiTexCoord3iv_v_item, 3, byte_order);
2157 static void mesa_MultiTexCoord3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2159 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord3sv_target, tvb, *offsetp, 4, byte_order);
2160 *offsetp += 4;
2161 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord3sv_v, hf_x11_glx_render_MultiTexCoord3sv_v_item, 3, byte_order);
2164 static void mesa_MultiTexCoord4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2166 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord4dv_target, tvb, *offsetp, 4, byte_order);
2167 *offsetp += 4;
2168 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord4dv_v, hf_x11_glx_render_MultiTexCoord4dv_v_item, 4, byte_order);
2171 static void mesa_MultiTexCoord4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2173 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord4iv_target, tvb, *offsetp, 4, byte_order);
2174 *offsetp += 4;
2175 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord4iv_v, hf_x11_glx_render_MultiTexCoord4iv_v_item, 4, byte_order);
2178 static void mesa_MultiTexCoord4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2180 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord4sv_target, tvb, *offsetp, 4, byte_order);
2181 *offsetp += 4;
2182 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord4sv_v, hf_x11_glx_render_MultiTexCoord4sv_v_item, 4, byte_order);
2185 static void mesa_SampleCoverage(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2187 proto_tree_add_item(t, hf_x11_glx_render_SampleCoverage_value, tvb, *offsetp, 4, byte_order);
2188 *offsetp += 4;
2189 proto_tree_add_item(t, hf_x11_glx_render_SampleCoverage_invert, tvb, *offsetp, 1, byte_order);
2190 *offsetp += 1;
2193 static void mesa_CompressedTexImage3D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2195 int imageSize;
2196 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_target, tvb, *offsetp, 4, byte_order);
2197 *offsetp += 4;
2198 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_level, tvb, *offsetp, 4, byte_order);
2199 *offsetp += 4;
2200 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_internalformat, tvb, *offsetp, 4, byte_order);
2201 *offsetp += 4;
2202 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_width, tvb, *offsetp, 4, byte_order);
2203 *offsetp += 4;
2204 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_height, tvb, *offsetp, 4, byte_order);
2205 *offsetp += 4;
2206 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_depth, tvb, *offsetp, 4, byte_order);
2207 *offsetp += 4;
2208 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_border, tvb, *offsetp, 4, byte_order);
2209 *offsetp += 4;
2210 imageSize = VALUE32(tvb, *offsetp);
2211 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage3D_imageSize, tvb, *offsetp, 4, byte_order);
2212 *offsetp += 4;
2213 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexImage3D_data, imageSize, byte_order);
2216 static void mesa_CompressedTexImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2218 int imageSize;
2219 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_target, tvb, *offsetp, 4, byte_order);
2220 *offsetp += 4;
2221 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_level, tvb, *offsetp, 4, byte_order);
2222 *offsetp += 4;
2223 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_internalformat, tvb, *offsetp, 4, byte_order);
2224 *offsetp += 4;
2225 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_width, tvb, *offsetp, 4, byte_order);
2226 *offsetp += 4;
2227 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_height, tvb, *offsetp, 4, byte_order);
2228 *offsetp += 4;
2229 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_border, tvb, *offsetp, 4, byte_order);
2230 *offsetp += 4;
2231 imageSize = VALUE32(tvb, *offsetp);
2232 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage2D_imageSize, tvb, *offsetp, 4, byte_order);
2233 *offsetp += 4;
2234 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexImage2D_data, imageSize, byte_order);
2237 static void mesa_CompressedTexImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2239 int imageSize;
2240 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_target, tvb, *offsetp, 4, byte_order);
2241 *offsetp += 4;
2242 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_level, tvb, *offsetp, 4, byte_order);
2243 *offsetp += 4;
2244 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_internalformat, tvb, *offsetp, 4, byte_order);
2245 *offsetp += 4;
2246 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_width, tvb, *offsetp, 4, byte_order);
2247 *offsetp += 4;
2248 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_border, tvb, *offsetp, 4, byte_order);
2249 *offsetp += 4;
2250 imageSize = VALUE32(tvb, *offsetp);
2251 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexImage1D_imageSize, tvb, *offsetp, 4, byte_order);
2252 *offsetp += 4;
2253 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexImage1D_data, imageSize, byte_order);
2256 static void mesa_CompressedTexSubImage3D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2258 int imageSize;
2259 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_target, tvb, *offsetp, 4, byte_order);
2260 *offsetp += 4;
2261 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_level, tvb, *offsetp, 4, byte_order);
2262 *offsetp += 4;
2263 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_xoffset, tvb, *offsetp, 4, byte_order);
2264 *offsetp += 4;
2265 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_yoffset, tvb, *offsetp, 4, byte_order);
2266 *offsetp += 4;
2267 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_zoffset, tvb, *offsetp, 4, byte_order);
2268 *offsetp += 4;
2269 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_width, tvb, *offsetp, 4, byte_order);
2270 *offsetp += 4;
2271 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_height, tvb, *offsetp, 4, byte_order);
2272 *offsetp += 4;
2273 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_depth, tvb, *offsetp, 4, byte_order);
2274 *offsetp += 4;
2275 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_format, tvb, *offsetp, 4, byte_order);
2276 *offsetp += 4;
2277 imageSize = VALUE32(tvb, *offsetp);
2278 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage3D_imageSize, tvb, *offsetp, 4, byte_order);
2279 *offsetp += 4;
2280 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexSubImage3D_data, imageSize, byte_order);
2283 static void mesa_CompressedTexSubImage2D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2285 int imageSize;
2286 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_target, tvb, *offsetp, 4, byte_order);
2287 *offsetp += 4;
2288 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_level, tvb, *offsetp, 4, byte_order);
2289 *offsetp += 4;
2290 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_xoffset, tvb, *offsetp, 4, byte_order);
2291 *offsetp += 4;
2292 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_yoffset, tvb, *offsetp, 4, byte_order);
2293 *offsetp += 4;
2294 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_width, tvb, *offsetp, 4, byte_order);
2295 *offsetp += 4;
2296 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_height, tvb, *offsetp, 4, byte_order);
2297 *offsetp += 4;
2298 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_format, tvb, *offsetp, 4, byte_order);
2299 *offsetp += 4;
2300 imageSize = VALUE32(tvb, *offsetp);
2301 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage2D_imageSize, tvb, *offsetp, 4, byte_order);
2302 *offsetp += 4;
2303 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexSubImage2D_data, imageSize, byte_order);
2306 static void mesa_CompressedTexSubImage1D(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2308 int imageSize;
2309 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_target, tvb, *offsetp, 4, byte_order);
2310 *offsetp += 4;
2311 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_level, tvb, *offsetp, 4, byte_order);
2312 *offsetp += 4;
2313 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_xoffset, tvb, *offsetp, 4, byte_order);
2314 *offsetp += 4;
2315 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_width, tvb, *offsetp, 4, byte_order);
2316 *offsetp += 4;
2317 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_format, tvb, *offsetp, 4, byte_order);
2318 *offsetp += 4;
2319 imageSize = VALUE32(tvb, *offsetp);
2320 proto_tree_add_item(t, hf_x11_glx_render_CompressedTexSubImage1D_imageSize, tvb, *offsetp, 4, byte_order);
2321 *offsetp += 4;
2322 listOfByte(tvb, offsetp, t, hf_x11_glx_render_CompressedTexSubImage1D_data, imageSize, byte_order);
2325 static void mesa_BlendFuncSeparate(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2327 proto_tree_add_item(t, hf_x11_glx_render_BlendFuncSeparate_sfactorRGB, tvb, *offsetp, 4, byte_order);
2328 *offsetp += 4;
2329 proto_tree_add_item(t, hf_x11_glx_render_BlendFuncSeparate_dfactorRGB, tvb, *offsetp, 4, byte_order);
2330 *offsetp += 4;
2331 proto_tree_add_item(t, hf_x11_glx_render_BlendFuncSeparate_sfactorAlpha, tvb, *offsetp, 4, byte_order);
2332 *offsetp += 4;
2333 proto_tree_add_item(t, hf_x11_glx_render_BlendFuncSeparate_dfactorAlpha, tvb, *offsetp, 4, byte_order);
2334 *offsetp += 4;
2337 static void mesa_FogCoorddv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2339 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_FogCoorddv_coord, hf_x11_glx_render_FogCoorddv_coord_item, 1, byte_order);
2342 static void mesa_PointParameterf(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2344 proto_tree_add_item(t, hf_x11_glx_render_PointParameterf_pname, tvb, *offsetp, 4, byte_order);
2345 *offsetp += 4;
2346 proto_tree_add_item(t, hf_x11_glx_render_PointParameterf_param, tvb, *offsetp, 4, byte_order);
2347 *offsetp += 4;
2350 static void mesa_PointParameterfv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2352 proto_tree_add_item(t, hf_x11_glx_render_PointParameterfv_pname, tvb, *offsetp, 4, byte_order);
2353 *offsetp += 4;
2354 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_PointParameterfv_params, hf_x11_glx_render_PointParameterfv_params_item, (length - 4) / 4, byte_order);
2357 static void mesa_PointParameteri(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2359 proto_tree_add_item(t, hf_x11_glx_render_PointParameteri_pname, tvb, *offsetp, 4, byte_order);
2360 *offsetp += 4;
2361 proto_tree_add_item(t, hf_x11_glx_render_PointParameteri_param, tvb, *offsetp, 4, byte_order);
2362 *offsetp += 4;
2365 static void mesa_PointParameteriv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2367 proto_tree_add_item(t, hf_x11_glx_render_PointParameteriv_pname, tvb, *offsetp, 4, byte_order);
2368 *offsetp += 4;
2369 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_PointParameteriv_params, hf_x11_glx_render_PointParameteriv_params_item, (length - 4) / 4, byte_order);
2372 static void mesa_SecondaryColor3bv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2374 listOfByte(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3bv_v, 3, byte_order);
2377 static void mesa_SecondaryColor3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2379 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3dv_v, hf_x11_glx_render_SecondaryColor3dv_v_item, 3, byte_order);
2382 static void mesa_SecondaryColor3iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2384 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3iv_v, hf_x11_glx_render_SecondaryColor3iv_v_item, 3, byte_order);
2387 static void mesa_SecondaryColor3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2389 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3sv_v, hf_x11_glx_render_SecondaryColor3sv_v_item, 3, byte_order);
2392 static void mesa_SecondaryColor3ubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2394 listOfByte(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3ubv_v, 3, byte_order);
2397 static void mesa_SecondaryColor3uiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2399 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3uiv_v, hf_x11_glx_render_SecondaryColor3uiv_v_item, 3, byte_order);
2402 static void mesa_SecondaryColor3usv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2404 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3usv_v, hf_x11_glx_render_SecondaryColor3usv_v_item, 3, byte_order);
2407 static void mesa_WindowPos3fv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2409 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_WindowPos3fv_v, hf_x11_glx_render_WindowPos3fv_v_item, 3, byte_order);
2412 static void mesa_BeginQuery(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2414 proto_tree_add_item(t, hf_x11_glx_render_BeginQuery_target, tvb, *offsetp, 4, byte_order);
2415 *offsetp += 4;
2416 proto_tree_add_item(t, hf_x11_glx_render_BeginQuery_id, tvb, *offsetp, 4, byte_order);
2417 *offsetp += 4;
2420 static void mesa_EndQuery(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2422 proto_tree_add_item(t, hf_x11_glx_render_EndQuery_target, tvb, *offsetp, 4, byte_order);
2423 *offsetp += 4;
2426 static void mesa_BlendEquationSeparate(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2428 proto_tree_add_item(t, hf_x11_glx_render_BlendEquationSeparate_modeRGB, tvb, *offsetp, 4, byte_order);
2429 *offsetp += 4;
2430 proto_tree_add_item(t, hf_x11_glx_render_BlendEquationSeparate_modeA, tvb, *offsetp, 4, byte_order);
2431 *offsetp += 4;
2434 static void mesa_DrawBuffers(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2436 int n;
2437 n = VALUE32(tvb, *offsetp);
2438 proto_tree_add_item(t, hf_x11_glx_render_DrawBuffers_n, tvb, *offsetp, 4, byte_order);
2439 *offsetp += 4;
2440 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_DrawBuffers_bufs, hf_x11_glx_render_DrawBuffers_bufs_item, n, byte_order);
2443 static void mesa_VertexAttrib1dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2445 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1dv_index, tvb, *offsetp, 4, byte_order);
2446 *offsetp += 4;
2447 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1dv_v, hf_x11_glx_render_VertexAttrib1dv_v_item, 1, byte_order);
2450 static void mesa_VertexAttrib1sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2452 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1sv_index, tvb, *offsetp, 4, byte_order);
2453 *offsetp += 4;
2454 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1sv_v, hf_x11_glx_render_VertexAttrib1sv_v_item, 1, byte_order);
2457 static void mesa_VertexAttrib2dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2459 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2dv_index, tvb, *offsetp, 4, byte_order);
2460 *offsetp += 4;
2461 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2dv_v, hf_x11_glx_render_VertexAttrib2dv_v_item, 2, byte_order);
2464 static void mesa_VertexAttrib2sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2466 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2sv_index, tvb, *offsetp, 4, byte_order);
2467 *offsetp += 4;
2468 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2sv_v, hf_x11_glx_render_VertexAttrib2sv_v_item, 2, byte_order);
2471 static void mesa_VertexAttrib3dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2473 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3dv_index, tvb, *offsetp, 4, byte_order);
2474 *offsetp += 4;
2475 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3dv_v, hf_x11_glx_render_VertexAttrib3dv_v_item, 3, byte_order);
2478 static void mesa_VertexAttrib3sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2480 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3sv_index, tvb, *offsetp, 4, byte_order);
2481 *offsetp += 4;
2482 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3sv_v, hf_x11_glx_render_VertexAttrib3sv_v_item, 3, byte_order);
2485 static void mesa_VertexAttrib4Nbv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2487 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Nbv_index, tvb, *offsetp, 4, byte_order);
2488 *offsetp += 4;
2489 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Nbv_v, 4, byte_order);
2492 static void mesa_VertexAttrib4Niv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2494 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Niv_index, tvb, *offsetp, 4, byte_order);
2495 *offsetp += 4;
2496 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Niv_v, hf_x11_glx_render_VertexAttrib4Niv_v_item, 4, byte_order);
2499 static void mesa_VertexAttrib4Nsv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2501 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Nsv_index, tvb, *offsetp, 4, byte_order);
2502 *offsetp += 4;
2503 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Nsv_v, hf_x11_glx_render_VertexAttrib4Nsv_v_item, 4, byte_order);
2506 static void mesa_VertexAttrib4Nubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2508 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Nubv_index, tvb, *offsetp, 4, byte_order);
2509 *offsetp += 4;
2510 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Nubv_v, 4, byte_order);
2513 static void mesa_VertexAttrib4Nuiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2515 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Nuiv_index, tvb, *offsetp, 4, byte_order);
2516 *offsetp += 4;
2517 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Nuiv_v, hf_x11_glx_render_VertexAttrib4Nuiv_v_item, 4, byte_order);
2520 static void mesa_VertexAttrib4Nusv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2522 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4Nusv_index, tvb, *offsetp, 4, byte_order);
2523 *offsetp += 4;
2524 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4Nusv_v, hf_x11_glx_render_VertexAttrib4Nusv_v_item, 4, byte_order);
2527 static void mesa_VertexAttrib4bv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2529 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4bv_index, tvb, *offsetp, 4, byte_order);
2530 *offsetp += 4;
2531 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4bv_v, 4, byte_order);
2534 static void mesa_VertexAttrib4dv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2536 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4dv_index, tvb, *offsetp, 4, byte_order);
2537 *offsetp += 4;
2538 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4dv_v, hf_x11_glx_render_VertexAttrib4dv_v_item, 4, byte_order);
2541 static void mesa_VertexAttrib4iv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2543 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4iv_index, tvb, *offsetp, 4, byte_order);
2544 *offsetp += 4;
2545 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4iv_v, hf_x11_glx_render_VertexAttrib4iv_v_item, 4, byte_order);
2548 static void mesa_VertexAttrib4sv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2550 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4sv_index, tvb, *offsetp, 4, byte_order);
2551 *offsetp += 4;
2552 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4sv_v, hf_x11_glx_render_VertexAttrib4sv_v_item, 4, byte_order);
2555 static void mesa_VertexAttrib4ubv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2557 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4ubv_index, tvb, *offsetp, 4, byte_order);
2558 *offsetp += 4;
2559 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4ubv_v, 4, byte_order);
2562 static void mesa_VertexAttrib4uiv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2564 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4uiv_index, tvb, *offsetp, 4, byte_order);
2565 *offsetp += 4;
2566 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4uiv_v, hf_x11_glx_render_VertexAttrib4uiv_v_item, 4, byte_order);
2569 static void mesa_VertexAttrib4usv(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2571 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4usv_index, tvb, *offsetp, 4, byte_order);
2572 *offsetp += 4;
2573 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4usv_v, hf_x11_glx_render_VertexAttrib4usv_v_item, 4, byte_order);
2576 static void mesa_MultiTexCoord1fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2578 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord1fvARB_target, tvb, *offsetp, 4, byte_order);
2579 *offsetp += 4;
2580 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord1fvARB_v, hf_x11_glx_render_MultiTexCoord1fvARB_v_item, 1, byte_order);
2583 static void mesa_MultiTexCoord2fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2585 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord2fvARB_target, tvb, *offsetp, 4, byte_order);
2586 *offsetp += 4;
2587 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord2fvARB_v, hf_x11_glx_render_MultiTexCoord2fvARB_v_item, 2, byte_order);
2590 static void mesa_MultiTexCoord3fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2592 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord3fvARB_target, tvb, *offsetp, 4, byte_order);
2593 *offsetp += 4;
2594 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord3fvARB_v, hf_x11_glx_render_MultiTexCoord3fvARB_v_item, 3, byte_order);
2597 static void mesa_MultiTexCoord4fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2599 proto_tree_add_item(t, hf_x11_glx_render_MultiTexCoord4fvARB_target, tvb, *offsetp, 4, byte_order);
2600 *offsetp += 4;
2601 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_MultiTexCoord4fvARB_v, hf_x11_glx_render_MultiTexCoord4fvARB_v_item, 4, byte_order);
2604 static void mesa_CurrentPaletteMatrixARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2606 proto_tree_add_item(t, hf_x11_glx_render_CurrentPaletteMatrixARB_index, tvb, *offsetp, 4, byte_order);
2607 *offsetp += 4;
2610 static void mesa_MatrixIndexubvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2612 int size;
2613 size = VALUE32(tvb, *offsetp);
2614 proto_tree_add_item(t, hf_x11_glx_render_MatrixIndexubvARB_size, tvb, *offsetp, 4, byte_order);
2615 *offsetp += 4;
2616 listOfByte(tvb, offsetp, t, hf_x11_glx_render_MatrixIndexubvARB_indices, size, byte_order);
2619 static void mesa_MatrixIndexusvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2621 int size;
2622 size = VALUE32(tvb, *offsetp);
2623 proto_tree_add_item(t, hf_x11_glx_render_MatrixIndexusvARB_size, tvb, *offsetp, 4, byte_order);
2624 *offsetp += 4;
2625 listOfCard16(tvb, offsetp, t, hf_x11_glx_render_MatrixIndexusvARB_indices, hf_x11_glx_render_MatrixIndexusvARB_indices_item, size, byte_order);
2628 static void mesa_MatrixIndexuivARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2630 int size;
2631 size = VALUE32(tvb, *offsetp);
2632 proto_tree_add_item(t, hf_x11_glx_render_MatrixIndexuivARB_size, tvb, *offsetp, 4, byte_order);
2633 *offsetp += 4;
2634 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_MatrixIndexuivARB_indices, hf_x11_glx_render_MatrixIndexuivARB_indices_item, size, byte_order);
2637 static void mesa_VertexAttrib1fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2639 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1fvARB_index, tvb, *offsetp, 4, byte_order);
2640 *offsetp += 4;
2641 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1fvARB_v, hf_x11_glx_render_VertexAttrib1fvARB_v_item, 1, byte_order);
2644 static void mesa_VertexAttrib2fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2646 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2fvARB_index, tvb, *offsetp, 4, byte_order);
2647 *offsetp += 4;
2648 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2fvARB_v, hf_x11_glx_render_VertexAttrib2fvARB_v_item, 2, byte_order);
2651 static void mesa_VertexAttrib3fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2653 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3fvARB_index, tvb, *offsetp, 4, byte_order);
2654 *offsetp += 4;
2655 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3fvARB_v, hf_x11_glx_render_VertexAttrib3fvARB_v_item, 3, byte_order);
2658 static void mesa_VertexAttrib4fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2660 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4fvARB_index, tvb, *offsetp, 4, byte_order);
2661 *offsetp += 4;
2662 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4fvARB_v, hf_x11_glx_render_VertexAttrib4fvARB_v_item, 4, byte_order);
2665 static void mesa_ProgramStringARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2667 int len;
2668 proto_tree_add_item(t, hf_x11_glx_render_ProgramStringARB_target, tvb, *offsetp, 4, byte_order);
2669 *offsetp += 4;
2670 proto_tree_add_item(t, hf_x11_glx_render_ProgramStringARB_format, tvb, *offsetp, 4, byte_order);
2671 *offsetp += 4;
2672 len = VALUE32(tvb, *offsetp);
2673 proto_tree_add_item(t, hf_x11_glx_render_ProgramStringARB_len, tvb, *offsetp, 4, byte_order);
2674 *offsetp += 4;
2675 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ProgramStringARB_string, len, byte_order);
2678 static void mesa_BindProgramARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2680 proto_tree_add_item(t, hf_x11_glx_render_BindProgramARB_target, tvb, *offsetp, 4, byte_order);
2681 *offsetp += 4;
2682 proto_tree_add_item(t, hf_x11_glx_render_BindProgramARB_program, tvb, *offsetp, 4, byte_order);
2683 *offsetp += 4;
2686 static void mesa_ProgramEnvParameter4dvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2688 proto_tree_add_item(t, hf_x11_glx_render_ProgramEnvParameter4dvARB_target, tvb, *offsetp, 4, byte_order);
2689 *offsetp += 4;
2690 proto_tree_add_item(t, hf_x11_glx_render_ProgramEnvParameter4dvARB_index, tvb, *offsetp, 4, byte_order);
2691 *offsetp += 4;
2692 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ProgramEnvParameter4dvARB_params, hf_x11_glx_render_ProgramEnvParameter4dvARB_params_item, 4, byte_order);
2695 static void mesa_ProgramEnvParameter4fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2697 proto_tree_add_item(t, hf_x11_glx_render_ProgramEnvParameter4fvARB_target, tvb, *offsetp, 4, byte_order);
2698 *offsetp += 4;
2699 proto_tree_add_item(t, hf_x11_glx_render_ProgramEnvParameter4fvARB_index, tvb, *offsetp, 4, byte_order);
2700 *offsetp += 4;
2701 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ProgramEnvParameter4fvARB_params, hf_x11_glx_render_ProgramEnvParameter4fvARB_params_item, 4, byte_order);
2704 static void mesa_ProgramLocalParameter4dvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2706 proto_tree_add_item(t, hf_x11_glx_render_ProgramLocalParameter4dvARB_target, tvb, *offsetp, 4, byte_order);
2707 *offsetp += 4;
2708 proto_tree_add_item(t, hf_x11_glx_render_ProgramLocalParameter4dvARB_index, tvb, *offsetp, 4, byte_order);
2709 *offsetp += 4;
2710 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ProgramLocalParameter4dvARB_params, hf_x11_glx_render_ProgramLocalParameter4dvARB_params_item, 4, byte_order);
2713 static void mesa_ProgramLocalParameter4fvARB(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2715 proto_tree_add_item(t, hf_x11_glx_render_ProgramLocalParameter4fvARB_target, tvb, *offsetp, 4, byte_order);
2716 *offsetp += 4;
2717 proto_tree_add_item(t, hf_x11_glx_render_ProgramLocalParameter4fvARB_index, tvb, *offsetp, 4, byte_order);
2718 *offsetp += 4;
2719 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ProgramLocalParameter4fvARB_params, hf_x11_glx_render_ProgramLocalParameter4fvARB_params_item, 4, byte_order);
2722 static void mesa_PolygonOffsetEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2724 proto_tree_add_item(t, hf_x11_glx_render_PolygonOffsetEXT_factor, tvb, *offsetp, 4, byte_order);
2725 *offsetp += 4;
2726 proto_tree_add_item(t, hf_x11_glx_render_PolygonOffsetEXT_bias, tvb, *offsetp, 4, byte_order);
2727 *offsetp += 4;
2730 static void mesa_TexFilterFuncSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2732 int n;
2733 proto_tree_add_item(t, hf_x11_glx_render_TexFilterFuncSGIS_target, tvb, *offsetp, 4, byte_order);
2734 *offsetp += 4;
2735 proto_tree_add_item(t, hf_x11_glx_render_TexFilterFuncSGIS_filter, tvb, *offsetp, 4, byte_order);
2736 *offsetp += 4;
2737 n = VALUE32(tvb, *offsetp);
2738 proto_tree_add_item(t, hf_x11_glx_render_TexFilterFuncSGIS_n, tvb, *offsetp, 4, byte_order);
2739 *offsetp += 4;
2740 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_TexFilterFuncSGIS_weights, hf_x11_glx_render_TexFilterFuncSGIS_weights_item, n, byte_order);
2743 static void mesa_TexImage4DSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2745 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_swapbytes, tvb, *offsetp, 1, byte_order);
2746 *offsetp += 1;
2747 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_lsbfirst, tvb, *offsetp, 1, byte_order);
2748 *offsetp += 1;
2749 UNUSED(2);
2750 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_rowlength, tvb, *offsetp, 4, byte_order);
2751 *offsetp += 4;
2752 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_skiprows, tvb, *offsetp, 4, byte_order);
2753 *offsetp += 4;
2754 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_skippixels, tvb, *offsetp, 4, byte_order);
2755 *offsetp += 4;
2756 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_alignment, tvb, *offsetp, 4, byte_order);
2757 *offsetp += 4;
2758 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_target, tvb, *offsetp, 4, byte_order);
2759 *offsetp += 4;
2760 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_level, tvb, *offsetp, 4, byte_order);
2761 *offsetp += 4;
2762 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_internalformat, tvb, *offsetp, 4, byte_order);
2763 *offsetp += 4;
2764 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_width, tvb, *offsetp, 4, byte_order);
2765 *offsetp += 4;
2766 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_height, tvb, *offsetp, 4, byte_order);
2767 *offsetp += 4;
2768 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_depth, tvb, *offsetp, 4, byte_order);
2769 *offsetp += 4;
2770 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_size4d, tvb, *offsetp, 4, byte_order);
2771 *offsetp += 4;
2772 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_border, tvb, *offsetp, 4, byte_order);
2773 *offsetp += 4;
2774 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_format, tvb, *offsetp, 4, byte_order);
2775 *offsetp += 4;
2776 proto_tree_add_item(t, hf_x11_glx_render_TexImage4DSGIS_type, tvb, *offsetp, 4, byte_order);
2777 *offsetp += 4;
2778 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexImage4DSGIS_pixels, (length - 60) / 1, byte_order);
2781 static void mesa_TexSubImage4DSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2783 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_swapbytes, tvb, *offsetp, 1, byte_order);
2784 *offsetp += 1;
2785 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_lsbfirst, tvb, *offsetp, 1, byte_order);
2786 *offsetp += 1;
2787 UNUSED(2);
2788 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_rowlength, tvb, *offsetp, 4, byte_order);
2789 *offsetp += 4;
2790 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_skiprows, tvb, *offsetp, 4, byte_order);
2791 *offsetp += 4;
2792 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_skippixels, tvb, *offsetp, 4, byte_order);
2793 *offsetp += 4;
2794 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_alignment, tvb, *offsetp, 4, byte_order);
2795 *offsetp += 4;
2796 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_target, tvb, *offsetp, 4, byte_order);
2797 *offsetp += 4;
2798 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_level, tvb, *offsetp, 4, byte_order);
2799 *offsetp += 4;
2800 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_xoffset, tvb, *offsetp, 4, byte_order);
2801 *offsetp += 4;
2802 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_yoffset, tvb, *offsetp, 4, byte_order);
2803 *offsetp += 4;
2804 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_zoffset, tvb, *offsetp, 4, byte_order);
2805 *offsetp += 4;
2806 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_woffset, tvb, *offsetp, 4, byte_order);
2807 *offsetp += 4;
2808 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_width, tvb, *offsetp, 4, byte_order);
2809 *offsetp += 4;
2810 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_height, tvb, *offsetp, 4, byte_order);
2811 *offsetp += 4;
2812 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_depth, tvb, *offsetp, 4, byte_order);
2813 *offsetp += 4;
2814 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_size4d, tvb, *offsetp, 4, byte_order);
2815 *offsetp += 4;
2816 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_format, tvb, *offsetp, 4, byte_order);
2817 *offsetp += 4;
2818 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_type, tvb, *offsetp, 4, byte_order);
2819 *offsetp += 4;
2820 proto_tree_add_item(t, hf_x11_glx_render_TexSubImage4DSGIS_UNUSED, tvb, *offsetp, 4, byte_order);
2821 *offsetp += 4;
2822 listOfByte(tvb, offsetp, t, hf_x11_glx_render_TexSubImage4DSGIS_pixels, (length - 72) / 1, byte_order);
2825 static void mesa_DetailTexFuncSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2827 int n;
2828 proto_tree_add_item(t, hf_x11_glx_render_DetailTexFuncSGIS_target, tvb, *offsetp, 4, byte_order);
2829 *offsetp += 4;
2830 n = VALUE32(tvb, *offsetp);
2831 proto_tree_add_item(t, hf_x11_glx_render_DetailTexFuncSGIS_n, tvb, *offsetp, 4, byte_order);
2832 *offsetp += 4;
2833 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_DetailTexFuncSGIS_points, hf_x11_glx_render_DetailTexFuncSGIS_points_item, n, byte_order);
2836 static void mesa_SharpenTexFuncSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2838 int n;
2839 proto_tree_add_item(t, hf_x11_glx_render_SharpenTexFuncSGIS_target, tvb, *offsetp, 4, byte_order);
2840 *offsetp += 4;
2841 n = VALUE32(tvb, *offsetp);
2842 proto_tree_add_item(t, hf_x11_glx_render_SharpenTexFuncSGIS_n, tvb, *offsetp, 4, byte_order);
2843 *offsetp += 4;
2844 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_SharpenTexFuncSGIS_points, hf_x11_glx_render_SharpenTexFuncSGIS_points_item, n, byte_order);
2847 static void mesa_SampleMaskSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2849 proto_tree_add_item(t, hf_x11_glx_render_SampleMaskSGIS_value, tvb, *offsetp, 4, byte_order);
2850 *offsetp += 4;
2851 proto_tree_add_item(t, hf_x11_glx_render_SampleMaskSGIS_invert, tvb, *offsetp, 1, byte_order);
2852 *offsetp += 1;
2855 static void mesa_SamplePatternSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2857 proto_tree_add_item(t, hf_x11_glx_render_SamplePatternSGIS_pattern, tvb, *offsetp, 4, byte_order);
2858 *offsetp += 4;
2861 static void mesa_FrameZoomSGIX(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2863 proto_tree_add_item(t, hf_x11_glx_render_FrameZoomSGIX_factor, tvb, *offsetp, 4, byte_order);
2864 *offsetp += 4;
2867 static void mesa_TagSampleBufferSGIX(tvbuff_t *tvb _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
2871 static void mesa_ReferencePlaneSGIX(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2873 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ReferencePlaneSGIX_equation, hf_x11_glx_render_ReferencePlaneSGIX_equation_item, 4, byte_order);
2876 static void mesa_FogFuncSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2878 int n;
2879 n = VALUE32(tvb, *offsetp);
2880 proto_tree_add_item(t, hf_x11_glx_render_FogFuncSGIS_n, tvb, *offsetp, 4, byte_order);
2881 *offsetp += 4;
2882 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_FogFuncSGIS_points, hf_x11_glx_render_FogFuncSGIS_points_item, n, byte_order);
2885 static void mesa_SecondaryColor3fvEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2887 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_SecondaryColor3fvEXT_v, hf_x11_glx_render_SecondaryColor3fvEXT_v_item, 3, byte_order);
2890 static void mesa_FogCoordfvEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2892 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_FogCoordfvEXT_coord, hf_x11_glx_render_FogCoordfvEXT_coord_item, 1, byte_order);
2895 static void mesa_PixelTexGenSGIX(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2897 proto_tree_add_item(t, hf_x11_glx_render_PixelTexGenSGIX_mode, tvb, *offsetp, 4, byte_order);
2898 *offsetp += 4;
2901 static void mesa_VertexWeightfvEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2903 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexWeightfvEXT_weight, hf_x11_glx_render_VertexWeightfvEXT_weight_item, 1, byte_order);
2906 static void mesa_CombinerParameterfvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2908 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameterfvNV_pname, tvb, *offsetp, 4, byte_order);
2909 *offsetp += 4;
2910 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_CombinerParameterfvNV_params, hf_x11_glx_render_CombinerParameterfvNV_params_item, (length - 4) / 4, byte_order);
2913 static void mesa_CombinerParameterfNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2915 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameterfNV_pname, tvb, *offsetp, 4, byte_order);
2916 *offsetp += 4;
2917 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameterfNV_param, tvb, *offsetp, 4, byte_order);
2918 *offsetp += 4;
2921 static void mesa_CombinerParameterivNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2923 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameterivNV_pname, tvb, *offsetp, 4, byte_order);
2924 *offsetp += 4;
2925 listOfInt32(tvb, offsetp, t, hf_x11_glx_render_CombinerParameterivNV_params, hf_x11_glx_render_CombinerParameterivNV_params_item, (length - 4) / 4, byte_order);
2928 static void mesa_CombinerParameteriNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2930 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameteriNV_pname, tvb, *offsetp, 4, byte_order);
2931 *offsetp += 4;
2932 proto_tree_add_item(t, hf_x11_glx_render_CombinerParameteriNV_param, tvb, *offsetp, 4, byte_order);
2933 *offsetp += 4;
2936 static void mesa_CombinerInputNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2938 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_stage, tvb, *offsetp, 4, byte_order);
2939 *offsetp += 4;
2940 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_portion, tvb, *offsetp, 4, byte_order);
2941 *offsetp += 4;
2942 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_variable, tvb, *offsetp, 4, byte_order);
2943 *offsetp += 4;
2944 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_input, tvb, *offsetp, 4, byte_order);
2945 *offsetp += 4;
2946 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_mapping, tvb, *offsetp, 4, byte_order);
2947 *offsetp += 4;
2948 proto_tree_add_item(t, hf_x11_glx_render_CombinerInputNV_componentUsage, tvb, *offsetp, 4, byte_order);
2949 *offsetp += 4;
2952 static void mesa_CombinerOutputNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2954 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_stage, tvb, *offsetp, 4, byte_order);
2955 *offsetp += 4;
2956 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_portion, tvb, *offsetp, 4, byte_order);
2957 *offsetp += 4;
2958 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_abOutput, tvb, *offsetp, 4, byte_order);
2959 *offsetp += 4;
2960 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_cdOutput, tvb, *offsetp, 4, byte_order);
2961 *offsetp += 4;
2962 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_sumOutput, tvb, *offsetp, 4, byte_order);
2963 *offsetp += 4;
2964 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_scale, tvb, *offsetp, 4, byte_order);
2965 *offsetp += 4;
2966 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_bias, tvb, *offsetp, 4, byte_order);
2967 *offsetp += 4;
2968 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_abDotProduct, tvb, *offsetp, 1, byte_order);
2969 *offsetp += 1;
2970 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_cdDotProduct, tvb, *offsetp, 1, byte_order);
2971 *offsetp += 1;
2972 proto_tree_add_item(t, hf_x11_glx_render_CombinerOutputNV_muxSum, tvb, *offsetp, 1, byte_order);
2973 *offsetp += 1;
2976 static void mesa_FinalCombinerInputNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2978 proto_tree_add_item(t, hf_x11_glx_render_FinalCombinerInputNV_variable, tvb, *offsetp, 4, byte_order);
2979 *offsetp += 4;
2980 proto_tree_add_item(t, hf_x11_glx_render_FinalCombinerInputNV_input, tvb, *offsetp, 4, byte_order);
2981 *offsetp += 4;
2982 proto_tree_add_item(t, hf_x11_glx_render_FinalCombinerInputNV_mapping, tvb, *offsetp, 4, byte_order);
2983 *offsetp += 4;
2984 proto_tree_add_item(t, hf_x11_glx_render_FinalCombinerInputNV_componentUsage, tvb, *offsetp, 4, byte_order);
2985 *offsetp += 4;
2988 static void mesa_TextureColorMaskSGIS(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
2990 proto_tree_add_item(t, hf_x11_glx_render_TextureColorMaskSGIS_red, tvb, *offsetp, 1, byte_order);
2991 *offsetp += 1;
2992 proto_tree_add_item(t, hf_x11_glx_render_TextureColorMaskSGIS_green, tvb, *offsetp, 1, byte_order);
2993 *offsetp += 1;
2994 proto_tree_add_item(t, hf_x11_glx_render_TextureColorMaskSGIS_blue, tvb, *offsetp, 1, byte_order);
2995 *offsetp += 1;
2996 proto_tree_add_item(t, hf_x11_glx_render_TextureColorMaskSGIS_alpha, tvb, *offsetp, 1, byte_order);
2997 *offsetp += 1;
3000 static void mesa_ExecuteProgramNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3002 proto_tree_add_item(t, hf_x11_glx_render_ExecuteProgramNV_target, tvb, *offsetp, 4, byte_order);
3003 *offsetp += 4;
3004 proto_tree_add_item(t, hf_x11_glx_render_ExecuteProgramNV_id, tvb, *offsetp, 4, byte_order);
3005 *offsetp += 4;
3006 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ExecuteProgramNV_params, hf_x11_glx_render_ExecuteProgramNV_params_item, 4, byte_order);
3009 static void mesa_LoadProgramNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3011 int len;
3012 proto_tree_add_item(t, hf_x11_glx_render_LoadProgramNV_target, tvb, *offsetp, 4, byte_order);
3013 *offsetp += 4;
3014 proto_tree_add_item(t, hf_x11_glx_render_LoadProgramNV_id, tvb, *offsetp, 4, byte_order);
3015 *offsetp += 4;
3016 len = VALUE32(tvb, *offsetp);
3017 proto_tree_add_item(t, hf_x11_glx_render_LoadProgramNV_len, tvb, *offsetp, 4, byte_order);
3018 *offsetp += 4;
3019 listOfByte(tvb, offsetp, t, hf_x11_glx_render_LoadProgramNV_program, len, byte_order);
3022 static void mesa_ProgramParameters4dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3024 int num;
3025 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4dvNV_target, tvb, *offsetp, 4, byte_order);
3026 *offsetp += 4;
3027 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4dvNV_index, tvb, *offsetp, 4, byte_order);
3028 *offsetp += 4;
3029 num = VALUE32(tvb, *offsetp);
3030 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4dvNV_num, tvb, *offsetp, 4, byte_order);
3031 *offsetp += 4;
3032 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ProgramParameters4dvNV_params, hf_x11_glx_render_ProgramParameters4dvNV_params_item, num, byte_order);
3035 static void mesa_ProgramParameters4fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3037 int num;
3038 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4fvNV_target, tvb, *offsetp, 4, byte_order);
3039 *offsetp += 4;
3040 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4fvNV_index, tvb, *offsetp, 4, byte_order);
3041 *offsetp += 4;
3042 num = VALUE32(tvb, *offsetp);
3043 proto_tree_add_item(t, hf_x11_glx_render_ProgramParameters4fvNV_num, tvb, *offsetp, 4, byte_order);
3044 *offsetp += 4;
3045 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ProgramParameters4fvNV_params, hf_x11_glx_render_ProgramParameters4fvNV_params_item, num, byte_order);
3048 static void mesa_RequestResidentProgramsNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3050 int n;
3051 n = VALUE32(tvb, *offsetp);
3052 proto_tree_add_item(t, hf_x11_glx_render_RequestResidentProgramsNV_n, tvb, *offsetp, 4, byte_order);
3053 *offsetp += 4;
3054 listOfCard32(tvb, offsetp, t, hf_x11_glx_render_RequestResidentProgramsNV_ids, hf_x11_glx_render_RequestResidentProgramsNV_ids_item, n, byte_order);
3057 static void mesa_TrackMatrixNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3059 proto_tree_add_item(t, hf_x11_glx_render_TrackMatrixNV_target, tvb, *offsetp, 4, byte_order);
3060 *offsetp += 4;
3061 proto_tree_add_item(t, hf_x11_glx_render_TrackMatrixNV_address, tvb, *offsetp, 4, byte_order);
3062 *offsetp += 4;
3063 proto_tree_add_item(t, hf_x11_glx_render_TrackMatrixNV_matrix, tvb, *offsetp, 4, byte_order);
3064 *offsetp += 4;
3065 proto_tree_add_item(t, hf_x11_glx_render_TrackMatrixNV_transform, tvb, *offsetp, 4, byte_order);
3066 *offsetp += 4;
3069 static void mesa_VertexAttrib1svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3071 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1svNV_index, tvb, *offsetp, 4, byte_order);
3072 *offsetp += 4;
3073 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1svNV_v, hf_x11_glx_render_VertexAttrib1svNV_v_item, 1, byte_order);
3076 static void mesa_VertexAttrib2svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3078 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2svNV_index, tvb, *offsetp, 4, byte_order);
3079 *offsetp += 4;
3080 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2svNV_v, hf_x11_glx_render_VertexAttrib2svNV_v_item, 2, byte_order);
3083 static void mesa_VertexAttrib3svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3085 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3svNV_index, tvb, *offsetp, 4, byte_order);
3086 *offsetp += 4;
3087 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3svNV_v, hf_x11_glx_render_VertexAttrib3svNV_v_item, 3, byte_order);
3090 static void mesa_VertexAttrib4svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3092 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4svNV_index, tvb, *offsetp, 4, byte_order);
3093 *offsetp += 4;
3094 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4svNV_v, hf_x11_glx_render_VertexAttrib4svNV_v_item, 4, byte_order);
3097 static void mesa_VertexAttrib1fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3099 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1fvNV_index, tvb, *offsetp, 4, byte_order);
3100 *offsetp += 4;
3101 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1fvNV_v, hf_x11_glx_render_VertexAttrib1fvNV_v_item, 1, byte_order);
3104 static void mesa_VertexAttrib2fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3106 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2fvNV_index, tvb, *offsetp, 4, byte_order);
3107 *offsetp += 4;
3108 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2fvNV_v, hf_x11_glx_render_VertexAttrib2fvNV_v_item, 2, byte_order);
3111 static void mesa_VertexAttrib3fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3113 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3fvNV_index, tvb, *offsetp, 4, byte_order);
3114 *offsetp += 4;
3115 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3fvNV_v, hf_x11_glx_render_VertexAttrib3fvNV_v_item, 3, byte_order);
3118 static void mesa_VertexAttrib4fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3120 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4fvNV_index, tvb, *offsetp, 4, byte_order);
3121 *offsetp += 4;
3122 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4fvNV_v, hf_x11_glx_render_VertexAttrib4fvNV_v_item, 4, byte_order);
3125 static void mesa_VertexAttrib1dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3127 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib1dvNV_index, tvb, *offsetp, 4, byte_order);
3128 *offsetp += 4;
3129 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib1dvNV_v, hf_x11_glx_render_VertexAttrib1dvNV_v_item, 1, byte_order);
3132 static void mesa_VertexAttrib2dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3134 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib2dvNV_index, tvb, *offsetp, 4, byte_order);
3135 *offsetp += 4;
3136 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib2dvNV_v, hf_x11_glx_render_VertexAttrib2dvNV_v_item, 2, byte_order);
3139 static void mesa_VertexAttrib3dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3141 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib3dvNV_index, tvb, *offsetp, 4, byte_order);
3142 *offsetp += 4;
3143 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib3dvNV_v, hf_x11_glx_render_VertexAttrib3dvNV_v_item, 3, byte_order);
3146 static void mesa_VertexAttrib4dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3148 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4dvNV_index, tvb, *offsetp, 4, byte_order);
3149 *offsetp += 4;
3150 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4dvNV_v, hf_x11_glx_render_VertexAttrib4dvNV_v_item, 4, byte_order);
3153 static void mesa_VertexAttrib4ubvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3155 proto_tree_add_item(t, hf_x11_glx_render_VertexAttrib4ubvNV_index, tvb, *offsetp, 4, byte_order);
3156 *offsetp += 4;
3157 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttrib4ubvNV_v, 4, byte_order);
3160 static void mesa_VertexAttribs1svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3162 int n;
3163 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1svNV_index, tvb, *offsetp, 4, byte_order);
3164 *offsetp += 4;
3165 n = VALUE32(tvb, *offsetp);
3166 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1svNV_n, tvb, *offsetp, 4, byte_order);
3167 *offsetp += 4;
3168 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs1svNV_v, hf_x11_glx_render_VertexAttribs1svNV_v_item, n, byte_order);
3171 static void mesa_VertexAttribs2svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3173 int n;
3174 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2svNV_index, tvb, *offsetp, 4, byte_order);
3175 *offsetp += 4;
3176 n = VALUE32(tvb, *offsetp);
3177 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2svNV_n, tvb, *offsetp, 4, byte_order);
3178 *offsetp += 4;
3179 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs2svNV_v, hf_x11_glx_render_VertexAttribs2svNV_v_item, n, byte_order);
3182 static void mesa_VertexAttribs3svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3184 int n;
3185 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3svNV_index, tvb, *offsetp, 4, byte_order);
3186 *offsetp += 4;
3187 n = VALUE32(tvb, *offsetp);
3188 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3svNV_n, tvb, *offsetp, 4, byte_order);
3189 *offsetp += 4;
3190 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs3svNV_v, hf_x11_glx_render_VertexAttribs3svNV_v_item, n, byte_order);
3193 static void mesa_VertexAttribs4svNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3195 int n;
3196 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4svNV_index, tvb, *offsetp, 4, byte_order);
3197 *offsetp += 4;
3198 n = VALUE32(tvb, *offsetp);
3199 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4svNV_n, tvb, *offsetp, 4, byte_order);
3200 *offsetp += 4;
3201 listOfInt16(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs4svNV_v, hf_x11_glx_render_VertexAttribs4svNV_v_item, n, byte_order);
3204 static void mesa_VertexAttribs1fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3206 int n;
3207 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1fvNV_index, tvb, *offsetp, 4, byte_order);
3208 *offsetp += 4;
3209 n = VALUE32(tvb, *offsetp);
3210 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1fvNV_n, tvb, *offsetp, 4, byte_order);
3211 *offsetp += 4;
3212 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs1fvNV_v, hf_x11_glx_render_VertexAttribs1fvNV_v_item, n, byte_order);
3215 static void mesa_VertexAttribs2fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3217 int n;
3218 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2fvNV_index, tvb, *offsetp, 4, byte_order);
3219 *offsetp += 4;
3220 n = VALUE32(tvb, *offsetp);
3221 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2fvNV_n, tvb, *offsetp, 4, byte_order);
3222 *offsetp += 4;
3223 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs2fvNV_v, hf_x11_glx_render_VertexAttribs2fvNV_v_item, n, byte_order);
3226 static void mesa_VertexAttribs3fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3228 int n;
3229 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3fvNV_index, tvb, *offsetp, 4, byte_order);
3230 *offsetp += 4;
3231 n = VALUE32(tvb, *offsetp);
3232 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3fvNV_n, tvb, *offsetp, 4, byte_order);
3233 *offsetp += 4;
3234 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs3fvNV_v, hf_x11_glx_render_VertexAttribs3fvNV_v_item, n, byte_order);
3237 static void mesa_VertexAttribs4fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3239 int n;
3240 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4fvNV_index, tvb, *offsetp, 4, byte_order);
3241 *offsetp += 4;
3242 n = VALUE32(tvb, *offsetp);
3243 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4fvNV_n, tvb, *offsetp, 4, byte_order);
3244 *offsetp += 4;
3245 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs4fvNV_v, hf_x11_glx_render_VertexAttribs4fvNV_v_item, n, byte_order);
3248 static void mesa_VertexAttribs1dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3250 int n;
3251 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1dvNV_index, tvb, *offsetp, 4, byte_order);
3252 *offsetp += 4;
3253 n = VALUE32(tvb, *offsetp);
3254 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs1dvNV_n, tvb, *offsetp, 4, byte_order);
3255 *offsetp += 4;
3256 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs1dvNV_v, hf_x11_glx_render_VertexAttribs1dvNV_v_item, n, byte_order);
3259 static void mesa_VertexAttribs2dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3261 int n;
3262 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2dvNV_index, tvb, *offsetp, 4, byte_order);
3263 *offsetp += 4;
3264 n = VALUE32(tvb, *offsetp);
3265 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs2dvNV_n, tvb, *offsetp, 4, byte_order);
3266 *offsetp += 4;
3267 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs2dvNV_v, hf_x11_glx_render_VertexAttribs2dvNV_v_item, n, byte_order);
3270 static void mesa_VertexAttribs3dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3272 int n;
3273 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3dvNV_index, tvb, *offsetp, 4, byte_order);
3274 *offsetp += 4;
3275 n = VALUE32(tvb, *offsetp);
3276 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs3dvNV_n, tvb, *offsetp, 4, byte_order);
3277 *offsetp += 4;
3278 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs3dvNV_v, hf_x11_glx_render_VertexAttribs3dvNV_v_item, n, byte_order);
3281 static void mesa_VertexAttribs4dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3283 int n;
3284 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4dvNV_index, tvb, *offsetp, 4, byte_order);
3285 *offsetp += 4;
3286 n = VALUE32(tvb, *offsetp);
3287 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4dvNV_n, tvb, *offsetp, 4, byte_order);
3288 *offsetp += 4;
3289 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs4dvNV_v, hf_x11_glx_render_VertexAttribs4dvNV_v_item, n, byte_order);
3292 static void mesa_VertexAttribs4ubvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3294 int n;
3295 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4ubvNV_index, tvb, *offsetp, 4, byte_order);
3296 *offsetp += 4;
3297 n = VALUE32(tvb, *offsetp);
3298 proto_tree_add_item(t, hf_x11_glx_render_VertexAttribs4ubvNV_n, tvb, *offsetp, 4, byte_order);
3299 *offsetp += 4;
3300 listOfByte(tvb, offsetp, t, hf_x11_glx_render_VertexAttribs4ubvNV_v, n, byte_order);
3303 static void mesa_ActiveStencilFaceEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3305 proto_tree_add_item(t, hf_x11_glx_render_ActiveStencilFaceEXT_face, tvb, *offsetp, 4, byte_order);
3306 *offsetp += 4;
3309 static void mesa_ProgramNamedParameter4fvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3311 int len;
3312 proto_tree_add_item(t, hf_x11_glx_render_ProgramNamedParameter4fvNV_id, tvb, *offsetp, 4, byte_order);
3313 *offsetp += 4;
3314 len = VALUE32(tvb, *offsetp);
3315 proto_tree_add_item(t, hf_x11_glx_render_ProgramNamedParameter4fvNV_len, tvb, *offsetp, 4, byte_order);
3316 *offsetp += 4;
3317 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ProgramNamedParameter4fvNV_name, len, byte_order);
3318 listOfFloat(tvb, offsetp, t, hf_x11_glx_render_ProgramNamedParameter4fvNV_v, hf_x11_glx_render_ProgramNamedParameter4fvNV_v_item, 4, byte_order);
3321 static void mesa_ProgramNamedParameter4dvNV(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3323 int len;
3324 proto_tree_add_item(t, hf_x11_glx_render_ProgramNamedParameter4dvNV_id, tvb, *offsetp, 4, byte_order);
3325 *offsetp += 4;
3326 len = VALUE32(tvb, *offsetp);
3327 proto_tree_add_item(t, hf_x11_glx_render_ProgramNamedParameter4dvNV_len, tvb, *offsetp, 4, byte_order);
3328 *offsetp += 4;
3329 listOfByte(tvb, offsetp, t, hf_x11_glx_render_ProgramNamedParameter4dvNV_name, len, byte_order);
3330 listOfDouble(tvb, offsetp, t, hf_x11_glx_render_ProgramNamedParameter4dvNV_v, hf_x11_glx_render_ProgramNamedParameter4dvNV_v_item, 4, byte_order);
3333 static void mesa_DepthBoundsEXT(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
3335 proto_tree_add_item(t, hf_x11_glx_render_DepthBoundsEXT_zmin, tvb, *offsetp, 8, byte_order);
3336 *offsetp += 8;
3337 proto_tree_add_item(t, hf_x11_glx_render_DepthBoundsEXT_zmax, tvb, *offsetp, 8, byte_order);
3338 *offsetp += 8;
3341 static const value_string glx_render_op_name[] = {
3342 { 1, "glCallList" },
3343 { 2, "glCallLists" },
3344 { 3, "glListBase" },
3345 { 4, "glBegin" },
3346 { 5, "glBitmap" },
3347 { 6, "glColor3bv" },
3348 { 7, "glColor3dv" },
3349 { 8, "glColor3fv" },
3350 { 9, "glColor3iv" },
3351 { 10, "glColor3sv" },
3352 { 11, "glColor3ubv" },
3353 { 12, "glColor3uiv" },
3354 { 13, "glColor3usv" },
3355 { 14, "glColor4bv" },
3356 { 15, "glColor4dv" },
3357 { 16, "glColor4fv" },
3358 { 17, "glColor4iv" },
3359 { 18, "glColor4sv" },
3360 { 19, "glColor4ubv" },
3361 { 20, "glColor4uiv" },
3362 { 21, "glColor4usv" },
3363 { 22, "glEdgeFlagv" },
3364 { 23, "glEnd" },
3365 { 24, "glIndexdv" },
3366 { 25, "glIndexfv" },
3367 { 26, "glIndexiv" },
3368 { 27, "glIndexsv" },
3369 { 28, "glNormal3bv" },
3370 { 29, "glNormal3dv" },
3371 { 30, "glNormal3fv" },
3372 { 31, "glNormal3iv" },
3373 { 32, "glNormal3sv" },
3374 { 33, "glRasterPos2dv" },
3375 { 34, "glRasterPos2fv" },
3376 { 35, "glRasterPos2iv" },
3377 { 36, "glRasterPos2sv" },
3378 { 37, "glRasterPos3dv" },
3379 { 38, "glRasterPos3fv" },
3380 { 39, "glRasterPos3iv" },
3381 { 40, "glRasterPos3sv" },
3382 { 41, "glRasterPos4dv" },
3383 { 42, "glRasterPos4fv" },
3384 { 43, "glRasterPos4iv" },
3385 { 44, "glRasterPos4sv" },
3386 { 45, "glRectdv" },
3387 { 46, "glRectfv" },
3388 { 47, "glRectiv" },
3389 { 48, "glRectsv" },
3390 { 49, "glTexCoord1dv" },
3391 { 50, "glTexCoord1fv" },
3392 { 51, "glTexCoord1iv" },
3393 { 52, "glTexCoord1sv" },
3394 { 53, "glTexCoord2dv" },
3395 { 54, "glTexCoord2fv" },
3396 { 55, "glTexCoord2iv" },
3397 { 56, "glTexCoord2sv" },
3398 { 57, "glTexCoord3dv" },
3399 { 58, "glTexCoord3fv" },
3400 { 59, "glTexCoord3iv" },
3401 { 60, "glTexCoord3sv" },
3402 { 61, "glTexCoord4dv" },
3403 { 62, "glTexCoord4fv" },
3404 { 63, "glTexCoord4iv" },
3405 { 64, "glTexCoord4sv" },
3406 { 65, "glVertex2dv" },
3407 { 66, "glVertex2fv" },
3408 { 67, "glVertex2iv" },
3409 { 68, "glVertex2sv" },
3410 { 69, "glVertex3dv" },
3411 { 70, "glVertex3fv" },
3412 { 71, "glVertex3iv" },
3413 { 72, "glVertex3sv" },
3414 { 73, "glVertex4dv" },
3415 { 74, "glVertex4fv" },
3416 { 75, "glVertex4iv" },
3417 { 76, "glVertex4sv" },
3418 { 77, "glClipPlane" },
3419 { 78, "glColorMaterial" },
3420 { 79, "glCullFace" },
3421 { 80, "glFogf" },
3422 { 81, "glFogfv" },
3423 { 82, "glFogi" },
3424 { 83, "glFogiv" },
3425 { 84, "glFrontFace" },
3426 { 85, "glHint" },
3427 { 86, "glLightf" },
3428 { 87, "glLightfv" },
3429 { 88, "glLighti" },
3430 { 89, "glLightiv" },
3431 { 90, "glLightModelf" },
3432 { 91, "glLightModelfv" },
3433 { 92, "glLightModeli" },
3434 { 93, "glLightModeliv" },
3435 { 94, "glLineStipple" },
3436 { 95, "glLineWidth" },
3437 { 96, "glMaterialf" },
3438 { 97, "glMaterialfv" },
3439 { 98, "glMateriali" },
3440 { 99, "glMaterialiv" },
3441 { 100, "glPointSize" },
3442 { 101, "glPolygonMode" },
3443 { 102, "glPolygonStipple" },
3444 { 103, "glScissor" },
3445 { 104, "glShadeModel" },
3446 { 105, "glTexParameterf" },
3447 { 106, "glTexParameterfv" },
3448 { 107, "glTexParameteri" },
3449 { 108, "glTexParameteriv" },
3450 { 109, "glTexImage1D" },
3451 { 110, "glTexImage2D" },
3452 { 111, "glTexEnvf" },
3453 { 112, "glTexEnvfv" },
3454 { 113, "glTexEnvi" },
3455 { 114, "glTexEnviv" },
3456 { 115, "glTexGend" },
3457 { 116, "glTexGendv" },
3458 { 117, "glTexGenf" },
3459 { 118, "glTexGenfv" },
3460 { 119, "glTexGeni" },
3461 { 120, "glTexGeniv" },
3462 { 121, "glInitNames" },
3463 { 122, "glLoadName" },
3464 { 123, "glPassThrough" },
3465 { 124, "glPopName" },
3466 { 125, "glPushName" },
3467 { 126, "glDrawBuffer" },
3468 { 127, "glClear" },
3469 { 128, "glClearAccum" },
3470 { 129, "glClearIndex" },
3471 { 130, "glClearColor" },
3472 { 131, "glClearStencil" },
3473 { 132, "glClearDepth" },
3474 { 133, "glStencilMask" },
3475 { 134, "glColorMask" },
3476 { 135, "glDepthMask" },
3477 { 136, "glIndexMask" },
3478 { 137, "glAccum" },
3479 { 138, "glDisable" },
3480 { 139, "glEnable" },
3481 { 141, "glPopAttrib" },
3482 { 142, "glPushAttrib" },
3483 { 143, "glMap1d" },
3484 { 144, "glMap1f" },
3485 { 145, "glMap2d" },
3486 { 146, "glMap2f" },
3487 { 147, "glMapGrid1d" },
3488 { 148, "glMapGrid1f" },
3489 { 149, "glMapGrid2d" },
3490 { 150, "glMapGrid2f" },
3491 { 151, "glEvalCoord1dv" },
3492 { 152, "glEvalCoord1fv" },
3493 { 153, "glEvalCoord2dv" },
3494 { 154, "glEvalCoord2fv" },
3495 { 155, "glEvalMesh1" },
3496 { 156, "glEvalPoint1" },
3497 { 157, "glEvalMesh2" },
3498 { 158, "glEvalPoint2" },
3499 { 159, "glAlphaFunc" },
3500 { 160, "glBlendFunc" },
3501 { 161, "glLogicOp" },
3502 { 162, "glStencilFunc" },
3503 { 163, "glStencilOp" },
3504 { 164, "glDepthFunc" },
3505 { 165, "glPixelZoom" },
3506 { 166, "glPixelTransferf" },
3507 { 167, "glPixelTransferi" },
3508 { 168, "glPixelMapfv" },
3509 { 169, "glPixelMapuiv" },
3510 { 170, "glPixelMapusv" },
3511 { 171, "glReadBuffer" },
3512 { 172, "glCopyPixels" },
3513 { 173, "glDrawPixels" },
3514 { 174, "glDepthRange" },
3515 { 175, "glFrustum" },
3516 { 176, "glLoadIdentity" },
3517 { 177, "glLoadMatrixf" },
3518 { 178, "glLoadMatrixd" },
3519 { 179, "glMatrixMode" },
3520 { 180, "glMultMatrixf" },
3521 { 181, "glMultMatrixd" },
3522 { 182, "glOrtho" },
3523 { 183, "glPopMatrix" },
3524 { 184, "glPushMatrix" },
3525 { 185, "glRotated" },
3526 { 186, "glRotatef" },
3527 { 187, "glScaled" },
3528 { 188, "glScalef" },
3529 { 189, "glTranslated" },
3530 { 190, "glTranslatef" },
3531 { 191, "glViewport" },
3532 { 192, "glPolygonOffset" },
3533 { 193, "glDrawArrays" },
3534 { 194, "glIndexubv" },
3535 { 195, "glColorSubTable" },
3536 { 196, "glCopyColorSubTable" },
3537 { 197, "glActiveTexture" },
3538 { 198, "glMultiTexCoord1dv" },
3539 { 199, "glMultiTexCoord1fvARB" },
3540 { 200, "glMultiTexCoord1iv" },
3541 { 201, "glMultiTexCoord1sv" },
3542 { 202, "glMultiTexCoord2dv" },
3543 { 203, "glMultiTexCoord2fvARB" },
3544 { 204, "glMultiTexCoord2iv" },
3545 { 205, "glMultiTexCoord2sv" },
3546 { 206, "glMultiTexCoord3dv" },
3547 { 207, "glMultiTexCoord3fvARB" },
3548 { 208, "glMultiTexCoord3iv" },
3549 { 209, "glMultiTexCoord3sv" },
3550 { 210, "glMultiTexCoord4dv" },
3551 { 211, "glMultiTexCoord4fvARB" },
3552 { 212, "glMultiTexCoord4iv" },
3553 { 213, "glMultiTexCoord4sv" },
3554 { 214, "glCompressedTexImage1D" },
3555 { 215, "glCompressedTexImage2D" },
3556 { 216, "glCompressedTexImage3D" },
3557 { 217, "glCompressedTexSubImage1D" },
3558 { 218, "glCompressedTexSubImage2D" },
3559 { 219, "glCompressedTexSubImage3D" },
3560 { 229, "glSampleCoverage" },
3561 { 230, "glWindowPos3fv" },
3562 { 231, "glBeginQuery" },
3563 { 232, "glEndQuery" },
3564 { 233, "glDrawBuffers" },
3565 { 2048, "glSampleMaskSGIS" },
3566 { 2049, "glSamplePatternSGIS" },
3567 { 2050, "glTagSampleBufferSGIX" },
3568 { 2051, "glDetailTexFuncSGIS" },
3569 { 2052, "glSharpenTexFuncSGIS" },
3570 { 2053, "glColorTable" },
3571 { 2054, "glColorTableParameterfv" },
3572 { 2055, "glColorTableParameteriv" },
3573 { 2056, "glCopyColorTable" },
3574 { 2057, "glTexImage4DSGIS" },
3575 { 2058, "glTexSubImage4DSGIS" },
3576 { 2059, "glPixelTexGenSGIX" },
3577 { 2064, "glTexFilterFuncSGIS" },
3578 { 2065, "glPointParameterf" },
3579 { 2066, "glPointParameterfv" },
3580 { 2067, "glFogFuncSGIS" },
3581 { 2071, "glReferencePlaneSGIX" },
3582 { 2072, "glFrameZoomSGIX" },
3583 { 2082, "glTextureColorMaskSGIS" },
3584 { 4096, "glBlendColor" },
3585 { 4097, "glBlendEquation" },
3586 { 4098, "glPolygonOffsetEXT" },
3587 { 4099, "glTexSubImage1D" },
3588 { 4100, "glTexSubImage2D" },
3589 { 4101, "glConvolutionFilter1D" },
3590 { 4102, "glConvolutionFilter2D" },
3591 { 4103, "glConvolutionParameterf" },
3592 { 4104, "glConvolutionParameterfv" },
3593 { 4105, "glConvolutionParameteri" },
3594 { 4106, "glConvolutionParameteriv" },
3595 { 4107, "glCopyConvolutionFilter1D" },
3596 { 4108, "glCopyConvolutionFilter2D" },
3597 { 4109, "glSeparableFilter2D" },
3598 { 4110, "glHistogram" },
3599 { 4111, "glMinmax" },
3600 { 4112, "glResetHistogram" },
3601 { 4113, "glResetMinmax" },
3602 { 4114, "glTexImage3D" },
3603 { 4115, "glTexSubImage3D" },
3604 { 4117, "glBindTexture" },
3605 { 4118, "glPrioritizeTextures" },
3606 { 4119, "glCopyTexImage1D" },
3607 { 4120, "glCopyTexImage2D" },
3608 { 4121, "glCopyTexSubImage1D" },
3609 { 4122, "glCopyTexSubImage2D" },
3610 { 4123, "glCopyTexSubImage3D" },
3611 { 4124, "glFogCoordfvEXT" },
3612 { 4125, "glFogCoorddv" },
3613 { 4126, "glSecondaryColor3bv" },
3614 { 4127, "glSecondaryColor3sv" },
3615 { 4128, "glSecondaryColor3iv" },
3616 { 4129, "glSecondaryColor3fvEXT" },
3617 { 4130, "glSecondaryColor3dv" },
3618 { 4131, "glSecondaryColor3ubv" },
3619 { 4132, "glSecondaryColor3usv" },
3620 { 4133, "glSecondaryColor3uiv" },
3621 { 4134, "glBlendFuncSeparate" },
3622 { 4135, "glVertexWeightfvEXT" },
3623 { 4136, "glCombinerParameterfNV" },
3624 { 4137, "glCombinerParameterfvNV" },
3625 { 4138, "glCombinerParameteriNV" },
3626 { 4139, "glCombinerParameterivNV" },
3627 { 4140, "glCombinerInputNV" },
3628 { 4141, "glCombinerOutputNV" },
3629 { 4142, "glFinalCombinerInputNV" },
3630 { 4180, "glBindProgramARB" },
3631 { 4181, "glExecuteProgramNV" },
3632 { 4182, "glRequestResidentProgramsNV" },
3633 { 4183, "glLoadProgramNV" },
3634 { 4184, "glProgramEnvParameter4fvARB" },
3635 { 4185, "glProgramEnvParameter4dvARB" },
3636 { 4186, "glProgramParameters4fvNV" },
3637 { 4187, "glProgramParameters4dvNV" },
3638 { 4188, "glTrackMatrixNV" },
3639 { 4189, "glVertexAttrib1sv" },
3640 { 4190, "glVertexAttrib2sv" },
3641 { 4191, "glVertexAttrib3sv" },
3642 { 4192, "glVertexAttrib4sv" },
3643 { 4193, "glVertexAttrib1fvARB" },
3644 { 4194, "glVertexAttrib2fvARB" },
3645 { 4195, "glVertexAttrib3fvARB" },
3646 { 4196, "glVertexAttrib4fvARB" },
3647 { 4197, "glVertexAttrib1dv" },
3648 { 4198, "glVertexAttrib2dv" },
3649 { 4199, "glVertexAttrib3dv" },
3650 { 4200, "glVertexAttrib4dv" },
3651 { 4201, "glVertexAttrib4Nubv" },
3652 { 4202, "glVertexAttribs1svNV" },
3653 { 4203, "glVertexAttribs2svNV" },
3654 { 4204, "glVertexAttribs3svNV" },
3655 { 4205, "glVertexAttribs4svNV" },
3656 { 4206, "glVertexAttribs1fvNV" },
3657 { 4207, "glVertexAttribs2fvNV" },
3658 { 4208, "glVertexAttribs3fvNV" },
3659 { 4209, "glVertexAttribs4fvNV" },
3660 { 4210, "glVertexAttribs1dvNV" },
3661 { 4211, "glVertexAttribs2dvNV" },
3662 { 4212, "glVertexAttribs3dvNV" },
3663 { 4213, "glVertexAttribs4dvNV" },
3664 { 4214, "glVertexAttribs4ubvNV" },
3665 { 4215, "glProgramLocalParameter4fvARB" },
3666 { 4216, "glProgramLocalParameter4dvARB" },
3667 { 4217, "glProgramStringARB" },
3668 { 4218, "glProgramNamedParameter4fvNV" },
3669 { 4219, "glProgramNamedParameter4dvNV" },
3670 { 4220, "glActiveStencilFaceEXT" },
3671 { 4221, "glPointParameteri" },
3672 { 4222, "glPointParameteriv" },
3673 { 4228, "glBlendEquationSeparate" },
3674 { 4229, "glDepthBoundsEXT" },
3675 { 4230, "glVertexAttrib4bv" },
3676 { 4231, "glVertexAttrib4iv" },
3677 { 4232, "glVertexAttrib4ubv" },
3678 { 4233, "glVertexAttrib4usv" },
3679 { 4234, "glVertexAttrib4uiv" },
3680 { 4235, "glVertexAttrib4Nbv" },
3681 { 4236, "glVertexAttrib4Nsv" },
3682 { 4237, "glVertexAttrib4Niv" },
3683 { 4238, "glVertexAttrib4Nusv" },
3684 { 4239, "glVertexAttrib4Nuiv" },
3685 { 4265, "glVertexAttrib1svNV" },
3686 { 4266, "glVertexAttrib2svNV" },
3687 { 4267, "glVertexAttrib3svNV" },
3688 { 4268, "glVertexAttrib4svNV" },
3689 { 4269, "glVertexAttrib1fvNV" },
3690 { 4270, "glVertexAttrib2fvNV" },
3691 { 4271, "glVertexAttrib3fvNV" },
3692 { 4272, "glVertexAttrib4fvNV" },
3693 { 4273, "glVertexAttrib1dvNV" },
3694 { 4274, "glVertexAttrib2dvNV" },
3695 { 4275, "glVertexAttrib3dvNV" },
3696 { 4276, "glVertexAttrib4dvNV" },
3697 { 4277, "glVertexAttrib4ubvNV" },
3698 { 4326, "glMatrixIndexubvARB" },
3699 { 4327, "glMatrixIndexusvARB" },
3700 { 4328, "glMatrixIndexuivARB" },
3701 { 4329, "glCurrentPaletteMatrixARB" },
3702 { 0, NULL }
3705 static void dispatch_glx_render(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order, int length)
3707 while (length >= 4) {
3708 guint32 op, len;
3709 int next;
3710 proto_item *ti;
3711 proto_tree *tt;
3713 len = VALUE16(tvb, *offsetp);
3715 op = VALUE16(tvb, *offsetp + 2);
3716 ti = proto_tree_add_uint(t, hf_x11_glx_render_op_name, tvb, *offsetp, len, op);
3718 tt = proto_item_add_subtree(ti, ett_x11_list_of_rectangle);
3720 ti = proto_tree_add_item(tt, hf_x11_request_length, tvb, *offsetp, 2, byte_order);
3721 *offsetp += 2;
3722 proto_tree_add_item(tt, hf_x11_glx_render_op_name, tvb, *offsetp, 2, byte_order);
3723 *offsetp += 2;
3725 if (len < 4) {
3726 expert_add_info(pinfo, ti, &ei_x11_request_length);
3727 /* Eat the rest of the packet, mark it undecoded */
3728 len = length;
3729 op = -1;
3731 len -= 4;
3733 next = *offsetp + len;
3735 switch (op) {
3736 case 1:
3737 mesa_CallList(tvb, offsetp, tt, byte_order, len);
3738 break;
3739 case 2:
3740 mesa_CallLists(tvb, offsetp, tt, byte_order, len);
3741 break;
3742 case 3:
3743 mesa_ListBase(tvb, offsetp, tt, byte_order, len);
3744 break;
3745 case 4:
3746 mesa_Begin(tvb, offsetp, tt, byte_order, len);
3747 break;
3748 case 5:
3749 mesa_Bitmap(tvb, offsetp, tt, byte_order, len);
3750 break;
3751 case 6:
3752 mesa_Color3bv(tvb, offsetp, tt, byte_order, len);
3753 break;
3754 case 7:
3755 mesa_Color3dv(tvb, offsetp, tt, byte_order, len);
3756 break;
3757 case 8:
3758 mesa_Color3fv(tvb, offsetp, tt, byte_order, len);
3759 break;
3760 case 9:
3761 mesa_Color3iv(tvb, offsetp, tt, byte_order, len);
3762 break;
3763 case 10:
3764 mesa_Color3sv(tvb, offsetp, tt, byte_order, len);
3765 break;
3766 case 11:
3767 mesa_Color3ubv(tvb, offsetp, tt, byte_order, len);
3768 break;
3769 case 12:
3770 mesa_Color3uiv(tvb, offsetp, tt, byte_order, len);
3771 break;
3772 case 13:
3773 mesa_Color3usv(tvb, offsetp, tt, byte_order, len);
3774 break;
3775 case 14:
3776 mesa_Color4bv(tvb, offsetp, tt, byte_order, len);
3777 break;
3778 case 15:
3779 mesa_Color4dv(tvb, offsetp, tt, byte_order, len);
3780 break;
3781 case 16:
3782 mesa_Color4fv(tvb, offsetp, tt, byte_order, len);
3783 break;
3784 case 17:
3785 mesa_Color4iv(tvb, offsetp, tt, byte_order, len);
3786 break;
3787 case 18:
3788 mesa_Color4sv(tvb, offsetp, tt, byte_order, len);
3789 break;
3790 case 19:
3791 mesa_Color4ubv(tvb, offsetp, tt, byte_order, len);
3792 break;
3793 case 20:
3794 mesa_Color4uiv(tvb, offsetp, tt, byte_order, len);
3795 break;
3796 case 21:
3797 mesa_Color4usv(tvb, offsetp, tt, byte_order, len);
3798 break;
3799 case 22:
3800 mesa_EdgeFlagv(tvb, offsetp, tt, byte_order, len);
3801 break;
3802 case 23:
3803 mesa_End(tvb, offsetp, tt, byte_order, len);
3804 break;
3805 case 24:
3806 mesa_Indexdv(tvb, offsetp, tt, byte_order, len);
3807 break;
3808 case 25:
3809 mesa_Indexfv(tvb, offsetp, tt, byte_order, len);
3810 break;
3811 case 26:
3812 mesa_Indexiv(tvb, offsetp, tt, byte_order, len);
3813 break;
3814 case 27:
3815 mesa_Indexsv(tvb, offsetp, tt, byte_order, len);
3816 break;
3817 case 28:
3818 mesa_Normal3bv(tvb, offsetp, tt, byte_order, len);
3819 break;
3820 case 29:
3821 mesa_Normal3dv(tvb, offsetp, tt, byte_order, len);
3822 break;
3823 case 30:
3824 mesa_Normal3fv(tvb, offsetp, tt, byte_order, len);
3825 break;
3826 case 31:
3827 mesa_Normal3iv(tvb, offsetp, tt, byte_order, len);
3828 break;
3829 case 32:
3830 mesa_Normal3sv(tvb, offsetp, tt, byte_order, len);
3831 break;
3832 case 33:
3833 mesa_RasterPos2dv(tvb, offsetp, tt, byte_order, len);
3834 break;
3835 case 34:
3836 mesa_RasterPos2fv(tvb, offsetp, tt, byte_order, len);
3837 break;
3838 case 35:
3839 mesa_RasterPos2iv(tvb, offsetp, tt, byte_order, len);
3840 break;
3841 case 36:
3842 mesa_RasterPos2sv(tvb, offsetp, tt, byte_order, len);
3843 break;
3844 case 37:
3845 mesa_RasterPos3dv(tvb, offsetp, tt, byte_order, len);
3846 break;
3847 case 38:
3848 mesa_RasterPos3fv(tvb, offsetp, tt, byte_order, len);
3849 break;
3850 case 39:
3851 mesa_RasterPos3iv(tvb, offsetp, tt, byte_order, len);
3852 break;
3853 case 40:
3854 mesa_RasterPos3sv(tvb, offsetp, tt, byte_order, len);
3855 break;
3856 case 41:
3857 mesa_RasterPos4dv(tvb, offsetp, tt, byte_order, len);
3858 break;
3859 case 42:
3860 mesa_RasterPos4fv(tvb, offsetp, tt, byte_order, len);
3861 break;
3862 case 43:
3863 mesa_RasterPos4iv(tvb, offsetp, tt, byte_order, len);
3864 break;
3865 case 44:
3866 mesa_RasterPos4sv(tvb, offsetp, tt, byte_order, len);
3867 break;
3868 case 45:
3869 mesa_Rectdv(tvb, offsetp, tt, byte_order, len);
3870 break;
3871 case 46:
3872 mesa_Rectfv(tvb, offsetp, tt, byte_order, len);
3873 break;
3874 case 47:
3875 mesa_Rectiv(tvb, offsetp, tt, byte_order, len);
3876 break;
3877 case 48:
3878 mesa_Rectsv(tvb, offsetp, tt, byte_order, len);
3879 break;
3880 case 49:
3881 mesa_TexCoord1dv(tvb, offsetp, tt, byte_order, len);
3882 break;
3883 case 50:
3884 mesa_TexCoord1fv(tvb, offsetp, tt, byte_order, len);
3885 break;
3886 case 51:
3887 mesa_TexCoord1iv(tvb, offsetp, tt, byte_order, len);
3888 break;
3889 case 52:
3890 mesa_TexCoord1sv(tvb, offsetp, tt, byte_order, len);
3891 break;
3892 case 53:
3893 mesa_TexCoord2dv(tvb, offsetp, tt, byte_order, len);
3894 break;
3895 case 54:
3896 mesa_TexCoord2fv(tvb, offsetp, tt, byte_order, len);
3897 break;
3898 case 55:
3899 mesa_TexCoord2iv(tvb, offsetp, tt, byte_order, len);
3900 break;
3901 case 56:
3902 mesa_TexCoord2sv(tvb, offsetp, tt, byte_order, len);
3903 break;
3904 case 57:
3905 mesa_TexCoord3dv(tvb, offsetp, tt, byte_order, len);
3906 break;
3907 case 58:
3908 mesa_TexCoord3fv(tvb, offsetp, tt, byte_order, len);
3909 break;
3910 case 59:
3911 mesa_TexCoord3iv(tvb, offsetp, tt, byte_order, len);
3912 break;
3913 case 60:
3914 mesa_TexCoord3sv(tvb, offsetp, tt, byte_order, len);
3915 break;
3916 case 61:
3917 mesa_TexCoord4dv(tvb, offsetp, tt, byte_order, len);
3918 break;
3919 case 62:
3920 mesa_TexCoord4fv(tvb, offsetp, tt, byte_order, len);
3921 break;
3922 case 63:
3923 mesa_TexCoord4iv(tvb, offsetp, tt, byte_order, len);
3924 break;
3925 case 64:
3926 mesa_TexCoord4sv(tvb, offsetp, tt, byte_order, len);
3927 break;
3928 case 65:
3929 mesa_Vertex2dv(tvb, offsetp, tt, byte_order, len);
3930 break;
3931 case 66:
3932 mesa_Vertex2fv(tvb, offsetp, tt, byte_order, len);
3933 break;
3934 case 67:
3935 mesa_Vertex2iv(tvb, offsetp, tt, byte_order, len);
3936 break;
3937 case 68:
3938 mesa_Vertex2sv(tvb, offsetp, tt, byte_order, len);
3939 break;
3940 case 69:
3941 mesa_Vertex3dv(tvb, offsetp, tt, byte_order, len);
3942 break;
3943 case 70:
3944 mesa_Vertex3fv(tvb, offsetp, tt, byte_order, len);
3945 break;
3946 case 71:
3947 mesa_Vertex3iv(tvb, offsetp, tt, byte_order, len);
3948 break;
3949 case 72:
3950 mesa_Vertex3sv(tvb, offsetp, tt, byte_order, len);
3951 break;
3952 case 73:
3953 mesa_Vertex4dv(tvb, offsetp, tt, byte_order, len);
3954 break;
3955 case 74:
3956 mesa_Vertex4fv(tvb, offsetp, tt, byte_order, len);
3957 break;
3958 case 75:
3959 mesa_Vertex4iv(tvb, offsetp, tt, byte_order, len);
3960 break;
3961 case 76:
3962 mesa_Vertex4sv(tvb, offsetp, tt, byte_order, len);
3963 break;
3964 case 77:
3965 mesa_ClipPlane(tvb, offsetp, tt, byte_order, len);
3966 break;
3967 case 78:
3968 mesa_ColorMaterial(tvb, offsetp, tt, byte_order, len);
3969 break;
3970 case 79:
3971 mesa_CullFace(tvb, offsetp, tt, byte_order, len);
3972 break;
3973 case 80:
3974 mesa_Fogf(tvb, offsetp, tt, byte_order, len);
3975 break;
3976 case 81:
3977 mesa_Fogfv(tvb, offsetp, tt, byte_order, len);
3978 break;
3979 case 82:
3980 mesa_Fogi(tvb, offsetp, tt, byte_order, len);
3981 break;
3982 case 83:
3983 mesa_Fogiv(tvb, offsetp, tt, byte_order, len);
3984 break;
3985 case 84:
3986 mesa_FrontFace(tvb, offsetp, tt, byte_order, len);
3987 break;
3988 case 85:
3989 mesa_Hint(tvb, offsetp, tt, byte_order, len);
3990 break;
3991 case 86:
3992 mesa_Lightf(tvb, offsetp, tt, byte_order, len);
3993 break;
3994 case 87:
3995 mesa_Lightfv(tvb, offsetp, tt, byte_order, len);
3996 break;
3997 case 88:
3998 mesa_Lighti(tvb, offsetp, tt, byte_order, len);
3999 break;
4000 case 89:
4001 mesa_Lightiv(tvb, offsetp, tt, byte_order, len);
4002 break;
4003 case 90:
4004 mesa_LightModelf(tvb, offsetp, tt, byte_order, len);
4005 break;
4006 case 91:
4007 mesa_LightModelfv(tvb, offsetp, tt, byte_order, len);
4008 break;
4009 case 92:
4010 mesa_LightModeli(tvb, offsetp, tt, byte_order, len);
4011 break;
4012 case 93:
4013 mesa_LightModeliv(tvb, offsetp, tt, byte_order, len);
4014 break;
4015 case 94:
4016 mesa_LineStipple(tvb, offsetp, tt, byte_order, len);
4017 break;
4018 case 95:
4019 mesa_LineWidth(tvb, offsetp, tt, byte_order, len);
4020 break;
4021 case 96:
4022 mesa_Materialf(tvb, offsetp, tt, byte_order, len);
4023 break;
4024 case 97:
4025 mesa_Materialfv(tvb, offsetp, tt, byte_order, len);
4026 break;
4027 case 98:
4028 mesa_Materiali(tvb, offsetp, tt, byte_order, len);
4029 break;
4030 case 99:
4031 mesa_Materialiv(tvb, offsetp, tt, byte_order, len);
4032 break;
4033 case 100:
4034 mesa_PointSize(tvb, offsetp, tt, byte_order, len);
4035 break;
4036 case 101:
4037 mesa_PolygonMode(tvb, offsetp, tt, byte_order, len);
4038 break;
4039 case 102:
4040 mesa_PolygonStipple(tvb, offsetp, tt, byte_order, len);
4041 break;
4042 case 103:
4043 mesa_Scissor(tvb, offsetp, tt, byte_order, len);
4044 break;
4045 case 104:
4046 mesa_ShadeModel(tvb, offsetp, tt, byte_order, len);
4047 break;
4048 case 105:
4049 mesa_TexParameterf(tvb, offsetp, tt, byte_order, len);
4050 break;
4051 case 106:
4052 mesa_TexParameterfv(tvb, offsetp, tt, byte_order, len);
4053 break;
4054 case 107:
4055 mesa_TexParameteri(tvb, offsetp, tt, byte_order, len);
4056 break;
4057 case 108:
4058 mesa_TexParameteriv(tvb, offsetp, tt, byte_order, len);
4059 break;
4060 case 109:
4061 mesa_TexImage1D(tvb, offsetp, tt, byte_order, len);
4062 break;
4063 case 110:
4064 mesa_TexImage2D(tvb, offsetp, tt, byte_order, len);
4065 break;
4066 case 111:
4067 mesa_TexEnvf(tvb, offsetp, tt, byte_order, len);
4068 break;
4069 case 112:
4070 mesa_TexEnvfv(tvb, offsetp, tt, byte_order, len);
4071 break;
4072 case 113:
4073 mesa_TexEnvi(tvb, offsetp, tt, byte_order, len);
4074 break;
4075 case 114:
4076 mesa_TexEnviv(tvb, offsetp, tt, byte_order, len);
4077 break;
4078 case 115:
4079 mesa_TexGend(tvb, offsetp, tt, byte_order, len);
4080 break;
4081 case 116:
4082 mesa_TexGendv(tvb, offsetp, tt, byte_order, len);
4083 break;
4084 case 117:
4085 mesa_TexGenf(tvb, offsetp, tt, byte_order, len);
4086 break;
4087 case 118:
4088 mesa_TexGenfv(tvb, offsetp, tt, byte_order, len);
4089 break;
4090 case 119:
4091 mesa_TexGeni(tvb, offsetp, tt, byte_order, len);
4092 break;
4093 case 120:
4094 mesa_TexGeniv(tvb, offsetp, tt, byte_order, len);
4095 break;
4096 case 121:
4097 mesa_InitNames(tvb, offsetp, tt, byte_order, len);
4098 break;
4099 case 122:
4100 mesa_LoadName(tvb, offsetp, tt, byte_order, len);
4101 break;
4102 case 123:
4103 mesa_PassThrough(tvb, offsetp, tt, byte_order, len);
4104 break;
4105 case 124:
4106 mesa_PopName(tvb, offsetp, tt, byte_order, len);
4107 break;
4108 case 125:
4109 mesa_PushName(tvb, offsetp, tt, byte_order, len);
4110 break;
4111 case 126:
4112 mesa_DrawBuffer(tvb, offsetp, tt, byte_order, len);
4113 break;
4114 case 127:
4115 mesa_Clear(tvb, offsetp, tt, byte_order, len);
4116 break;
4117 case 128:
4118 mesa_ClearAccum(tvb, offsetp, tt, byte_order, len);
4119 break;
4120 case 129:
4121 mesa_ClearIndex(tvb, offsetp, tt, byte_order, len);
4122 break;
4123 case 130:
4124 mesa_ClearColor(tvb, offsetp, tt, byte_order, len);
4125 break;
4126 case 131:
4127 mesa_ClearStencil(tvb, offsetp, tt, byte_order, len);
4128 break;
4129 case 132:
4130 mesa_ClearDepth(tvb, offsetp, tt, byte_order, len);
4131 break;
4132 case 133:
4133 mesa_StencilMask(tvb, offsetp, tt, byte_order, len);
4134 break;
4135 case 134:
4136 mesa_ColorMask(tvb, offsetp, tt, byte_order, len);
4137 break;
4138 case 135:
4139 mesa_DepthMask(tvb, offsetp, tt, byte_order, len);
4140 break;
4141 case 136:
4142 mesa_IndexMask(tvb, offsetp, tt, byte_order, len);
4143 break;
4144 case 137:
4145 mesa_Accum(tvb, offsetp, tt, byte_order, len);
4146 break;
4147 case 138:
4148 mesa_Disable(tvb, offsetp, tt, byte_order, len);
4149 break;
4150 case 139:
4151 mesa_Enable(tvb, offsetp, tt, byte_order, len);
4152 break;
4153 case 141:
4154 mesa_PopAttrib(tvb, offsetp, tt, byte_order, len);
4155 break;
4156 case 142:
4157 mesa_PushAttrib(tvb, offsetp, tt, byte_order, len);
4158 break;
4159 case 143:
4160 mesa_Map1d(tvb, offsetp, tt, byte_order, len);
4161 break;
4162 case 144:
4163 mesa_Map1f(tvb, offsetp, tt, byte_order, len);
4164 break;
4165 case 145:
4166 mesa_Map2d(tvb, offsetp, tt, byte_order, len);
4167 break;
4168 case 146:
4169 mesa_Map2f(tvb, offsetp, tt, byte_order, len);
4170 break;
4171 case 147:
4172 mesa_MapGrid1d(tvb, offsetp, tt, byte_order, len);
4173 break;
4174 case 148:
4175 mesa_MapGrid1f(tvb, offsetp, tt, byte_order, len);
4176 break;
4177 case 149:
4178 mesa_MapGrid2d(tvb, offsetp, tt, byte_order, len);
4179 break;
4180 case 150:
4181 mesa_MapGrid2f(tvb, offsetp, tt, byte_order, len);
4182 break;
4183 case 151:
4184 mesa_EvalCoord1dv(tvb, offsetp, tt, byte_order, len);
4185 break;
4186 case 152:
4187 mesa_EvalCoord1fv(tvb, offsetp, tt, byte_order, len);
4188 break;
4189 case 153:
4190 mesa_EvalCoord2dv(tvb, offsetp, tt, byte_order, len);
4191 break;
4192 case 154:
4193 mesa_EvalCoord2fv(tvb, offsetp, tt, byte_order, len);
4194 break;
4195 case 155:
4196 mesa_EvalMesh1(tvb, offsetp, tt, byte_order, len);
4197 break;
4198 case 156:
4199 mesa_EvalPoint1(tvb, offsetp, tt, byte_order, len);
4200 break;
4201 case 157:
4202 mesa_EvalMesh2(tvb, offsetp, tt, byte_order, len);
4203 break;
4204 case 158:
4205 mesa_EvalPoint2(tvb, offsetp, tt, byte_order, len);
4206 break;
4207 case 159:
4208 mesa_AlphaFunc(tvb, offsetp, tt, byte_order, len);
4209 break;
4210 case 160:
4211 mesa_BlendFunc(tvb, offsetp, tt, byte_order, len);
4212 break;
4213 case 161:
4214 mesa_LogicOp(tvb, offsetp, tt, byte_order, len);
4215 break;
4216 case 162:
4217 mesa_StencilFunc(tvb, offsetp, tt, byte_order, len);
4218 break;
4219 case 163:
4220 mesa_StencilOp(tvb, offsetp, tt, byte_order, len);
4221 break;
4222 case 164:
4223 mesa_DepthFunc(tvb, offsetp, tt, byte_order, len);
4224 break;
4225 case 165:
4226 mesa_PixelZoom(tvb, offsetp, tt, byte_order, len);
4227 break;
4228 case 166:
4229 mesa_PixelTransferf(tvb, offsetp, tt, byte_order, len);
4230 break;
4231 case 167:
4232 mesa_PixelTransferi(tvb, offsetp, tt, byte_order, len);
4233 break;
4234 case 168:
4235 mesa_PixelMapfv(tvb, offsetp, tt, byte_order, len);
4236 break;
4237 case 169:
4238 mesa_PixelMapuiv(tvb, offsetp, tt, byte_order, len);
4239 break;
4240 case 170:
4241 mesa_PixelMapusv(tvb, offsetp, tt, byte_order, len);
4242 break;
4243 case 171:
4244 mesa_ReadBuffer(tvb, offsetp, tt, byte_order, len);
4245 break;
4246 case 172:
4247 mesa_CopyPixels(tvb, offsetp, tt, byte_order, len);
4248 break;
4249 case 173:
4250 mesa_DrawPixels(tvb, offsetp, tt, byte_order, len);
4251 break;
4252 case 174:
4253 mesa_DepthRange(tvb, offsetp, tt, byte_order, len);
4254 break;
4255 case 175:
4256 mesa_Frustum(tvb, offsetp, tt, byte_order, len);
4257 break;
4258 case 176:
4259 mesa_LoadIdentity(tvb, offsetp, tt, byte_order, len);
4260 break;
4261 case 177:
4262 mesa_LoadMatrixf(tvb, offsetp, tt, byte_order, len);
4263 break;
4264 case 178:
4265 mesa_LoadMatrixd(tvb, offsetp, tt, byte_order, len);
4266 break;
4267 case 179:
4268 mesa_MatrixMode(tvb, offsetp, tt, byte_order, len);
4269 break;
4270 case 180:
4271 mesa_MultMatrixf(tvb, offsetp, tt, byte_order, len);
4272 break;
4273 case 181:
4274 mesa_MultMatrixd(tvb, offsetp, tt, byte_order, len);
4275 break;
4276 case 182:
4277 mesa_Ortho(tvb, offsetp, tt, byte_order, len);
4278 break;
4279 case 183:
4280 mesa_PopMatrix(tvb, offsetp, tt, byte_order, len);
4281 break;
4282 case 184:
4283 mesa_PushMatrix(tvb, offsetp, tt, byte_order, len);
4284 break;
4285 case 185:
4286 mesa_Rotated(tvb, offsetp, tt, byte_order, len);
4287 break;
4288 case 186:
4289 mesa_Rotatef(tvb, offsetp, tt, byte_order, len);
4290 break;
4291 case 187:
4292 mesa_Scaled(tvb, offsetp, tt, byte_order, len);
4293 break;
4294 case 188:
4295 mesa_Scalef(tvb, offsetp, tt, byte_order, len);
4296 break;
4297 case 189:
4298 mesa_Translated(tvb, offsetp, tt, byte_order, len);
4299 break;
4300 case 190:
4301 mesa_Translatef(tvb, offsetp, tt, byte_order, len);
4302 break;
4303 case 191:
4304 mesa_Viewport(tvb, offsetp, tt, byte_order, len);
4305 break;
4306 case 192:
4307 mesa_PolygonOffset(tvb, offsetp, tt, byte_order, len);
4308 break;
4309 case 193:
4310 mesa_DrawArrays(tvb, offsetp, tt, byte_order, len);
4311 break;
4312 case 194:
4313 mesa_Indexubv(tvb, offsetp, tt, byte_order, len);
4314 break;
4315 case 195:
4316 mesa_ColorSubTable(tvb, offsetp, tt, byte_order, len);
4317 break;
4318 case 196:
4319 mesa_CopyColorSubTable(tvb, offsetp, tt, byte_order, len);
4320 break;
4321 case 197:
4322 mesa_ActiveTexture(tvb, offsetp, tt, byte_order, len);
4323 break;
4324 case 198:
4325 mesa_MultiTexCoord1dv(tvb, offsetp, tt, byte_order, len);
4326 break;
4327 case 199:
4328 mesa_MultiTexCoord1fvARB(tvb, offsetp, tt, byte_order, len);
4329 break;
4330 case 200:
4331 mesa_MultiTexCoord1iv(tvb, offsetp, tt, byte_order, len);
4332 break;
4333 case 201:
4334 mesa_MultiTexCoord1sv(tvb, offsetp, tt, byte_order, len);
4335 break;
4336 case 202:
4337 mesa_MultiTexCoord2dv(tvb, offsetp, tt, byte_order, len);
4338 break;
4339 case 203:
4340 mesa_MultiTexCoord2fvARB(tvb, offsetp, tt, byte_order, len);
4341 break;
4342 case 204:
4343 mesa_MultiTexCoord2iv(tvb, offsetp, tt, byte_order, len);
4344 break;
4345 case 205:
4346 mesa_MultiTexCoord2sv(tvb, offsetp, tt, byte_order, len);
4347 break;
4348 case 206:
4349 mesa_MultiTexCoord3dv(tvb, offsetp, tt, byte_order, len);
4350 break;
4351 case 207:
4352 mesa_MultiTexCoord3fvARB(tvb, offsetp, tt, byte_order, len);
4353 break;
4354 case 208:
4355 mesa_MultiTexCoord3iv(tvb, offsetp, tt, byte_order, len);
4356 break;
4357 case 209:
4358 mesa_MultiTexCoord3sv(tvb, offsetp, tt, byte_order, len);
4359 break;
4360 case 210:
4361 mesa_MultiTexCoord4dv(tvb, offsetp, tt, byte_order, len);
4362 break;
4363 case 211:
4364 mesa_MultiTexCoord4fvARB(tvb, offsetp, tt, byte_order, len);
4365 break;
4366 case 212:
4367 mesa_MultiTexCoord4iv(tvb, offsetp, tt, byte_order, len);
4368 break;
4369 case 213:
4370 mesa_MultiTexCoord4sv(tvb, offsetp, tt, byte_order, len);
4371 break;
4372 case 214:
4373 mesa_CompressedTexImage1D(tvb, offsetp, tt, byte_order, len);
4374 break;
4375 case 215:
4376 mesa_CompressedTexImage2D(tvb, offsetp, tt, byte_order, len);
4377 break;
4378 case 216:
4379 mesa_CompressedTexImage3D(tvb, offsetp, tt, byte_order, len);
4380 break;
4381 case 217:
4382 mesa_CompressedTexSubImage1D(tvb, offsetp, tt, byte_order, len);
4383 break;
4384 case 218:
4385 mesa_CompressedTexSubImage2D(tvb, offsetp, tt, byte_order, len);
4386 break;
4387 case 219:
4388 mesa_CompressedTexSubImage3D(tvb, offsetp, tt, byte_order, len);
4389 break;
4390 case 229:
4391 mesa_SampleCoverage(tvb, offsetp, tt, byte_order, len);
4392 break;
4393 case 230:
4394 mesa_WindowPos3fv(tvb, offsetp, tt, byte_order, len);
4395 break;
4396 case 231:
4397 mesa_BeginQuery(tvb, offsetp, tt, byte_order, len);
4398 break;
4399 case 232:
4400 mesa_EndQuery(tvb, offsetp, tt, byte_order, len);
4401 break;
4402 case 233:
4403 mesa_DrawBuffers(tvb, offsetp, tt, byte_order, len);
4404 break;
4405 case 2048:
4406 mesa_SampleMaskSGIS(tvb, offsetp, tt, byte_order, len);
4407 break;
4408 case 2049:
4409 mesa_SamplePatternSGIS(tvb, offsetp, tt, byte_order, len);
4410 break;
4411 case 2050:
4412 mesa_TagSampleBufferSGIX(tvb, offsetp, tt, byte_order, len);
4413 break;
4414 case 2051:
4415 mesa_DetailTexFuncSGIS(tvb, offsetp, tt, byte_order, len);
4416 break;
4417 case 2052:
4418 mesa_SharpenTexFuncSGIS(tvb, offsetp, tt, byte_order, len);
4419 break;
4420 case 2053:
4421 mesa_ColorTable(tvb, offsetp, tt, byte_order, len);
4422 break;
4423 case 2054:
4424 mesa_ColorTableParameterfv(tvb, offsetp, tt, byte_order, len);
4425 break;
4426 case 2055:
4427 mesa_ColorTableParameteriv(tvb, offsetp, tt, byte_order, len);
4428 break;
4429 case 2056:
4430 mesa_CopyColorTable(tvb, offsetp, tt, byte_order, len);
4431 break;
4432 case 2057:
4433 mesa_TexImage4DSGIS(tvb, offsetp, tt, byte_order, len);
4434 break;
4435 case 2058:
4436 mesa_TexSubImage4DSGIS(tvb, offsetp, tt, byte_order, len);
4437 break;
4438 case 2059:
4439 mesa_PixelTexGenSGIX(tvb, offsetp, tt, byte_order, len);
4440 break;
4441 case 2064:
4442 mesa_TexFilterFuncSGIS(tvb, offsetp, tt, byte_order, len);
4443 break;
4444 case 2065:
4445 mesa_PointParameterf(tvb, offsetp, tt, byte_order, len);
4446 break;
4447 case 2066:
4448 mesa_PointParameterfv(tvb, offsetp, tt, byte_order, len);
4449 break;
4450 case 2067:
4451 mesa_FogFuncSGIS(tvb, offsetp, tt, byte_order, len);
4452 break;
4453 case 2071:
4454 mesa_ReferencePlaneSGIX(tvb, offsetp, tt, byte_order, len);
4455 break;
4456 case 2072:
4457 mesa_FrameZoomSGIX(tvb, offsetp, tt, byte_order, len);
4458 break;
4459 case 2082:
4460 mesa_TextureColorMaskSGIS(tvb, offsetp, tt, byte_order, len);
4461 break;
4462 case 4096:
4463 mesa_BlendColor(tvb, offsetp, tt, byte_order, len);
4464 break;
4465 case 4097:
4466 mesa_BlendEquation(tvb, offsetp, tt, byte_order, len);
4467 break;
4468 case 4098:
4469 mesa_PolygonOffsetEXT(tvb, offsetp, tt, byte_order, len);
4470 break;
4471 case 4099:
4472 mesa_TexSubImage1D(tvb, offsetp, tt, byte_order, len);
4473 break;
4474 case 4100:
4475 mesa_TexSubImage2D(tvb, offsetp, tt, byte_order, len);
4476 break;
4477 case 4101:
4478 mesa_ConvolutionFilter1D(tvb, offsetp, tt, byte_order, len);
4479 break;
4480 case 4102:
4481 mesa_ConvolutionFilter2D(tvb, offsetp, tt, byte_order, len);
4482 break;
4483 case 4103:
4484 mesa_ConvolutionParameterf(tvb, offsetp, tt, byte_order, len);
4485 break;
4486 case 4104:
4487 mesa_ConvolutionParameterfv(tvb, offsetp, tt, byte_order, len);
4488 break;
4489 case 4105:
4490 mesa_ConvolutionParameteri(tvb, offsetp, tt, byte_order, len);
4491 break;
4492 case 4106:
4493 mesa_ConvolutionParameteriv(tvb, offsetp, tt, byte_order, len);
4494 break;
4495 case 4107:
4496 mesa_CopyConvolutionFilter1D(tvb, offsetp, tt, byte_order, len);
4497 break;
4498 case 4108:
4499 mesa_CopyConvolutionFilter2D(tvb, offsetp, tt, byte_order, len);
4500 break;
4501 case 4109:
4502 mesa_SeparableFilter2D(tvb, offsetp, tt, byte_order, len);
4503 break;
4504 case 4110:
4505 mesa_Histogram(tvb, offsetp, tt, byte_order, len);
4506 break;
4507 case 4111:
4508 mesa_Minmax(tvb, offsetp, tt, byte_order, len);
4509 break;
4510 case 4112:
4511 mesa_ResetHistogram(tvb, offsetp, tt, byte_order, len);
4512 break;
4513 case 4113:
4514 mesa_ResetMinmax(tvb, offsetp, tt, byte_order, len);
4515 break;
4516 case 4114:
4517 mesa_TexImage3D(tvb, offsetp, tt, byte_order, len);
4518 break;
4519 case 4115:
4520 mesa_TexSubImage3D(tvb, offsetp, tt, byte_order, len);
4521 break;
4522 case 4117:
4523 mesa_BindTexture(tvb, offsetp, tt, byte_order, len);
4524 break;
4525 case 4118:
4526 mesa_PrioritizeTextures(tvb, offsetp, tt, byte_order, len);
4527 break;
4528 case 4119:
4529 mesa_CopyTexImage1D(tvb, offsetp, tt, byte_order, len);
4530 break;
4531 case 4120:
4532 mesa_CopyTexImage2D(tvb, offsetp, tt, byte_order, len);
4533 break;
4534 case 4121:
4535 mesa_CopyTexSubImage1D(tvb, offsetp, tt, byte_order, len);
4536 break;
4537 case 4122:
4538 mesa_CopyTexSubImage2D(tvb, offsetp, tt, byte_order, len);
4539 break;
4540 case 4123:
4541 mesa_CopyTexSubImage3D(tvb, offsetp, tt, byte_order, len);
4542 break;
4543 case 4124:
4544 mesa_FogCoordfvEXT(tvb, offsetp, tt, byte_order, len);
4545 break;
4546 case 4125:
4547 mesa_FogCoorddv(tvb, offsetp, tt, byte_order, len);
4548 break;
4549 case 4126:
4550 mesa_SecondaryColor3bv(tvb, offsetp, tt, byte_order, len);
4551 break;
4552 case 4127:
4553 mesa_SecondaryColor3sv(tvb, offsetp, tt, byte_order, len);
4554 break;
4555 case 4128:
4556 mesa_SecondaryColor3iv(tvb, offsetp, tt, byte_order, len);
4557 break;
4558 case 4129:
4559 mesa_SecondaryColor3fvEXT(tvb, offsetp, tt, byte_order, len);
4560 break;
4561 case 4130:
4562 mesa_SecondaryColor3dv(tvb, offsetp, tt, byte_order, len);
4563 break;
4564 case 4131:
4565 mesa_SecondaryColor3ubv(tvb, offsetp, tt, byte_order, len);
4566 break;
4567 case 4132:
4568 mesa_SecondaryColor3usv(tvb, offsetp, tt, byte_order, len);
4569 break;
4570 case 4133:
4571 mesa_SecondaryColor3uiv(tvb, offsetp, tt, byte_order, len);
4572 break;
4573 case 4134:
4574 mesa_BlendFuncSeparate(tvb, offsetp, tt, byte_order, len);
4575 break;
4576 case 4135:
4577 mesa_VertexWeightfvEXT(tvb, offsetp, tt, byte_order, len);
4578 break;
4579 case 4136:
4580 mesa_CombinerParameterfNV(tvb, offsetp, tt, byte_order, len);
4581 break;
4582 case 4137:
4583 mesa_CombinerParameterfvNV(tvb, offsetp, tt, byte_order, len);
4584 break;
4585 case 4138:
4586 mesa_CombinerParameteriNV(tvb, offsetp, tt, byte_order, len);
4587 break;
4588 case 4139:
4589 mesa_CombinerParameterivNV(tvb, offsetp, tt, byte_order, len);
4590 break;
4591 case 4140:
4592 mesa_CombinerInputNV(tvb, offsetp, tt, byte_order, len);
4593 break;
4594 case 4141:
4595 mesa_CombinerOutputNV(tvb, offsetp, tt, byte_order, len);
4596 break;
4597 case 4142:
4598 mesa_FinalCombinerInputNV(tvb, offsetp, tt, byte_order, len);
4599 break;
4600 case 4180:
4601 mesa_BindProgramARB(tvb, offsetp, tt, byte_order, len);
4602 break;
4603 case 4181:
4604 mesa_ExecuteProgramNV(tvb, offsetp, tt, byte_order, len);
4605 break;
4606 case 4182:
4607 mesa_RequestResidentProgramsNV(tvb, offsetp, tt, byte_order, len);
4608 break;
4609 case 4183:
4610 mesa_LoadProgramNV(tvb, offsetp, tt, byte_order, len);
4611 break;
4612 case 4184:
4613 mesa_ProgramEnvParameter4fvARB(tvb, offsetp, tt, byte_order, len);
4614 break;
4615 case 4185:
4616 mesa_ProgramEnvParameter4dvARB(tvb, offsetp, tt, byte_order, len);
4617 break;
4618 case 4186:
4619 mesa_ProgramParameters4fvNV(tvb, offsetp, tt, byte_order, len);
4620 break;
4621 case 4187:
4622 mesa_ProgramParameters4dvNV(tvb, offsetp, tt, byte_order, len);
4623 break;
4624 case 4188:
4625 mesa_TrackMatrixNV(tvb, offsetp, tt, byte_order, len);
4626 break;
4627 case 4189:
4628 mesa_VertexAttrib1sv(tvb, offsetp, tt, byte_order, len);
4629 break;
4630 case 4190:
4631 mesa_VertexAttrib2sv(tvb, offsetp, tt, byte_order, len);
4632 break;
4633 case 4191:
4634 mesa_VertexAttrib3sv(tvb, offsetp, tt, byte_order, len);
4635 break;
4636 case 4192:
4637 mesa_VertexAttrib4sv(tvb, offsetp, tt, byte_order, len);
4638 break;
4639 case 4193:
4640 mesa_VertexAttrib1fvARB(tvb, offsetp, tt, byte_order, len);
4641 break;
4642 case 4194:
4643 mesa_VertexAttrib2fvARB(tvb, offsetp, tt, byte_order, len);
4644 break;
4645 case 4195:
4646 mesa_VertexAttrib3fvARB(tvb, offsetp, tt, byte_order, len);
4647 break;
4648 case 4196:
4649 mesa_VertexAttrib4fvARB(tvb, offsetp, tt, byte_order, len);
4650 break;
4651 case 4197:
4652 mesa_VertexAttrib1dv(tvb, offsetp, tt, byte_order, len);
4653 break;
4654 case 4198:
4655 mesa_VertexAttrib2dv(tvb, offsetp, tt, byte_order, len);
4656 break;
4657 case 4199:
4658 mesa_VertexAttrib3dv(tvb, offsetp, tt, byte_order, len);
4659 break;
4660 case 4200:
4661 mesa_VertexAttrib4dv(tvb, offsetp, tt, byte_order, len);
4662 break;
4663 case 4201:
4664 mesa_VertexAttrib4Nubv(tvb, offsetp, tt, byte_order, len);
4665 break;
4666 case 4202:
4667 mesa_VertexAttribs1svNV(tvb, offsetp, tt, byte_order, len);
4668 break;
4669 case 4203:
4670 mesa_VertexAttribs2svNV(tvb, offsetp, tt, byte_order, len);
4671 break;
4672 case 4204:
4673 mesa_VertexAttribs3svNV(tvb, offsetp, tt, byte_order, len);
4674 break;
4675 case 4205:
4676 mesa_VertexAttribs4svNV(tvb, offsetp, tt, byte_order, len);
4677 break;
4678 case 4206:
4679 mesa_VertexAttribs1fvNV(tvb, offsetp, tt, byte_order, len);
4680 break;
4681 case 4207:
4682 mesa_VertexAttribs2fvNV(tvb, offsetp, tt, byte_order, len);
4683 break;
4684 case 4208:
4685 mesa_VertexAttribs3fvNV(tvb, offsetp, tt, byte_order, len);
4686 break;
4687 case 4209:
4688 mesa_VertexAttribs4fvNV(tvb, offsetp, tt, byte_order, len);
4689 break;
4690 case 4210:
4691 mesa_VertexAttribs1dvNV(tvb, offsetp, tt, byte_order, len);
4692 break;
4693 case 4211:
4694 mesa_VertexAttribs2dvNV(tvb, offsetp, tt, byte_order, len);
4695 break;
4696 case 4212:
4697 mesa_VertexAttribs3dvNV(tvb, offsetp, tt, byte_order, len);
4698 break;
4699 case 4213:
4700 mesa_VertexAttribs4dvNV(tvb, offsetp, tt, byte_order, len);
4701 break;
4702 case 4214:
4703 mesa_VertexAttribs4ubvNV(tvb, offsetp, tt, byte_order, len);
4704 break;
4705 case 4215:
4706 mesa_ProgramLocalParameter4fvARB(tvb, offsetp, tt, byte_order, len);
4707 break;
4708 case 4216:
4709 mesa_ProgramLocalParameter4dvARB(tvb, offsetp, tt, byte_order, len);
4710 break;
4711 case 4217:
4712 mesa_ProgramStringARB(tvb, offsetp, tt, byte_order, len);
4713 break;
4714 case 4218:
4715 mesa_ProgramNamedParameter4fvNV(tvb, offsetp, tt, byte_order, len);
4716 break;
4717 case 4219:
4718 mesa_ProgramNamedParameter4dvNV(tvb, offsetp, tt, byte_order, len);
4719 break;
4720 case 4220:
4721 mesa_ActiveStencilFaceEXT(tvb, offsetp, tt, byte_order, len);
4722 break;
4723 case 4221:
4724 mesa_PointParameteri(tvb, offsetp, tt, byte_order, len);
4725 break;
4726 case 4222:
4727 mesa_PointParameteriv(tvb, offsetp, tt, byte_order, len);
4728 break;
4729 case 4228:
4730 mesa_BlendEquationSeparate(tvb, offsetp, tt, byte_order, len);
4731 break;
4732 case 4229:
4733 mesa_DepthBoundsEXT(tvb, offsetp, tt, byte_order, len);
4734 break;
4735 case 4230:
4736 mesa_VertexAttrib4bv(tvb, offsetp, tt, byte_order, len);
4737 break;
4738 case 4231:
4739 mesa_VertexAttrib4iv(tvb, offsetp, tt, byte_order, len);
4740 break;
4741 case 4232:
4742 mesa_VertexAttrib4ubv(tvb, offsetp, tt, byte_order, len);
4743 break;
4744 case 4233:
4745 mesa_VertexAttrib4usv(tvb, offsetp, tt, byte_order, len);
4746 break;
4747 case 4234:
4748 mesa_VertexAttrib4uiv(tvb, offsetp, tt, byte_order, len);
4749 break;
4750 case 4235:
4751 mesa_VertexAttrib4Nbv(tvb, offsetp, tt, byte_order, len);
4752 break;
4753 case 4236:
4754 mesa_VertexAttrib4Nsv(tvb, offsetp, tt, byte_order, len);
4755 break;
4756 case 4237:
4757 mesa_VertexAttrib4Niv(tvb, offsetp, tt, byte_order, len);
4758 break;
4759 case 4238:
4760 mesa_VertexAttrib4Nusv(tvb, offsetp, tt, byte_order, len);
4761 break;
4762 case 4239:
4763 mesa_VertexAttrib4Nuiv(tvb, offsetp, tt, byte_order, len);
4764 break;
4765 case 4265:
4766 mesa_VertexAttrib1svNV(tvb, offsetp, tt, byte_order, len);
4767 break;
4768 case 4266:
4769 mesa_VertexAttrib2svNV(tvb, offsetp, tt, byte_order, len);
4770 break;
4771 case 4267:
4772 mesa_VertexAttrib3svNV(tvb, offsetp, tt, byte_order, len);
4773 break;
4774 case 4268:
4775 mesa_VertexAttrib4svNV(tvb, offsetp, tt, byte_order, len);
4776 break;
4777 case 4269:
4778 mesa_VertexAttrib1fvNV(tvb, offsetp, tt, byte_order, len);
4779 break;
4780 case 4270:
4781 mesa_VertexAttrib2fvNV(tvb, offsetp, tt, byte_order, len);
4782 break;
4783 case 4271:
4784 mesa_VertexAttrib3fvNV(tvb, offsetp, tt, byte_order, len);
4785 break;
4786 case 4272:
4787 mesa_VertexAttrib4fvNV(tvb, offsetp, tt, byte_order, len);
4788 break;
4789 case 4273:
4790 mesa_VertexAttrib1dvNV(tvb, offsetp, tt, byte_order, len);
4791 break;
4792 case 4274:
4793 mesa_VertexAttrib2dvNV(tvb, offsetp, tt, byte_order, len);
4794 break;
4795 case 4275:
4796 mesa_VertexAttrib3dvNV(tvb, offsetp, tt, byte_order, len);
4797 break;
4798 case 4276:
4799 mesa_VertexAttrib4dvNV(tvb, offsetp, tt, byte_order, len);
4800 break;
4801 case 4277:
4802 mesa_VertexAttrib4ubvNV(tvb, offsetp, tt, byte_order, len);
4803 break;
4804 case 4326:
4805 mesa_MatrixIndexubvARB(tvb, offsetp, tt, byte_order, len);
4806 break;
4807 case 4327:
4808 mesa_MatrixIndexusvARB(tvb, offsetp, tt, byte_order, len);
4809 break;
4810 case 4328:
4811 mesa_MatrixIndexuivARB(tvb, offsetp, tt, byte_order, len);
4812 break;
4813 case 4329:
4814 mesa_CurrentPaletteMatrixARB(tvb, offsetp, tt, byte_order, len);
4815 break;
4816 default:
4817 proto_tree_add_item(tt, hf_x11_undecoded, tvb, *offsetp, len, ENC_NA);
4818 *offsetp += len;
4820 if (*offsetp < next) {
4821 proto_tree_add_item(tt, hf_x11_unused, tvb, *offsetp, next - *offsetp, ENC_NA);
4822 *offsetp = next;
4824 length -= (len + 4);
4827 #include "x11-enum.h"
4830 static void bigreqEnable(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
4833 static void bigreqEnable_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
4835 int f_length, length, sequence_number;
4836 int f_maximum_request_length;
4838 col_append_fstr(pinfo->cinfo, COL_INFO, "-Enable");
4840 REPLY(reply);
4841 UNUSED(1);
4842 sequence_number = VALUE16(tvb, *offsetp);
4843 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
4844 "sequencenumber: %d (bigreq-Enable)", sequence_number);
4845 *offsetp += 2;
4846 f_length = VALUE32(tvb, *offsetp);
4847 length = f_length * 4 + 32;
4848 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
4849 *offsetp += 4;
4850 f_maximum_request_length = VALUE32(tvb, *offsetp);
4851 proto_tree_add_item(t, hf_x11_bigreq_Enable_reply_maximum_request_length, tvb, *offsetp, 4, byte_order);
4852 *offsetp += 4;
4854 static const value_string bigreq_extension_minor[] = {
4855 { 0, "Enable" },
4856 { 0, NULL }
4858 const x11_event_info bigreq_events[] = {
4859 { NULL, NULL }
4861 static x11_reply_info bigreq_replies[] = {
4862 { 0, bigreqEnable_Reply },
4863 { 0, NULL }
4866 static void dispatch_bigreq(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
4868 int minor, length;
4869 minor = CARD8(bigreq_extension_minor);
4870 length = REQUEST_LENGTH();
4872 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
4873 val_to_str(minor, bigreq_extension_minor,
4874 "<Unknown opcode %d>"));
4875 switch (minor) {
4876 case 0:
4877 bigreqEnable(tvb, pinfo, offsetp, t, byte_order, length);
4878 break;
4879 /* No need for a default case here, since Unknown is printed above,
4880 and UNDECODED() is taken care of by dissect_x11_request */
4884 static void register_bigreq(void)
4886 set_handler("BIG-REQUESTS", dispatch_bigreq, bigreq_errors, bigreq_events, bigreq_replies);
4889 static void struct_POINT(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
4891 int i;
4892 for (i = 0; i < count; i++) {
4893 proto_item *item;
4894 proto_tree *t;
4895 int f_x;
4896 int f_y;
4898 item = proto_tree_add_item(root, hf_x11_struct_POINT, tvb, *offsetp, 4, ENC_NA);
4899 t = proto_item_add_subtree(item, ett_x11_rectangle);
4900 f_x = VALUE16(tvb, *offsetp);
4901 proto_tree_add_item(t, hf_x11_struct_POINT_x, tvb, *offsetp, 2, byte_order);
4902 *offsetp += 2;
4903 f_y = VALUE16(tvb, *offsetp);
4904 proto_tree_add_item(t, hf_x11_struct_POINT_y, tvb, *offsetp, 2, byte_order);
4905 *offsetp += 2;
4909 static void struct_RECTANGLE(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
4911 int i;
4912 for (i = 0; i < count; i++) {
4913 proto_item *item;
4914 proto_tree *t;
4915 int f_x;
4916 int f_y;
4917 int f_width;
4918 int f_height;
4920 item = proto_tree_add_item(root, hf_x11_struct_RECTANGLE, tvb, *offsetp, 8, ENC_NA);
4921 t = proto_item_add_subtree(item, ett_x11_rectangle);
4922 f_x = VALUE16(tvb, *offsetp);
4923 proto_tree_add_item(t, hf_x11_struct_RECTANGLE_x, tvb, *offsetp, 2, byte_order);
4924 *offsetp += 2;
4925 f_y = VALUE16(tvb, *offsetp);
4926 proto_tree_add_item(t, hf_x11_struct_RECTANGLE_y, tvb, *offsetp, 2, byte_order);
4927 *offsetp += 2;
4928 f_width = VALUE16(tvb, *offsetp);
4929 proto_tree_add_item(t, hf_x11_struct_RECTANGLE_width, tvb, *offsetp, 2, byte_order);
4930 *offsetp += 2;
4931 f_height = VALUE16(tvb, *offsetp);
4932 proto_tree_add_item(t, hf_x11_struct_RECTANGLE_height, tvb, *offsetp, 2, byte_order);
4933 *offsetp += 2;
4937 static int struct_size_STR(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
4939 int size = 0;
4940 int f_name_len;
4941 f_name_len = VALUE8(tvb, *offsetp + size + 0);
4942 size += f_name_len * 1;
4943 return size + 1;
4946 static void struct_STR(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
4948 int i;
4949 for (i = 0; i < count; i++) {
4950 proto_item *item;
4951 proto_tree *t;
4952 int f_name_len;
4954 item = proto_tree_add_item(root, hf_x11_struct_STR, tvb, *offsetp, struct_size_STR(tvb, offsetp, byte_order), ENC_NA);
4955 t = proto_item_add_subtree(item, ett_x11_rectangle);
4956 f_name_len = VALUE8(tvb, *offsetp);
4957 proto_tree_add_item(t, hf_x11_struct_STR_name_len, tvb, *offsetp, 1, byte_order);
4958 *offsetp += 1;
4959 listOfByte(tvb, offsetp, t, hf_x11_struct_STR_name, f_name_len, byte_order);
4963 static void struct_DIRECTFORMAT(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
4965 int i;
4966 for (i = 0; i < count; i++) {
4967 proto_item *item;
4968 proto_tree *t;
4969 int f_red_shift;
4970 int f_red_mask;
4971 int f_green_shift;
4972 int f_green_mask;
4973 int f_blue_shift;
4974 int f_blue_mask;
4975 int f_alpha_shift;
4976 int f_alpha_mask;
4978 item = proto_tree_add_item(root, hf_x11_struct_DIRECTFORMAT, tvb, *offsetp, 16, ENC_NA);
4979 t = proto_item_add_subtree(item, ett_x11_rectangle);
4980 f_red_shift = VALUE16(tvb, *offsetp);
4981 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_red_shift, tvb, *offsetp, 2, byte_order);
4982 *offsetp += 2;
4983 f_red_mask = VALUE16(tvb, *offsetp);
4984 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_red_mask, tvb, *offsetp, 2, byte_order);
4985 *offsetp += 2;
4986 f_green_shift = VALUE16(tvb, *offsetp);
4987 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_green_shift, tvb, *offsetp, 2, byte_order);
4988 *offsetp += 2;
4989 f_green_mask = VALUE16(tvb, *offsetp);
4990 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_green_mask, tvb, *offsetp, 2, byte_order);
4991 *offsetp += 2;
4992 f_blue_shift = VALUE16(tvb, *offsetp);
4993 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_blue_shift, tvb, *offsetp, 2, byte_order);
4994 *offsetp += 2;
4995 f_blue_mask = VALUE16(tvb, *offsetp);
4996 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_blue_mask, tvb, *offsetp, 2, byte_order);
4997 *offsetp += 2;
4998 f_alpha_shift = VALUE16(tvb, *offsetp);
4999 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_alpha_shift, tvb, *offsetp, 2, byte_order);
5000 *offsetp += 2;
5001 f_alpha_mask = VALUE16(tvb, *offsetp);
5002 proto_tree_add_item(t, hf_x11_struct_DIRECTFORMAT_alpha_mask, tvb, *offsetp, 2, byte_order);
5003 *offsetp += 2;
5007 static void struct_PICTFORMINFO(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5009 int i;
5010 for (i = 0; i < count; i++) {
5011 proto_item *item;
5012 proto_tree *t;
5013 int f_id;
5014 int f_type;
5015 int f_depth;
5016 int f_colormap;
5018 item = proto_tree_add_item(root, hf_x11_struct_PICTFORMINFO, tvb, *offsetp, 28, ENC_NA);
5019 t = proto_item_add_subtree(item, ett_x11_rectangle);
5020 f_id = VALUE32(tvb, *offsetp);
5021 proto_tree_add_item(t, hf_x11_struct_PICTFORMINFO_id, tvb, *offsetp, 4, byte_order);
5022 *offsetp += 4;
5023 f_type = field8(tvb, offsetp, t, hf_x11_struct_PICTFORMINFO_type, byte_order);
5024 f_depth = VALUE8(tvb, *offsetp);
5025 proto_tree_add_item(t, hf_x11_struct_PICTFORMINFO_depth, tvb, *offsetp, 1, byte_order);
5026 *offsetp += 1;
5027 UNUSED(2);
5028 struct_DIRECTFORMAT(tvb, offsetp, t, byte_order, 1);
5029 f_colormap = VALUE32(tvb, *offsetp);
5030 proto_tree_add_item(t, hf_x11_struct_PICTFORMINFO_colormap, tvb, *offsetp, 4, byte_order);
5031 *offsetp += 4;
5035 static void struct_PICTVISUAL(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5037 int i;
5038 for (i = 0; i < count; i++) {
5039 proto_item *item;
5040 proto_tree *t;
5041 int f_visual;
5042 int f_format;
5044 item = proto_tree_add_item(root, hf_x11_struct_PICTVISUAL, tvb, *offsetp, 8, ENC_NA);
5045 t = proto_item_add_subtree(item, ett_x11_rectangle);
5046 f_visual = VALUE32(tvb, *offsetp);
5047 proto_tree_add_item(t, hf_x11_struct_PICTVISUAL_visual, tvb, *offsetp, 4, byte_order);
5048 *offsetp += 4;
5049 f_format = VALUE32(tvb, *offsetp);
5050 proto_tree_add_item(t, hf_x11_struct_PICTVISUAL_format, tvb, *offsetp, 4, byte_order);
5051 *offsetp += 4;
5055 static int struct_size_PICTDEPTH(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
5057 int size = 0;
5058 int f_num_visuals;
5059 f_num_visuals = VALUE16(tvb, *offsetp + size + 2);
5060 size += f_num_visuals * 8;
5061 return size + 8;
5064 static void struct_PICTDEPTH(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5066 int i;
5067 for (i = 0; i < count; i++) {
5068 proto_item *item;
5069 proto_tree *t;
5070 int f_depth;
5071 int f_num_visuals;
5073 item = proto_tree_add_item(root, hf_x11_struct_PICTDEPTH, tvb, *offsetp, struct_size_PICTDEPTH(tvb, offsetp, byte_order), ENC_NA);
5074 t = proto_item_add_subtree(item, ett_x11_rectangle);
5075 f_depth = VALUE8(tvb, *offsetp);
5076 proto_tree_add_item(t, hf_x11_struct_PICTDEPTH_depth, tvb, *offsetp, 1, byte_order);
5077 *offsetp += 1;
5078 UNUSED(1);
5079 f_num_visuals = VALUE16(tvb, *offsetp);
5080 proto_tree_add_item(t, hf_x11_struct_PICTDEPTH_num_visuals, tvb, *offsetp, 2, byte_order);
5081 *offsetp += 2;
5082 UNUSED(4);
5083 struct_PICTVISUAL(tvb, offsetp, t, byte_order, f_num_visuals);
5087 static int struct_size_PICTSCREEN(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
5089 int size = 0;
5090 int i, off;
5091 int f_num_depths;
5092 f_num_depths = VALUE32(tvb, *offsetp + size + 0);
5093 for (i = 0; i < f_num_depths; i++) {
5094 off = (*offsetp) + size + 8;
5095 size += struct_size_PICTDEPTH(tvb, &off, byte_order);
5097 return size + 8;
5100 static void struct_PICTSCREEN(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5102 int i;
5103 for (i = 0; i < count; i++) {
5104 proto_item *item;
5105 proto_tree *t;
5106 int f_num_depths;
5107 int f_fallback;
5109 item = proto_tree_add_item(root, hf_x11_struct_PICTSCREEN, tvb, *offsetp, struct_size_PICTSCREEN(tvb, offsetp, byte_order), ENC_NA);
5110 t = proto_item_add_subtree(item, ett_x11_rectangle);
5111 f_num_depths = VALUE32(tvb, *offsetp);
5112 proto_tree_add_item(t, hf_x11_struct_PICTSCREEN_num_depths, tvb, *offsetp, 4, byte_order);
5113 *offsetp += 4;
5114 f_fallback = VALUE32(tvb, *offsetp);
5115 proto_tree_add_item(t, hf_x11_struct_PICTSCREEN_fallback, tvb, *offsetp, 4, byte_order);
5116 *offsetp += 4;
5117 struct_PICTDEPTH(tvb, offsetp, t, byte_order, f_num_depths);
5121 static void struct_INDEXVALUE(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5123 int i;
5124 for (i = 0; i < count; i++) {
5125 proto_item *item;
5126 proto_tree *t;
5127 int f_pixel;
5128 int f_red;
5129 int f_green;
5130 int f_blue;
5131 int f_alpha;
5133 item = proto_tree_add_item(root, hf_x11_struct_INDEXVALUE, tvb, *offsetp, 12, ENC_NA);
5134 t = proto_item_add_subtree(item, ett_x11_rectangle);
5135 f_pixel = VALUE32(tvb, *offsetp);
5136 proto_tree_add_item(t, hf_x11_struct_INDEXVALUE_pixel, tvb, *offsetp, 4, byte_order);
5137 *offsetp += 4;
5138 f_red = VALUE16(tvb, *offsetp);
5139 proto_tree_add_item(t, hf_x11_struct_INDEXVALUE_red, tvb, *offsetp, 2, byte_order);
5140 *offsetp += 2;
5141 f_green = VALUE16(tvb, *offsetp);
5142 proto_tree_add_item(t, hf_x11_struct_INDEXVALUE_green, tvb, *offsetp, 2, byte_order);
5143 *offsetp += 2;
5144 f_blue = VALUE16(tvb, *offsetp);
5145 proto_tree_add_item(t, hf_x11_struct_INDEXVALUE_blue, tvb, *offsetp, 2, byte_order);
5146 *offsetp += 2;
5147 f_alpha = VALUE16(tvb, *offsetp);
5148 proto_tree_add_item(t, hf_x11_struct_INDEXVALUE_alpha, tvb, *offsetp, 2, byte_order);
5149 *offsetp += 2;
5153 static void struct_COLOR(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5155 int i;
5156 for (i = 0; i < count; i++) {
5157 proto_item *item;
5158 proto_tree *t;
5159 int f_red;
5160 int f_green;
5161 int f_blue;
5162 int f_alpha;
5164 item = proto_tree_add_item(root, hf_x11_struct_COLOR, tvb, *offsetp, 8, ENC_NA);
5165 t = proto_item_add_subtree(item, ett_x11_rectangle);
5166 f_red = VALUE16(tvb, *offsetp);
5167 proto_tree_add_item(t, hf_x11_struct_COLOR_red, tvb, *offsetp, 2, byte_order);
5168 *offsetp += 2;
5169 f_green = VALUE16(tvb, *offsetp);
5170 proto_tree_add_item(t, hf_x11_struct_COLOR_green, tvb, *offsetp, 2, byte_order);
5171 *offsetp += 2;
5172 f_blue = VALUE16(tvb, *offsetp);
5173 proto_tree_add_item(t, hf_x11_struct_COLOR_blue, tvb, *offsetp, 2, byte_order);
5174 *offsetp += 2;
5175 f_alpha = VALUE16(tvb, *offsetp);
5176 proto_tree_add_item(t, hf_x11_struct_COLOR_alpha, tvb, *offsetp, 2, byte_order);
5177 *offsetp += 2;
5181 static void struct_POINTFIX(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5183 int i;
5184 for (i = 0; i < count; i++) {
5185 proto_item *item;
5186 proto_tree *t;
5187 int f_x;
5188 int f_y;
5190 item = proto_tree_add_item(root, hf_x11_struct_POINTFIX, tvb, *offsetp, 8, ENC_NA);
5191 t = proto_item_add_subtree(item, ett_x11_rectangle);
5192 f_x = VALUE32(tvb, *offsetp);
5193 proto_tree_add_item(t, hf_x11_struct_POINTFIX_x, tvb, *offsetp, 4, byte_order);
5194 *offsetp += 4;
5195 f_y = VALUE32(tvb, *offsetp);
5196 proto_tree_add_item(t, hf_x11_struct_POINTFIX_y, tvb, *offsetp, 4, byte_order);
5197 *offsetp += 4;
5201 static void struct_LINEFIX(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5203 int i;
5204 for (i = 0; i < count; i++) {
5205 proto_item *item;
5206 proto_tree *t;
5208 item = proto_tree_add_item(root, hf_x11_struct_LINEFIX, tvb, *offsetp, 16, ENC_NA);
5209 t = proto_item_add_subtree(item, ett_x11_rectangle);
5210 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
5211 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
5215 static void struct_TRIANGLE(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5217 int i;
5218 for (i = 0; i < count; i++) {
5219 proto_item *item;
5220 proto_tree *t;
5222 item = proto_tree_add_item(root, hf_x11_struct_TRIANGLE, tvb, *offsetp, 24, ENC_NA);
5223 t = proto_item_add_subtree(item, ett_x11_rectangle);
5224 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
5225 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
5226 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
5230 static void struct_TRAPEZOID(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5232 int i;
5233 for (i = 0; i < count; i++) {
5234 proto_item *item;
5235 proto_tree *t;
5236 int f_top;
5237 int f_bottom;
5239 item = proto_tree_add_item(root, hf_x11_struct_TRAPEZOID, tvb, *offsetp, 40, ENC_NA);
5240 t = proto_item_add_subtree(item, ett_x11_rectangle);
5241 f_top = VALUE32(tvb, *offsetp);
5242 proto_tree_add_item(t, hf_x11_struct_TRAPEZOID_top, tvb, *offsetp, 4, byte_order);
5243 *offsetp += 4;
5244 f_bottom = VALUE32(tvb, *offsetp);
5245 proto_tree_add_item(t, hf_x11_struct_TRAPEZOID_bottom, tvb, *offsetp, 4, byte_order);
5246 *offsetp += 4;
5247 struct_LINEFIX(tvb, offsetp, t, byte_order, 1);
5248 struct_LINEFIX(tvb, offsetp, t, byte_order, 1);
5252 static void struct_GLYPHINFO(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5254 int i;
5255 for (i = 0; i < count; i++) {
5256 proto_item *item;
5257 proto_tree *t;
5258 int f_width;
5259 int f_height;
5260 int f_x;
5261 int f_y;
5262 int f_x_off;
5263 int f_y_off;
5265 item = proto_tree_add_item(root, hf_x11_struct_GLYPHINFO, tvb, *offsetp, 12, ENC_NA);
5266 t = proto_item_add_subtree(item, ett_x11_rectangle);
5267 f_width = VALUE16(tvb, *offsetp);
5268 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_width, tvb, *offsetp, 2, byte_order);
5269 *offsetp += 2;
5270 f_height = VALUE16(tvb, *offsetp);
5271 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_height, tvb, *offsetp, 2, byte_order);
5272 *offsetp += 2;
5273 f_x = VALUE16(tvb, *offsetp);
5274 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_x, tvb, *offsetp, 2, byte_order);
5275 *offsetp += 2;
5276 f_y = VALUE16(tvb, *offsetp);
5277 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_y, tvb, *offsetp, 2, byte_order);
5278 *offsetp += 2;
5279 f_x_off = VALUE16(tvb, *offsetp);
5280 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_x_off, tvb, *offsetp, 2, byte_order);
5281 *offsetp += 2;
5282 f_y_off = VALUE16(tvb, *offsetp);
5283 proto_tree_add_item(t, hf_x11_struct_GLYPHINFO_y_off, tvb, *offsetp, 2, byte_order);
5284 *offsetp += 2;
5288 static void struct_TRANSFORM(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5290 int i;
5291 for (i = 0; i < count; i++) {
5292 proto_item *item;
5293 proto_tree *t;
5294 int f_matrix11;
5295 int f_matrix12;
5296 int f_matrix13;
5297 int f_matrix21;
5298 int f_matrix22;
5299 int f_matrix23;
5300 int f_matrix31;
5301 int f_matrix32;
5302 int f_matrix33;
5304 item = proto_tree_add_item(root, hf_x11_struct_TRANSFORM, tvb, *offsetp, 36, ENC_NA);
5305 t = proto_item_add_subtree(item, ett_x11_rectangle);
5306 f_matrix11 = VALUE32(tvb, *offsetp);
5307 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix11, tvb, *offsetp, 4, byte_order);
5308 *offsetp += 4;
5309 f_matrix12 = VALUE32(tvb, *offsetp);
5310 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix12, tvb, *offsetp, 4, byte_order);
5311 *offsetp += 4;
5312 f_matrix13 = VALUE32(tvb, *offsetp);
5313 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix13, tvb, *offsetp, 4, byte_order);
5314 *offsetp += 4;
5315 f_matrix21 = VALUE32(tvb, *offsetp);
5316 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix21, tvb, *offsetp, 4, byte_order);
5317 *offsetp += 4;
5318 f_matrix22 = VALUE32(tvb, *offsetp);
5319 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix22, tvb, *offsetp, 4, byte_order);
5320 *offsetp += 4;
5321 f_matrix23 = VALUE32(tvb, *offsetp);
5322 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix23, tvb, *offsetp, 4, byte_order);
5323 *offsetp += 4;
5324 f_matrix31 = VALUE32(tvb, *offsetp);
5325 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix31, tvb, *offsetp, 4, byte_order);
5326 *offsetp += 4;
5327 f_matrix32 = VALUE32(tvb, *offsetp);
5328 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix32, tvb, *offsetp, 4, byte_order);
5329 *offsetp += 4;
5330 f_matrix33 = VALUE32(tvb, *offsetp);
5331 proto_tree_add_item(t, hf_x11_struct_TRANSFORM_matrix33, tvb, *offsetp, 4, byte_order);
5332 *offsetp += 4;
5336 static void struct_ANIMCURSORELT(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5338 int i;
5339 for (i = 0; i < count; i++) {
5340 proto_item *item;
5341 proto_tree *t;
5342 int f_cursor;
5343 int f_delay;
5345 item = proto_tree_add_item(root, hf_x11_struct_ANIMCURSORELT, tvb, *offsetp, 8, ENC_NA);
5346 t = proto_item_add_subtree(item, ett_x11_rectangle);
5347 f_cursor = VALUE32(tvb, *offsetp);
5348 proto_tree_add_item(t, hf_x11_struct_ANIMCURSORELT_cursor, tvb, *offsetp, 4, byte_order);
5349 *offsetp += 4;
5350 f_delay = VALUE32(tvb, *offsetp);
5351 proto_tree_add_item(t, hf_x11_struct_ANIMCURSORELT_delay, tvb, *offsetp, 4, byte_order);
5352 *offsetp += 4;
5356 static void struct_SPANFIX(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5358 int i;
5359 for (i = 0; i < count; i++) {
5360 proto_item *item;
5361 proto_tree *t;
5362 int f_l;
5363 int f_r;
5364 int f_y;
5366 item = proto_tree_add_item(root, hf_x11_struct_SPANFIX, tvb, *offsetp, 12, ENC_NA);
5367 t = proto_item_add_subtree(item, ett_x11_rectangle);
5368 f_l = VALUE32(tvb, *offsetp);
5369 proto_tree_add_item(t, hf_x11_struct_SPANFIX_l, tvb, *offsetp, 4, byte_order);
5370 *offsetp += 4;
5371 f_r = VALUE32(tvb, *offsetp);
5372 proto_tree_add_item(t, hf_x11_struct_SPANFIX_r, tvb, *offsetp, 4, byte_order);
5373 *offsetp += 4;
5374 f_y = VALUE32(tvb, *offsetp);
5375 proto_tree_add_item(t, hf_x11_struct_SPANFIX_y, tvb, *offsetp, 4, byte_order);
5376 *offsetp += 4;
5380 static void struct_TRAP(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5382 int i;
5383 for (i = 0; i < count; i++) {
5384 proto_item *item;
5385 proto_tree *t;
5387 item = proto_tree_add_item(root, hf_x11_struct_TRAP, tvb, *offsetp, 24, ENC_NA);
5388 t = proto_item_add_subtree(item, ett_x11_rectangle);
5389 struct_SPANFIX(tvb, offsetp, t, byte_order, 1);
5390 struct_SPANFIX(tvb, offsetp, t, byte_order, 1);
5394 static void compositeQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5396 int f_client_major_version;
5397 int f_client_minor_version;
5398 f_client_major_version = VALUE32(tvb, *offsetp);
5399 proto_tree_add_item(t, hf_x11_composite_QueryVersion_client_major_version, tvb, *offsetp, 4, byte_order);
5400 *offsetp += 4;
5401 f_client_minor_version = VALUE32(tvb, *offsetp);
5402 proto_tree_add_item(t, hf_x11_composite_QueryVersion_client_minor_version, tvb, *offsetp, 4, byte_order);
5403 *offsetp += 4;
5405 static void compositeQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5407 int f_length, length, sequence_number;
5408 int f_major_version;
5409 int f_minor_version;
5411 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
5413 REPLY(reply);
5414 UNUSED(1);
5415 sequence_number = VALUE16(tvb, *offsetp);
5416 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5417 "sequencenumber: %d (composite-QueryVersion)", sequence_number);
5418 *offsetp += 2;
5419 f_length = VALUE32(tvb, *offsetp);
5420 length = f_length * 4 + 32;
5421 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5422 *offsetp += 4;
5423 f_major_version = VALUE32(tvb, *offsetp);
5424 proto_tree_add_item(t, hf_x11_composite_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
5425 *offsetp += 4;
5426 f_minor_version = VALUE32(tvb, *offsetp);
5427 proto_tree_add_item(t, hf_x11_composite_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
5428 *offsetp += 4;
5429 UNUSED(16);
5432 static void compositeRedirectWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5434 int f_window;
5435 int f_update;
5436 f_window = VALUE32(tvb, *offsetp);
5437 proto_tree_add_item(t, hf_x11_composite_RedirectWindow_window, tvb, *offsetp, 4, byte_order);
5438 *offsetp += 4;
5439 f_update = field8(tvb, offsetp, t, hf_x11_composite_RedirectWindow_update, byte_order);
5440 UNUSED(3);
5443 static void compositeRedirectSubwindows(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5445 int f_window;
5446 int f_update;
5447 f_window = VALUE32(tvb, *offsetp);
5448 proto_tree_add_item(t, hf_x11_composite_RedirectSubwindows_window, tvb, *offsetp, 4, byte_order);
5449 *offsetp += 4;
5450 f_update = field8(tvb, offsetp, t, hf_x11_composite_RedirectSubwindows_update, byte_order);
5451 UNUSED(3);
5454 static void compositeUnredirectWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5456 int f_window;
5457 int f_update;
5458 f_window = VALUE32(tvb, *offsetp);
5459 proto_tree_add_item(t, hf_x11_composite_UnredirectWindow_window, tvb, *offsetp, 4, byte_order);
5460 *offsetp += 4;
5461 f_update = field8(tvb, offsetp, t, hf_x11_composite_UnredirectWindow_update, byte_order);
5462 UNUSED(3);
5465 static void compositeUnredirectSubwindows(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5467 int f_window;
5468 int f_update;
5469 f_window = VALUE32(tvb, *offsetp);
5470 proto_tree_add_item(t, hf_x11_composite_UnredirectSubwindows_window, tvb, *offsetp, 4, byte_order);
5471 *offsetp += 4;
5472 f_update = field8(tvb, offsetp, t, hf_x11_composite_UnredirectSubwindows_update, byte_order);
5473 UNUSED(3);
5476 static void compositeCreateRegionFromBorderClip(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5478 int f_region;
5479 int f_window;
5480 f_region = VALUE32(tvb, *offsetp);
5481 proto_tree_add_item(t, hf_x11_composite_CreateRegionFromBorderClip_region, tvb, *offsetp, 4, byte_order);
5482 *offsetp += 4;
5483 f_window = VALUE32(tvb, *offsetp);
5484 proto_tree_add_item(t, hf_x11_composite_CreateRegionFromBorderClip_window, tvb, *offsetp, 4, byte_order);
5485 *offsetp += 4;
5488 static void compositeNameWindowPixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5490 int f_window;
5491 int f_pixmap;
5492 f_window = VALUE32(tvb, *offsetp);
5493 proto_tree_add_item(t, hf_x11_composite_NameWindowPixmap_window, tvb, *offsetp, 4, byte_order);
5494 *offsetp += 4;
5495 f_pixmap = VALUE32(tvb, *offsetp);
5496 proto_tree_add_item(t, hf_x11_composite_NameWindowPixmap_pixmap, tvb, *offsetp, 4, byte_order);
5497 *offsetp += 4;
5500 static void compositeGetOverlayWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5502 int f_window;
5503 f_window = VALUE32(tvb, *offsetp);
5504 proto_tree_add_item(t, hf_x11_composite_GetOverlayWindow_window, tvb, *offsetp, 4, byte_order);
5505 *offsetp += 4;
5507 static void compositeGetOverlayWindow_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5509 int f_length, length, sequence_number;
5510 int f_overlay_win;
5512 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetOverlayWindow");
5514 REPLY(reply);
5515 UNUSED(1);
5516 sequence_number = VALUE16(tvb, *offsetp);
5517 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5518 "sequencenumber: %d (composite-GetOverlayWindow)", sequence_number);
5519 *offsetp += 2;
5520 f_length = VALUE32(tvb, *offsetp);
5521 length = f_length * 4 + 32;
5522 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5523 *offsetp += 4;
5524 f_overlay_win = VALUE32(tvb, *offsetp);
5525 proto_tree_add_item(t, hf_x11_composite_GetOverlayWindow_reply_overlay_win, tvb, *offsetp, 4, byte_order);
5526 *offsetp += 4;
5527 UNUSED(20);
5530 static void compositeReleaseOverlayWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5532 int f_window;
5533 f_window = VALUE32(tvb, *offsetp);
5534 proto_tree_add_item(t, hf_x11_composite_ReleaseOverlayWindow_window, tvb, *offsetp, 4, byte_order);
5535 *offsetp += 4;
5537 static const value_string composite_extension_minor[] = {
5538 { 0, "QueryVersion" },
5539 { 1, "RedirectWindow" },
5540 { 2, "RedirectSubwindows" },
5541 { 3, "UnredirectWindow" },
5542 { 4, "UnredirectSubwindows" },
5543 { 5, "CreateRegionFromBorderClip" },
5544 { 6, "NameWindowPixmap" },
5545 { 7, "GetOverlayWindow" },
5546 { 8, "ReleaseOverlayWindow" },
5547 { 0, NULL }
5549 const x11_event_info composite_events[] = {
5550 { NULL, NULL }
5552 static x11_reply_info composite_replies[] = {
5553 { 0, compositeQueryVersion_Reply },
5554 { 7, compositeGetOverlayWindow_Reply },
5555 { 0, NULL }
5558 static void dispatch_composite(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5560 int minor, length;
5561 minor = CARD8(composite_extension_minor);
5562 length = REQUEST_LENGTH();
5564 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
5565 val_to_str(minor, composite_extension_minor,
5566 "<Unknown opcode %d>"));
5567 switch (minor) {
5568 case 0:
5569 compositeQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
5570 break;
5571 case 1:
5572 compositeRedirectWindow(tvb, pinfo, offsetp, t, byte_order, length);
5573 break;
5574 case 2:
5575 compositeRedirectSubwindows(tvb, pinfo, offsetp, t, byte_order, length);
5576 break;
5577 case 3:
5578 compositeUnredirectWindow(tvb, pinfo, offsetp, t, byte_order, length);
5579 break;
5580 case 4:
5581 compositeUnredirectSubwindows(tvb, pinfo, offsetp, t, byte_order, length);
5582 break;
5583 case 5:
5584 compositeCreateRegionFromBorderClip(tvb, pinfo, offsetp, t, byte_order, length);
5585 break;
5586 case 6:
5587 compositeNameWindowPixmap(tvb, pinfo, offsetp, t, byte_order, length);
5588 break;
5589 case 7:
5590 compositeGetOverlayWindow(tvb, pinfo, offsetp, t, byte_order, length);
5591 break;
5592 case 8:
5593 compositeReleaseOverlayWindow(tvb, pinfo, offsetp, t, byte_order, length);
5594 break;
5595 /* No need for a default case here, since Unknown is printed above,
5596 and UNDECODED() is taken care of by dissect_x11_request */
5600 static void register_composite(void)
5602 set_handler("Composite", dispatch_composite, composite_errors, composite_events, composite_replies);
5605 static void damageQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5607 int f_client_major_version;
5608 int f_client_minor_version;
5609 f_client_major_version = VALUE32(tvb, *offsetp);
5610 proto_tree_add_item(t, hf_x11_damage_QueryVersion_client_major_version, tvb, *offsetp, 4, byte_order);
5611 *offsetp += 4;
5612 f_client_minor_version = VALUE32(tvb, *offsetp);
5613 proto_tree_add_item(t, hf_x11_damage_QueryVersion_client_minor_version, tvb, *offsetp, 4, byte_order);
5614 *offsetp += 4;
5616 static void damageQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5618 int f_length, length, sequence_number;
5619 int f_major_version;
5620 int f_minor_version;
5622 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
5624 REPLY(reply);
5625 UNUSED(1);
5626 sequence_number = VALUE16(tvb, *offsetp);
5627 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5628 "sequencenumber: %d (damage-QueryVersion)", sequence_number);
5629 *offsetp += 2;
5630 f_length = VALUE32(tvb, *offsetp);
5631 length = f_length * 4 + 32;
5632 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5633 *offsetp += 4;
5634 f_major_version = VALUE32(tvb, *offsetp);
5635 proto_tree_add_item(t, hf_x11_damage_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
5636 *offsetp += 4;
5637 f_minor_version = VALUE32(tvb, *offsetp);
5638 proto_tree_add_item(t, hf_x11_damage_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
5639 *offsetp += 4;
5640 UNUSED(16);
5643 static void damageCreate(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5645 int f_damage;
5646 int f_drawable;
5647 int f_level;
5648 f_damage = VALUE32(tvb, *offsetp);
5649 proto_tree_add_item(t, hf_x11_damage_Create_damage, tvb, *offsetp, 4, byte_order);
5650 *offsetp += 4;
5651 f_drawable = VALUE32(tvb, *offsetp);
5652 proto_tree_add_item(t, hf_x11_damage_Create_drawable, tvb, *offsetp, 4, byte_order);
5653 *offsetp += 4;
5654 f_level = field8(tvb, offsetp, t, hf_x11_damage_Create_level, byte_order);
5655 UNUSED(3);
5658 static void damageDestroy(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5660 int f_damage;
5661 f_damage = VALUE32(tvb, *offsetp);
5662 proto_tree_add_item(t, hf_x11_damage_Destroy_damage, tvb, *offsetp, 4, byte_order);
5663 *offsetp += 4;
5666 static void damageSubtract(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5668 int f_damage;
5669 int f_repair;
5670 int f_parts;
5671 f_damage = VALUE32(tvb, *offsetp);
5672 proto_tree_add_item(t, hf_x11_damage_Subtract_damage, tvb, *offsetp, 4, byte_order);
5673 *offsetp += 4;
5674 f_repair = field32(tvb, offsetp, t, hf_x11_damage_Subtract_repair, byte_order);
5675 f_parts = field32(tvb, offsetp, t, hf_x11_damage_Subtract_parts, byte_order);
5678 static void damageAdd(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5680 int f_drawable;
5681 int f_region;
5682 f_drawable = VALUE32(tvb, *offsetp);
5683 proto_tree_add_item(t, hf_x11_damage_Add_drawable, tvb, *offsetp, 4, byte_order);
5684 *offsetp += 4;
5685 f_region = VALUE32(tvb, *offsetp);
5686 proto_tree_add_item(t, hf_x11_damage_Add_region, tvb, *offsetp, 4, byte_order);
5687 *offsetp += 4;
5690 static void damageNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
5692 int f_level;
5693 int f_drawable;
5694 int f_damage;
5695 int f_timestamp;
5696 f_level = field8(tvb, offsetp, t, hf_x11_damage_Notify_level, byte_order);
5697 CARD16(event_sequencenumber);
5698 f_drawable = VALUE32(tvb, *offsetp);
5699 proto_tree_add_item(t, hf_x11_damage_Notify_drawable, tvb, *offsetp, 4, byte_order);
5700 *offsetp += 4;
5701 f_damage = VALUE32(tvb, *offsetp);
5702 proto_tree_add_item(t, hf_x11_damage_Notify_damage, tvb, *offsetp, 4, byte_order);
5703 *offsetp += 4;
5704 f_timestamp = VALUE32(tvb, *offsetp);
5705 proto_tree_add_item(t, hf_x11_damage_Notify_timestamp, tvb, *offsetp, 4, byte_order);
5706 *offsetp += 4;
5707 struct_RECTANGLE(tvb, offsetp, t, byte_order, 1);
5708 struct_RECTANGLE(tvb, offsetp, t, byte_order, 1);
5710 static const value_string damage_extension_minor[] = {
5711 { 0, "QueryVersion" },
5712 { 1, "Create" },
5713 { 2, "Destroy" },
5714 { 3, "Subtract" },
5715 { 4, "Add" },
5716 { 0, NULL }
5718 const x11_event_info damage_events[] = {
5719 { "damage-Notify", damageNotify },
5720 { NULL, NULL }
5722 static x11_reply_info damage_replies[] = {
5723 { 0, damageQueryVersion_Reply },
5724 { 0, NULL }
5727 static void dispatch_damage(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5729 int minor, length;
5730 minor = CARD8(damage_extension_minor);
5731 length = REQUEST_LENGTH();
5733 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
5734 val_to_str(minor, damage_extension_minor,
5735 "<Unknown opcode %d>"));
5736 switch (minor) {
5737 case 0:
5738 damageQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
5739 break;
5740 case 1:
5741 damageCreate(tvb, pinfo, offsetp, t, byte_order, length);
5742 break;
5743 case 2:
5744 damageDestroy(tvb, pinfo, offsetp, t, byte_order, length);
5745 break;
5746 case 3:
5747 damageSubtract(tvb, pinfo, offsetp, t, byte_order, length);
5748 break;
5749 case 4:
5750 damageAdd(tvb, pinfo, offsetp, t, byte_order, length);
5751 break;
5752 /* No need for a default case here, since Unknown is printed above,
5753 and UNDECODED() is taken care of by dissect_x11_request */
5757 static void register_damage(void)
5759 set_handler("DAMAGE", dispatch_damage, damage_errors, damage_events, damage_replies);
5762 static void dpmsGetVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5764 int f_client_major_version;
5765 int f_client_minor_version;
5766 f_client_major_version = VALUE16(tvb, *offsetp);
5767 proto_tree_add_item(t, hf_x11_dpms_GetVersion_client_major_version, tvb, *offsetp, 2, byte_order);
5768 *offsetp += 2;
5769 f_client_minor_version = VALUE16(tvb, *offsetp);
5770 proto_tree_add_item(t, hf_x11_dpms_GetVersion_client_minor_version, tvb, *offsetp, 2, byte_order);
5771 *offsetp += 2;
5773 static void dpmsGetVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5775 int f_length, length, sequence_number;
5776 int f_server_major_version;
5777 int f_server_minor_version;
5779 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetVersion");
5781 REPLY(reply);
5782 UNUSED(1);
5783 sequence_number = VALUE16(tvb, *offsetp);
5784 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5785 "sequencenumber: %d (dpms-GetVersion)", sequence_number);
5786 *offsetp += 2;
5787 f_length = VALUE32(tvb, *offsetp);
5788 length = f_length * 4 + 32;
5789 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5790 *offsetp += 4;
5791 f_server_major_version = VALUE16(tvb, *offsetp);
5792 proto_tree_add_item(t, hf_x11_dpms_GetVersion_reply_server_major_version, tvb, *offsetp, 2, byte_order);
5793 *offsetp += 2;
5794 f_server_minor_version = VALUE16(tvb, *offsetp);
5795 proto_tree_add_item(t, hf_x11_dpms_GetVersion_reply_server_minor_version, tvb, *offsetp, 2, byte_order);
5796 *offsetp += 2;
5799 static void dpmsCapable(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
5802 static void dpmsCapable_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5804 int f_length, length, sequence_number;
5805 int f_capable;
5807 col_append_fstr(pinfo->cinfo, COL_INFO, "-Capable");
5809 REPLY(reply);
5810 UNUSED(1);
5811 sequence_number = VALUE16(tvb, *offsetp);
5812 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5813 "sequencenumber: %d (dpms-Capable)", sequence_number);
5814 *offsetp += 2;
5815 f_length = VALUE32(tvb, *offsetp);
5816 length = f_length * 4 + 32;
5817 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5818 *offsetp += 4;
5819 f_capable = VALUE8(tvb, *offsetp);
5820 proto_tree_add_item(t, hf_x11_dpms_Capable_reply_capable, tvb, *offsetp, 1, byte_order);
5821 *offsetp += 1;
5822 UNUSED(23);
5825 static void dpmsGetTimeouts(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
5828 static void dpmsGetTimeouts_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5830 int f_length, length, sequence_number;
5831 int f_standby_timeout;
5832 int f_suspend_timeout;
5833 int f_off_timeout;
5835 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTimeouts");
5837 REPLY(reply);
5838 UNUSED(1);
5839 sequence_number = VALUE16(tvb, *offsetp);
5840 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5841 "sequencenumber: %d (dpms-GetTimeouts)", sequence_number);
5842 *offsetp += 2;
5843 f_length = VALUE32(tvb, *offsetp);
5844 length = f_length * 4 + 32;
5845 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5846 *offsetp += 4;
5847 f_standby_timeout = VALUE16(tvb, *offsetp);
5848 proto_tree_add_item(t, hf_x11_dpms_GetTimeouts_reply_standby_timeout, tvb, *offsetp, 2, byte_order);
5849 *offsetp += 2;
5850 f_suspend_timeout = VALUE16(tvb, *offsetp);
5851 proto_tree_add_item(t, hf_x11_dpms_GetTimeouts_reply_suspend_timeout, tvb, *offsetp, 2, byte_order);
5852 *offsetp += 2;
5853 f_off_timeout = VALUE16(tvb, *offsetp);
5854 proto_tree_add_item(t, hf_x11_dpms_GetTimeouts_reply_off_timeout, tvb, *offsetp, 2, byte_order);
5855 *offsetp += 2;
5856 UNUSED(18);
5859 static void dpmsSetTimeouts(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5861 int f_standby_timeout;
5862 int f_suspend_timeout;
5863 int f_off_timeout;
5864 f_standby_timeout = VALUE16(tvb, *offsetp);
5865 proto_tree_add_item(t, hf_x11_dpms_SetTimeouts_standby_timeout, tvb, *offsetp, 2, byte_order);
5866 *offsetp += 2;
5867 f_suspend_timeout = VALUE16(tvb, *offsetp);
5868 proto_tree_add_item(t, hf_x11_dpms_SetTimeouts_suspend_timeout, tvb, *offsetp, 2, byte_order);
5869 *offsetp += 2;
5870 f_off_timeout = VALUE16(tvb, *offsetp);
5871 proto_tree_add_item(t, hf_x11_dpms_SetTimeouts_off_timeout, tvb, *offsetp, 2, byte_order);
5872 *offsetp += 2;
5875 static void dpmsEnable(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
5879 static void dpmsDisable(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
5883 static void dpmsForceLevel(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
5885 int f_power_level;
5886 f_power_level = field16(tvb, offsetp, t, hf_x11_dpms_ForceLevel_power_level, byte_order);
5889 static void dpmsInfo(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
5892 static void dpmsInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5894 int f_length, length, sequence_number;
5895 int f_power_level;
5896 int f_state;
5898 col_append_fstr(pinfo->cinfo, COL_INFO, "-Info");
5900 REPLY(reply);
5901 UNUSED(1);
5902 sequence_number = VALUE16(tvb, *offsetp);
5903 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
5904 "sequencenumber: %d (dpms-Info)", sequence_number);
5905 *offsetp += 2;
5906 f_length = VALUE32(tvb, *offsetp);
5907 length = f_length * 4 + 32;
5908 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
5909 *offsetp += 4;
5910 f_power_level = field16(tvb, offsetp, t, hf_x11_dpms_Info_reply_power_level, byte_order);
5911 f_state = VALUE8(tvb, *offsetp);
5912 proto_tree_add_item(t, hf_x11_dpms_Info_reply_state, tvb, *offsetp, 1, byte_order);
5913 *offsetp += 1;
5914 UNUSED(21);
5916 static const value_string dpms_extension_minor[] = {
5917 { 0, "GetVersion" },
5918 { 1, "Capable" },
5919 { 2, "GetTimeouts" },
5920 { 3, "SetTimeouts" },
5921 { 4, "Enable" },
5922 { 5, "Disable" },
5923 { 6, "ForceLevel" },
5924 { 7, "Info" },
5925 { 0, NULL }
5927 const x11_event_info dpms_events[] = {
5928 { NULL, NULL }
5930 static x11_reply_info dpms_replies[] = {
5931 { 0, dpmsGetVersion_Reply },
5932 { 1, dpmsCapable_Reply },
5933 { 2, dpmsGetTimeouts_Reply },
5934 { 7, dpmsInfo_Reply },
5935 { 0, NULL }
5938 static void dispatch_dpms(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
5940 int minor, length;
5941 minor = CARD8(dpms_extension_minor);
5942 length = REQUEST_LENGTH();
5944 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
5945 val_to_str(minor, dpms_extension_minor,
5946 "<Unknown opcode %d>"));
5947 switch (minor) {
5948 case 0:
5949 dpmsGetVersion(tvb, pinfo, offsetp, t, byte_order, length);
5950 break;
5951 case 1:
5952 dpmsCapable(tvb, pinfo, offsetp, t, byte_order, length);
5953 break;
5954 case 2:
5955 dpmsGetTimeouts(tvb, pinfo, offsetp, t, byte_order, length);
5956 break;
5957 case 3:
5958 dpmsSetTimeouts(tvb, pinfo, offsetp, t, byte_order, length);
5959 break;
5960 case 4:
5961 dpmsEnable(tvb, pinfo, offsetp, t, byte_order, length);
5962 break;
5963 case 5:
5964 dpmsDisable(tvb, pinfo, offsetp, t, byte_order, length);
5965 break;
5966 case 6:
5967 dpmsForceLevel(tvb, pinfo, offsetp, t, byte_order, length);
5968 break;
5969 case 7:
5970 dpmsInfo(tvb, pinfo, offsetp, t, byte_order, length);
5971 break;
5972 /* No need for a default case here, since Unknown is printed above,
5973 and UNDECODED() is taken care of by dissect_x11_request */
5977 static void register_dpms(void)
5979 set_handler("DPMS", dispatch_dpms, dpms_errors, dpms_events, dpms_replies);
5982 static void struct_DRI2Buffer(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
5984 int i;
5985 for (i = 0; i < count; i++) {
5986 proto_item *item;
5987 proto_tree *t;
5988 int f_attachment;
5989 int f_name;
5990 int f_pitch;
5991 int f_cpp;
5992 int f_flags;
5994 item = proto_tree_add_item(root, hf_x11_struct_DRI2Buffer, tvb, *offsetp, 20, ENC_NA);
5995 t = proto_item_add_subtree(item, ett_x11_rectangle);
5996 f_attachment = field32(tvb, offsetp, t, hf_x11_struct_DRI2Buffer_attachment, byte_order);
5997 f_name = VALUE32(tvb, *offsetp);
5998 proto_tree_add_item(t, hf_x11_struct_DRI2Buffer_name, tvb, *offsetp, 4, byte_order);
5999 *offsetp += 4;
6000 f_pitch = VALUE32(tvb, *offsetp);
6001 proto_tree_add_item(t, hf_x11_struct_DRI2Buffer_pitch, tvb, *offsetp, 4, byte_order);
6002 *offsetp += 4;
6003 f_cpp = VALUE32(tvb, *offsetp);
6004 proto_tree_add_item(t, hf_x11_struct_DRI2Buffer_cpp, tvb, *offsetp, 4, byte_order);
6005 *offsetp += 4;
6006 f_flags = VALUE32(tvb, *offsetp);
6007 proto_tree_add_item(t, hf_x11_struct_DRI2Buffer_flags, tvb, *offsetp, 4, byte_order);
6008 *offsetp += 4;
6012 static void struct_AttachFormat(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
6014 int i;
6015 for (i = 0; i < count; i++) {
6016 proto_item *item;
6017 proto_tree *t;
6018 int f_attachment;
6019 int f_format;
6021 item = proto_tree_add_item(root, hf_x11_struct_AttachFormat, tvb, *offsetp, 8, ENC_NA);
6022 t = proto_item_add_subtree(item, ett_x11_rectangle);
6023 f_attachment = field32(tvb, offsetp, t, hf_x11_struct_AttachFormat_attachment, byte_order);
6024 f_format = VALUE32(tvb, *offsetp);
6025 proto_tree_add_item(t, hf_x11_struct_AttachFormat_format, tvb, *offsetp, 4, byte_order);
6026 *offsetp += 4;
6030 static void dri2QueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6032 int f_major_version;
6033 int f_minor_version;
6034 f_major_version = VALUE32(tvb, *offsetp);
6035 proto_tree_add_item(t, hf_x11_dri2_QueryVersion_major_version, tvb, *offsetp, 4, byte_order);
6036 *offsetp += 4;
6037 f_minor_version = VALUE32(tvb, *offsetp);
6038 proto_tree_add_item(t, hf_x11_dri2_QueryVersion_minor_version, tvb, *offsetp, 4, byte_order);
6039 *offsetp += 4;
6041 static void dri2QueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6043 int f_length, length, sequence_number;
6044 int f_major_version;
6045 int f_minor_version;
6047 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
6049 REPLY(reply);
6050 UNUSED(1);
6051 sequence_number = VALUE16(tvb, *offsetp);
6052 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6053 "sequencenumber: %d (dri2-QueryVersion)", sequence_number);
6054 *offsetp += 2;
6055 f_length = VALUE32(tvb, *offsetp);
6056 length = f_length * 4 + 32;
6057 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6058 *offsetp += 4;
6059 f_major_version = VALUE32(tvb, *offsetp);
6060 proto_tree_add_item(t, hf_x11_dri2_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
6061 *offsetp += 4;
6062 f_minor_version = VALUE32(tvb, *offsetp);
6063 proto_tree_add_item(t, hf_x11_dri2_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
6064 *offsetp += 4;
6067 static void dri2Connect(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6069 int f_window;
6070 int f_driver_type;
6071 f_window = VALUE32(tvb, *offsetp);
6072 proto_tree_add_item(t, hf_x11_dri2_Connect_window, tvb, *offsetp, 4, byte_order);
6073 *offsetp += 4;
6074 f_driver_type = field32(tvb, offsetp, t, hf_x11_dri2_Connect_driver_type, byte_order);
6076 static void dri2Connect_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6078 int f_length, length, sequence_number;
6079 int f_driver_name_length;
6080 int f_device_name_length;
6082 col_append_fstr(pinfo->cinfo, COL_INFO, "-Connect");
6084 REPLY(reply);
6085 UNUSED(1);
6086 sequence_number = VALUE16(tvb, *offsetp);
6087 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6088 "sequencenumber: %d (dri2-Connect)", sequence_number);
6089 *offsetp += 2;
6090 f_length = VALUE32(tvb, *offsetp);
6091 length = f_length * 4 + 32;
6092 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6093 *offsetp += 4;
6094 f_driver_name_length = VALUE32(tvb, *offsetp);
6095 proto_tree_add_item(t, hf_x11_dri2_Connect_reply_driver_name_length, tvb, *offsetp, 4, byte_order);
6096 *offsetp += 4;
6097 f_device_name_length = VALUE32(tvb, *offsetp);
6098 proto_tree_add_item(t, hf_x11_dri2_Connect_reply_device_name_length, tvb, *offsetp, 4, byte_order);
6099 *offsetp += 4;
6100 UNUSED(16);
6101 listOfByte(tvb, offsetp, t, hf_x11_dri2_Connect_reply_driver_name, f_driver_name_length, byte_order);
6102 listOfByte(tvb, offsetp, t, hf_x11_dri2_Connect_reply_alignment_pad, (((f_driver_name_length + 3 ) & (~3)) - f_driver_name_length), byte_order);
6103 listOfByte(tvb, offsetp, t, hf_x11_dri2_Connect_reply_device_name, f_device_name_length, byte_order);
6106 static void dri2Authenticate(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6108 int f_window;
6109 int f_magic;
6110 f_window = VALUE32(tvb, *offsetp);
6111 proto_tree_add_item(t, hf_x11_dri2_Authenticate_window, tvb, *offsetp, 4, byte_order);
6112 *offsetp += 4;
6113 f_magic = VALUE32(tvb, *offsetp);
6114 proto_tree_add_item(t, hf_x11_dri2_Authenticate_magic, tvb, *offsetp, 4, byte_order);
6115 *offsetp += 4;
6117 static void dri2Authenticate_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6119 int f_length, length, sequence_number;
6120 int f_authenticated;
6122 col_append_fstr(pinfo->cinfo, COL_INFO, "-Authenticate");
6124 REPLY(reply);
6125 UNUSED(1);
6126 sequence_number = VALUE16(tvb, *offsetp);
6127 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6128 "sequencenumber: %d (dri2-Authenticate)", sequence_number);
6129 *offsetp += 2;
6130 f_length = VALUE32(tvb, *offsetp);
6131 length = f_length * 4 + 32;
6132 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6133 *offsetp += 4;
6134 f_authenticated = VALUE32(tvb, *offsetp);
6135 proto_tree_add_item(t, hf_x11_dri2_Authenticate_reply_authenticated, tvb, *offsetp, 4, byte_order);
6136 *offsetp += 4;
6139 static void dri2CreateDrawable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6141 int f_drawable;
6142 f_drawable = VALUE32(tvb, *offsetp);
6143 proto_tree_add_item(t, hf_x11_dri2_CreateDrawable_drawable, tvb, *offsetp, 4, byte_order);
6144 *offsetp += 4;
6147 static void dri2DestroyDrawable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6149 int f_drawable;
6150 f_drawable = VALUE32(tvb, *offsetp);
6151 proto_tree_add_item(t, hf_x11_dri2_DestroyDrawable_drawable, tvb, *offsetp, 4, byte_order);
6152 *offsetp += 4;
6155 static void dri2GetBuffers(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6157 int f_drawable;
6158 int f_count;
6159 f_drawable = VALUE32(tvb, *offsetp);
6160 proto_tree_add_item(t, hf_x11_dri2_GetBuffers_drawable, tvb, *offsetp, 4, byte_order);
6161 *offsetp += 4;
6162 f_count = VALUE32(tvb, *offsetp);
6163 proto_tree_add_item(t, hf_x11_dri2_GetBuffers_count, tvb, *offsetp, 4, byte_order);
6164 *offsetp += 4;
6165 listOfCard32(tvb, offsetp, t, hf_x11_dri2_GetBuffers_attachments, hf_x11_dri2_GetBuffers_attachments_item, (length - 12) / 4, byte_order);
6167 static void dri2GetBuffers_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6169 int f_length, length, sequence_number;
6170 int f_width;
6171 int f_height;
6172 int f_count;
6174 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetBuffers");
6176 REPLY(reply);
6177 UNUSED(1);
6178 sequence_number = VALUE16(tvb, *offsetp);
6179 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6180 "sequencenumber: %d (dri2-GetBuffers)", sequence_number);
6181 *offsetp += 2;
6182 f_length = VALUE32(tvb, *offsetp);
6183 length = f_length * 4 + 32;
6184 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6185 *offsetp += 4;
6186 f_width = VALUE32(tvb, *offsetp);
6187 proto_tree_add_item(t, hf_x11_dri2_GetBuffers_reply_width, tvb, *offsetp, 4, byte_order);
6188 *offsetp += 4;
6189 f_height = VALUE32(tvb, *offsetp);
6190 proto_tree_add_item(t, hf_x11_dri2_GetBuffers_reply_height, tvb, *offsetp, 4, byte_order);
6191 *offsetp += 4;
6192 f_count = VALUE32(tvb, *offsetp);
6193 proto_tree_add_item(t, hf_x11_dri2_GetBuffers_reply_count, tvb, *offsetp, 4, byte_order);
6194 *offsetp += 4;
6195 UNUSED(12);
6196 struct_DRI2Buffer(tvb, offsetp, t, byte_order, f_count);
6199 static void dri2CopyRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6201 int f_drawable;
6202 int f_region;
6203 int f_dest;
6204 int f_src;
6205 f_drawable = VALUE32(tvb, *offsetp);
6206 proto_tree_add_item(t, hf_x11_dri2_CopyRegion_drawable, tvb, *offsetp, 4, byte_order);
6207 *offsetp += 4;
6208 f_region = VALUE32(tvb, *offsetp);
6209 proto_tree_add_item(t, hf_x11_dri2_CopyRegion_region, tvb, *offsetp, 4, byte_order);
6210 *offsetp += 4;
6211 f_dest = VALUE32(tvb, *offsetp);
6212 proto_tree_add_item(t, hf_x11_dri2_CopyRegion_dest, tvb, *offsetp, 4, byte_order);
6213 *offsetp += 4;
6214 f_src = VALUE32(tvb, *offsetp);
6215 proto_tree_add_item(t, hf_x11_dri2_CopyRegion_src, tvb, *offsetp, 4, byte_order);
6216 *offsetp += 4;
6218 static void dri2CopyRegion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6220 int f_length, length, sequence_number;
6222 col_append_fstr(pinfo->cinfo, COL_INFO, "-CopyRegion");
6224 REPLY(reply);
6225 UNUSED(1);
6226 sequence_number = VALUE16(tvb, *offsetp);
6227 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6228 "sequencenumber: %d (dri2-CopyRegion)", sequence_number);
6229 *offsetp += 2;
6230 f_length = VALUE32(tvb, *offsetp);
6231 length = f_length * 4 + 32;
6232 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6233 *offsetp += 4;
6236 static void dri2GetBuffersWithFormat(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6238 int f_drawable;
6239 int f_count;
6240 f_drawable = VALUE32(tvb, *offsetp);
6241 proto_tree_add_item(t, hf_x11_dri2_GetBuffersWithFormat_drawable, tvb, *offsetp, 4, byte_order);
6242 *offsetp += 4;
6243 f_count = VALUE32(tvb, *offsetp);
6244 proto_tree_add_item(t, hf_x11_dri2_GetBuffersWithFormat_count, tvb, *offsetp, 4, byte_order);
6245 *offsetp += 4;
6246 struct_AttachFormat(tvb, offsetp, t, byte_order, (length - 12) / 8);
6248 static void dri2GetBuffersWithFormat_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6250 int f_length, length, sequence_number;
6251 int f_width;
6252 int f_height;
6253 int f_count;
6255 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetBuffersWithFormat");
6257 REPLY(reply);
6258 UNUSED(1);
6259 sequence_number = VALUE16(tvb, *offsetp);
6260 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6261 "sequencenumber: %d (dri2-GetBuffersWithFormat)", sequence_number);
6262 *offsetp += 2;
6263 f_length = VALUE32(tvb, *offsetp);
6264 length = f_length * 4 + 32;
6265 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6266 *offsetp += 4;
6267 f_width = VALUE32(tvb, *offsetp);
6268 proto_tree_add_item(t, hf_x11_dri2_GetBuffersWithFormat_reply_width, tvb, *offsetp, 4, byte_order);
6269 *offsetp += 4;
6270 f_height = VALUE32(tvb, *offsetp);
6271 proto_tree_add_item(t, hf_x11_dri2_GetBuffersWithFormat_reply_height, tvb, *offsetp, 4, byte_order);
6272 *offsetp += 4;
6273 f_count = VALUE32(tvb, *offsetp);
6274 proto_tree_add_item(t, hf_x11_dri2_GetBuffersWithFormat_reply_count, tvb, *offsetp, 4, byte_order);
6275 *offsetp += 4;
6276 UNUSED(12);
6277 struct_DRI2Buffer(tvb, offsetp, t, byte_order, f_count);
6280 static void dri2SwapBuffers(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6282 int f_drawable;
6283 int f_target_msc_hi;
6284 int f_target_msc_lo;
6285 int f_divisor_hi;
6286 int f_divisor_lo;
6287 int f_remainder_hi;
6288 int f_remainder_lo;
6289 f_drawable = VALUE32(tvb, *offsetp);
6290 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_drawable, tvb, *offsetp, 4, byte_order);
6291 *offsetp += 4;
6292 f_target_msc_hi = VALUE32(tvb, *offsetp);
6293 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_target_msc_hi, tvb, *offsetp, 4, byte_order);
6294 *offsetp += 4;
6295 f_target_msc_lo = VALUE32(tvb, *offsetp);
6296 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_target_msc_lo, tvb, *offsetp, 4, byte_order);
6297 *offsetp += 4;
6298 f_divisor_hi = VALUE32(tvb, *offsetp);
6299 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_divisor_hi, tvb, *offsetp, 4, byte_order);
6300 *offsetp += 4;
6301 f_divisor_lo = VALUE32(tvb, *offsetp);
6302 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_divisor_lo, tvb, *offsetp, 4, byte_order);
6303 *offsetp += 4;
6304 f_remainder_hi = VALUE32(tvb, *offsetp);
6305 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_remainder_hi, tvb, *offsetp, 4, byte_order);
6306 *offsetp += 4;
6307 f_remainder_lo = VALUE32(tvb, *offsetp);
6308 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_remainder_lo, tvb, *offsetp, 4, byte_order);
6309 *offsetp += 4;
6311 static void dri2SwapBuffers_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6313 int f_length, length, sequence_number;
6314 int f_swap_hi;
6315 int f_swap_lo;
6317 col_append_fstr(pinfo->cinfo, COL_INFO, "-SwapBuffers");
6319 REPLY(reply);
6320 UNUSED(1);
6321 sequence_number = VALUE16(tvb, *offsetp);
6322 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6323 "sequencenumber: %d (dri2-SwapBuffers)", sequence_number);
6324 *offsetp += 2;
6325 f_length = VALUE32(tvb, *offsetp);
6326 length = f_length * 4 + 32;
6327 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6328 *offsetp += 4;
6329 f_swap_hi = VALUE32(tvb, *offsetp);
6330 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_reply_swap_hi, tvb, *offsetp, 4, byte_order);
6331 *offsetp += 4;
6332 f_swap_lo = VALUE32(tvb, *offsetp);
6333 proto_tree_add_item(t, hf_x11_dri2_SwapBuffers_reply_swap_lo, tvb, *offsetp, 4, byte_order);
6334 *offsetp += 4;
6337 static void dri2GetMSC(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6339 int f_drawable;
6340 f_drawable = VALUE32(tvb, *offsetp);
6341 proto_tree_add_item(t, hf_x11_dri2_GetMSC_drawable, tvb, *offsetp, 4, byte_order);
6342 *offsetp += 4;
6344 static void dri2GetMSC_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6346 int f_length, length, sequence_number;
6347 int f_ust_hi;
6348 int f_ust_lo;
6349 int f_msc_hi;
6350 int f_msc_lo;
6351 int f_sbc_hi;
6352 int f_sbc_lo;
6354 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMSC");
6356 REPLY(reply);
6357 UNUSED(1);
6358 sequence_number = VALUE16(tvb, *offsetp);
6359 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6360 "sequencenumber: %d (dri2-GetMSC)", sequence_number);
6361 *offsetp += 2;
6362 f_length = VALUE32(tvb, *offsetp);
6363 length = f_length * 4 + 32;
6364 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6365 *offsetp += 4;
6366 f_ust_hi = VALUE32(tvb, *offsetp);
6367 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_ust_hi, tvb, *offsetp, 4, byte_order);
6368 *offsetp += 4;
6369 f_ust_lo = VALUE32(tvb, *offsetp);
6370 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_ust_lo, tvb, *offsetp, 4, byte_order);
6371 *offsetp += 4;
6372 f_msc_hi = VALUE32(tvb, *offsetp);
6373 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_msc_hi, tvb, *offsetp, 4, byte_order);
6374 *offsetp += 4;
6375 f_msc_lo = VALUE32(tvb, *offsetp);
6376 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_msc_lo, tvb, *offsetp, 4, byte_order);
6377 *offsetp += 4;
6378 f_sbc_hi = VALUE32(tvb, *offsetp);
6379 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_sbc_hi, tvb, *offsetp, 4, byte_order);
6380 *offsetp += 4;
6381 f_sbc_lo = VALUE32(tvb, *offsetp);
6382 proto_tree_add_item(t, hf_x11_dri2_GetMSC_reply_sbc_lo, tvb, *offsetp, 4, byte_order);
6383 *offsetp += 4;
6386 static void dri2WaitMSC(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6388 int f_drawable;
6389 int f_target_msc_hi;
6390 int f_target_msc_lo;
6391 int f_divisor_hi;
6392 int f_divisor_lo;
6393 int f_remainder_hi;
6394 int f_remainder_lo;
6395 f_drawable = VALUE32(tvb, *offsetp);
6396 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_drawable, tvb, *offsetp, 4, byte_order);
6397 *offsetp += 4;
6398 f_target_msc_hi = VALUE32(tvb, *offsetp);
6399 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_target_msc_hi, tvb, *offsetp, 4, byte_order);
6400 *offsetp += 4;
6401 f_target_msc_lo = VALUE32(tvb, *offsetp);
6402 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_target_msc_lo, tvb, *offsetp, 4, byte_order);
6403 *offsetp += 4;
6404 f_divisor_hi = VALUE32(tvb, *offsetp);
6405 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_divisor_hi, tvb, *offsetp, 4, byte_order);
6406 *offsetp += 4;
6407 f_divisor_lo = VALUE32(tvb, *offsetp);
6408 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_divisor_lo, tvb, *offsetp, 4, byte_order);
6409 *offsetp += 4;
6410 f_remainder_hi = VALUE32(tvb, *offsetp);
6411 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_remainder_hi, tvb, *offsetp, 4, byte_order);
6412 *offsetp += 4;
6413 f_remainder_lo = VALUE32(tvb, *offsetp);
6414 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_remainder_lo, tvb, *offsetp, 4, byte_order);
6415 *offsetp += 4;
6417 static void dri2WaitMSC_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6419 int f_length, length, sequence_number;
6420 int f_ust_hi;
6421 int f_ust_lo;
6422 int f_msc_hi;
6423 int f_msc_lo;
6424 int f_sbc_hi;
6425 int f_sbc_lo;
6427 col_append_fstr(pinfo->cinfo, COL_INFO, "-WaitMSC");
6429 REPLY(reply);
6430 UNUSED(1);
6431 sequence_number = VALUE16(tvb, *offsetp);
6432 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6433 "sequencenumber: %d (dri2-WaitMSC)", sequence_number);
6434 *offsetp += 2;
6435 f_length = VALUE32(tvb, *offsetp);
6436 length = f_length * 4 + 32;
6437 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6438 *offsetp += 4;
6439 f_ust_hi = VALUE32(tvb, *offsetp);
6440 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_ust_hi, tvb, *offsetp, 4, byte_order);
6441 *offsetp += 4;
6442 f_ust_lo = VALUE32(tvb, *offsetp);
6443 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_ust_lo, tvb, *offsetp, 4, byte_order);
6444 *offsetp += 4;
6445 f_msc_hi = VALUE32(tvb, *offsetp);
6446 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_msc_hi, tvb, *offsetp, 4, byte_order);
6447 *offsetp += 4;
6448 f_msc_lo = VALUE32(tvb, *offsetp);
6449 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_msc_lo, tvb, *offsetp, 4, byte_order);
6450 *offsetp += 4;
6451 f_sbc_hi = VALUE32(tvb, *offsetp);
6452 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_sbc_hi, tvb, *offsetp, 4, byte_order);
6453 *offsetp += 4;
6454 f_sbc_lo = VALUE32(tvb, *offsetp);
6455 proto_tree_add_item(t, hf_x11_dri2_WaitMSC_reply_sbc_lo, tvb, *offsetp, 4, byte_order);
6456 *offsetp += 4;
6459 static void dri2WaitSBC(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6461 int f_drawable;
6462 int f_target_sbc_hi;
6463 int f_target_sbc_lo;
6464 f_drawable = VALUE32(tvb, *offsetp);
6465 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_drawable, tvb, *offsetp, 4, byte_order);
6466 *offsetp += 4;
6467 f_target_sbc_hi = VALUE32(tvb, *offsetp);
6468 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_target_sbc_hi, tvb, *offsetp, 4, byte_order);
6469 *offsetp += 4;
6470 f_target_sbc_lo = VALUE32(tvb, *offsetp);
6471 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_target_sbc_lo, tvb, *offsetp, 4, byte_order);
6472 *offsetp += 4;
6474 static void dri2WaitSBC_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6476 int f_length, length, sequence_number;
6477 int f_ust_hi;
6478 int f_ust_lo;
6479 int f_msc_hi;
6480 int f_msc_lo;
6481 int f_sbc_hi;
6482 int f_sbc_lo;
6484 col_append_fstr(pinfo->cinfo, COL_INFO, "-WaitSBC");
6486 REPLY(reply);
6487 UNUSED(1);
6488 sequence_number = VALUE16(tvb, *offsetp);
6489 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6490 "sequencenumber: %d (dri2-WaitSBC)", sequence_number);
6491 *offsetp += 2;
6492 f_length = VALUE32(tvb, *offsetp);
6493 length = f_length * 4 + 32;
6494 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6495 *offsetp += 4;
6496 f_ust_hi = VALUE32(tvb, *offsetp);
6497 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_ust_hi, tvb, *offsetp, 4, byte_order);
6498 *offsetp += 4;
6499 f_ust_lo = VALUE32(tvb, *offsetp);
6500 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_ust_lo, tvb, *offsetp, 4, byte_order);
6501 *offsetp += 4;
6502 f_msc_hi = VALUE32(tvb, *offsetp);
6503 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_msc_hi, tvb, *offsetp, 4, byte_order);
6504 *offsetp += 4;
6505 f_msc_lo = VALUE32(tvb, *offsetp);
6506 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_msc_lo, tvb, *offsetp, 4, byte_order);
6507 *offsetp += 4;
6508 f_sbc_hi = VALUE32(tvb, *offsetp);
6509 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_sbc_hi, tvb, *offsetp, 4, byte_order);
6510 *offsetp += 4;
6511 f_sbc_lo = VALUE32(tvb, *offsetp);
6512 proto_tree_add_item(t, hf_x11_dri2_WaitSBC_reply_sbc_lo, tvb, *offsetp, 4, byte_order);
6513 *offsetp += 4;
6516 static void dri2SwapInterval(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6518 int f_drawable;
6519 int f_interval;
6520 f_drawable = VALUE32(tvb, *offsetp);
6521 proto_tree_add_item(t, hf_x11_dri2_SwapInterval_drawable, tvb, *offsetp, 4, byte_order);
6522 *offsetp += 4;
6523 f_interval = VALUE32(tvb, *offsetp);
6524 proto_tree_add_item(t, hf_x11_dri2_SwapInterval_interval, tvb, *offsetp, 4, byte_order);
6525 *offsetp += 4;
6528 static void dri2GetParam(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6530 int f_drawable;
6531 int f_param;
6532 f_drawable = VALUE32(tvb, *offsetp);
6533 proto_tree_add_item(t, hf_x11_dri2_GetParam_drawable, tvb, *offsetp, 4, byte_order);
6534 *offsetp += 4;
6535 f_param = VALUE32(tvb, *offsetp);
6536 proto_tree_add_item(t, hf_x11_dri2_GetParam_param, tvb, *offsetp, 4, byte_order);
6537 *offsetp += 4;
6539 static void dri2GetParam_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6541 int f_length, length, sequence_number;
6542 int f_is_param_recognized;
6543 int f_value_hi;
6544 int f_value_lo;
6546 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetParam");
6548 REPLY(reply);
6549 f_is_param_recognized = VALUE8(tvb, *offsetp);
6550 proto_tree_add_item(t, hf_x11_dri2_GetParam_reply_is_param_recognized, tvb, *offsetp, 1, byte_order);
6551 *offsetp += 1;
6552 sequence_number = VALUE16(tvb, *offsetp);
6553 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6554 "sequencenumber: %d (dri2-GetParam)", sequence_number);
6555 *offsetp += 2;
6556 f_length = VALUE32(tvb, *offsetp);
6557 length = f_length * 4 + 32;
6558 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6559 *offsetp += 4;
6560 f_value_hi = VALUE32(tvb, *offsetp);
6561 proto_tree_add_item(t, hf_x11_dri2_GetParam_reply_value_hi, tvb, *offsetp, 4, byte_order);
6562 *offsetp += 4;
6563 f_value_lo = VALUE32(tvb, *offsetp);
6564 proto_tree_add_item(t, hf_x11_dri2_GetParam_reply_value_lo, tvb, *offsetp, 4, byte_order);
6565 *offsetp += 4;
6568 static void dri2BufferSwapComplete(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
6570 int f_event_type;
6571 int f_drawable;
6572 int f_ust_hi;
6573 int f_ust_lo;
6574 int f_msc_hi;
6575 int f_msc_lo;
6576 int f_sbc;
6577 UNUSED(1);
6578 CARD16(event_sequencenumber);
6579 f_event_type = field16(tvb, offsetp, t, hf_x11_dri2_BufferSwapComplete_event_type, byte_order);
6580 UNUSED(2);
6581 f_drawable = VALUE32(tvb, *offsetp);
6582 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_drawable, tvb, *offsetp, 4, byte_order);
6583 *offsetp += 4;
6584 f_ust_hi = VALUE32(tvb, *offsetp);
6585 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_ust_hi, tvb, *offsetp, 4, byte_order);
6586 *offsetp += 4;
6587 f_ust_lo = VALUE32(tvb, *offsetp);
6588 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_ust_lo, tvb, *offsetp, 4, byte_order);
6589 *offsetp += 4;
6590 f_msc_hi = VALUE32(tvb, *offsetp);
6591 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_msc_hi, tvb, *offsetp, 4, byte_order);
6592 *offsetp += 4;
6593 f_msc_lo = VALUE32(tvb, *offsetp);
6594 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_msc_lo, tvb, *offsetp, 4, byte_order);
6595 *offsetp += 4;
6596 f_sbc = VALUE32(tvb, *offsetp);
6597 proto_tree_add_item(t, hf_x11_dri2_BufferSwapComplete_sbc, tvb, *offsetp, 4, byte_order);
6598 *offsetp += 4;
6601 static void dri2InvalidateBuffers(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
6603 int f_drawable;
6604 UNUSED(1);
6605 CARD16(event_sequencenumber);
6606 f_drawable = VALUE32(tvb, *offsetp);
6607 proto_tree_add_item(t, hf_x11_dri2_InvalidateBuffers_drawable, tvb, *offsetp, 4, byte_order);
6608 *offsetp += 4;
6610 static const value_string dri2_extension_minor[] = {
6611 { 0, "QueryVersion" },
6612 { 1, "Connect" },
6613 { 2, "Authenticate" },
6614 { 3, "CreateDrawable" },
6615 { 4, "DestroyDrawable" },
6616 { 5, "GetBuffers" },
6617 { 6, "CopyRegion" },
6618 { 7, "GetBuffersWithFormat" },
6619 { 8, "SwapBuffers" },
6620 { 9, "GetMSC" },
6621 { 10, "WaitMSC" },
6622 { 11, "WaitSBC" },
6623 { 12, "SwapInterval" },
6624 { 13, "GetParam" },
6625 { 0, NULL }
6627 const x11_event_info dri2_events[] = {
6628 { "dri2-BufferSwapComplete", dri2BufferSwapComplete },
6629 { "dri2-InvalidateBuffers", dri2InvalidateBuffers },
6630 { NULL, NULL }
6632 static x11_reply_info dri2_replies[] = {
6633 { 0, dri2QueryVersion_Reply },
6634 { 1, dri2Connect_Reply },
6635 { 2, dri2Authenticate_Reply },
6636 { 5, dri2GetBuffers_Reply },
6637 { 6, dri2CopyRegion_Reply },
6638 { 7, dri2GetBuffersWithFormat_Reply },
6639 { 8, dri2SwapBuffers_Reply },
6640 { 9, dri2GetMSC_Reply },
6641 { 10, dri2WaitMSC_Reply },
6642 { 11, dri2WaitSBC_Reply },
6643 { 13, dri2GetParam_Reply },
6644 { 0, NULL }
6647 static void dispatch_dri2(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6649 int minor, length;
6650 minor = CARD8(dri2_extension_minor);
6651 length = REQUEST_LENGTH();
6653 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
6654 val_to_str(minor, dri2_extension_minor,
6655 "<Unknown opcode %d>"));
6656 switch (minor) {
6657 case 0:
6658 dri2QueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
6659 break;
6660 case 1:
6661 dri2Connect(tvb, pinfo, offsetp, t, byte_order, length);
6662 break;
6663 case 2:
6664 dri2Authenticate(tvb, pinfo, offsetp, t, byte_order, length);
6665 break;
6666 case 3:
6667 dri2CreateDrawable(tvb, pinfo, offsetp, t, byte_order, length);
6668 break;
6669 case 4:
6670 dri2DestroyDrawable(tvb, pinfo, offsetp, t, byte_order, length);
6671 break;
6672 case 5:
6673 dri2GetBuffers(tvb, pinfo, offsetp, t, byte_order, length);
6674 break;
6675 case 6:
6676 dri2CopyRegion(tvb, pinfo, offsetp, t, byte_order, length);
6677 break;
6678 case 7:
6679 dri2GetBuffersWithFormat(tvb, pinfo, offsetp, t, byte_order, length);
6680 break;
6681 case 8:
6682 dri2SwapBuffers(tvb, pinfo, offsetp, t, byte_order, length);
6683 break;
6684 case 9:
6685 dri2GetMSC(tvb, pinfo, offsetp, t, byte_order, length);
6686 break;
6687 case 10:
6688 dri2WaitMSC(tvb, pinfo, offsetp, t, byte_order, length);
6689 break;
6690 case 11:
6691 dri2WaitSBC(tvb, pinfo, offsetp, t, byte_order, length);
6692 break;
6693 case 12:
6694 dri2SwapInterval(tvb, pinfo, offsetp, t, byte_order, length);
6695 break;
6696 case 13:
6697 dri2GetParam(tvb, pinfo, offsetp, t, byte_order, length);
6698 break;
6699 /* No need for a default case here, since Unknown is printed above,
6700 and UNDECODED() is taken care of by dissect_x11_request */
6704 static void register_dri2(void)
6706 set_handler("DRI2", dispatch_dri2, dri2_errors, dri2_events, dri2_replies);
6709 static void geQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6711 int f_client_major_version;
6712 int f_client_minor_version;
6713 f_client_major_version = VALUE16(tvb, *offsetp);
6714 proto_tree_add_item(t, hf_x11_ge_QueryVersion_client_major_version, tvb, *offsetp, 2, byte_order);
6715 *offsetp += 2;
6716 f_client_minor_version = VALUE16(tvb, *offsetp);
6717 proto_tree_add_item(t, hf_x11_ge_QueryVersion_client_minor_version, tvb, *offsetp, 2, byte_order);
6718 *offsetp += 2;
6720 static void geQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6722 int f_length, length, sequence_number;
6723 int f_major_version;
6724 int f_minor_version;
6726 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
6728 REPLY(reply);
6729 UNUSED(1);
6730 sequence_number = VALUE16(tvb, *offsetp);
6731 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6732 "sequencenumber: %d (ge-QueryVersion)", sequence_number);
6733 *offsetp += 2;
6734 f_length = VALUE32(tvb, *offsetp);
6735 length = f_length * 4 + 32;
6736 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6737 *offsetp += 4;
6738 f_major_version = VALUE16(tvb, *offsetp);
6739 proto_tree_add_item(t, hf_x11_ge_QueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
6740 *offsetp += 2;
6741 f_minor_version = VALUE16(tvb, *offsetp);
6742 proto_tree_add_item(t, hf_x11_ge_QueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
6743 *offsetp += 2;
6744 UNUSED(20);
6746 static const value_string ge_extension_minor[] = {
6747 { 0, "QueryVersion" },
6748 { 0, NULL }
6750 const x11_event_info ge_events[] = {
6751 { NULL, NULL }
6753 static x11_reply_info ge_replies[] = {
6754 { 0, geQueryVersion_Reply },
6755 { 0, NULL }
6758 static void dispatch_ge(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6760 int minor, length;
6761 minor = CARD8(ge_extension_minor);
6762 length = REQUEST_LENGTH();
6764 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
6765 val_to_str(minor, ge_extension_minor,
6766 "<Unknown opcode %d>"));
6767 switch (minor) {
6768 case 0:
6769 geQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
6770 break;
6771 /* No need for a default case here, since Unknown is printed above,
6772 and UNDECODED() is taken care of by dissect_x11_request */
6776 static void register_ge(void)
6778 set_handler("Generic Event Extension", dispatch_ge, ge_errors, ge_events, ge_replies);
6781 static void glxPbufferClobber(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
6783 int f_event_type;
6784 int f_draw_type;
6785 int f_drawable;
6786 int f_b_mask;
6787 int f_aux_buffer;
6788 int f_x;
6789 int f_y;
6790 int f_width;
6791 int f_height;
6792 int f_count;
6793 UNUSED(1);
6794 CARD16(event_sequencenumber);
6795 f_event_type = VALUE16(tvb, *offsetp);
6796 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_event_type, tvb, *offsetp, 2, byte_order);
6797 *offsetp += 2;
6798 f_draw_type = VALUE16(tvb, *offsetp);
6799 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_draw_type, tvb, *offsetp, 2, byte_order);
6800 *offsetp += 2;
6801 f_drawable = VALUE32(tvb, *offsetp);
6802 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_drawable, tvb, *offsetp, 4, byte_order);
6803 *offsetp += 4;
6804 f_b_mask = VALUE32(tvb, *offsetp);
6805 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_b_mask, tvb, *offsetp, 4, byte_order);
6806 *offsetp += 4;
6807 f_aux_buffer = VALUE16(tvb, *offsetp);
6808 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_aux_buffer, tvb, *offsetp, 2, byte_order);
6809 *offsetp += 2;
6810 f_x = VALUE16(tvb, *offsetp);
6811 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_x, tvb, *offsetp, 2, byte_order);
6812 *offsetp += 2;
6813 f_y = VALUE16(tvb, *offsetp);
6814 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_y, tvb, *offsetp, 2, byte_order);
6815 *offsetp += 2;
6816 f_width = VALUE16(tvb, *offsetp);
6817 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_width, tvb, *offsetp, 2, byte_order);
6818 *offsetp += 2;
6819 f_height = VALUE16(tvb, *offsetp);
6820 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_height, tvb, *offsetp, 2, byte_order);
6821 *offsetp += 2;
6822 f_count = VALUE16(tvb, *offsetp);
6823 proto_tree_add_item(t, hf_x11_glx_PbufferClobber_count, tvb, *offsetp, 2, byte_order);
6824 *offsetp += 2;
6825 UNUSED(4);
6828 static void glxRender(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6830 int f_context_tag;
6831 f_context_tag = VALUE32(tvb, *offsetp);
6832 proto_tree_add_item(t, hf_x11_glx_Render_context_tag, tvb, *offsetp, 4, byte_order);
6833 *offsetp += 4;
6834 dispatch_glx_render(tvb, pinfo, offsetp, t, byte_order, (length - 8));
6837 static void glxRenderLarge(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6839 int f_context_tag;
6840 int f_request_num;
6841 int f_request_total;
6842 int f_data_len;
6843 f_context_tag = VALUE32(tvb, *offsetp);
6844 proto_tree_add_item(t, hf_x11_glx_RenderLarge_context_tag, tvb, *offsetp, 4, byte_order);
6845 *offsetp += 4;
6846 f_request_num = VALUE16(tvb, *offsetp);
6847 proto_tree_add_item(t, hf_x11_glx_RenderLarge_request_num, tvb, *offsetp, 2, byte_order);
6848 *offsetp += 2;
6849 f_request_total = VALUE16(tvb, *offsetp);
6850 proto_tree_add_item(t, hf_x11_glx_RenderLarge_request_total, tvb, *offsetp, 2, byte_order);
6851 *offsetp += 2;
6852 f_data_len = VALUE32(tvb, *offsetp);
6853 proto_tree_add_item(t, hf_x11_glx_RenderLarge_data_len, tvb, *offsetp, 4, byte_order);
6854 *offsetp += 4;
6855 listOfByte(tvb, offsetp, t, hf_x11_glx_RenderLarge_data, f_data_len, byte_order);
6856 length -= f_data_len * 1;
6859 static void glxCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6861 int f_context;
6862 int f_visual;
6863 int f_screen;
6864 int f_share_list;
6865 int f_is_direct;
6866 f_context = VALUE32(tvb, *offsetp);
6867 proto_tree_add_item(t, hf_x11_glx_CreateContext_context, tvb, *offsetp, 4, byte_order);
6868 *offsetp += 4;
6869 f_visual = VALUE32(tvb, *offsetp);
6870 proto_tree_add_item(t, hf_x11_glx_CreateContext_visual, tvb, *offsetp, 4, byte_order);
6871 *offsetp += 4;
6872 f_screen = VALUE32(tvb, *offsetp);
6873 proto_tree_add_item(t, hf_x11_glx_CreateContext_screen, tvb, *offsetp, 4, byte_order);
6874 *offsetp += 4;
6875 f_share_list = VALUE32(tvb, *offsetp);
6876 proto_tree_add_item(t, hf_x11_glx_CreateContext_share_list, tvb, *offsetp, 4, byte_order);
6877 *offsetp += 4;
6878 f_is_direct = VALUE8(tvb, *offsetp);
6879 proto_tree_add_item(t, hf_x11_glx_CreateContext_is_direct, tvb, *offsetp, 1, byte_order);
6880 *offsetp += 1;
6881 UNUSED(3);
6884 static void glxDestroyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6886 int f_context;
6887 f_context = VALUE32(tvb, *offsetp);
6888 proto_tree_add_item(t, hf_x11_glx_DestroyContext_context, tvb, *offsetp, 4, byte_order);
6889 *offsetp += 4;
6892 static void glxMakeCurrent(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6894 int f_drawable;
6895 int f_context;
6896 int f_old_context_tag;
6897 f_drawable = VALUE32(tvb, *offsetp);
6898 proto_tree_add_item(t, hf_x11_glx_MakeCurrent_drawable, tvb, *offsetp, 4, byte_order);
6899 *offsetp += 4;
6900 f_context = VALUE32(tvb, *offsetp);
6901 proto_tree_add_item(t, hf_x11_glx_MakeCurrent_context, tvb, *offsetp, 4, byte_order);
6902 *offsetp += 4;
6903 f_old_context_tag = VALUE32(tvb, *offsetp);
6904 proto_tree_add_item(t, hf_x11_glx_MakeCurrent_old_context_tag, tvb, *offsetp, 4, byte_order);
6905 *offsetp += 4;
6907 static void glxMakeCurrent_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6909 int f_length, length, sequence_number;
6910 int f_context_tag;
6912 col_append_fstr(pinfo->cinfo, COL_INFO, "-MakeCurrent");
6914 REPLY(reply);
6915 UNUSED(1);
6916 sequence_number = VALUE16(tvb, *offsetp);
6917 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6918 "sequencenumber: %d (glx-MakeCurrent)", sequence_number);
6919 *offsetp += 2;
6920 f_length = VALUE32(tvb, *offsetp);
6921 length = f_length * 4 + 32;
6922 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6923 *offsetp += 4;
6924 f_context_tag = VALUE32(tvb, *offsetp);
6925 proto_tree_add_item(t, hf_x11_glx_MakeCurrent_reply_context_tag, tvb, *offsetp, 4, byte_order);
6926 *offsetp += 4;
6927 UNUSED(20);
6930 static void glxIsDirect(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6932 int f_context;
6933 f_context = VALUE32(tvb, *offsetp);
6934 proto_tree_add_item(t, hf_x11_glx_IsDirect_context, tvb, *offsetp, 4, byte_order);
6935 *offsetp += 4;
6937 static void glxIsDirect_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6939 int f_length, length, sequence_number;
6940 int f_is_direct;
6942 col_append_fstr(pinfo->cinfo, COL_INFO, "-IsDirect");
6944 REPLY(reply);
6945 UNUSED(1);
6946 sequence_number = VALUE16(tvb, *offsetp);
6947 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6948 "sequencenumber: %d (glx-IsDirect)", sequence_number);
6949 *offsetp += 2;
6950 f_length = VALUE32(tvb, *offsetp);
6951 length = f_length * 4 + 32;
6952 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6953 *offsetp += 4;
6954 f_is_direct = VALUE8(tvb, *offsetp);
6955 proto_tree_add_item(t, hf_x11_glx_IsDirect_reply_is_direct, tvb, *offsetp, 1, byte_order);
6956 *offsetp += 1;
6957 UNUSED(23);
6960 static void glxQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
6962 int f_major_version;
6963 int f_minor_version;
6964 f_major_version = VALUE32(tvb, *offsetp);
6965 proto_tree_add_item(t, hf_x11_glx_QueryVersion_major_version, tvb, *offsetp, 4, byte_order);
6966 *offsetp += 4;
6967 f_minor_version = VALUE32(tvb, *offsetp);
6968 proto_tree_add_item(t, hf_x11_glx_QueryVersion_minor_version, tvb, *offsetp, 4, byte_order);
6969 *offsetp += 4;
6971 static void glxQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
6973 int f_length, length, sequence_number;
6974 int f_major_version;
6975 int f_minor_version;
6977 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
6979 REPLY(reply);
6980 UNUSED(1);
6981 sequence_number = VALUE16(tvb, *offsetp);
6982 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
6983 "sequencenumber: %d (glx-QueryVersion)", sequence_number);
6984 *offsetp += 2;
6985 f_length = VALUE32(tvb, *offsetp);
6986 length = f_length * 4 + 32;
6987 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
6988 *offsetp += 4;
6989 f_major_version = VALUE32(tvb, *offsetp);
6990 proto_tree_add_item(t, hf_x11_glx_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
6991 *offsetp += 4;
6992 f_minor_version = VALUE32(tvb, *offsetp);
6993 proto_tree_add_item(t, hf_x11_glx_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
6994 *offsetp += 4;
6995 UNUSED(16);
6998 static void glxWaitGL(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7000 int f_context_tag;
7001 f_context_tag = VALUE32(tvb, *offsetp);
7002 proto_tree_add_item(t, hf_x11_glx_WaitGL_context_tag, tvb, *offsetp, 4, byte_order);
7003 *offsetp += 4;
7006 static void glxWaitX(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7008 int f_context_tag;
7009 f_context_tag = VALUE32(tvb, *offsetp);
7010 proto_tree_add_item(t, hf_x11_glx_WaitX_context_tag, tvb, *offsetp, 4, byte_order);
7011 *offsetp += 4;
7014 static void glxCopyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7016 int f_src;
7017 int f_dest;
7018 int f_mask;
7019 int f_src_context_tag;
7020 f_src = VALUE32(tvb, *offsetp);
7021 proto_tree_add_item(t, hf_x11_glx_CopyContext_src, tvb, *offsetp, 4, byte_order);
7022 *offsetp += 4;
7023 f_dest = VALUE32(tvb, *offsetp);
7024 proto_tree_add_item(t, hf_x11_glx_CopyContext_dest, tvb, *offsetp, 4, byte_order);
7025 *offsetp += 4;
7026 f_mask = VALUE32(tvb, *offsetp);
7027 proto_tree_add_item(t, hf_x11_glx_CopyContext_mask, tvb, *offsetp, 4, byte_order);
7028 *offsetp += 4;
7029 f_src_context_tag = VALUE32(tvb, *offsetp);
7030 proto_tree_add_item(t, hf_x11_glx_CopyContext_src_context_tag, tvb, *offsetp, 4, byte_order);
7031 *offsetp += 4;
7034 static void glxSwapBuffers(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7036 int f_context_tag;
7037 int f_drawable;
7038 f_context_tag = VALUE32(tvb, *offsetp);
7039 proto_tree_add_item(t, hf_x11_glx_SwapBuffers_context_tag, tvb, *offsetp, 4, byte_order);
7040 *offsetp += 4;
7041 f_drawable = VALUE32(tvb, *offsetp);
7042 proto_tree_add_item(t, hf_x11_glx_SwapBuffers_drawable, tvb, *offsetp, 4, byte_order);
7043 *offsetp += 4;
7046 static void glxUseXFont(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7048 int f_context_tag;
7049 int f_font;
7050 int f_first;
7051 int f_count;
7052 int f_list_base;
7053 f_context_tag = VALUE32(tvb, *offsetp);
7054 proto_tree_add_item(t, hf_x11_glx_UseXFont_context_tag, tvb, *offsetp, 4, byte_order);
7055 *offsetp += 4;
7056 f_font = VALUE32(tvb, *offsetp);
7057 proto_tree_add_item(t, hf_x11_glx_UseXFont_font, tvb, *offsetp, 4, byte_order);
7058 *offsetp += 4;
7059 f_first = VALUE32(tvb, *offsetp);
7060 proto_tree_add_item(t, hf_x11_glx_UseXFont_first, tvb, *offsetp, 4, byte_order);
7061 *offsetp += 4;
7062 f_count = VALUE32(tvb, *offsetp);
7063 proto_tree_add_item(t, hf_x11_glx_UseXFont_count, tvb, *offsetp, 4, byte_order);
7064 *offsetp += 4;
7065 f_list_base = VALUE32(tvb, *offsetp);
7066 proto_tree_add_item(t, hf_x11_glx_UseXFont_list_base, tvb, *offsetp, 4, byte_order);
7067 *offsetp += 4;
7070 static void glxCreateGLXPixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7072 int f_screen;
7073 int f_visual;
7074 int f_pixmap;
7075 int f_glx_pixmap;
7076 f_screen = VALUE32(tvb, *offsetp);
7077 proto_tree_add_item(t, hf_x11_glx_CreateGLXPixmap_screen, tvb, *offsetp, 4, byte_order);
7078 *offsetp += 4;
7079 f_visual = VALUE32(tvb, *offsetp);
7080 proto_tree_add_item(t, hf_x11_glx_CreateGLXPixmap_visual, tvb, *offsetp, 4, byte_order);
7081 *offsetp += 4;
7082 f_pixmap = VALUE32(tvb, *offsetp);
7083 proto_tree_add_item(t, hf_x11_glx_CreateGLXPixmap_pixmap, tvb, *offsetp, 4, byte_order);
7084 *offsetp += 4;
7085 f_glx_pixmap = VALUE32(tvb, *offsetp);
7086 proto_tree_add_item(t, hf_x11_glx_CreateGLXPixmap_glx_pixmap, tvb, *offsetp, 4, byte_order);
7087 *offsetp += 4;
7090 static void glxGetVisualConfigs(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7092 int f_screen;
7093 f_screen = VALUE32(tvb, *offsetp);
7094 proto_tree_add_item(t, hf_x11_glx_GetVisualConfigs_screen, tvb, *offsetp, 4, byte_order);
7095 *offsetp += 4;
7097 static void glxGetVisualConfigs_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7099 int f_length, length, sequence_number;
7100 int f_num_visuals;
7101 int f_num_properties;
7103 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetVisualConfigs");
7105 REPLY(reply);
7106 UNUSED(1);
7107 sequence_number = VALUE16(tvb, *offsetp);
7108 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7109 "sequencenumber: %d (glx-GetVisualConfigs)", sequence_number);
7110 *offsetp += 2;
7111 f_length = VALUE32(tvb, *offsetp);
7112 length = f_length * 4 + 32;
7113 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7114 *offsetp += 4;
7115 f_num_visuals = VALUE32(tvb, *offsetp);
7116 proto_tree_add_item(t, hf_x11_glx_GetVisualConfigs_reply_num_visuals, tvb, *offsetp, 4, byte_order);
7117 *offsetp += 4;
7118 f_num_properties = VALUE32(tvb, *offsetp);
7119 proto_tree_add_item(t, hf_x11_glx_GetVisualConfigs_reply_num_properties, tvb, *offsetp, 4, byte_order);
7120 *offsetp += 4;
7121 UNUSED(16);
7122 listOfCard32(tvb, offsetp, t, hf_x11_glx_GetVisualConfigs_reply_property_list, hf_x11_glx_GetVisualConfigs_reply_property_list_item, f_length, byte_order);
7125 static void glxDestroyGLXPixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7127 int f_glx_pixmap;
7128 f_glx_pixmap = VALUE32(tvb, *offsetp);
7129 proto_tree_add_item(t, hf_x11_glx_DestroyGLXPixmap_glx_pixmap, tvb, *offsetp, 4, byte_order);
7130 *offsetp += 4;
7133 static void glxVendorPrivate(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7135 int f_vendor_code;
7136 int f_context_tag;
7137 f_vendor_code = VALUE32(tvb, *offsetp);
7138 proto_tree_add_item(t, hf_x11_glx_VendorPrivate_vendor_code, tvb, *offsetp, 4, byte_order);
7139 *offsetp += 4;
7140 f_context_tag = VALUE32(tvb, *offsetp);
7141 proto_tree_add_item(t, hf_x11_glx_VendorPrivate_context_tag, tvb, *offsetp, 4, byte_order);
7142 *offsetp += 4;
7143 listOfByte(tvb, offsetp, t, hf_x11_glx_VendorPrivate_data, (length - 12) / 1, byte_order);
7146 static void glxVendorPrivateWithReply(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7148 int f_vendor_code;
7149 int f_context_tag;
7150 f_vendor_code = VALUE32(tvb, *offsetp);
7151 proto_tree_add_item(t, hf_x11_glx_VendorPrivateWithReply_vendor_code, tvb, *offsetp, 4, byte_order);
7152 *offsetp += 4;
7153 f_context_tag = VALUE32(tvb, *offsetp);
7154 proto_tree_add_item(t, hf_x11_glx_VendorPrivateWithReply_context_tag, tvb, *offsetp, 4, byte_order);
7155 *offsetp += 4;
7156 listOfByte(tvb, offsetp, t, hf_x11_glx_VendorPrivateWithReply_data, (length - 12) / 1, byte_order);
7158 static void glxVendorPrivateWithReply_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7160 int f_length, length, sequence_number;
7161 int f_retval;
7163 col_append_fstr(pinfo->cinfo, COL_INFO, "-VendorPrivateWithReply");
7165 REPLY(reply);
7166 UNUSED(1);
7167 sequence_number = VALUE16(tvb, *offsetp);
7168 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7169 "sequencenumber: %d (glx-VendorPrivateWithReply)", sequence_number);
7170 *offsetp += 2;
7171 f_length = VALUE32(tvb, *offsetp);
7172 length = f_length * 4 + 32;
7173 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7174 *offsetp += 4;
7175 f_retval = VALUE32(tvb, *offsetp);
7176 proto_tree_add_item(t, hf_x11_glx_VendorPrivateWithReply_reply_retval, tvb, *offsetp, 4, byte_order);
7177 *offsetp += 4;
7178 listOfByte(tvb, offsetp, t, hf_x11_glx_VendorPrivateWithReply_reply_data1, 24, byte_order);
7179 listOfByte(tvb, offsetp, t, hf_x11_glx_VendorPrivateWithReply_reply_data2, (f_length * 4), byte_order);
7182 static void glxQueryExtensionsString(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7184 int f_screen;
7185 f_screen = VALUE32(tvb, *offsetp);
7186 proto_tree_add_item(t, hf_x11_glx_QueryExtensionsString_screen, tvb, *offsetp, 4, byte_order);
7187 *offsetp += 4;
7189 static void glxQueryExtensionsString_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7191 int f_length, length, sequence_number;
7192 int f_n;
7194 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryExtensionsString");
7196 REPLY(reply);
7197 UNUSED(1);
7198 sequence_number = VALUE16(tvb, *offsetp);
7199 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7200 "sequencenumber: %d (glx-QueryExtensionsString)", sequence_number);
7201 *offsetp += 2;
7202 f_length = VALUE32(tvb, *offsetp);
7203 length = f_length * 4 + 32;
7204 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7205 *offsetp += 4;
7206 UNUSED(4);
7207 f_n = VALUE32(tvb, *offsetp);
7208 proto_tree_add_item(t, hf_x11_glx_QueryExtensionsString_reply_n, tvb, *offsetp, 4, byte_order);
7209 *offsetp += 4;
7210 UNUSED(16);
7213 static void glxQueryServerString(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7215 int f_screen;
7216 int f_name;
7217 f_screen = VALUE32(tvb, *offsetp);
7218 proto_tree_add_item(t, hf_x11_glx_QueryServerString_screen, tvb, *offsetp, 4, byte_order);
7219 *offsetp += 4;
7220 f_name = VALUE32(tvb, *offsetp);
7221 proto_tree_add_item(t, hf_x11_glx_QueryServerString_name, tvb, *offsetp, 4, byte_order);
7222 *offsetp += 4;
7224 static void glxQueryServerString_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7226 int f_length, length, sequence_number;
7227 int f_str_len;
7229 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryServerString");
7231 REPLY(reply);
7232 UNUSED(1);
7233 sequence_number = VALUE16(tvb, *offsetp);
7234 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7235 "sequencenumber: %d (glx-QueryServerString)", sequence_number);
7236 *offsetp += 2;
7237 f_length = VALUE32(tvb, *offsetp);
7238 length = f_length * 4 + 32;
7239 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7240 *offsetp += 4;
7241 UNUSED(4);
7242 f_str_len = VALUE32(tvb, *offsetp);
7243 proto_tree_add_item(t, hf_x11_glx_QueryServerString_reply_str_len, tvb, *offsetp, 4, byte_order);
7244 *offsetp += 4;
7245 UNUSED(16);
7246 listOfByte(tvb, offsetp, t, hf_x11_glx_QueryServerString_reply_string, f_str_len, byte_order);
7249 static void glxClientInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7251 int f_major_version;
7252 int f_minor_version;
7253 int f_str_len;
7254 f_major_version = VALUE32(tvb, *offsetp);
7255 proto_tree_add_item(t, hf_x11_glx_ClientInfo_major_version, tvb, *offsetp, 4, byte_order);
7256 *offsetp += 4;
7257 f_minor_version = VALUE32(tvb, *offsetp);
7258 proto_tree_add_item(t, hf_x11_glx_ClientInfo_minor_version, tvb, *offsetp, 4, byte_order);
7259 *offsetp += 4;
7260 f_str_len = VALUE32(tvb, *offsetp);
7261 proto_tree_add_item(t, hf_x11_glx_ClientInfo_str_len, tvb, *offsetp, 4, byte_order);
7262 *offsetp += 4;
7263 listOfByte(tvb, offsetp, t, hf_x11_glx_ClientInfo_string, f_str_len, byte_order);
7264 length -= f_str_len * 1;
7267 static void glxGetFBConfigs(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7269 int f_screen;
7270 f_screen = VALUE32(tvb, *offsetp);
7271 proto_tree_add_item(t, hf_x11_glx_GetFBConfigs_screen, tvb, *offsetp, 4, byte_order);
7272 *offsetp += 4;
7274 static void glxGetFBConfigs_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7276 int f_length, length, sequence_number;
7277 int f_num_FB_configs;
7278 int f_num_properties;
7280 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetFBConfigs");
7282 REPLY(reply);
7283 UNUSED(1);
7284 sequence_number = VALUE16(tvb, *offsetp);
7285 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7286 "sequencenumber: %d (glx-GetFBConfigs)", sequence_number);
7287 *offsetp += 2;
7288 f_length = VALUE32(tvb, *offsetp);
7289 length = f_length * 4 + 32;
7290 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7291 *offsetp += 4;
7292 f_num_FB_configs = VALUE32(tvb, *offsetp);
7293 proto_tree_add_item(t, hf_x11_glx_GetFBConfigs_reply_num_FB_configs, tvb, *offsetp, 4, byte_order);
7294 *offsetp += 4;
7295 f_num_properties = VALUE32(tvb, *offsetp);
7296 proto_tree_add_item(t, hf_x11_glx_GetFBConfigs_reply_num_properties, tvb, *offsetp, 4, byte_order);
7297 *offsetp += 4;
7298 UNUSED(16);
7299 listOfCard32(tvb, offsetp, t, hf_x11_glx_GetFBConfigs_reply_property_list, hf_x11_glx_GetFBConfigs_reply_property_list_item, f_length, byte_order);
7302 static void glxCreatePixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7304 int f_screen;
7305 int f_fbconfig;
7306 int f_pixmap;
7307 int f_glx_pixmap;
7308 int f_num_attribs;
7309 f_screen = VALUE32(tvb, *offsetp);
7310 proto_tree_add_item(t, hf_x11_glx_CreatePixmap_screen, tvb, *offsetp, 4, byte_order);
7311 *offsetp += 4;
7312 f_fbconfig = VALUE32(tvb, *offsetp);
7313 proto_tree_add_item(t, hf_x11_glx_CreatePixmap_fbconfig, tvb, *offsetp, 4, byte_order);
7314 *offsetp += 4;
7315 f_pixmap = VALUE32(tvb, *offsetp);
7316 proto_tree_add_item(t, hf_x11_glx_CreatePixmap_pixmap, tvb, *offsetp, 4, byte_order);
7317 *offsetp += 4;
7318 f_glx_pixmap = VALUE32(tvb, *offsetp);
7319 proto_tree_add_item(t, hf_x11_glx_CreatePixmap_glx_pixmap, tvb, *offsetp, 4, byte_order);
7320 *offsetp += 4;
7321 f_num_attribs = VALUE32(tvb, *offsetp);
7322 proto_tree_add_item(t, hf_x11_glx_CreatePixmap_num_attribs, tvb, *offsetp, 4, byte_order);
7323 *offsetp += 4;
7324 listOfCard32(tvb, offsetp, t, hf_x11_glx_CreatePixmap_attribs, hf_x11_glx_CreatePixmap_attribs_item, (f_num_attribs * 2), byte_order);
7325 length -= (f_num_attribs * 2) * 4;
7328 static void glxDestroyPixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7330 int f_glx_pixmap;
7331 f_glx_pixmap = VALUE32(tvb, *offsetp);
7332 proto_tree_add_item(t, hf_x11_glx_DestroyPixmap_glx_pixmap, tvb, *offsetp, 4, byte_order);
7333 *offsetp += 4;
7336 static void glxCreateNewContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7338 int f_context;
7339 int f_fbconfig;
7340 int f_screen;
7341 int f_render_type;
7342 int f_share_list;
7343 int f_is_direct;
7344 f_context = VALUE32(tvb, *offsetp);
7345 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_context, tvb, *offsetp, 4, byte_order);
7346 *offsetp += 4;
7347 f_fbconfig = VALUE32(tvb, *offsetp);
7348 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_fbconfig, tvb, *offsetp, 4, byte_order);
7349 *offsetp += 4;
7350 f_screen = VALUE32(tvb, *offsetp);
7351 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_screen, tvb, *offsetp, 4, byte_order);
7352 *offsetp += 4;
7353 f_render_type = VALUE32(tvb, *offsetp);
7354 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_render_type, tvb, *offsetp, 4, byte_order);
7355 *offsetp += 4;
7356 f_share_list = VALUE32(tvb, *offsetp);
7357 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_share_list, tvb, *offsetp, 4, byte_order);
7358 *offsetp += 4;
7359 f_is_direct = VALUE8(tvb, *offsetp);
7360 proto_tree_add_item(t, hf_x11_glx_CreateNewContext_is_direct, tvb, *offsetp, 1, byte_order);
7361 *offsetp += 1;
7362 UNUSED(3);
7365 static void glxQueryContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7367 int f_context;
7368 f_context = VALUE32(tvb, *offsetp);
7369 proto_tree_add_item(t, hf_x11_glx_QueryContext_context, tvb, *offsetp, 4, byte_order);
7370 *offsetp += 4;
7372 static void glxQueryContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7374 int f_length, length, sequence_number;
7375 int f_num_attribs;
7377 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryContext");
7379 REPLY(reply);
7380 UNUSED(1);
7381 sequence_number = VALUE16(tvb, *offsetp);
7382 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7383 "sequencenumber: %d (glx-QueryContext)", sequence_number);
7384 *offsetp += 2;
7385 f_length = VALUE32(tvb, *offsetp);
7386 length = f_length * 4 + 32;
7387 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7388 *offsetp += 4;
7389 f_num_attribs = VALUE32(tvb, *offsetp);
7390 proto_tree_add_item(t, hf_x11_glx_QueryContext_reply_num_attribs, tvb, *offsetp, 4, byte_order);
7391 *offsetp += 4;
7392 UNUSED(20);
7393 listOfCard32(tvb, offsetp, t, hf_x11_glx_QueryContext_reply_attribs, hf_x11_glx_QueryContext_reply_attribs_item, (f_num_attribs * 2), byte_order);
7396 static void glxMakeContextCurrent(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7398 int f_old_context_tag;
7399 int f_drawable;
7400 int f_read_drawable;
7401 int f_context;
7402 f_old_context_tag = VALUE32(tvb, *offsetp);
7403 proto_tree_add_item(t, hf_x11_glx_MakeContextCurrent_old_context_tag, tvb, *offsetp, 4, byte_order);
7404 *offsetp += 4;
7405 f_drawable = VALUE32(tvb, *offsetp);
7406 proto_tree_add_item(t, hf_x11_glx_MakeContextCurrent_drawable, tvb, *offsetp, 4, byte_order);
7407 *offsetp += 4;
7408 f_read_drawable = VALUE32(tvb, *offsetp);
7409 proto_tree_add_item(t, hf_x11_glx_MakeContextCurrent_read_drawable, tvb, *offsetp, 4, byte_order);
7410 *offsetp += 4;
7411 f_context = VALUE32(tvb, *offsetp);
7412 proto_tree_add_item(t, hf_x11_glx_MakeContextCurrent_context, tvb, *offsetp, 4, byte_order);
7413 *offsetp += 4;
7415 static void glxMakeContextCurrent_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7417 int f_length, length, sequence_number;
7418 int f_context_tag;
7420 col_append_fstr(pinfo->cinfo, COL_INFO, "-MakeContextCurrent");
7422 REPLY(reply);
7423 UNUSED(1);
7424 sequence_number = VALUE16(tvb, *offsetp);
7425 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7426 "sequencenumber: %d (glx-MakeContextCurrent)", sequence_number);
7427 *offsetp += 2;
7428 f_length = VALUE32(tvb, *offsetp);
7429 length = f_length * 4 + 32;
7430 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7431 *offsetp += 4;
7432 f_context_tag = VALUE32(tvb, *offsetp);
7433 proto_tree_add_item(t, hf_x11_glx_MakeContextCurrent_reply_context_tag, tvb, *offsetp, 4, byte_order);
7434 *offsetp += 4;
7435 UNUSED(20);
7438 static void glxCreatePbuffer(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7440 int f_screen;
7441 int f_fbconfig;
7442 int f_pbuffer;
7443 int f_num_attribs;
7444 f_screen = VALUE32(tvb, *offsetp);
7445 proto_tree_add_item(t, hf_x11_glx_CreatePbuffer_screen, tvb, *offsetp, 4, byte_order);
7446 *offsetp += 4;
7447 f_fbconfig = VALUE32(tvb, *offsetp);
7448 proto_tree_add_item(t, hf_x11_glx_CreatePbuffer_fbconfig, tvb, *offsetp, 4, byte_order);
7449 *offsetp += 4;
7450 f_pbuffer = VALUE32(tvb, *offsetp);
7451 proto_tree_add_item(t, hf_x11_glx_CreatePbuffer_pbuffer, tvb, *offsetp, 4, byte_order);
7452 *offsetp += 4;
7453 f_num_attribs = VALUE32(tvb, *offsetp);
7454 proto_tree_add_item(t, hf_x11_glx_CreatePbuffer_num_attribs, tvb, *offsetp, 4, byte_order);
7455 *offsetp += 4;
7456 listOfCard32(tvb, offsetp, t, hf_x11_glx_CreatePbuffer_attribs, hf_x11_glx_CreatePbuffer_attribs_item, (f_num_attribs * 2), byte_order);
7457 length -= (f_num_attribs * 2) * 4;
7460 static void glxDestroyPbuffer(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7462 int f_pbuffer;
7463 f_pbuffer = VALUE32(tvb, *offsetp);
7464 proto_tree_add_item(t, hf_x11_glx_DestroyPbuffer_pbuffer, tvb, *offsetp, 4, byte_order);
7465 *offsetp += 4;
7468 static void glxGetDrawableAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7470 int f_drawable;
7471 f_drawable = VALUE32(tvb, *offsetp);
7472 proto_tree_add_item(t, hf_x11_glx_GetDrawableAttributes_drawable, tvb, *offsetp, 4, byte_order);
7473 *offsetp += 4;
7475 static void glxGetDrawableAttributes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7477 int f_length, length, sequence_number;
7478 int f_num_attribs;
7480 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDrawableAttributes");
7482 REPLY(reply);
7483 UNUSED(1);
7484 sequence_number = VALUE16(tvb, *offsetp);
7485 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7486 "sequencenumber: %d (glx-GetDrawableAttributes)", sequence_number);
7487 *offsetp += 2;
7488 f_length = VALUE32(tvb, *offsetp);
7489 length = f_length * 4 + 32;
7490 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7491 *offsetp += 4;
7492 f_num_attribs = VALUE32(tvb, *offsetp);
7493 proto_tree_add_item(t, hf_x11_glx_GetDrawableAttributes_reply_num_attribs, tvb, *offsetp, 4, byte_order);
7494 *offsetp += 4;
7495 UNUSED(20);
7496 listOfCard32(tvb, offsetp, t, hf_x11_glx_GetDrawableAttributes_reply_attribs, hf_x11_glx_GetDrawableAttributes_reply_attribs_item, (f_num_attribs * 2), byte_order);
7499 static void glxChangeDrawableAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7501 int f_drawable;
7502 int f_num_attribs;
7503 f_drawable = VALUE32(tvb, *offsetp);
7504 proto_tree_add_item(t, hf_x11_glx_ChangeDrawableAttributes_drawable, tvb, *offsetp, 4, byte_order);
7505 *offsetp += 4;
7506 f_num_attribs = VALUE32(tvb, *offsetp);
7507 proto_tree_add_item(t, hf_x11_glx_ChangeDrawableAttributes_num_attribs, tvb, *offsetp, 4, byte_order);
7508 *offsetp += 4;
7509 listOfCard32(tvb, offsetp, t, hf_x11_glx_ChangeDrawableAttributes_attribs, hf_x11_glx_ChangeDrawableAttributes_attribs_item, (f_num_attribs * 2), byte_order);
7510 length -= (f_num_attribs * 2) * 4;
7513 static void glxCreateWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7515 int f_screen;
7516 int f_fbconfig;
7517 int f_window;
7518 int f_glx_window;
7519 int f_num_attribs;
7520 f_screen = VALUE32(tvb, *offsetp);
7521 proto_tree_add_item(t, hf_x11_glx_CreateWindow_screen, tvb, *offsetp, 4, byte_order);
7522 *offsetp += 4;
7523 f_fbconfig = VALUE32(tvb, *offsetp);
7524 proto_tree_add_item(t, hf_x11_glx_CreateWindow_fbconfig, tvb, *offsetp, 4, byte_order);
7525 *offsetp += 4;
7526 f_window = VALUE32(tvb, *offsetp);
7527 proto_tree_add_item(t, hf_x11_glx_CreateWindow_window, tvb, *offsetp, 4, byte_order);
7528 *offsetp += 4;
7529 f_glx_window = VALUE32(tvb, *offsetp);
7530 proto_tree_add_item(t, hf_x11_glx_CreateWindow_glx_window, tvb, *offsetp, 4, byte_order);
7531 *offsetp += 4;
7532 f_num_attribs = VALUE32(tvb, *offsetp);
7533 proto_tree_add_item(t, hf_x11_glx_CreateWindow_num_attribs, tvb, *offsetp, 4, byte_order);
7534 *offsetp += 4;
7535 listOfCard32(tvb, offsetp, t, hf_x11_glx_CreateWindow_attribs, hf_x11_glx_CreateWindow_attribs_item, (f_num_attribs * 2), byte_order);
7536 length -= (f_num_attribs * 2) * 4;
7539 static void glxDeleteWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7541 int f_glxwindow;
7542 f_glxwindow = VALUE32(tvb, *offsetp);
7543 proto_tree_add_item(t, hf_x11_glx_DeleteWindow_glxwindow, tvb, *offsetp, 4, byte_order);
7544 *offsetp += 4;
7547 static void glxSetClientInfoARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7549 int f_major_version;
7550 int f_minor_version;
7551 int f_num_versions;
7552 int f_gl_str_len;
7553 int f_glx_str_len;
7554 f_major_version = VALUE32(tvb, *offsetp);
7555 proto_tree_add_item(t, hf_x11_glx_SetClientInfoARB_major_version, tvb, *offsetp, 4, byte_order);
7556 *offsetp += 4;
7557 f_minor_version = VALUE32(tvb, *offsetp);
7558 proto_tree_add_item(t, hf_x11_glx_SetClientInfoARB_minor_version, tvb, *offsetp, 4, byte_order);
7559 *offsetp += 4;
7560 f_num_versions = VALUE32(tvb, *offsetp);
7561 proto_tree_add_item(t, hf_x11_glx_SetClientInfoARB_num_versions, tvb, *offsetp, 4, byte_order);
7562 *offsetp += 4;
7563 f_gl_str_len = VALUE32(tvb, *offsetp);
7564 proto_tree_add_item(t, hf_x11_glx_SetClientInfoARB_gl_str_len, tvb, *offsetp, 4, byte_order);
7565 *offsetp += 4;
7566 f_glx_str_len = VALUE32(tvb, *offsetp);
7567 proto_tree_add_item(t, hf_x11_glx_SetClientInfoARB_glx_str_len, tvb, *offsetp, 4, byte_order);
7568 *offsetp += 4;
7569 listOfCard32(tvb, offsetp, t, hf_x11_glx_SetClientInfoARB_gl_versions, hf_x11_glx_SetClientInfoARB_gl_versions_item, (f_num_versions * 2), byte_order);
7570 length -= (f_num_versions * 2) * 4;
7571 listOfByte(tvb, offsetp, t, hf_x11_glx_SetClientInfoARB_gl_extension_string, f_gl_str_len, byte_order);
7572 length -= f_gl_str_len * 1;
7573 listOfByte(tvb, offsetp, t, hf_x11_glx_SetClientInfoARB_glx_extension_string, f_glx_str_len, byte_order);
7574 length -= f_glx_str_len * 1;
7577 static void glxCreateContextAttribsARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7579 int f_context;
7580 int f_fbconfig;
7581 int f_screen;
7582 int f_share_list;
7583 int f_is_direct;
7584 int f_num_attribs;
7585 f_context = VALUE32(tvb, *offsetp);
7586 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_context, tvb, *offsetp, 4, byte_order);
7587 *offsetp += 4;
7588 f_fbconfig = VALUE32(tvb, *offsetp);
7589 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_fbconfig, tvb, *offsetp, 4, byte_order);
7590 *offsetp += 4;
7591 f_screen = VALUE32(tvb, *offsetp);
7592 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_screen, tvb, *offsetp, 4, byte_order);
7593 *offsetp += 4;
7594 f_share_list = VALUE32(tvb, *offsetp);
7595 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_share_list, tvb, *offsetp, 4, byte_order);
7596 *offsetp += 4;
7597 f_is_direct = VALUE8(tvb, *offsetp);
7598 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_is_direct, tvb, *offsetp, 1, byte_order);
7599 *offsetp += 1;
7600 UNUSED(3);
7601 f_num_attribs = VALUE32(tvb, *offsetp);
7602 proto_tree_add_item(t, hf_x11_glx_CreateContextAttribsARB_num_attribs, tvb, *offsetp, 4, byte_order);
7603 *offsetp += 4;
7604 listOfCard32(tvb, offsetp, t, hf_x11_glx_CreateContextAttribsARB_attribs, hf_x11_glx_CreateContextAttribsARB_attribs_item, (f_num_attribs * 2), byte_order);
7605 length -= (f_num_attribs * 2) * 4;
7608 static void glxSetClientInfo2ARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7610 int f_major_version;
7611 int f_minor_version;
7612 int f_num_versions;
7613 int f_gl_str_len;
7614 int f_glx_str_len;
7615 f_major_version = VALUE32(tvb, *offsetp);
7616 proto_tree_add_item(t, hf_x11_glx_SetClientInfo2ARB_major_version, tvb, *offsetp, 4, byte_order);
7617 *offsetp += 4;
7618 f_minor_version = VALUE32(tvb, *offsetp);
7619 proto_tree_add_item(t, hf_x11_glx_SetClientInfo2ARB_minor_version, tvb, *offsetp, 4, byte_order);
7620 *offsetp += 4;
7621 f_num_versions = VALUE32(tvb, *offsetp);
7622 proto_tree_add_item(t, hf_x11_glx_SetClientInfo2ARB_num_versions, tvb, *offsetp, 4, byte_order);
7623 *offsetp += 4;
7624 f_gl_str_len = VALUE32(tvb, *offsetp);
7625 proto_tree_add_item(t, hf_x11_glx_SetClientInfo2ARB_gl_str_len, tvb, *offsetp, 4, byte_order);
7626 *offsetp += 4;
7627 f_glx_str_len = VALUE32(tvb, *offsetp);
7628 proto_tree_add_item(t, hf_x11_glx_SetClientInfo2ARB_glx_str_len, tvb, *offsetp, 4, byte_order);
7629 *offsetp += 4;
7630 listOfCard32(tvb, offsetp, t, hf_x11_glx_SetClientInfo2ARB_gl_versions, hf_x11_glx_SetClientInfo2ARB_gl_versions_item, (f_num_versions * 3), byte_order);
7631 length -= (f_num_versions * 3) * 4;
7632 listOfByte(tvb, offsetp, t, hf_x11_glx_SetClientInfo2ARB_gl_extension_string, f_gl_str_len, byte_order);
7633 length -= f_gl_str_len * 1;
7634 listOfByte(tvb, offsetp, t, hf_x11_glx_SetClientInfo2ARB_glx_extension_string, f_glx_str_len, byte_order);
7635 length -= f_glx_str_len * 1;
7638 static void glxNewList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7640 int f_context_tag;
7641 int f_list;
7642 int f_mode;
7643 f_context_tag = VALUE32(tvb, *offsetp);
7644 proto_tree_add_item(t, hf_x11_glx_NewList_context_tag, tvb, *offsetp, 4, byte_order);
7645 *offsetp += 4;
7646 f_list = VALUE32(tvb, *offsetp);
7647 proto_tree_add_item(t, hf_x11_glx_NewList_list, tvb, *offsetp, 4, byte_order);
7648 *offsetp += 4;
7649 f_mode = VALUE32(tvb, *offsetp);
7650 proto_tree_add_item(t, hf_x11_glx_NewList_mode, tvb, *offsetp, 4, byte_order);
7651 *offsetp += 4;
7654 static void glxEndList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7656 int f_context_tag;
7657 f_context_tag = VALUE32(tvb, *offsetp);
7658 proto_tree_add_item(t, hf_x11_glx_EndList_context_tag, tvb, *offsetp, 4, byte_order);
7659 *offsetp += 4;
7662 static void glxDeleteLists(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7664 int f_context_tag;
7665 int f_list;
7666 int f_range;
7667 f_context_tag = VALUE32(tvb, *offsetp);
7668 proto_tree_add_item(t, hf_x11_glx_DeleteLists_context_tag, tvb, *offsetp, 4, byte_order);
7669 *offsetp += 4;
7670 f_list = VALUE32(tvb, *offsetp);
7671 proto_tree_add_item(t, hf_x11_glx_DeleteLists_list, tvb, *offsetp, 4, byte_order);
7672 *offsetp += 4;
7673 f_range = VALUE32(tvb, *offsetp);
7674 proto_tree_add_item(t, hf_x11_glx_DeleteLists_range, tvb, *offsetp, 4, byte_order);
7675 *offsetp += 4;
7678 static void glxGenLists(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7680 int f_context_tag;
7681 int f_range;
7682 f_context_tag = VALUE32(tvb, *offsetp);
7683 proto_tree_add_item(t, hf_x11_glx_GenLists_context_tag, tvb, *offsetp, 4, byte_order);
7684 *offsetp += 4;
7685 f_range = VALUE32(tvb, *offsetp);
7686 proto_tree_add_item(t, hf_x11_glx_GenLists_range, tvb, *offsetp, 4, byte_order);
7687 *offsetp += 4;
7689 static void glxGenLists_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7691 int f_length, length, sequence_number;
7692 int f_ret_val;
7694 col_append_fstr(pinfo->cinfo, COL_INFO, "-GenLists");
7696 REPLY(reply);
7697 UNUSED(1);
7698 sequence_number = VALUE16(tvb, *offsetp);
7699 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7700 "sequencenumber: %d (glx-GenLists)", sequence_number);
7701 *offsetp += 2;
7702 f_length = VALUE32(tvb, *offsetp);
7703 length = f_length * 4 + 32;
7704 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7705 *offsetp += 4;
7706 f_ret_val = VALUE32(tvb, *offsetp);
7707 proto_tree_add_item(t, hf_x11_glx_GenLists_reply_ret_val, tvb, *offsetp, 4, byte_order);
7708 *offsetp += 4;
7711 static void glxFeedbackBuffer(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7713 int f_context_tag;
7714 int f_size;
7715 int f_type;
7716 f_context_tag = VALUE32(tvb, *offsetp);
7717 proto_tree_add_item(t, hf_x11_glx_FeedbackBuffer_context_tag, tvb, *offsetp, 4, byte_order);
7718 *offsetp += 4;
7719 f_size = VALUE32(tvb, *offsetp);
7720 proto_tree_add_item(t, hf_x11_glx_FeedbackBuffer_size, tvb, *offsetp, 4, byte_order);
7721 *offsetp += 4;
7722 f_type = VALUE32(tvb, *offsetp);
7723 proto_tree_add_item(t, hf_x11_glx_FeedbackBuffer_type, tvb, *offsetp, 4, byte_order);
7724 *offsetp += 4;
7727 static void glxSelectBuffer(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7729 int f_context_tag;
7730 int f_size;
7731 f_context_tag = VALUE32(tvb, *offsetp);
7732 proto_tree_add_item(t, hf_x11_glx_SelectBuffer_context_tag, tvb, *offsetp, 4, byte_order);
7733 *offsetp += 4;
7734 f_size = VALUE32(tvb, *offsetp);
7735 proto_tree_add_item(t, hf_x11_glx_SelectBuffer_size, tvb, *offsetp, 4, byte_order);
7736 *offsetp += 4;
7739 static void glxRenderMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7741 int f_context_tag;
7742 int f_mode;
7743 f_context_tag = VALUE32(tvb, *offsetp);
7744 proto_tree_add_item(t, hf_x11_glx_RenderMode_context_tag, tvb, *offsetp, 4, byte_order);
7745 *offsetp += 4;
7746 f_mode = VALUE32(tvb, *offsetp);
7747 proto_tree_add_item(t, hf_x11_glx_RenderMode_mode, tvb, *offsetp, 4, byte_order);
7748 *offsetp += 4;
7750 static void glxRenderMode_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7752 int f_length, length, sequence_number;
7753 int f_ret_val;
7754 int f_n;
7755 int f_new_mode;
7757 col_append_fstr(pinfo->cinfo, COL_INFO, "-RenderMode");
7759 REPLY(reply);
7760 UNUSED(1);
7761 sequence_number = VALUE16(tvb, *offsetp);
7762 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7763 "sequencenumber: %d (glx-RenderMode)", sequence_number);
7764 *offsetp += 2;
7765 f_length = VALUE32(tvb, *offsetp);
7766 length = f_length * 4 + 32;
7767 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7768 *offsetp += 4;
7769 f_ret_val = VALUE32(tvb, *offsetp);
7770 proto_tree_add_item(t, hf_x11_glx_RenderMode_reply_ret_val, tvb, *offsetp, 4, byte_order);
7771 *offsetp += 4;
7772 f_n = VALUE32(tvb, *offsetp);
7773 proto_tree_add_item(t, hf_x11_glx_RenderMode_reply_n, tvb, *offsetp, 4, byte_order);
7774 *offsetp += 4;
7775 f_new_mode = VALUE32(tvb, *offsetp);
7776 proto_tree_add_item(t, hf_x11_glx_RenderMode_reply_new_mode, tvb, *offsetp, 4, byte_order);
7777 *offsetp += 4;
7778 UNUSED(12);
7779 listOfCard32(tvb, offsetp, t, hf_x11_glx_RenderMode_reply_data, hf_x11_glx_RenderMode_reply_data_item, f_n, byte_order);
7782 static void glxFinish(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7784 int f_context_tag;
7785 f_context_tag = VALUE32(tvb, *offsetp);
7786 proto_tree_add_item(t, hf_x11_glx_Finish_context_tag, tvb, *offsetp, 4, byte_order);
7787 *offsetp += 4;
7789 static void glxFinish_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7791 int f_length, length, sequence_number;
7793 col_append_fstr(pinfo->cinfo, COL_INFO, "-Finish");
7795 REPLY(reply);
7796 UNUSED(1);
7797 sequence_number = VALUE16(tvb, *offsetp);
7798 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7799 "sequencenumber: %d (glx-Finish)", sequence_number);
7800 *offsetp += 2;
7801 f_length = VALUE32(tvb, *offsetp);
7802 length = f_length * 4 + 32;
7803 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7804 *offsetp += 4;
7807 static void glxPixelStoref(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7809 int f_context_tag;
7810 int f_pname;
7811 gfloat f_datum;
7812 f_context_tag = VALUE32(tvb, *offsetp);
7813 proto_tree_add_item(t, hf_x11_glx_PixelStoref_context_tag, tvb, *offsetp, 4, byte_order);
7814 *offsetp += 4;
7815 f_pname = VALUE32(tvb, *offsetp);
7816 proto_tree_add_item(t, hf_x11_glx_PixelStoref_pname, tvb, *offsetp, 4, byte_order);
7817 *offsetp += 4;
7818 f_datum = FLOAT(tvb, *offsetp);
7819 proto_tree_add_item(t, hf_x11_glx_PixelStoref_datum, tvb, *offsetp, 4, byte_order);
7820 *offsetp += 4;
7823 static void glxPixelStorei(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7825 int f_context_tag;
7826 int f_pname;
7827 int f_datum;
7828 f_context_tag = VALUE32(tvb, *offsetp);
7829 proto_tree_add_item(t, hf_x11_glx_PixelStorei_context_tag, tvb, *offsetp, 4, byte_order);
7830 *offsetp += 4;
7831 f_pname = VALUE32(tvb, *offsetp);
7832 proto_tree_add_item(t, hf_x11_glx_PixelStorei_pname, tvb, *offsetp, 4, byte_order);
7833 *offsetp += 4;
7834 f_datum = VALUE32(tvb, *offsetp);
7835 proto_tree_add_item(t, hf_x11_glx_PixelStorei_datum, tvb, *offsetp, 4, byte_order);
7836 *offsetp += 4;
7839 static void glxReadPixels(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7841 int f_context_tag;
7842 int f_x;
7843 int f_y;
7844 int f_width;
7845 int f_height;
7846 int f_format;
7847 int f_type;
7848 int f_swap_bytes;
7849 int f_lsb_first;
7850 f_context_tag = VALUE32(tvb, *offsetp);
7851 proto_tree_add_item(t, hf_x11_glx_ReadPixels_context_tag, tvb, *offsetp, 4, byte_order);
7852 *offsetp += 4;
7853 f_x = VALUE32(tvb, *offsetp);
7854 proto_tree_add_item(t, hf_x11_glx_ReadPixels_x, tvb, *offsetp, 4, byte_order);
7855 *offsetp += 4;
7856 f_y = VALUE32(tvb, *offsetp);
7857 proto_tree_add_item(t, hf_x11_glx_ReadPixels_y, tvb, *offsetp, 4, byte_order);
7858 *offsetp += 4;
7859 f_width = VALUE32(tvb, *offsetp);
7860 proto_tree_add_item(t, hf_x11_glx_ReadPixels_width, tvb, *offsetp, 4, byte_order);
7861 *offsetp += 4;
7862 f_height = VALUE32(tvb, *offsetp);
7863 proto_tree_add_item(t, hf_x11_glx_ReadPixels_height, tvb, *offsetp, 4, byte_order);
7864 *offsetp += 4;
7865 f_format = VALUE32(tvb, *offsetp);
7866 proto_tree_add_item(t, hf_x11_glx_ReadPixels_format, tvb, *offsetp, 4, byte_order);
7867 *offsetp += 4;
7868 f_type = VALUE32(tvb, *offsetp);
7869 proto_tree_add_item(t, hf_x11_glx_ReadPixels_type, tvb, *offsetp, 4, byte_order);
7870 *offsetp += 4;
7871 f_swap_bytes = VALUE8(tvb, *offsetp);
7872 proto_tree_add_item(t, hf_x11_glx_ReadPixels_swap_bytes, tvb, *offsetp, 1, byte_order);
7873 *offsetp += 1;
7874 f_lsb_first = VALUE8(tvb, *offsetp);
7875 proto_tree_add_item(t, hf_x11_glx_ReadPixels_lsb_first, tvb, *offsetp, 1, byte_order);
7876 *offsetp += 1;
7878 static void glxReadPixels_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7880 int f_length, length, sequence_number;
7882 col_append_fstr(pinfo->cinfo, COL_INFO, "-ReadPixels");
7884 REPLY(reply);
7885 UNUSED(1);
7886 sequence_number = VALUE16(tvb, *offsetp);
7887 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7888 "sequencenumber: %d (glx-ReadPixels)", sequence_number);
7889 *offsetp += 2;
7890 f_length = VALUE32(tvb, *offsetp);
7891 length = f_length * 4 + 32;
7892 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7893 *offsetp += 4;
7894 UNUSED(24);
7895 listOfByte(tvb, offsetp, t, hf_x11_glx_ReadPixels_reply_data, (f_length * 4), byte_order);
7898 static void glxGetBooleanv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7900 int f_context_tag;
7901 int f_pname;
7902 f_context_tag = VALUE32(tvb, *offsetp);
7903 proto_tree_add_item(t, hf_x11_glx_GetBooleanv_context_tag, tvb, *offsetp, 4, byte_order);
7904 *offsetp += 4;
7905 f_pname = VALUE32(tvb, *offsetp);
7906 proto_tree_add_item(t, hf_x11_glx_GetBooleanv_pname, tvb, *offsetp, 4, byte_order);
7907 *offsetp += 4;
7909 static void glxGetBooleanv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7911 int f_length, length, sequence_number;
7912 int f_n;
7913 int f_datum;
7915 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetBooleanv");
7917 REPLY(reply);
7918 UNUSED(1);
7919 sequence_number = VALUE16(tvb, *offsetp);
7920 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7921 "sequencenumber: %d (glx-GetBooleanv)", sequence_number);
7922 *offsetp += 2;
7923 f_length = VALUE32(tvb, *offsetp);
7924 length = f_length * 4 + 32;
7925 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7926 *offsetp += 4;
7927 UNUSED(4);
7928 f_n = VALUE32(tvb, *offsetp);
7929 proto_tree_add_item(t, hf_x11_glx_GetBooleanv_reply_n, tvb, *offsetp, 4, byte_order);
7930 *offsetp += 4;
7931 f_datum = VALUE8(tvb, *offsetp);
7932 proto_tree_add_item(t, hf_x11_glx_GetBooleanv_reply_datum, tvb, *offsetp, 1, byte_order);
7933 *offsetp += 1;
7934 UNUSED(15);
7935 listOfByte(tvb, offsetp, t, hf_x11_glx_GetBooleanv_reply_data, f_n, byte_order);
7938 static void glxGetClipPlane(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7940 int f_context_tag;
7941 int f_plane;
7942 f_context_tag = VALUE32(tvb, *offsetp);
7943 proto_tree_add_item(t, hf_x11_glx_GetClipPlane_context_tag, tvb, *offsetp, 4, byte_order);
7944 *offsetp += 4;
7945 f_plane = VALUE32(tvb, *offsetp);
7946 proto_tree_add_item(t, hf_x11_glx_GetClipPlane_plane, tvb, *offsetp, 4, byte_order);
7947 *offsetp += 4;
7949 static void glxGetClipPlane_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7951 int f_length, length, sequence_number;
7953 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetClipPlane");
7955 REPLY(reply);
7956 UNUSED(1);
7957 sequence_number = VALUE16(tvb, *offsetp);
7958 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7959 "sequencenumber: %d (glx-GetClipPlane)", sequence_number);
7960 *offsetp += 2;
7961 f_length = VALUE32(tvb, *offsetp);
7962 length = f_length * 4 + 32;
7963 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7964 *offsetp += 4;
7965 UNUSED(24);
7966 listOfDouble(tvb, offsetp, t, hf_x11_glx_GetClipPlane_reply_data, hf_x11_glx_GetClipPlane_reply_data_item, (f_length / 2), byte_order);
7969 static void glxGetDoublev(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
7971 int f_context_tag;
7972 int f_pname;
7973 f_context_tag = VALUE32(tvb, *offsetp);
7974 proto_tree_add_item(t, hf_x11_glx_GetDoublev_context_tag, tvb, *offsetp, 4, byte_order);
7975 *offsetp += 4;
7976 f_pname = VALUE32(tvb, *offsetp);
7977 proto_tree_add_item(t, hf_x11_glx_GetDoublev_pname, tvb, *offsetp, 4, byte_order);
7978 *offsetp += 4;
7980 static void glxGetDoublev_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
7982 int f_length, length, sequence_number;
7983 int f_n;
7984 gdouble f_datum;
7986 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDoublev");
7988 REPLY(reply);
7989 UNUSED(1);
7990 sequence_number = VALUE16(tvb, *offsetp);
7991 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
7992 "sequencenumber: %d (glx-GetDoublev)", sequence_number);
7993 *offsetp += 2;
7994 f_length = VALUE32(tvb, *offsetp);
7995 length = f_length * 4 + 32;
7996 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
7997 *offsetp += 4;
7998 UNUSED(4);
7999 f_n = VALUE32(tvb, *offsetp);
8000 proto_tree_add_item(t, hf_x11_glx_GetDoublev_reply_n, tvb, *offsetp, 4, byte_order);
8001 *offsetp += 4;
8002 f_datum = DOUBLE(tvb, *offsetp);
8003 proto_tree_add_item(t, hf_x11_glx_GetDoublev_reply_datum, tvb, *offsetp, 8, byte_order);
8004 *offsetp += 8;
8005 UNUSED(8);
8006 listOfDouble(tvb, offsetp, t, hf_x11_glx_GetDoublev_reply_data, hf_x11_glx_GetDoublev_reply_data_item, f_n, byte_order);
8009 static void glxGetError(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8011 int f_context_tag;
8012 f_context_tag = VALUE32(tvb, *offsetp);
8013 proto_tree_add_item(t, hf_x11_glx_GetError_context_tag, tvb, *offsetp, 4, byte_order);
8014 *offsetp += 4;
8016 static void glxGetError_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8018 int f_length, length, sequence_number;
8019 int f_error;
8021 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetError");
8023 REPLY(reply);
8024 UNUSED(1);
8025 sequence_number = VALUE16(tvb, *offsetp);
8026 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8027 "sequencenumber: %d (glx-GetError)", sequence_number);
8028 *offsetp += 2;
8029 f_length = VALUE32(tvb, *offsetp);
8030 length = f_length * 4 + 32;
8031 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8032 *offsetp += 4;
8033 f_error = VALUE32(tvb, *offsetp);
8034 proto_tree_add_item(t, hf_x11_glx_GetError_reply_error, tvb, *offsetp, 4, byte_order);
8035 *offsetp += 4;
8038 static void glxGetFloatv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8040 int f_context_tag;
8041 int f_pname;
8042 f_context_tag = VALUE32(tvb, *offsetp);
8043 proto_tree_add_item(t, hf_x11_glx_GetFloatv_context_tag, tvb, *offsetp, 4, byte_order);
8044 *offsetp += 4;
8045 f_pname = VALUE32(tvb, *offsetp);
8046 proto_tree_add_item(t, hf_x11_glx_GetFloatv_pname, tvb, *offsetp, 4, byte_order);
8047 *offsetp += 4;
8049 static void glxGetFloatv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8051 int f_length, length, sequence_number;
8052 int f_n;
8053 gfloat f_datum;
8055 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetFloatv");
8057 REPLY(reply);
8058 UNUSED(1);
8059 sequence_number = VALUE16(tvb, *offsetp);
8060 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8061 "sequencenumber: %d (glx-GetFloatv)", sequence_number);
8062 *offsetp += 2;
8063 f_length = VALUE32(tvb, *offsetp);
8064 length = f_length * 4 + 32;
8065 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8066 *offsetp += 4;
8067 UNUSED(4);
8068 f_n = VALUE32(tvb, *offsetp);
8069 proto_tree_add_item(t, hf_x11_glx_GetFloatv_reply_n, tvb, *offsetp, 4, byte_order);
8070 *offsetp += 4;
8071 f_datum = FLOAT(tvb, *offsetp);
8072 proto_tree_add_item(t, hf_x11_glx_GetFloatv_reply_datum, tvb, *offsetp, 4, byte_order);
8073 *offsetp += 4;
8074 UNUSED(12);
8075 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetFloatv_reply_data, hf_x11_glx_GetFloatv_reply_data_item, f_n, byte_order);
8078 static void glxGetIntegerv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8080 int f_context_tag;
8081 int f_pname;
8082 f_context_tag = VALUE32(tvb, *offsetp);
8083 proto_tree_add_item(t, hf_x11_glx_GetIntegerv_context_tag, tvb, *offsetp, 4, byte_order);
8084 *offsetp += 4;
8085 f_pname = VALUE32(tvb, *offsetp);
8086 proto_tree_add_item(t, hf_x11_glx_GetIntegerv_pname, tvb, *offsetp, 4, byte_order);
8087 *offsetp += 4;
8089 static void glxGetIntegerv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8091 int f_length, length, sequence_number;
8092 int f_n;
8093 int f_datum;
8095 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetIntegerv");
8097 REPLY(reply);
8098 UNUSED(1);
8099 sequence_number = VALUE16(tvb, *offsetp);
8100 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8101 "sequencenumber: %d (glx-GetIntegerv)", sequence_number);
8102 *offsetp += 2;
8103 f_length = VALUE32(tvb, *offsetp);
8104 length = f_length * 4 + 32;
8105 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8106 *offsetp += 4;
8107 UNUSED(4);
8108 f_n = VALUE32(tvb, *offsetp);
8109 proto_tree_add_item(t, hf_x11_glx_GetIntegerv_reply_n, tvb, *offsetp, 4, byte_order);
8110 *offsetp += 4;
8111 f_datum = VALUE32(tvb, *offsetp);
8112 proto_tree_add_item(t, hf_x11_glx_GetIntegerv_reply_datum, tvb, *offsetp, 4, byte_order);
8113 *offsetp += 4;
8114 UNUSED(12);
8115 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetIntegerv_reply_data, hf_x11_glx_GetIntegerv_reply_data_item, f_n, byte_order);
8118 static void glxGetLightfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8120 int f_context_tag;
8121 int f_light;
8122 int f_pname;
8123 f_context_tag = VALUE32(tvb, *offsetp);
8124 proto_tree_add_item(t, hf_x11_glx_GetLightfv_context_tag, tvb, *offsetp, 4, byte_order);
8125 *offsetp += 4;
8126 f_light = VALUE32(tvb, *offsetp);
8127 proto_tree_add_item(t, hf_x11_glx_GetLightfv_light, tvb, *offsetp, 4, byte_order);
8128 *offsetp += 4;
8129 f_pname = VALUE32(tvb, *offsetp);
8130 proto_tree_add_item(t, hf_x11_glx_GetLightfv_pname, tvb, *offsetp, 4, byte_order);
8131 *offsetp += 4;
8133 static void glxGetLightfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8135 int f_length, length, sequence_number;
8136 int f_n;
8137 gfloat f_datum;
8139 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetLightfv");
8141 REPLY(reply);
8142 UNUSED(1);
8143 sequence_number = VALUE16(tvb, *offsetp);
8144 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8145 "sequencenumber: %d (glx-GetLightfv)", sequence_number);
8146 *offsetp += 2;
8147 f_length = VALUE32(tvb, *offsetp);
8148 length = f_length * 4 + 32;
8149 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8150 *offsetp += 4;
8151 UNUSED(4);
8152 f_n = VALUE32(tvb, *offsetp);
8153 proto_tree_add_item(t, hf_x11_glx_GetLightfv_reply_n, tvb, *offsetp, 4, byte_order);
8154 *offsetp += 4;
8155 f_datum = FLOAT(tvb, *offsetp);
8156 proto_tree_add_item(t, hf_x11_glx_GetLightfv_reply_datum, tvb, *offsetp, 4, byte_order);
8157 *offsetp += 4;
8158 UNUSED(12);
8159 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetLightfv_reply_data, hf_x11_glx_GetLightfv_reply_data_item, f_n, byte_order);
8162 static void glxGetLightiv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8164 int f_context_tag;
8165 int f_light;
8166 int f_pname;
8167 f_context_tag = VALUE32(tvb, *offsetp);
8168 proto_tree_add_item(t, hf_x11_glx_GetLightiv_context_tag, tvb, *offsetp, 4, byte_order);
8169 *offsetp += 4;
8170 f_light = VALUE32(tvb, *offsetp);
8171 proto_tree_add_item(t, hf_x11_glx_GetLightiv_light, tvb, *offsetp, 4, byte_order);
8172 *offsetp += 4;
8173 f_pname = VALUE32(tvb, *offsetp);
8174 proto_tree_add_item(t, hf_x11_glx_GetLightiv_pname, tvb, *offsetp, 4, byte_order);
8175 *offsetp += 4;
8177 static void glxGetLightiv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8179 int f_length, length, sequence_number;
8180 int f_n;
8181 int f_datum;
8183 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetLightiv");
8185 REPLY(reply);
8186 UNUSED(1);
8187 sequence_number = VALUE16(tvb, *offsetp);
8188 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8189 "sequencenumber: %d (glx-GetLightiv)", sequence_number);
8190 *offsetp += 2;
8191 f_length = VALUE32(tvb, *offsetp);
8192 length = f_length * 4 + 32;
8193 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8194 *offsetp += 4;
8195 UNUSED(4);
8196 f_n = VALUE32(tvb, *offsetp);
8197 proto_tree_add_item(t, hf_x11_glx_GetLightiv_reply_n, tvb, *offsetp, 4, byte_order);
8198 *offsetp += 4;
8199 f_datum = VALUE32(tvb, *offsetp);
8200 proto_tree_add_item(t, hf_x11_glx_GetLightiv_reply_datum, tvb, *offsetp, 4, byte_order);
8201 *offsetp += 4;
8202 UNUSED(12);
8203 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetLightiv_reply_data, hf_x11_glx_GetLightiv_reply_data_item, f_n, byte_order);
8206 static void glxGetMapdv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8208 int f_context_tag;
8209 int f_target;
8210 int f_query;
8211 f_context_tag = VALUE32(tvb, *offsetp);
8212 proto_tree_add_item(t, hf_x11_glx_GetMapdv_context_tag, tvb, *offsetp, 4, byte_order);
8213 *offsetp += 4;
8214 f_target = VALUE32(tvb, *offsetp);
8215 proto_tree_add_item(t, hf_x11_glx_GetMapdv_target, tvb, *offsetp, 4, byte_order);
8216 *offsetp += 4;
8217 f_query = VALUE32(tvb, *offsetp);
8218 proto_tree_add_item(t, hf_x11_glx_GetMapdv_query, tvb, *offsetp, 4, byte_order);
8219 *offsetp += 4;
8221 static void glxGetMapdv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8223 int f_length, length, sequence_number;
8224 int f_n;
8225 gdouble f_datum;
8227 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMapdv");
8229 REPLY(reply);
8230 UNUSED(1);
8231 sequence_number = VALUE16(tvb, *offsetp);
8232 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8233 "sequencenumber: %d (glx-GetMapdv)", sequence_number);
8234 *offsetp += 2;
8235 f_length = VALUE32(tvb, *offsetp);
8236 length = f_length * 4 + 32;
8237 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8238 *offsetp += 4;
8239 UNUSED(4);
8240 f_n = VALUE32(tvb, *offsetp);
8241 proto_tree_add_item(t, hf_x11_glx_GetMapdv_reply_n, tvb, *offsetp, 4, byte_order);
8242 *offsetp += 4;
8243 f_datum = DOUBLE(tvb, *offsetp);
8244 proto_tree_add_item(t, hf_x11_glx_GetMapdv_reply_datum, tvb, *offsetp, 8, byte_order);
8245 *offsetp += 8;
8246 UNUSED(8);
8247 listOfDouble(tvb, offsetp, t, hf_x11_glx_GetMapdv_reply_data, hf_x11_glx_GetMapdv_reply_data_item, f_n, byte_order);
8250 static void glxGetMapfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8252 int f_context_tag;
8253 int f_target;
8254 int f_query;
8255 f_context_tag = VALUE32(tvb, *offsetp);
8256 proto_tree_add_item(t, hf_x11_glx_GetMapfv_context_tag, tvb, *offsetp, 4, byte_order);
8257 *offsetp += 4;
8258 f_target = VALUE32(tvb, *offsetp);
8259 proto_tree_add_item(t, hf_x11_glx_GetMapfv_target, tvb, *offsetp, 4, byte_order);
8260 *offsetp += 4;
8261 f_query = VALUE32(tvb, *offsetp);
8262 proto_tree_add_item(t, hf_x11_glx_GetMapfv_query, tvb, *offsetp, 4, byte_order);
8263 *offsetp += 4;
8265 static void glxGetMapfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8267 int f_length, length, sequence_number;
8268 int f_n;
8269 gfloat f_datum;
8271 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMapfv");
8273 REPLY(reply);
8274 UNUSED(1);
8275 sequence_number = VALUE16(tvb, *offsetp);
8276 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8277 "sequencenumber: %d (glx-GetMapfv)", sequence_number);
8278 *offsetp += 2;
8279 f_length = VALUE32(tvb, *offsetp);
8280 length = f_length * 4 + 32;
8281 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8282 *offsetp += 4;
8283 UNUSED(4);
8284 f_n = VALUE32(tvb, *offsetp);
8285 proto_tree_add_item(t, hf_x11_glx_GetMapfv_reply_n, tvb, *offsetp, 4, byte_order);
8286 *offsetp += 4;
8287 f_datum = FLOAT(tvb, *offsetp);
8288 proto_tree_add_item(t, hf_x11_glx_GetMapfv_reply_datum, tvb, *offsetp, 4, byte_order);
8289 *offsetp += 4;
8290 UNUSED(12);
8291 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetMapfv_reply_data, hf_x11_glx_GetMapfv_reply_data_item, f_n, byte_order);
8294 static void glxGetMapiv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8296 int f_context_tag;
8297 int f_target;
8298 int f_query;
8299 f_context_tag = VALUE32(tvb, *offsetp);
8300 proto_tree_add_item(t, hf_x11_glx_GetMapiv_context_tag, tvb, *offsetp, 4, byte_order);
8301 *offsetp += 4;
8302 f_target = VALUE32(tvb, *offsetp);
8303 proto_tree_add_item(t, hf_x11_glx_GetMapiv_target, tvb, *offsetp, 4, byte_order);
8304 *offsetp += 4;
8305 f_query = VALUE32(tvb, *offsetp);
8306 proto_tree_add_item(t, hf_x11_glx_GetMapiv_query, tvb, *offsetp, 4, byte_order);
8307 *offsetp += 4;
8309 static void glxGetMapiv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8311 int f_length, length, sequence_number;
8312 int f_n;
8313 int f_datum;
8315 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMapiv");
8317 REPLY(reply);
8318 UNUSED(1);
8319 sequence_number = VALUE16(tvb, *offsetp);
8320 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8321 "sequencenumber: %d (glx-GetMapiv)", sequence_number);
8322 *offsetp += 2;
8323 f_length = VALUE32(tvb, *offsetp);
8324 length = f_length * 4 + 32;
8325 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8326 *offsetp += 4;
8327 UNUSED(4);
8328 f_n = VALUE32(tvb, *offsetp);
8329 proto_tree_add_item(t, hf_x11_glx_GetMapiv_reply_n, tvb, *offsetp, 4, byte_order);
8330 *offsetp += 4;
8331 f_datum = VALUE32(tvb, *offsetp);
8332 proto_tree_add_item(t, hf_x11_glx_GetMapiv_reply_datum, tvb, *offsetp, 4, byte_order);
8333 *offsetp += 4;
8334 UNUSED(12);
8335 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetMapiv_reply_data, hf_x11_glx_GetMapiv_reply_data_item, f_n, byte_order);
8338 static void glxGetMaterialfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8340 int f_context_tag;
8341 int f_face;
8342 int f_pname;
8343 f_context_tag = VALUE32(tvb, *offsetp);
8344 proto_tree_add_item(t, hf_x11_glx_GetMaterialfv_context_tag, tvb, *offsetp, 4, byte_order);
8345 *offsetp += 4;
8346 f_face = VALUE32(tvb, *offsetp);
8347 proto_tree_add_item(t, hf_x11_glx_GetMaterialfv_face, tvb, *offsetp, 4, byte_order);
8348 *offsetp += 4;
8349 f_pname = VALUE32(tvb, *offsetp);
8350 proto_tree_add_item(t, hf_x11_glx_GetMaterialfv_pname, tvb, *offsetp, 4, byte_order);
8351 *offsetp += 4;
8353 static void glxGetMaterialfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8355 int f_length, length, sequence_number;
8356 int f_n;
8357 gfloat f_datum;
8359 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMaterialfv");
8361 REPLY(reply);
8362 UNUSED(1);
8363 sequence_number = VALUE16(tvb, *offsetp);
8364 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8365 "sequencenumber: %d (glx-GetMaterialfv)", sequence_number);
8366 *offsetp += 2;
8367 f_length = VALUE32(tvb, *offsetp);
8368 length = f_length * 4 + 32;
8369 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8370 *offsetp += 4;
8371 UNUSED(4);
8372 f_n = VALUE32(tvb, *offsetp);
8373 proto_tree_add_item(t, hf_x11_glx_GetMaterialfv_reply_n, tvb, *offsetp, 4, byte_order);
8374 *offsetp += 4;
8375 f_datum = FLOAT(tvb, *offsetp);
8376 proto_tree_add_item(t, hf_x11_glx_GetMaterialfv_reply_datum, tvb, *offsetp, 4, byte_order);
8377 *offsetp += 4;
8378 UNUSED(12);
8379 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetMaterialfv_reply_data, hf_x11_glx_GetMaterialfv_reply_data_item, f_n, byte_order);
8382 static void glxGetMaterialiv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8384 int f_context_tag;
8385 int f_face;
8386 int f_pname;
8387 f_context_tag = VALUE32(tvb, *offsetp);
8388 proto_tree_add_item(t, hf_x11_glx_GetMaterialiv_context_tag, tvb, *offsetp, 4, byte_order);
8389 *offsetp += 4;
8390 f_face = VALUE32(tvb, *offsetp);
8391 proto_tree_add_item(t, hf_x11_glx_GetMaterialiv_face, tvb, *offsetp, 4, byte_order);
8392 *offsetp += 4;
8393 f_pname = VALUE32(tvb, *offsetp);
8394 proto_tree_add_item(t, hf_x11_glx_GetMaterialiv_pname, tvb, *offsetp, 4, byte_order);
8395 *offsetp += 4;
8397 static void glxGetMaterialiv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8399 int f_length, length, sequence_number;
8400 int f_n;
8401 int f_datum;
8403 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMaterialiv");
8405 REPLY(reply);
8406 UNUSED(1);
8407 sequence_number = VALUE16(tvb, *offsetp);
8408 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8409 "sequencenumber: %d (glx-GetMaterialiv)", sequence_number);
8410 *offsetp += 2;
8411 f_length = VALUE32(tvb, *offsetp);
8412 length = f_length * 4 + 32;
8413 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8414 *offsetp += 4;
8415 UNUSED(4);
8416 f_n = VALUE32(tvb, *offsetp);
8417 proto_tree_add_item(t, hf_x11_glx_GetMaterialiv_reply_n, tvb, *offsetp, 4, byte_order);
8418 *offsetp += 4;
8419 f_datum = VALUE32(tvb, *offsetp);
8420 proto_tree_add_item(t, hf_x11_glx_GetMaterialiv_reply_datum, tvb, *offsetp, 4, byte_order);
8421 *offsetp += 4;
8422 UNUSED(12);
8423 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetMaterialiv_reply_data, hf_x11_glx_GetMaterialiv_reply_data_item, f_n, byte_order);
8426 static void glxGetPixelMapfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8428 int f_context_tag;
8429 int f_map;
8430 f_context_tag = VALUE32(tvb, *offsetp);
8431 proto_tree_add_item(t, hf_x11_glx_GetPixelMapfv_context_tag, tvb, *offsetp, 4, byte_order);
8432 *offsetp += 4;
8433 f_map = VALUE32(tvb, *offsetp);
8434 proto_tree_add_item(t, hf_x11_glx_GetPixelMapfv_map, tvb, *offsetp, 4, byte_order);
8435 *offsetp += 4;
8437 static void glxGetPixelMapfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8439 int f_length, length, sequence_number;
8440 int f_n;
8441 gfloat f_datum;
8443 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPixelMapfv");
8445 REPLY(reply);
8446 UNUSED(1);
8447 sequence_number = VALUE16(tvb, *offsetp);
8448 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8449 "sequencenumber: %d (glx-GetPixelMapfv)", sequence_number);
8450 *offsetp += 2;
8451 f_length = VALUE32(tvb, *offsetp);
8452 length = f_length * 4 + 32;
8453 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8454 *offsetp += 4;
8455 UNUSED(4);
8456 f_n = VALUE32(tvb, *offsetp);
8457 proto_tree_add_item(t, hf_x11_glx_GetPixelMapfv_reply_n, tvb, *offsetp, 4, byte_order);
8458 *offsetp += 4;
8459 f_datum = FLOAT(tvb, *offsetp);
8460 proto_tree_add_item(t, hf_x11_glx_GetPixelMapfv_reply_datum, tvb, *offsetp, 4, byte_order);
8461 *offsetp += 4;
8462 UNUSED(12);
8463 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetPixelMapfv_reply_data, hf_x11_glx_GetPixelMapfv_reply_data_item, f_n, byte_order);
8466 static void glxGetPixelMapuiv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8468 int f_context_tag;
8469 int f_map;
8470 f_context_tag = VALUE32(tvb, *offsetp);
8471 proto_tree_add_item(t, hf_x11_glx_GetPixelMapuiv_context_tag, tvb, *offsetp, 4, byte_order);
8472 *offsetp += 4;
8473 f_map = VALUE32(tvb, *offsetp);
8474 proto_tree_add_item(t, hf_x11_glx_GetPixelMapuiv_map, tvb, *offsetp, 4, byte_order);
8475 *offsetp += 4;
8477 static void glxGetPixelMapuiv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8479 int f_length, length, sequence_number;
8480 int f_n;
8481 int f_datum;
8483 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPixelMapuiv");
8485 REPLY(reply);
8486 UNUSED(1);
8487 sequence_number = VALUE16(tvb, *offsetp);
8488 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8489 "sequencenumber: %d (glx-GetPixelMapuiv)", sequence_number);
8490 *offsetp += 2;
8491 f_length = VALUE32(tvb, *offsetp);
8492 length = f_length * 4 + 32;
8493 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8494 *offsetp += 4;
8495 UNUSED(4);
8496 f_n = VALUE32(tvb, *offsetp);
8497 proto_tree_add_item(t, hf_x11_glx_GetPixelMapuiv_reply_n, tvb, *offsetp, 4, byte_order);
8498 *offsetp += 4;
8499 f_datum = VALUE32(tvb, *offsetp);
8500 proto_tree_add_item(t, hf_x11_glx_GetPixelMapuiv_reply_datum, tvb, *offsetp, 4, byte_order);
8501 *offsetp += 4;
8502 UNUSED(12);
8503 listOfCard32(tvb, offsetp, t, hf_x11_glx_GetPixelMapuiv_reply_data, hf_x11_glx_GetPixelMapuiv_reply_data_item, f_n, byte_order);
8506 static void glxGetPixelMapusv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8508 int f_context_tag;
8509 int f_map;
8510 f_context_tag = VALUE32(tvb, *offsetp);
8511 proto_tree_add_item(t, hf_x11_glx_GetPixelMapusv_context_tag, tvb, *offsetp, 4, byte_order);
8512 *offsetp += 4;
8513 f_map = VALUE32(tvb, *offsetp);
8514 proto_tree_add_item(t, hf_x11_glx_GetPixelMapusv_map, tvb, *offsetp, 4, byte_order);
8515 *offsetp += 4;
8517 static void glxGetPixelMapusv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8519 int f_length, length, sequence_number;
8520 int f_n;
8521 int f_datum;
8523 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPixelMapusv");
8525 REPLY(reply);
8526 UNUSED(1);
8527 sequence_number = VALUE16(tvb, *offsetp);
8528 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8529 "sequencenumber: %d (glx-GetPixelMapusv)", sequence_number);
8530 *offsetp += 2;
8531 f_length = VALUE32(tvb, *offsetp);
8532 length = f_length * 4 + 32;
8533 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8534 *offsetp += 4;
8535 UNUSED(4);
8536 f_n = VALUE32(tvb, *offsetp);
8537 proto_tree_add_item(t, hf_x11_glx_GetPixelMapusv_reply_n, tvb, *offsetp, 4, byte_order);
8538 *offsetp += 4;
8539 f_datum = VALUE16(tvb, *offsetp);
8540 proto_tree_add_item(t, hf_x11_glx_GetPixelMapusv_reply_datum, tvb, *offsetp, 2, byte_order);
8541 *offsetp += 2;
8542 UNUSED(16);
8543 listOfCard16(tvb, offsetp, t, hf_x11_glx_GetPixelMapusv_reply_data, hf_x11_glx_GetPixelMapusv_reply_data_item, f_n, byte_order);
8546 static void glxGetPolygonStipple(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8548 int f_context_tag;
8549 int f_lsb_first;
8550 f_context_tag = VALUE32(tvb, *offsetp);
8551 proto_tree_add_item(t, hf_x11_glx_GetPolygonStipple_context_tag, tvb, *offsetp, 4, byte_order);
8552 *offsetp += 4;
8553 f_lsb_first = VALUE8(tvb, *offsetp);
8554 proto_tree_add_item(t, hf_x11_glx_GetPolygonStipple_lsb_first, tvb, *offsetp, 1, byte_order);
8555 *offsetp += 1;
8557 static void glxGetPolygonStipple_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8559 int f_length, length, sequence_number;
8561 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPolygonStipple");
8563 REPLY(reply);
8564 UNUSED(1);
8565 sequence_number = VALUE16(tvb, *offsetp);
8566 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8567 "sequencenumber: %d (glx-GetPolygonStipple)", sequence_number);
8568 *offsetp += 2;
8569 f_length = VALUE32(tvb, *offsetp);
8570 length = f_length * 4 + 32;
8571 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8572 *offsetp += 4;
8573 UNUSED(24);
8574 listOfByte(tvb, offsetp, t, hf_x11_glx_GetPolygonStipple_reply_data, (f_length * 4), byte_order);
8577 static void glxGetString(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8579 int f_context_tag;
8580 int f_name;
8581 f_context_tag = VALUE32(tvb, *offsetp);
8582 proto_tree_add_item(t, hf_x11_glx_GetString_context_tag, tvb, *offsetp, 4, byte_order);
8583 *offsetp += 4;
8584 f_name = VALUE32(tvb, *offsetp);
8585 proto_tree_add_item(t, hf_x11_glx_GetString_name, tvb, *offsetp, 4, byte_order);
8586 *offsetp += 4;
8588 static void glxGetString_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8590 int f_length, length, sequence_number;
8591 int f_n;
8593 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetString");
8595 REPLY(reply);
8596 UNUSED(1);
8597 sequence_number = VALUE16(tvb, *offsetp);
8598 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8599 "sequencenumber: %d (glx-GetString)", sequence_number);
8600 *offsetp += 2;
8601 f_length = VALUE32(tvb, *offsetp);
8602 length = f_length * 4 + 32;
8603 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8604 *offsetp += 4;
8605 UNUSED(4);
8606 f_n = VALUE32(tvb, *offsetp);
8607 proto_tree_add_item(t, hf_x11_glx_GetString_reply_n, tvb, *offsetp, 4, byte_order);
8608 *offsetp += 4;
8609 UNUSED(16);
8610 listOfByte(tvb, offsetp, t, hf_x11_glx_GetString_reply_string, f_n, byte_order);
8613 static void glxGetTexEnvfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8615 int f_context_tag;
8616 int f_target;
8617 int f_pname;
8618 f_context_tag = VALUE32(tvb, *offsetp);
8619 proto_tree_add_item(t, hf_x11_glx_GetTexEnvfv_context_tag, tvb, *offsetp, 4, byte_order);
8620 *offsetp += 4;
8621 f_target = VALUE32(tvb, *offsetp);
8622 proto_tree_add_item(t, hf_x11_glx_GetTexEnvfv_target, tvb, *offsetp, 4, byte_order);
8623 *offsetp += 4;
8624 f_pname = VALUE32(tvb, *offsetp);
8625 proto_tree_add_item(t, hf_x11_glx_GetTexEnvfv_pname, tvb, *offsetp, 4, byte_order);
8626 *offsetp += 4;
8628 static void glxGetTexEnvfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8630 int f_length, length, sequence_number;
8631 int f_n;
8632 gfloat f_datum;
8634 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexEnvfv");
8636 REPLY(reply);
8637 UNUSED(1);
8638 sequence_number = VALUE16(tvb, *offsetp);
8639 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8640 "sequencenumber: %d (glx-GetTexEnvfv)", sequence_number);
8641 *offsetp += 2;
8642 f_length = VALUE32(tvb, *offsetp);
8643 length = f_length * 4 + 32;
8644 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8645 *offsetp += 4;
8646 UNUSED(4);
8647 f_n = VALUE32(tvb, *offsetp);
8648 proto_tree_add_item(t, hf_x11_glx_GetTexEnvfv_reply_n, tvb, *offsetp, 4, byte_order);
8649 *offsetp += 4;
8650 f_datum = FLOAT(tvb, *offsetp);
8651 proto_tree_add_item(t, hf_x11_glx_GetTexEnvfv_reply_datum, tvb, *offsetp, 4, byte_order);
8652 *offsetp += 4;
8653 UNUSED(12);
8654 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetTexEnvfv_reply_data, hf_x11_glx_GetTexEnvfv_reply_data_item, f_n, byte_order);
8657 static void glxGetTexEnviv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8659 int f_context_tag;
8660 int f_target;
8661 int f_pname;
8662 f_context_tag = VALUE32(tvb, *offsetp);
8663 proto_tree_add_item(t, hf_x11_glx_GetTexEnviv_context_tag, tvb, *offsetp, 4, byte_order);
8664 *offsetp += 4;
8665 f_target = VALUE32(tvb, *offsetp);
8666 proto_tree_add_item(t, hf_x11_glx_GetTexEnviv_target, tvb, *offsetp, 4, byte_order);
8667 *offsetp += 4;
8668 f_pname = VALUE32(tvb, *offsetp);
8669 proto_tree_add_item(t, hf_x11_glx_GetTexEnviv_pname, tvb, *offsetp, 4, byte_order);
8670 *offsetp += 4;
8672 static void glxGetTexEnviv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8674 int f_length, length, sequence_number;
8675 int f_n;
8676 int f_datum;
8678 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexEnviv");
8680 REPLY(reply);
8681 UNUSED(1);
8682 sequence_number = VALUE16(tvb, *offsetp);
8683 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8684 "sequencenumber: %d (glx-GetTexEnviv)", sequence_number);
8685 *offsetp += 2;
8686 f_length = VALUE32(tvb, *offsetp);
8687 length = f_length * 4 + 32;
8688 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8689 *offsetp += 4;
8690 UNUSED(4);
8691 f_n = VALUE32(tvb, *offsetp);
8692 proto_tree_add_item(t, hf_x11_glx_GetTexEnviv_reply_n, tvb, *offsetp, 4, byte_order);
8693 *offsetp += 4;
8694 f_datum = VALUE32(tvb, *offsetp);
8695 proto_tree_add_item(t, hf_x11_glx_GetTexEnviv_reply_datum, tvb, *offsetp, 4, byte_order);
8696 *offsetp += 4;
8697 UNUSED(12);
8698 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetTexEnviv_reply_data, hf_x11_glx_GetTexEnviv_reply_data_item, f_n, byte_order);
8701 static void glxGetTexGendv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8703 int f_context_tag;
8704 int f_coord;
8705 int f_pname;
8706 f_context_tag = VALUE32(tvb, *offsetp);
8707 proto_tree_add_item(t, hf_x11_glx_GetTexGendv_context_tag, tvb, *offsetp, 4, byte_order);
8708 *offsetp += 4;
8709 f_coord = VALUE32(tvb, *offsetp);
8710 proto_tree_add_item(t, hf_x11_glx_GetTexGendv_coord, tvb, *offsetp, 4, byte_order);
8711 *offsetp += 4;
8712 f_pname = VALUE32(tvb, *offsetp);
8713 proto_tree_add_item(t, hf_x11_glx_GetTexGendv_pname, tvb, *offsetp, 4, byte_order);
8714 *offsetp += 4;
8716 static void glxGetTexGendv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8718 int f_length, length, sequence_number;
8719 int f_n;
8720 gdouble f_datum;
8722 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexGendv");
8724 REPLY(reply);
8725 UNUSED(1);
8726 sequence_number = VALUE16(tvb, *offsetp);
8727 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8728 "sequencenumber: %d (glx-GetTexGendv)", sequence_number);
8729 *offsetp += 2;
8730 f_length = VALUE32(tvb, *offsetp);
8731 length = f_length * 4 + 32;
8732 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8733 *offsetp += 4;
8734 UNUSED(4);
8735 f_n = VALUE32(tvb, *offsetp);
8736 proto_tree_add_item(t, hf_x11_glx_GetTexGendv_reply_n, tvb, *offsetp, 4, byte_order);
8737 *offsetp += 4;
8738 f_datum = DOUBLE(tvb, *offsetp);
8739 proto_tree_add_item(t, hf_x11_glx_GetTexGendv_reply_datum, tvb, *offsetp, 8, byte_order);
8740 *offsetp += 8;
8741 UNUSED(8);
8742 listOfDouble(tvb, offsetp, t, hf_x11_glx_GetTexGendv_reply_data, hf_x11_glx_GetTexGendv_reply_data_item, f_n, byte_order);
8745 static void glxGetTexGenfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8747 int f_context_tag;
8748 int f_coord;
8749 int f_pname;
8750 f_context_tag = VALUE32(tvb, *offsetp);
8751 proto_tree_add_item(t, hf_x11_glx_GetTexGenfv_context_tag, tvb, *offsetp, 4, byte_order);
8752 *offsetp += 4;
8753 f_coord = VALUE32(tvb, *offsetp);
8754 proto_tree_add_item(t, hf_x11_glx_GetTexGenfv_coord, tvb, *offsetp, 4, byte_order);
8755 *offsetp += 4;
8756 f_pname = VALUE32(tvb, *offsetp);
8757 proto_tree_add_item(t, hf_x11_glx_GetTexGenfv_pname, tvb, *offsetp, 4, byte_order);
8758 *offsetp += 4;
8760 static void glxGetTexGenfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8762 int f_length, length, sequence_number;
8763 int f_n;
8764 gfloat f_datum;
8766 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexGenfv");
8768 REPLY(reply);
8769 UNUSED(1);
8770 sequence_number = VALUE16(tvb, *offsetp);
8771 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8772 "sequencenumber: %d (glx-GetTexGenfv)", sequence_number);
8773 *offsetp += 2;
8774 f_length = VALUE32(tvb, *offsetp);
8775 length = f_length * 4 + 32;
8776 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8777 *offsetp += 4;
8778 UNUSED(4);
8779 f_n = VALUE32(tvb, *offsetp);
8780 proto_tree_add_item(t, hf_x11_glx_GetTexGenfv_reply_n, tvb, *offsetp, 4, byte_order);
8781 *offsetp += 4;
8782 f_datum = FLOAT(tvb, *offsetp);
8783 proto_tree_add_item(t, hf_x11_glx_GetTexGenfv_reply_datum, tvb, *offsetp, 4, byte_order);
8784 *offsetp += 4;
8785 UNUSED(12);
8786 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetTexGenfv_reply_data, hf_x11_glx_GetTexGenfv_reply_data_item, f_n, byte_order);
8789 static void glxGetTexGeniv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8791 int f_context_tag;
8792 int f_coord;
8793 int f_pname;
8794 f_context_tag = VALUE32(tvb, *offsetp);
8795 proto_tree_add_item(t, hf_x11_glx_GetTexGeniv_context_tag, tvb, *offsetp, 4, byte_order);
8796 *offsetp += 4;
8797 f_coord = VALUE32(tvb, *offsetp);
8798 proto_tree_add_item(t, hf_x11_glx_GetTexGeniv_coord, tvb, *offsetp, 4, byte_order);
8799 *offsetp += 4;
8800 f_pname = VALUE32(tvb, *offsetp);
8801 proto_tree_add_item(t, hf_x11_glx_GetTexGeniv_pname, tvb, *offsetp, 4, byte_order);
8802 *offsetp += 4;
8804 static void glxGetTexGeniv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8806 int f_length, length, sequence_number;
8807 int f_n;
8808 int f_datum;
8810 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexGeniv");
8812 REPLY(reply);
8813 UNUSED(1);
8814 sequence_number = VALUE16(tvb, *offsetp);
8815 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8816 "sequencenumber: %d (glx-GetTexGeniv)", sequence_number);
8817 *offsetp += 2;
8818 f_length = VALUE32(tvb, *offsetp);
8819 length = f_length * 4 + 32;
8820 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8821 *offsetp += 4;
8822 UNUSED(4);
8823 f_n = VALUE32(tvb, *offsetp);
8824 proto_tree_add_item(t, hf_x11_glx_GetTexGeniv_reply_n, tvb, *offsetp, 4, byte_order);
8825 *offsetp += 4;
8826 f_datum = VALUE32(tvb, *offsetp);
8827 proto_tree_add_item(t, hf_x11_glx_GetTexGeniv_reply_datum, tvb, *offsetp, 4, byte_order);
8828 *offsetp += 4;
8829 UNUSED(12);
8830 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetTexGeniv_reply_data, hf_x11_glx_GetTexGeniv_reply_data_item, f_n, byte_order);
8833 static void glxGetTexImage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8835 int f_context_tag;
8836 int f_target;
8837 int f_level;
8838 int f_format;
8839 int f_type;
8840 int f_swap_bytes;
8841 f_context_tag = VALUE32(tvb, *offsetp);
8842 proto_tree_add_item(t, hf_x11_glx_GetTexImage_context_tag, tvb, *offsetp, 4, byte_order);
8843 *offsetp += 4;
8844 f_target = VALUE32(tvb, *offsetp);
8845 proto_tree_add_item(t, hf_x11_glx_GetTexImage_target, tvb, *offsetp, 4, byte_order);
8846 *offsetp += 4;
8847 f_level = VALUE32(tvb, *offsetp);
8848 proto_tree_add_item(t, hf_x11_glx_GetTexImage_level, tvb, *offsetp, 4, byte_order);
8849 *offsetp += 4;
8850 f_format = VALUE32(tvb, *offsetp);
8851 proto_tree_add_item(t, hf_x11_glx_GetTexImage_format, tvb, *offsetp, 4, byte_order);
8852 *offsetp += 4;
8853 f_type = VALUE32(tvb, *offsetp);
8854 proto_tree_add_item(t, hf_x11_glx_GetTexImage_type, tvb, *offsetp, 4, byte_order);
8855 *offsetp += 4;
8856 f_swap_bytes = VALUE8(tvb, *offsetp);
8857 proto_tree_add_item(t, hf_x11_glx_GetTexImage_swap_bytes, tvb, *offsetp, 1, byte_order);
8858 *offsetp += 1;
8860 static void glxGetTexImage_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8862 int f_length, length, sequence_number;
8863 int f_width;
8864 int f_height;
8865 int f_depth;
8867 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexImage");
8869 REPLY(reply);
8870 UNUSED(1);
8871 sequence_number = VALUE16(tvb, *offsetp);
8872 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8873 "sequencenumber: %d (glx-GetTexImage)", sequence_number);
8874 *offsetp += 2;
8875 f_length = VALUE32(tvb, *offsetp);
8876 length = f_length * 4 + 32;
8877 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8878 *offsetp += 4;
8879 UNUSED(8);
8880 f_width = VALUE32(tvb, *offsetp);
8881 proto_tree_add_item(t, hf_x11_glx_GetTexImage_reply_width, tvb, *offsetp, 4, byte_order);
8882 *offsetp += 4;
8883 f_height = VALUE32(tvb, *offsetp);
8884 proto_tree_add_item(t, hf_x11_glx_GetTexImage_reply_height, tvb, *offsetp, 4, byte_order);
8885 *offsetp += 4;
8886 f_depth = VALUE32(tvb, *offsetp);
8887 proto_tree_add_item(t, hf_x11_glx_GetTexImage_reply_depth, tvb, *offsetp, 4, byte_order);
8888 *offsetp += 4;
8889 UNUSED(4);
8890 listOfByte(tvb, offsetp, t, hf_x11_glx_GetTexImage_reply_data, (f_length * 4), byte_order);
8893 static void glxGetTexParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8895 int f_context_tag;
8896 int f_target;
8897 int f_pname;
8898 f_context_tag = VALUE32(tvb, *offsetp);
8899 proto_tree_add_item(t, hf_x11_glx_GetTexParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
8900 *offsetp += 4;
8901 f_target = VALUE32(tvb, *offsetp);
8902 proto_tree_add_item(t, hf_x11_glx_GetTexParameterfv_target, tvb, *offsetp, 4, byte_order);
8903 *offsetp += 4;
8904 f_pname = VALUE32(tvb, *offsetp);
8905 proto_tree_add_item(t, hf_x11_glx_GetTexParameterfv_pname, tvb, *offsetp, 4, byte_order);
8906 *offsetp += 4;
8908 static void glxGetTexParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8910 int f_length, length, sequence_number;
8911 int f_n;
8912 gfloat f_datum;
8914 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexParameterfv");
8916 REPLY(reply);
8917 UNUSED(1);
8918 sequence_number = VALUE16(tvb, *offsetp);
8919 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8920 "sequencenumber: %d (glx-GetTexParameterfv)", sequence_number);
8921 *offsetp += 2;
8922 f_length = VALUE32(tvb, *offsetp);
8923 length = f_length * 4 + 32;
8924 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8925 *offsetp += 4;
8926 UNUSED(4);
8927 f_n = VALUE32(tvb, *offsetp);
8928 proto_tree_add_item(t, hf_x11_glx_GetTexParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
8929 *offsetp += 4;
8930 f_datum = FLOAT(tvb, *offsetp);
8931 proto_tree_add_item(t, hf_x11_glx_GetTexParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
8932 *offsetp += 4;
8933 UNUSED(12);
8934 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetTexParameterfv_reply_data, hf_x11_glx_GetTexParameterfv_reply_data_item, f_n, byte_order);
8937 static void glxGetTexParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8939 int f_context_tag;
8940 int f_target;
8941 int f_pname;
8942 f_context_tag = VALUE32(tvb, *offsetp);
8943 proto_tree_add_item(t, hf_x11_glx_GetTexParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
8944 *offsetp += 4;
8945 f_target = VALUE32(tvb, *offsetp);
8946 proto_tree_add_item(t, hf_x11_glx_GetTexParameteriv_target, tvb, *offsetp, 4, byte_order);
8947 *offsetp += 4;
8948 f_pname = VALUE32(tvb, *offsetp);
8949 proto_tree_add_item(t, hf_x11_glx_GetTexParameteriv_pname, tvb, *offsetp, 4, byte_order);
8950 *offsetp += 4;
8952 static void glxGetTexParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
8954 int f_length, length, sequence_number;
8955 int f_n;
8956 int f_datum;
8958 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexParameteriv");
8960 REPLY(reply);
8961 UNUSED(1);
8962 sequence_number = VALUE16(tvb, *offsetp);
8963 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
8964 "sequencenumber: %d (glx-GetTexParameteriv)", sequence_number);
8965 *offsetp += 2;
8966 f_length = VALUE32(tvb, *offsetp);
8967 length = f_length * 4 + 32;
8968 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
8969 *offsetp += 4;
8970 UNUSED(4);
8971 f_n = VALUE32(tvb, *offsetp);
8972 proto_tree_add_item(t, hf_x11_glx_GetTexParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
8973 *offsetp += 4;
8974 f_datum = VALUE32(tvb, *offsetp);
8975 proto_tree_add_item(t, hf_x11_glx_GetTexParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
8976 *offsetp += 4;
8977 UNUSED(12);
8978 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetTexParameteriv_reply_data, hf_x11_glx_GetTexParameteriv_reply_data_item, f_n, byte_order);
8981 static void glxGetTexLevelParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
8983 int f_context_tag;
8984 int f_target;
8985 int f_level;
8986 int f_pname;
8987 f_context_tag = VALUE32(tvb, *offsetp);
8988 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
8989 *offsetp += 4;
8990 f_target = VALUE32(tvb, *offsetp);
8991 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_target, tvb, *offsetp, 4, byte_order);
8992 *offsetp += 4;
8993 f_level = VALUE32(tvb, *offsetp);
8994 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_level, tvb, *offsetp, 4, byte_order);
8995 *offsetp += 4;
8996 f_pname = VALUE32(tvb, *offsetp);
8997 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_pname, tvb, *offsetp, 4, byte_order);
8998 *offsetp += 4;
9000 static void glxGetTexLevelParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9002 int f_length, length, sequence_number;
9003 int f_n;
9004 gfloat f_datum;
9006 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexLevelParameterfv");
9008 REPLY(reply);
9009 UNUSED(1);
9010 sequence_number = VALUE16(tvb, *offsetp);
9011 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9012 "sequencenumber: %d (glx-GetTexLevelParameterfv)", sequence_number);
9013 *offsetp += 2;
9014 f_length = VALUE32(tvb, *offsetp);
9015 length = f_length * 4 + 32;
9016 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9017 *offsetp += 4;
9018 UNUSED(4);
9019 f_n = VALUE32(tvb, *offsetp);
9020 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
9021 *offsetp += 4;
9022 f_datum = FLOAT(tvb, *offsetp);
9023 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
9024 *offsetp += 4;
9025 UNUSED(12);
9026 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetTexLevelParameterfv_reply_data, hf_x11_glx_GetTexLevelParameterfv_reply_data_item, f_n, byte_order);
9029 static void glxGetTexLevelParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9031 int f_context_tag;
9032 int f_target;
9033 int f_level;
9034 int f_pname;
9035 f_context_tag = VALUE32(tvb, *offsetp);
9036 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
9037 *offsetp += 4;
9038 f_target = VALUE32(tvb, *offsetp);
9039 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_target, tvb, *offsetp, 4, byte_order);
9040 *offsetp += 4;
9041 f_level = VALUE32(tvb, *offsetp);
9042 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_level, tvb, *offsetp, 4, byte_order);
9043 *offsetp += 4;
9044 f_pname = VALUE32(tvb, *offsetp);
9045 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_pname, tvb, *offsetp, 4, byte_order);
9046 *offsetp += 4;
9048 static void glxGetTexLevelParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9050 int f_length, length, sequence_number;
9051 int f_n;
9052 int f_datum;
9054 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetTexLevelParameteriv");
9056 REPLY(reply);
9057 UNUSED(1);
9058 sequence_number = VALUE16(tvb, *offsetp);
9059 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9060 "sequencenumber: %d (glx-GetTexLevelParameteriv)", sequence_number);
9061 *offsetp += 2;
9062 f_length = VALUE32(tvb, *offsetp);
9063 length = f_length * 4 + 32;
9064 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9065 *offsetp += 4;
9066 UNUSED(4);
9067 f_n = VALUE32(tvb, *offsetp);
9068 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
9069 *offsetp += 4;
9070 f_datum = VALUE32(tvb, *offsetp);
9071 proto_tree_add_item(t, hf_x11_glx_GetTexLevelParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
9072 *offsetp += 4;
9073 UNUSED(12);
9074 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetTexLevelParameteriv_reply_data, hf_x11_glx_GetTexLevelParameteriv_reply_data_item, f_n, byte_order);
9077 static void glxIsList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9079 int f_context_tag;
9080 int f_list;
9081 f_context_tag = VALUE32(tvb, *offsetp);
9082 proto_tree_add_item(t, hf_x11_glx_IsList_context_tag, tvb, *offsetp, 4, byte_order);
9083 *offsetp += 4;
9084 f_list = VALUE32(tvb, *offsetp);
9085 proto_tree_add_item(t, hf_x11_glx_IsList_list, tvb, *offsetp, 4, byte_order);
9086 *offsetp += 4;
9088 static void glxIsList_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9090 int f_length, length, sequence_number;
9091 int f_ret_val;
9093 col_append_fstr(pinfo->cinfo, COL_INFO, "-IsList");
9095 REPLY(reply);
9096 UNUSED(1);
9097 sequence_number = VALUE16(tvb, *offsetp);
9098 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9099 "sequencenumber: %d (glx-IsList)", sequence_number);
9100 *offsetp += 2;
9101 f_length = VALUE32(tvb, *offsetp);
9102 length = f_length * 4 + 32;
9103 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9104 *offsetp += 4;
9105 f_ret_val = VALUE32(tvb, *offsetp);
9106 proto_tree_add_item(t, hf_x11_glx_IsList_reply_ret_val, tvb, *offsetp, 4, byte_order);
9107 *offsetp += 4;
9110 static void glxFlush(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9112 int f_context_tag;
9113 f_context_tag = VALUE32(tvb, *offsetp);
9114 proto_tree_add_item(t, hf_x11_glx_Flush_context_tag, tvb, *offsetp, 4, byte_order);
9115 *offsetp += 4;
9118 static void glxAreTexturesResident(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9120 int f_context_tag;
9121 int f_n;
9122 f_context_tag = VALUE32(tvb, *offsetp);
9123 proto_tree_add_item(t, hf_x11_glx_AreTexturesResident_context_tag, tvb, *offsetp, 4, byte_order);
9124 *offsetp += 4;
9125 f_n = VALUE32(tvb, *offsetp);
9126 proto_tree_add_item(t, hf_x11_glx_AreTexturesResident_n, tvb, *offsetp, 4, byte_order);
9127 *offsetp += 4;
9128 listOfCard32(tvb, offsetp, t, hf_x11_glx_AreTexturesResident_textures, hf_x11_glx_AreTexturesResident_textures_item, f_n, byte_order);
9129 length -= f_n * 4;
9131 static void glxAreTexturesResident_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9133 int f_length, length, sequence_number;
9134 int f_ret_val;
9136 col_append_fstr(pinfo->cinfo, COL_INFO, "-AreTexturesResident");
9138 REPLY(reply);
9139 UNUSED(1);
9140 sequence_number = VALUE16(tvb, *offsetp);
9141 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9142 "sequencenumber: %d (glx-AreTexturesResident)", sequence_number);
9143 *offsetp += 2;
9144 f_length = VALUE32(tvb, *offsetp);
9145 length = f_length * 4 + 32;
9146 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9147 *offsetp += 4;
9148 f_ret_val = VALUE32(tvb, *offsetp);
9149 proto_tree_add_item(t, hf_x11_glx_AreTexturesResident_reply_ret_val, tvb, *offsetp, 4, byte_order);
9150 *offsetp += 4;
9151 UNUSED(20);
9152 listOfByte(tvb, offsetp, t, hf_x11_glx_AreTexturesResident_reply_data, (f_length * 4), byte_order);
9155 static void glxDeleteTextures(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9157 int f_context_tag;
9158 int f_n;
9159 f_context_tag = VALUE32(tvb, *offsetp);
9160 proto_tree_add_item(t, hf_x11_glx_DeleteTextures_context_tag, tvb, *offsetp, 4, byte_order);
9161 *offsetp += 4;
9162 f_n = VALUE32(tvb, *offsetp);
9163 proto_tree_add_item(t, hf_x11_glx_DeleteTextures_n, tvb, *offsetp, 4, byte_order);
9164 *offsetp += 4;
9165 listOfCard32(tvb, offsetp, t, hf_x11_glx_DeleteTextures_textures, hf_x11_glx_DeleteTextures_textures_item, f_n, byte_order);
9166 length -= f_n * 4;
9169 static void glxGenTextures(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9171 int f_context_tag;
9172 int f_n;
9173 f_context_tag = VALUE32(tvb, *offsetp);
9174 proto_tree_add_item(t, hf_x11_glx_GenTextures_context_tag, tvb, *offsetp, 4, byte_order);
9175 *offsetp += 4;
9176 f_n = VALUE32(tvb, *offsetp);
9177 proto_tree_add_item(t, hf_x11_glx_GenTextures_n, tvb, *offsetp, 4, byte_order);
9178 *offsetp += 4;
9180 static void glxGenTextures_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9182 int f_length, length, sequence_number;
9184 col_append_fstr(pinfo->cinfo, COL_INFO, "-GenTextures");
9186 REPLY(reply);
9187 UNUSED(1);
9188 sequence_number = VALUE16(tvb, *offsetp);
9189 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9190 "sequencenumber: %d (glx-GenTextures)", sequence_number);
9191 *offsetp += 2;
9192 f_length = VALUE32(tvb, *offsetp);
9193 length = f_length * 4 + 32;
9194 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9195 *offsetp += 4;
9196 UNUSED(24);
9197 listOfCard32(tvb, offsetp, t, hf_x11_glx_GenTextures_reply_data, hf_x11_glx_GenTextures_reply_data_item, f_length, byte_order);
9200 static void glxIsTexture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9202 int f_context_tag;
9203 int f_texture;
9204 f_context_tag = VALUE32(tvb, *offsetp);
9205 proto_tree_add_item(t, hf_x11_glx_IsTexture_context_tag, tvb, *offsetp, 4, byte_order);
9206 *offsetp += 4;
9207 f_texture = VALUE32(tvb, *offsetp);
9208 proto_tree_add_item(t, hf_x11_glx_IsTexture_texture, tvb, *offsetp, 4, byte_order);
9209 *offsetp += 4;
9211 static void glxIsTexture_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9213 int f_length, length, sequence_number;
9214 int f_ret_val;
9216 col_append_fstr(pinfo->cinfo, COL_INFO, "-IsTexture");
9218 REPLY(reply);
9219 UNUSED(1);
9220 sequence_number = VALUE16(tvb, *offsetp);
9221 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9222 "sequencenumber: %d (glx-IsTexture)", sequence_number);
9223 *offsetp += 2;
9224 f_length = VALUE32(tvb, *offsetp);
9225 length = f_length * 4 + 32;
9226 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9227 *offsetp += 4;
9228 f_ret_val = VALUE32(tvb, *offsetp);
9229 proto_tree_add_item(t, hf_x11_glx_IsTexture_reply_ret_val, tvb, *offsetp, 4, byte_order);
9230 *offsetp += 4;
9233 static void glxGetColorTable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9235 int f_context_tag;
9236 int f_target;
9237 int f_format;
9238 int f_type;
9239 int f_swap_bytes;
9240 f_context_tag = VALUE32(tvb, *offsetp);
9241 proto_tree_add_item(t, hf_x11_glx_GetColorTable_context_tag, tvb, *offsetp, 4, byte_order);
9242 *offsetp += 4;
9243 f_target = VALUE32(tvb, *offsetp);
9244 proto_tree_add_item(t, hf_x11_glx_GetColorTable_target, tvb, *offsetp, 4, byte_order);
9245 *offsetp += 4;
9246 f_format = VALUE32(tvb, *offsetp);
9247 proto_tree_add_item(t, hf_x11_glx_GetColorTable_format, tvb, *offsetp, 4, byte_order);
9248 *offsetp += 4;
9249 f_type = VALUE32(tvb, *offsetp);
9250 proto_tree_add_item(t, hf_x11_glx_GetColorTable_type, tvb, *offsetp, 4, byte_order);
9251 *offsetp += 4;
9252 f_swap_bytes = VALUE8(tvb, *offsetp);
9253 proto_tree_add_item(t, hf_x11_glx_GetColorTable_swap_bytes, tvb, *offsetp, 1, byte_order);
9254 *offsetp += 1;
9256 static void glxGetColorTable_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9258 int f_length, length, sequence_number;
9259 int f_width;
9261 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetColorTable");
9263 REPLY(reply);
9264 UNUSED(1);
9265 sequence_number = VALUE16(tvb, *offsetp);
9266 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9267 "sequencenumber: %d (glx-GetColorTable)", sequence_number);
9268 *offsetp += 2;
9269 f_length = VALUE32(tvb, *offsetp);
9270 length = f_length * 4 + 32;
9271 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9272 *offsetp += 4;
9273 UNUSED(8);
9274 f_width = VALUE32(tvb, *offsetp);
9275 proto_tree_add_item(t, hf_x11_glx_GetColorTable_reply_width, tvb, *offsetp, 4, byte_order);
9276 *offsetp += 4;
9277 UNUSED(12);
9278 listOfByte(tvb, offsetp, t, hf_x11_glx_GetColorTable_reply_data, (f_length * 4), byte_order);
9281 static void glxGetColorTableParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9283 int f_context_tag;
9284 int f_target;
9285 int f_pname;
9286 f_context_tag = VALUE32(tvb, *offsetp);
9287 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
9288 *offsetp += 4;
9289 f_target = VALUE32(tvb, *offsetp);
9290 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameterfv_target, tvb, *offsetp, 4, byte_order);
9291 *offsetp += 4;
9292 f_pname = VALUE32(tvb, *offsetp);
9293 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameterfv_pname, tvb, *offsetp, 4, byte_order);
9294 *offsetp += 4;
9296 static void glxGetColorTableParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9298 int f_length, length, sequence_number;
9299 int f_n;
9300 gfloat f_datum;
9302 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetColorTableParameterfv");
9304 REPLY(reply);
9305 UNUSED(1);
9306 sequence_number = VALUE16(tvb, *offsetp);
9307 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9308 "sequencenumber: %d (glx-GetColorTableParameterfv)", sequence_number);
9309 *offsetp += 2;
9310 f_length = VALUE32(tvb, *offsetp);
9311 length = f_length * 4 + 32;
9312 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9313 *offsetp += 4;
9314 UNUSED(4);
9315 f_n = VALUE32(tvb, *offsetp);
9316 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
9317 *offsetp += 4;
9318 f_datum = FLOAT(tvb, *offsetp);
9319 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
9320 *offsetp += 4;
9321 UNUSED(12);
9322 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetColorTableParameterfv_reply_data, hf_x11_glx_GetColorTableParameterfv_reply_data_item, f_n, byte_order);
9325 static void glxGetColorTableParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9327 int f_context_tag;
9328 int f_target;
9329 int f_pname;
9330 f_context_tag = VALUE32(tvb, *offsetp);
9331 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
9332 *offsetp += 4;
9333 f_target = VALUE32(tvb, *offsetp);
9334 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameteriv_target, tvb, *offsetp, 4, byte_order);
9335 *offsetp += 4;
9336 f_pname = VALUE32(tvb, *offsetp);
9337 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameteriv_pname, tvb, *offsetp, 4, byte_order);
9338 *offsetp += 4;
9340 static void glxGetColorTableParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9342 int f_length, length, sequence_number;
9343 int f_n;
9344 int f_datum;
9346 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetColorTableParameteriv");
9348 REPLY(reply);
9349 UNUSED(1);
9350 sequence_number = VALUE16(tvb, *offsetp);
9351 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9352 "sequencenumber: %d (glx-GetColorTableParameteriv)", sequence_number);
9353 *offsetp += 2;
9354 f_length = VALUE32(tvb, *offsetp);
9355 length = f_length * 4 + 32;
9356 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9357 *offsetp += 4;
9358 UNUSED(4);
9359 f_n = VALUE32(tvb, *offsetp);
9360 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
9361 *offsetp += 4;
9362 f_datum = VALUE32(tvb, *offsetp);
9363 proto_tree_add_item(t, hf_x11_glx_GetColorTableParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
9364 *offsetp += 4;
9365 UNUSED(12);
9366 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetColorTableParameteriv_reply_data, hf_x11_glx_GetColorTableParameteriv_reply_data_item, f_n, byte_order);
9369 static void glxGetConvolutionFilter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9371 int f_context_tag;
9372 int f_target;
9373 int f_format;
9374 int f_type;
9375 int f_swap_bytes;
9376 f_context_tag = VALUE32(tvb, *offsetp);
9377 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_context_tag, tvb, *offsetp, 4, byte_order);
9378 *offsetp += 4;
9379 f_target = VALUE32(tvb, *offsetp);
9380 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_target, tvb, *offsetp, 4, byte_order);
9381 *offsetp += 4;
9382 f_format = VALUE32(tvb, *offsetp);
9383 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_format, tvb, *offsetp, 4, byte_order);
9384 *offsetp += 4;
9385 f_type = VALUE32(tvb, *offsetp);
9386 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_type, tvb, *offsetp, 4, byte_order);
9387 *offsetp += 4;
9388 f_swap_bytes = VALUE8(tvb, *offsetp);
9389 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_swap_bytes, tvb, *offsetp, 1, byte_order);
9390 *offsetp += 1;
9392 static void glxGetConvolutionFilter_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9394 int f_length, length, sequence_number;
9395 int f_width;
9396 int f_height;
9398 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetConvolutionFilter");
9400 REPLY(reply);
9401 UNUSED(1);
9402 sequence_number = VALUE16(tvb, *offsetp);
9403 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9404 "sequencenumber: %d (glx-GetConvolutionFilter)", sequence_number);
9405 *offsetp += 2;
9406 f_length = VALUE32(tvb, *offsetp);
9407 length = f_length * 4 + 32;
9408 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9409 *offsetp += 4;
9410 UNUSED(8);
9411 f_width = VALUE32(tvb, *offsetp);
9412 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_reply_width, tvb, *offsetp, 4, byte_order);
9413 *offsetp += 4;
9414 f_height = VALUE32(tvb, *offsetp);
9415 proto_tree_add_item(t, hf_x11_glx_GetConvolutionFilter_reply_height, tvb, *offsetp, 4, byte_order);
9416 *offsetp += 4;
9417 UNUSED(8);
9418 listOfByte(tvb, offsetp, t, hf_x11_glx_GetConvolutionFilter_reply_data, (f_length * 4), byte_order);
9421 static void glxGetConvolutionParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9423 int f_context_tag;
9424 int f_target;
9425 int f_pname;
9426 f_context_tag = VALUE32(tvb, *offsetp);
9427 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
9428 *offsetp += 4;
9429 f_target = VALUE32(tvb, *offsetp);
9430 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameterfv_target, tvb, *offsetp, 4, byte_order);
9431 *offsetp += 4;
9432 f_pname = VALUE32(tvb, *offsetp);
9433 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameterfv_pname, tvb, *offsetp, 4, byte_order);
9434 *offsetp += 4;
9436 static void glxGetConvolutionParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9438 int f_length, length, sequence_number;
9439 int f_n;
9440 gfloat f_datum;
9442 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetConvolutionParameterfv");
9444 REPLY(reply);
9445 UNUSED(1);
9446 sequence_number = VALUE16(tvb, *offsetp);
9447 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9448 "sequencenumber: %d (glx-GetConvolutionParameterfv)", sequence_number);
9449 *offsetp += 2;
9450 f_length = VALUE32(tvb, *offsetp);
9451 length = f_length * 4 + 32;
9452 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9453 *offsetp += 4;
9454 UNUSED(4);
9455 f_n = VALUE32(tvb, *offsetp);
9456 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
9457 *offsetp += 4;
9458 f_datum = FLOAT(tvb, *offsetp);
9459 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
9460 *offsetp += 4;
9461 UNUSED(12);
9462 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetConvolutionParameterfv_reply_data, hf_x11_glx_GetConvolutionParameterfv_reply_data_item, f_n, byte_order);
9465 static void glxGetConvolutionParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9467 int f_context_tag;
9468 int f_target;
9469 int f_pname;
9470 f_context_tag = VALUE32(tvb, *offsetp);
9471 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
9472 *offsetp += 4;
9473 f_target = VALUE32(tvb, *offsetp);
9474 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameteriv_target, tvb, *offsetp, 4, byte_order);
9475 *offsetp += 4;
9476 f_pname = VALUE32(tvb, *offsetp);
9477 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameteriv_pname, tvb, *offsetp, 4, byte_order);
9478 *offsetp += 4;
9480 static void glxGetConvolutionParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9482 int f_length, length, sequence_number;
9483 int f_n;
9484 int f_datum;
9486 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetConvolutionParameteriv");
9488 REPLY(reply);
9489 UNUSED(1);
9490 sequence_number = VALUE16(tvb, *offsetp);
9491 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9492 "sequencenumber: %d (glx-GetConvolutionParameteriv)", sequence_number);
9493 *offsetp += 2;
9494 f_length = VALUE32(tvb, *offsetp);
9495 length = f_length * 4 + 32;
9496 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9497 *offsetp += 4;
9498 UNUSED(4);
9499 f_n = VALUE32(tvb, *offsetp);
9500 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
9501 *offsetp += 4;
9502 f_datum = VALUE32(tvb, *offsetp);
9503 proto_tree_add_item(t, hf_x11_glx_GetConvolutionParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
9504 *offsetp += 4;
9505 UNUSED(12);
9506 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetConvolutionParameteriv_reply_data, hf_x11_glx_GetConvolutionParameteriv_reply_data_item, f_n, byte_order);
9509 static void glxGetSeparableFilter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9511 int f_context_tag;
9512 int f_target;
9513 int f_format;
9514 int f_type;
9515 int f_swap_bytes;
9516 f_context_tag = VALUE32(tvb, *offsetp);
9517 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_context_tag, tvb, *offsetp, 4, byte_order);
9518 *offsetp += 4;
9519 f_target = VALUE32(tvb, *offsetp);
9520 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_target, tvb, *offsetp, 4, byte_order);
9521 *offsetp += 4;
9522 f_format = VALUE32(tvb, *offsetp);
9523 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_format, tvb, *offsetp, 4, byte_order);
9524 *offsetp += 4;
9525 f_type = VALUE32(tvb, *offsetp);
9526 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_type, tvb, *offsetp, 4, byte_order);
9527 *offsetp += 4;
9528 f_swap_bytes = VALUE8(tvb, *offsetp);
9529 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_swap_bytes, tvb, *offsetp, 1, byte_order);
9530 *offsetp += 1;
9532 static void glxGetSeparableFilter_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9534 int f_length, length, sequence_number;
9535 int f_row_w;
9536 int f_col_h;
9538 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSeparableFilter");
9540 REPLY(reply);
9541 UNUSED(1);
9542 sequence_number = VALUE16(tvb, *offsetp);
9543 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9544 "sequencenumber: %d (glx-GetSeparableFilter)", sequence_number);
9545 *offsetp += 2;
9546 f_length = VALUE32(tvb, *offsetp);
9547 length = f_length * 4 + 32;
9548 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9549 *offsetp += 4;
9550 UNUSED(8);
9551 f_row_w = VALUE32(tvb, *offsetp);
9552 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_reply_row_w, tvb, *offsetp, 4, byte_order);
9553 *offsetp += 4;
9554 f_col_h = VALUE32(tvb, *offsetp);
9555 proto_tree_add_item(t, hf_x11_glx_GetSeparableFilter_reply_col_h, tvb, *offsetp, 4, byte_order);
9556 *offsetp += 4;
9557 UNUSED(8);
9558 listOfByte(tvb, offsetp, t, hf_x11_glx_GetSeparableFilter_reply_rows_and_cols, (f_length * 4), byte_order);
9561 static void glxGetHistogram(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9563 int f_context_tag;
9564 int f_target;
9565 int f_format;
9566 int f_type;
9567 int f_swap_bytes;
9568 int f_reset;
9569 f_context_tag = VALUE32(tvb, *offsetp);
9570 proto_tree_add_item(t, hf_x11_glx_GetHistogram_context_tag, tvb, *offsetp, 4, byte_order);
9571 *offsetp += 4;
9572 f_target = VALUE32(tvb, *offsetp);
9573 proto_tree_add_item(t, hf_x11_glx_GetHistogram_target, tvb, *offsetp, 4, byte_order);
9574 *offsetp += 4;
9575 f_format = VALUE32(tvb, *offsetp);
9576 proto_tree_add_item(t, hf_x11_glx_GetHistogram_format, tvb, *offsetp, 4, byte_order);
9577 *offsetp += 4;
9578 f_type = VALUE32(tvb, *offsetp);
9579 proto_tree_add_item(t, hf_x11_glx_GetHistogram_type, tvb, *offsetp, 4, byte_order);
9580 *offsetp += 4;
9581 f_swap_bytes = VALUE8(tvb, *offsetp);
9582 proto_tree_add_item(t, hf_x11_glx_GetHistogram_swap_bytes, tvb, *offsetp, 1, byte_order);
9583 *offsetp += 1;
9584 f_reset = VALUE8(tvb, *offsetp);
9585 proto_tree_add_item(t, hf_x11_glx_GetHistogram_reset, tvb, *offsetp, 1, byte_order);
9586 *offsetp += 1;
9588 static void glxGetHistogram_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9590 int f_length, length, sequence_number;
9591 int f_width;
9593 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetHistogram");
9595 REPLY(reply);
9596 UNUSED(1);
9597 sequence_number = VALUE16(tvb, *offsetp);
9598 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9599 "sequencenumber: %d (glx-GetHistogram)", sequence_number);
9600 *offsetp += 2;
9601 f_length = VALUE32(tvb, *offsetp);
9602 length = f_length * 4 + 32;
9603 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9604 *offsetp += 4;
9605 UNUSED(8);
9606 f_width = VALUE32(tvb, *offsetp);
9607 proto_tree_add_item(t, hf_x11_glx_GetHistogram_reply_width, tvb, *offsetp, 4, byte_order);
9608 *offsetp += 4;
9609 UNUSED(12);
9610 listOfByte(tvb, offsetp, t, hf_x11_glx_GetHistogram_reply_data, (f_length * 4), byte_order);
9613 static void glxGetHistogramParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9615 int f_context_tag;
9616 int f_target;
9617 int f_pname;
9618 f_context_tag = VALUE32(tvb, *offsetp);
9619 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
9620 *offsetp += 4;
9621 f_target = VALUE32(tvb, *offsetp);
9622 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameterfv_target, tvb, *offsetp, 4, byte_order);
9623 *offsetp += 4;
9624 f_pname = VALUE32(tvb, *offsetp);
9625 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameterfv_pname, tvb, *offsetp, 4, byte_order);
9626 *offsetp += 4;
9628 static void glxGetHistogramParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9630 int f_length, length, sequence_number;
9631 int f_n;
9632 gfloat f_datum;
9634 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetHistogramParameterfv");
9636 REPLY(reply);
9637 UNUSED(1);
9638 sequence_number = VALUE16(tvb, *offsetp);
9639 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9640 "sequencenumber: %d (glx-GetHistogramParameterfv)", sequence_number);
9641 *offsetp += 2;
9642 f_length = VALUE32(tvb, *offsetp);
9643 length = f_length * 4 + 32;
9644 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9645 *offsetp += 4;
9646 UNUSED(4);
9647 f_n = VALUE32(tvb, *offsetp);
9648 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
9649 *offsetp += 4;
9650 f_datum = FLOAT(tvb, *offsetp);
9651 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
9652 *offsetp += 4;
9653 UNUSED(12);
9654 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetHistogramParameterfv_reply_data, hf_x11_glx_GetHistogramParameterfv_reply_data_item, f_n, byte_order);
9657 static void glxGetHistogramParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9659 int f_context_tag;
9660 int f_target;
9661 int f_pname;
9662 f_context_tag = VALUE32(tvb, *offsetp);
9663 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
9664 *offsetp += 4;
9665 f_target = VALUE32(tvb, *offsetp);
9666 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameteriv_target, tvb, *offsetp, 4, byte_order);
9667 *offsetp += 4;
9668 f_pname = VALUE32(tvb, *offsetp);
9669 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameteriv_pname, tvb, *offsetp, 4, byte_order);
9670 *offsetp += 4;
9672 static void glxGetHistogramParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9674 int f_length, length, sequence_number;
9675 int f_n;
9676 int f_datum;
9678 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetHistogramParameteriv");
9680 REPLY(reply);
9681 UNUSED(1);
9682 sequence_number = VALUE16(tvb, *offsetp);
9683 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9684 "sequencenumber: %d (glx-GetHistogramParameteriv)", sequence_number);
9685 *offsetp += 2;
9686 f_length = VALUE32(tvb, *offsetp);
9687 length = f_length * 4 + 32;
9688 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9689 *offsetp += 4;
9690 UNUSED(4);
9691 f_n = VALUE32(tvb, *offsetp);
9692 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
9693 *offsetp += 4;
9694 f_datum = VALUE32(tvb, *offsetp);
9695 proto_tree_add_item(t, hf_x11_glx_GetHistogramParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
9696 *offsetp += 4;
9697 UNUSED(12);
9698 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetHistogramParameteriv_reply_data, hf_x11_glx_GetHistogramParameteriv_reply_data_item, f_n, byte_order);
9701 static void glxGetMinmax(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9703 int f_context_tag;
9704 int f_target;
9705 int f_format;
9706 int f_type;
9707 int f_swap_bytes;
9708 int f_reset;
9709 f_context_tag = VALUE32(tvb, *offsetp);
9710 proto_tree_add_item(t, hf_x11_glx_GetMinmax_context_tag, tvb, *offsetp, 4, byte_order);
9711 *offsetp += 4;
9712 f_target = VALUE32(tvb, *offsetp);
9713 proto_tree_add_item(t, hf_x11_glx_GetMinmax_target, tvb, *offsetp, 4, byte_order);
9714 *offsetp += 4;
9715 f_format = VALUE32(tvb, *offsetp);
9716 proto_tree_add_item(t, hf_x11_glx_GetMinmax_format, tvb, *offsetp, 4, byte_order);
9717 *offsetp += 4;
9718 f_type = VALUE32(tvb, *offsetp);
9719 proto_tree_add_item(t, hf_x11_glx_GetMinmax_type, tvb, *offsetp, 4, byte_order);
9720 *offsetp += 4;
9721 f_swap_bytes = VALUE8(tvb, *offsetp);
9722 proto_tree_add_item(t, hf_x11_glx_GetMinmax_swap_bytes, tvb, *offsetp, 1, byte_order);
9723 *offsetp += 1;
9724 f_reset = VALUE8(tvb, *offsetp);
9725 proto_tree_add_item(t, hf_x11_glx_GetMinmax_reset, tvb, *offsetp, 1, byte_order);
9726 *offsetp += 1;
9728 static void glxGetMinmax_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9730 int f_length, length, sequence_number;
9732 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMinmax");
9734 REPLY(reply);
9735 UNUSED(1);
9736 sequence_number = VALUE16(tvb, *offsetp);
9737 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9738 "sequencenumber: %d (glx-GetMinmax)", sequence_number);
9739 *offsetp += 2;
9740 f_length = VALUE32(tvb, *offsetp);
9741 length = f_length * 4 + 32;
9742 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9743 *offsetp += 4;
9744 UNUSED(24);
9745 listOfByte(tvb, offsetp, t, hf_x11_glx_GetMinmax_reply_data, (f_length * 4), byte_order);
9748 static void glxGetMinmaxParameterfv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9750 int f_context_tag;
9751 int f_target;
9752 int f_pname;
9753 f_context_tag = VALUE32(tvb, *offsetp);
9754 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameterfv_context_tag, tvb, *offsetp, 4, byte_order);
9755 *offsetp += 4;
9756 f_target = VALUE32(tvb, *offsetp);
9757 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameterfv_target, tvb, *offsetp, 4, byte_order);
9758 *offsetp += 4;
9759 f_pname = VALUE32(tvb, *offsetp);
9760 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameterfv_pname, tvb, *offsetp, 4, byte_order);
9761 *offsetp += 4;
9763 static void glxGetMinmaxParameterfv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9765 int f_length, length, sequence_number;
9766 int f_n;
9767 gfloat f_datum;
9769 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMinmaxParameterfv");
9771 REPLY(reply);
9772 UNUSED(1);
9773 sequence_number = VALUE16(tvb, *offsetp);
9774 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9775 "sequencenumber: %d (glx-GetMinmaxParameterfv)", sequence_number);
9776 *offsetp += 2;
9777 f_length = VALUE32(tvb, *offsetp);
9778 length = f_length * 4 + 32;
9779 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9780 *offsetp += 4;
9781 UNUSED(4);
9782 f_n = VALUE32(tvb, *offsetp);
9783 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameterfv_reply_n, tvb, *offsetp, 4, byte_order);
9784 *offsetp += 4;
9785 f_datum = FLOAT(tvb, *offsetp);
9786 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameterfv_reply_datum, tvb, *offsetp, 4, byte_order);
9787 *offsetp += 4;
9788 UNUSED(12);
9789 listOfFloat(tvb, offsetp, t, hf_x11_glx_GetMinmaxParameterfv_reply_data, hf_x11_glx_GetMinmaxParameterfv_reply_data_item, f_n, byte_order);
9792 static void glxGetMinmaxParameteriv(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9794 int f_context_tag;
9795 int f_target;
9796 int f_pname;
9797 f_context_tag = VALUE32(tvb, *offsetp);
9798 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameteriv_context_tag, tvb, *offsetp, 4, byte_order);
9799 *offsetp += 4;
9800 f_target = VALUE32(tvb, *offsetp);
9801 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameteriv_target, tvb, *offsetp, 4, byte_order);
9802 *offsetp += 4;
9803 f_pname = VALUE32(tvb, *offsetp);
9804 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameteriv_pname, tvb, *offsetp, 4, byte_order);
9805 *offsetp += 4;
9807 static void glxGetMinmaxParameteriv_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9809 int f_length, length, sequence_number;
9810 int f_n;
9811 int f_datum;
9813 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMinmaxParameteriv");
9815 REPLY(reply);
9816 UNUSED(1);
9817 sequence_number = VALUE16(tvb, *offsetp);
9818 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9819 "sequencenumber: %d (glx-GetMinmaxParameteriv)", sequence_number);
9820 *offsetp += 2;
9821 f_length = VALUE32(tvb, *offsetp);
9822 length = f_length * 4 + 32;
9823 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9824 *offsetp += 4;
9825 UNUSED(4);
9826 f_n = VALUE32(tvb, *offsetp);
9827 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameteriv_reply_n, tvb, *offsetp, 4, byte_order);
9828 *offsetp += 4;
9829 f_datum = VALUE32(tvb, *offsetp);
9830 proto_tree_add_item(t, hf_x11_glx_GetMinmaxParameteriv_reply_datum, tvb, *offsetp, 4, byte_order);
9831 *offsetp += 4;
9832 UNUSED(12);
9833 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetMinmaxParameteriv_reply_data, hf_x11_glx_GetMinmaxParameteriv_reply_data_item, f_n, byte_order);
9836 static void glxGetCompressedTexImageARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9838 int f_context_tag;
9839 int f_target;
9840 int f_level;
9841 f_context_tag = VALUE32(tvb, *offsetp);
9842 proto_tree_add_item(t, hf_x11_glx_GetCompressedTexImageARB_context_tag, tvb, *offsetp, 4, byte_order);
9843 *offsetp += 4;
9844 f_target = VALUE32(tvb, *offsetp);
9845 proto_tree_add_item(t, hf_x11_glx_GetCompressedTexImageARB_target, tvb, *offsetp, 4, byte_order);
9846 *offsetp += 4;
9847 f_level = VALUE32(tvb, *offsetp);
9848 proto_tree_add_item(t, hf_x11_glx_GetCompressedTexImageARB_level, tvb, *offsetp, 4, byte_order);
9849 *offsetp += 4;
9851 static void glxGetCompressedTexImageARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9853 int f_length, length, sequence_number;
9854 int f_size;
9856 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCompressedTexImageARB");
9858 REPLY(reply);
9859 UNUSED(1);
9860 sequence_number = VALUE16(tvb, *offsetp);
9861 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9862 "sequencenumber: %d (glx-GetCompressedTexImageARB)", sequence_number);
9863 *offsetp += 2;
9864 f_length = VALUE32(tvb, *offsetp);
9865 length = f_length * 4 + 32;
9866 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9867 *offsetp += 4;
9868 UNUSED(8);
9869 f_size = VALUE32(tvb, *offsetp);
9870 proto_tree_add_item(t, hf_x11_glx_GetCompressedTexImageARB_reply_size, tvb, *offsetp, 4, byte_order);
9871 *offsetp += 4;
9872 UNUSED(12);
9873 listOfByte(tvb, offsetp, t, hf_x11_glx_GetCompressedTexImageARB_reply_data, (f_length * 4), byte_order);
9876 static void glxDeleteQueriesARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9878 int f_context_tag;
9879 int f_n;
9880 f_context_tag = VALUE32(tvb, *offsetp);
9881 proto_tree_add_item(t, hf_x11_glx_DeleteQueriesARB_context_tag, tvb, *offsetp, 4, byte_order);
9882 *offsetp += 4;
9883 f_n = VALUE32(tvb, *offsetp);
9884 proto_tree_add_item(t, hf_x11_glx_DeleteQueriesARB_n, tvb, *offsetp, 4, byte_order);
9885 *offsetp += 4;
9886 listOfCard32(tvb, offsetp, t, hf_x11_glx_DeleteQueriesARB_ids, hf_x11_glx_DeleteQueriesARB_ids_item, f_n, byte_order);
9887 length -= f_n * 4;
9890 static void glxGenQueriesARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9892 int f_context_tag;
9893 int f_n;
9894 f_context_tag = VALUE32(tvb, *offsetp);
9895 proto_tree_add_item(t, hf_x11_glx_GenQueriesARB_context_tag, tvb, *offsetp, 4, byte_order);
9896 *offsetp += 4;
9897 f_n = VALUE32(tvb, *offsetp);
9898 proto_tree_add_item(t, hf_x11_glx_GenQueriesARB_n, tvb, *offsetp, 4, byte_order);
9899 *offsetp += 4;
9901 static void glxGenQueriesARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9903 int f_length, length, sequence_number;
9905 col_append_fstr(pinfo->cinfo, COL_INFO, "-GenQueriesARB");
9907 REPLY(reply);
9908 UNUSED(1);
9909 sequence_number = VALUE16(tvb, *offsetp);
9910 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9911 "sequencenumber: %d (glx-GenQueriesARB)", sequence_number);
9912 *offsetp += 2;
9913 f_length = VALUE32(tvb, *offsetp);
9914 length = f_length * 4 + 32;
9915 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9916 *offsetp += 4;
9917 UNUSED(24);
9918 listOfCard32(tvb, offsetp, t, hf_x11_glx_GenQueriesARB_reply_data, hf_x11_glx_GenQueriesARB_reply_data_item, f_length, byte_order);
9921 static void glxIsQueryARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9923 int f_context_tag;
9924 int f_id;
9925 f_context_tag = VALUE32(tvb, *offsetp);
9926 proto_tree_add_item(t, hf_x11_glx_IsQueryARB_context_tag, tvb, *offsetp, 4, byte_order);
9927 *offsetp += 4;
9928 f_id = VALUE32(tvb, *offsetp);
9929 proto_tree_add_item(t, hf_x11_glx_IsQueryARB_id, tvb, *offsetp, 4, byte_order);
9930 *offsetp += 4;
9932 static void glxIsQueryARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9934 int f_length, length, sequence_number;
9935 int f_ret_val;
9937 col_append_fstr(pinfo->cinfo, COL_INFO, "-IsQueryARB");
9939 REPLY(reply);
9940 UNUSED(1);
9941 sequence_number = VALUE16(tvb, *offsetp);
9942 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9943 "sequencenumber: %d (glx-IsQueryARB)", sequence_number);
9944 *offsetp += 2;
9945 f_length = VALUE32(tvb, *offsetp);
9946 length = f_length * 4 + 32;
9947 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9948 *offsetp += 4;
9949 f_ret_val = VALUE32(tvb, *offsetp);
9950 proto_tree_add_item(t, hf_x11_glx_IsQueryARB_reply_ret_val, tvb, *offsetp, 4, byte_order);
9951 *offsetp += 4;
9954 static void glxGetQueryivARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
9956 int f_context_tag;
9957 int f_target;
9958 int f_pname;
9959 f_context_tag = VALUE32(tvb, *offsetp);
9960 proto_tree_add_item(t, hf_x11_glx_GetQueryivARB_context_tag, tvb, *offsetp, 4, byte_order);
9961 *offsetp += 4;
9962 f_target = VALUE32(tvb, *offsetp);
9963 proto_tree_add_item(t, hf_x11_glx_GetQueryivARB_target, tvb, *offsetp, 4, byte_order);
9964 *offsetp += 4;
9965 f_pname = VALUE32(tvb, *offsetp);
9966 proto_tree_add_item(t, hf_x11_glx_GetQueryivARB_pname, tvb, *offsetp, 4, byte_order);
9967 *offsetp += 4;
9969 static void glxGetQueryivARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
9971 int f_length, length, sequence_number;
9972 int f_n;
9973 int f_datum;
9975 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetQueryivARB");
9977 REPLY(reply);
9978 UNUSED(1);
9979 sequence_number = VALUE16(tvb, *offsetp);
9980 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
9981 "sequencenumber: %d (glx-GetQueryivARB)", sequence_number);
9982 *offsetp += 2;
9983 f_length = VALUE32(tvb, *offsetp);
9984 length = f_length * 4 + 32;
9985 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
9986 *offsetp += 4;
9987 UNUSED(4);
9988 f_n = VALUE32(tvb, *offsetp);
9989 proto_tree_add_item(t, hf_x11_glx_GetQueryivARB_reply_n, tvb, *offsetp, 4, byte_order);
9990 *offsetp += 4;
9991 f_datum = VALUE32(tvb, *offsetp);
9992 proto_tree_add_item(t, hf_x11_glx_GetQueryivARB_reply_datum, tvb, *offsetp, 4, byte_order);
9993 *offsetp += 4;
9994 UNUSED(12);
9995 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetQueryivARB_reply_data, hf_x11_glx_GetQueryivARB_reply_data_item, f_n, byte_order);
9998 static void glxGetQueryObjectivARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10000 int f_context_tag;
10001 int f_id;
10002 int f_pname;
10003 f_context_tag = VALUE32(tvb, *offsetp);
10004 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectivARB_context_tag, tvb, *offsetp, 4, byte_order);
10005 *offsetp += 4;
10006 f_id = VALUE32(tvb, *offsetp);
10007 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectivARB_id, tvb, *offsetp, 4, byte_order);
10008 *offsetp += 4;
10009 f_pname = VALUE32(tvb, *offsetp);
10010 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectivARB_pname, tvb, *offsetp, 4, byte_order);
10011 *offsetp += 4;
10013 static void glxGetQueryObjectivARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10015 int f_length, length, sequence_number;
10016 int f_n;
10017 int f_datum;
10019 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetQueryObjectivARB");
10021 REPLY(reply);
10022 UNUSED(1);
10023 sequence_number = VALUE16(tvb, *offsetp);
10024 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10025 "sequencenumber: %d (glx-GetQueryObjectivARB)", sequence_number);
10026 *offsetp += 2;
10027 f_length = VALUE32(tvb, *offsetp);
10028 length = f_length * 4 + 32;
10029 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10030 *offsetp += 4;
10031 UNUSED(4);
10032 f_n = VALUE32(tvb, *offsetp);
10033 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectivARB_reply_n, tvb, *offsetp, 4, byte_order);
10034 *offsetp += 4;
10035 f_datum = VALUE32(tvb, *offsetp);
10036 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectivARB_reply_datum, tvb, *offsetp, 4, byte_order);
10037 *offsetp += 4;
10038 UNUSED(12);
10039 listOfInt32(tvb, offsetp, t, hf_x11_glx_GetQueryObjectivARB_reply_data, hf_x11_glx_GetQueryObjectivARB_reply_data_item, f_n, byte_order);
10042 static void glxGetQueryObjectuivARB(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10044 int f_context_tag;
10045 int f_id;
10046 int f_pname;
10047 f_context_tag = VALUE32(tvb, *offsetp);
10048 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectuivARB_context_tag, tvb, *offsetp, 4, byte_order);
10049 *offsetp += 4;
10050 f_id = VALUE32(tvb, *offsetp);
10051 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectuivARB_id, tvb, *offsetp, 4, byte_order);
10052 *offsetp += 4;
10053 f_pname = VALUE32(tvb, *offsetp);
10054 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectuivARB_pname, tvb, *offsetp, 4, byte_order);
10055 *offsetp += 4;
10057 static void glxGetQueryObjectuivARB_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10059 int f_length, length, sequence_number;
10060 int f_n;
10061 int f_datum;
10063 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetQueryObjectuivARB");
10065 REPLY(reply);
10066 UNUSED(1);
10067 sequence_number = VALUE16(tvb, *offsetp);
10068 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10069 "sequencenumber: %d (glx-GetQueryObjectuivARB)", sequence_number);
10070 *offsetp += 2;
10071 f_length = VALUE32(tvb, *offsetp);
10072 length = f_length * 4 + 32;
10073 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10074 *offsetp += 4;
10075 UNUSED(4);
10076 f_n = VALUE32(tvb, *offsetp);
10077 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectuivARB_reply_n, tvb, *offsetp, 4, byte_order);
10078 *offsetp += 4;
10079 f_datum = VALUE32(tvb, *offsetp);
10080 proto_tree_add_item(t, hf_x11_glx_GetQueryObjectuivARB_reply_datum, tvb, *offsetp, 4, byte_order);
10081 *offsetp += 4;
10082 UNUSED(12);
10083 listOfCard32(tvb, offsetp, t, hf_x11_glx_GetQueryObjectuivARB_reply_data, hf_x11_glx_GetQueryObjectuivARB_reply_data_item, f_n, byte_order);
10085 static const value_string glx_extension_minor[] = {
10086 { 1, "Render" },
10087 { 2, "RenderLarge" },
10088 { 3, "CreateContext" },
10089 { 4, "DestroyContext" },
10090 { 5, "MakeCurrent" },
10091 { 6, "IsDirect" },
10092 { 7, "QueryVersion" },
10093 { 8, "WaitGL" },
10094 { 9, "WaitX" },
10095 { 10, "CopyContext" },
10096 { 11, "SwapBuffers" },
10097 { 12, "UseXFont" },
10098 { 13, "CreateGLXPixmap" },
10099 { 14, "GetVisualConfigs" },
10100 { 15, "DestroyGLXPixmap" },
10101 { 16, "VendorPrivate" },
10102 { 17, "VendorPrivateWithReply" },
10103 { 18, "QueryExtensionsString" },
10104 { 19, "QueryServerString" },
10105 { 20, "ClientInfo" },
10106 { 21, "GetFBConfigs" },
10107 { 22, "CreatePixmap" },
10108 { 23, "DestroyPixmap" },
10109 { 24, "CreateNewContext" },
10110 { 25, "QueryContext" },
10111 { 26, "MakeContextCurrent" },
10112 { 27, "CreatePbuffer" },
10113 { 28, "DestroyPbuffer" },
10114 { 29, "GetDrawableAttributes" },
10115 { 30, "ChangeDrawableAttributes" },
10116 { 31, "CreateWindow" },
10117 { 32, "DeleteWindow" },
10118 { 33, "SetClientInfoARB" },
10119 { 34, "CreateContextAttribsARB" },
10120 { 35, "SetClientInfo2ARB" },
10121 { 101, "NewList" },
10122 { 102, "EndList" },
10123 { 103, "DeleteLists" },
10124 { 104, "GenLists" },
10125 { 105, "FeedbackBuffer" },
10126 { 106, "SelectBuffer" },
10127 { 107, "RenderMode" },
10128 { 108, "Finish" },
10129 { 109, "PixelStoref" },
10130 { 110, "PixelStorei" },
10131 { 111, "ReadPixels" },
10132 { 112, "GetBooleanv" },
10133 { 113, "GetClipPlane" },
10134 { 114, "GetDoublev" },
10135 { 115, "GetError" },
10136 { 116, "GetFloatv" },
10137 { 117, "GetIntegerv" },
10138 { 118, "GetLightfv" },
10139 { 119, "GetLightiv" },
10140 { 120, "GetMapdv" },
10141 { 121, "GetMapfv" },
10142 { 122, "GetMapiv" },
10143 { 123, "GetMaterialfv" },
10144 { 124, "GetMaterialiv" },
10145 { 125, "GetPixelMapfv" },
10146 { 126, "GetPixelMapuiv" },
10147 { 127, "GetPixelMapusv" },
10148 { 128, "GetPolygonStipple" },
10149 { 129, "GetString" },
10150 { 130, "GetTexEnvfv" },
10151 { 131, "GetTexEnviv" },
10152 { 132, "GetTexGendv" },
10153 { 133, "GetTexGenfv" },
10154 { 134, "GetTexGeniv" },
10155 { 135, "GetTexImage" },
10156 { 136, "GetTexParameterfv" },
10157 { 137, "GetTexParameteriv" },
10158 { 138, "GetTexLevelParameterfv" },
10159 { 139, "GetTexLevelParameteriv" },
10160 { 141, "IsList" },
10161 { 142, "Flush" },
10162 { 143, "AreTexturesResident" },
10163 { 144, "DeleteTextures" },
10164 { 145, "GenTextures" },
10165 { 146, "IsTexture" },
10166 { 147, "GetColorTable" },
10167 { 148, "GetColorTableParameterfv" },
10168 { 149, "GetColorTableParameteriv" },
10169 { 150, "GetConvolutionFilter" },
10170 { 151, "GetConvolutionParameterfv" },
10171 { 152, "GetConvolutionParameteriv" },
10172 { 153, "GetSeparableFilter" },
10173 { 154, "GetHistogram" },
10174 { 155, "GetHistogramParameterfv" },
10175 { 156, "GetHistogramParameteriv" },
10176 { 157, "GetMinmax" },
10177 { 158, "GetMinmaxParameterfv" },
10178 { 159, "GetMinmaxParameteriv" },
10179 { 160, "GetCompressedTexImageARB" },
10180 { 161, "DeleteQueriesARB" },
10181 { 162, "GenQueriesARB" },
10182 { 163, "IsQueryARB" },
10183 { 164, "GetQueryivARB" },
10184 { 165, "GetQueryObjectivARB" },
10185 { 166, "GetQueryObjectuivARB" },
10186 { 0, NULL }
10188 const x11_event_info glx_events[] = {
10189 { "glx-PbufferClobber", glxPbufferClobber },
10190 { NULL, NULL }
10192 static x11_reply_info glx_replies[] = {
10193 { 5, glxMakeCurrent_Reply },
10194 { 6, glxIsDirect_Reply },
10195 { 7, glxQueryVersion_Reply },
10196 { 14, glxGetVisualConfigs_Reply },
10197 { 17, glxVendorPrivateWithReply_Reply },
10198 { 18, glxQueryExtensionsString_Reply },
10199 { 19, glxQueryServerString_Reply },
10200 { 21, glxGetFBConfigs_Reply },
10201 { 25, glxQueryContext_Reply },
10202 { 26, glxMakeContextCurrent_Reply },
10203 { 29, glxGetDrawableAttributes_Reply },
10204 { 104, glxGenLists_Reply },
10205 { 107, glxRenderMode_Reply },
10206 { 108, glxFinish_Reply },
10207 { 111, glxReadPixels_Reply },
10208 { 112, glxGetBooleanv_Reply },
10209 { 113, glxGetClipPlane_Reply },
10210 { 114, glxGetDoublev_Reply },
10211 { 115, glxGetError_Reply },
10212 { 116, glxGetFloatv_Reply },
10213 { 117, glxGetIntegerv_Reply },
10214 { 118, glxGetLightfv_Reply },
10215 { 119, glxGetLightiv_Reply },
10216 { 120, glxGetMapdv_Reply },
10217 { 121, glxGetMapfv_Reply },
10218 { 122, glxGetMapiv_Reply },
10219 { 123, glxGetMaterialfv_Reply },
10220 { 124, glxGetMaterialiv_Reply },
10221 { 125, glxGetPixelMapfv_Reply },
10222 { 126, glxGetPixelMapuiv_Reply },
10223 { 127, glxGetPixelMapusv_Reply },
10224 { 128, glxGetPolygonStipple_Reply },
10225 { 129, glxGetString_Reply },
10226 { 130, glxGetTexEnvfv_Reply },
10227 { 131, glxGetTexEnviv_Reply },
10228 { 132, glxGetTexGendv_Reply },
10229 { 133, glxGetTexGenfv_Reply },
10230 { 134, glxGetTexGeniv_Reply },
10231 { 135, glxGetTexImage_Reply },
10232 { 136, glxGetTexParameterfv_Reply },
10233 { 137, glxGetTexParameteriv_Reply },
10234 { 138, glxGetTexLevelParameterfv_Reply },
10235 { 139, glxGetTexLevelParameteriv_Reply },
10236 { 141, glxIsList_Reply },
10237 { 143, glxAreTexturesResident_Reply },
10238 { 145, glxGenTextures_Reply },
10239 { 146, glxIsTexture_Reply },
10240 { 147, glxGetColorTable_Reply },
10241 { 148, glxGetColorTableParameterfv_Reply },
10242 { 149, glxGetColorTableParameteriv_Reply },
10243 { 150, glxGetConvolutionFilter_Reply },
10244 { 151, glxGetConvolutionParameterfv_Reply },
10245 { 152, glxGetConvolutionParameteriv_Reply },
10246 { 153, glxGetSeparableFilter_Reply },
10247 { 154, glxGetHistogram_Reply },
10248 { 155, glxGetHistogramParameterfv_Reply },
10249 { 156, glxGetHistogramParameteriv_Reply },
10250 { 157, glxGetMinmax_Reply },
10251 { 158, glxGetMinmaxParameterfv_Reply },
10252 { 159, glxGetMinmaxParameteriv_Reply },
10253 { 160, glxGetCompressedTexImageARB_Reply },
10254 { 162, glxGenQueriesARB_Reply },
10255 { 163, glxIsQueryARB_Reply },
10256 { 164, glxGetQueryivARB_Reply },
10257 { 165, glxGetQueryObjectivARB_Reply },
10258 { 166, glxGetQueryObjectuivARB_Reply },
10259 { 0, NULL }
10262 static void dispatch_glx(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10264 int minor, length;
10265 minor = CARD8(glx_extension_minor);
10266 length = REQUEST_LENGTH();
10268 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
10269 val_to_str(minor, glx_extension_minor,
10270 "<Unknown opcode %d>"));
10271 switch (minor) {
10272 case 1:
10273 glxRender(tvb, pinfo, offsetp, t, byte_order, length);
10274 break;
10275 case 2:
10276 glxRenderLarge(tvb, pinfo, offsetp, t, byte_order, length);
10277 break;
10278 case 3:
10279 glxCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
10280 break;
10281 case 4:
10282 glxDestroyContext(tvb, pinfo, offsetp, t, byte_order, length);
10283 break;
10284 case 5:
10285 glxMakeCurrent(tvb, pinfo, offsetp, t, byte_order, length);
10286 break;
10287 case 6:
10288 glxIsDirect(tvb, pinfo, offsetp, t, byte_order, length);
10289 break;
10290 case 7:
10291 glxQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
10292 break;
10293 case 8:
10294 glxWaitGL(tvb, pinfo, offsetp, t, byte_order, length);
10295 break;
10296 case 9:
10297 glxWaitX(tvb, pinfo, offsetp, t, byte_order, length);
10298 break;
10299 case 10:
10300 glxCopyContext(tvb, pinfo, offsetp, t, byte_order, length);
10301 break;
10302 case 11:
10303 glxSwapBuffers(tvb, pinfo, offsetp, t, byte_order, length);
10304 break;
10305 case 12:
10306 glxUseXFont(tvb, pinfo, offsetp, t, byte_order, length);
10307 break;
10308 case 13:
10309 glxCreateGLXPixmap(tvb, pinfo, offsetp, t, byte_order, length);
10310 break;
10311 case 14:
10312 glxGetVisualConfigs(tvb, pinfo, offsetp, t, byte_order, length);
10313 break;
10314 case 15:
10315 glxDestroyGLXPixmap(tvb, pinfo, offsetp, t, byte_order, length);
10316 break;
10317 case 16:
10318 glxVendorPrivate(tvb, pinfo, offsetp, t, byte_order, length);
10319 break;
10320 case 17:
10321 glxVendorPrivateWithReply(tvb, pinfo, offsetp, t, byte_order, length);
10322 break;
10323 case 18:
10324 glxQueryExtensionsString(tvb, pinfo, offsetp, t, byte_order, length);
10325 break;
10326 case 19:
10327 glxQueryServerString(tvb, pinfo, offsetp, t, byte_order, length);
10328 break;
10329 case 20:
10330 glxClientInfo(tvb, pinfo, offsetp, t, byte_order, length);
10331 break;
10332 case 21:
10333 glxGetFBConfigs(tvb, pinfo, offsetp, t, byte_order, length);
10334 break;
10335 case 22:
10336 glxCreatePixmap(tvb, pinfo, offsetp, t, byte_order, length);
10337 break;
10338 case 23:
10339 glxDestroyPixmap(tvb, pinfo, offsetp, t, byte_order, length);
10340 break;
10341 case 24:
10342 glxCreateNewContext(tvb, pinfo, offsetp, t, byte_order, length);
10343 break;
10344 case 25:
10345 glxQueryContext(tvb, pinfo, offsetp, t, byte_order, length);
10346 break;
10347 case 26:
10348 glxMakeContextCurrent(tvb, pinfo, offsetp, t, byte_order, length);
10349 break;
10350 case 27:
10351 glxCreatePbuffer(tvb, pinfo, offsetp, t, byte_order, length);
10352 break;
10353 case 28:
10354 glxDestroyPbuffer(tvb, pinfo, offsetp, t, byte_order, length);
10355 break;
10356 case 29:
10357 glxGetDrawableAttributes(tvb, pinfo, offsetp, t, byte_order, length);
10358 break;
10359 case 30:
10360 glxChangeDrawableAttributes(tvb, pinfo, offsetp, t, byte_order, length);
10361 break;
10362 case 31:
10363 glxCreateWindow(tvb, pinfo, offsetp, t, byte_order, length);
10364 break;
10365 case 32:
10366 glxDeleteWindow(tvb, pinfo, offsetp, t, byte_order, length);
10367 break;
10368 case 33:
10369 glxSetClientInfoARB(tvb, pinfo, offsetp, t, byte_order, length);
10370 break;
10371 case 34:
10372 glxCreateContextAttribsARB(tvb, pinfo, offsetp, t, byte_order, length);
10373 break;
10374 case 35:
10375 glxSetClientInfo2ARB(tvb, pinfo, offsetp, t, byte_order, length);
10376 break;
10377 case 101:
10378 glxNewList(tvb, pinfo, offsetp, t, byte_order, length);
10379 break;
10380 case 102:
10381 glxEndList(tvb, pinfo, offsetp, t, byte_order, length);
10382 break;
10383 case 103:
10384 glxDeleteLists(tvb, pinfo, offsetp, t, byte_order, length);
10385 break;
10386 case 104:
10387 glxGenLists(tvb, pinfo, offsetp, t, byte_order, length);
10388 break;
10389 case 105:
10390 glxFeedbackBuffer(tvb, pinfo, offsetp, t, byte_order, length);
10391 break;
10392 case 106:
10393 glxSelectBuffer(tvb, pinfo, offsetp, t, byte_order, length);
10394 break;
10395 case 107:
10396 glxRenderMode(tvb, pinfo, offsetp, t, byte_order, length);
10397 break;
10398 case 108:
10399 glxFinish(tvb, pinfo, offsetp, t, byte_order, length);
10400 break;
10401 case 109:
10402 glxPixelStoref(tvb, pinfo, offsetp, t, byte_order, length);
10403 break;
10404 case 110:
10405 glxPixelStorei(tvb, pinfo, offsetp, t, byte_order, length);
10406 break;
10407 case 111:
10408 glxReadPixels(tvb, pinfo, offsetp, t, byte_order, length);
10409 break;
10410 case 112:
10411 glxGetBooleanv(tvb, pinfo, offsetp, t, byte_order, length);
10412 break;
10413 case 113:
10414 glxGetClipPlane(tvb, pinfo, offsetp, t, byte_order, length);
10415 break;
10416 case 114:
10417 glxGetDoublev(tvb, pinfo, offsetp, t, byte_order, length);
10418 break;
10419 case 115:
10420 glxGetError(tvb, pinfo, offsetp, t, byte_order, length);
10421 break;
10422 case 116:
10423 glxGetFloatv(tvb, pinfo, offsetp, t, byte_order, length);
10424 break;
10425 case 117:
10426 glxGetIntegerv(tvb, pinfo, offsetp, t, byte_order, length);
10427 break;
10428 case 118:
10429 glxGetLightfv(tvb, pinfo, offsetp, t, byte_order, length);
10430 break;
10431 case 119:
10432 glxGetLightiv(tvb, pinfo, offsetp, t, byte_order, length);
10433 break;
10434 case 120:
10435 glxGetMapdv(tvb, pinfo, offsetp, t, byte_order, length);
10436 break;
10437 case 121:
10438 glxGetMapfv(tvb, pinfo, offsetp, t, byte_order, length);
10439 break;
10440 case 122:
10441 glxGetMapiv(tvb, pinfo, offsetp, t, byte_order, length);
10442 break;
10443 case 123:
10444 glxGetMaterialfv(tvb, pinfo, offsetp, t, byte_order, length);
10445 break;
10446 case 124:
10447 glxGetMaterialiv(tvb, pinfo, offsetp, t, byte_order, length);
10448 break;
10449 case 125:
10450 glxGetPixelMapfv(tvb, pinfo, offsetp, t, byte_order, length);
10451 break;
10452 case 126:
10453 glxGetPixelMapuiv(tvb, pinfo, offsetp, t, byte_order, length);
10454 break;
10455 case 127:
10456 glxGetPixelMapusv(tvb, pinfo, offsetp, t, byte_order, length);
10457 break;
10458 case 128:
10459 glxGetPolygonStipple(tvb, pinfo, offsetp, t, byte_order, length);
10460 break;
10461 case 129:
10462 glxGetString(tvb, pinfo, offsetp, t, byte_order, length);
10463 break;
10464 case 130:
10465 glxGetTexEnvfv(tvb, pinfo, offsetp, t, byte_order, length);
10466 break;
10467 case 131:
10468 glxGetTexEnviv(tvb, pinfo, offsetp, t, byte_order, length);
10469 break;
10470 case 132:
10471 glxGetTexGendv(tvb, pinfo, offsetp, t, byte_order, length);
10472 break;
10473 case 133:
10474 glxGetTexGenfv(tvb, pinfo, offsetp, t, byte_order, length);
10475 break;
10476 case 134:
10477 glxGetTexGeniv(tvb, pinfo, offsetp, t, byte_order, length);
10478 break;
10479 case 135:
10480 glxGetTexImage(tvb, pinfo, offsetp, t, byte_order, length);
10481 break;
10482 case 136:
10483 glxGetTexParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10484 break;
10485 case 137:
10486 glxGetTexParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10487 break;
10488 case 138:
10489 glxGetTexLevelParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10490 break;
10491 case 139:
10492 glxGetTexLevelParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10493 break;
10494 case 141:
10495 glxIsList(tvb, pinfo, offsetp, t, byte_order, length);
10496 break;
10497 case 142:
10498 glxFlush(tvb, pinfo, offsetp, t, byte_order, length);
10499 break;
10500 case 143:
10501 glxAreTexturesResident(tvb, pinfo, offsetp, t, byte_order, length);
10502 break;
10503 case 144:
10504 glxDeleteTextures(tvb, pinfo, offsetp, t, byte_order, length);
10505 break;
10506 case 145:
10507 glxGenTextures(tvb, pinfo, offsetp, t, byte_order, length);
10508 break;
10509 case 146:
10510 glxIsTexture(tvb, pinfo, offsetp, t, byte_order, length);
10511 break;
10512 case 147:
10513 glxGetColorTable(tvb, pinfo, offsetp, t, byte_order, length);
10514 break;
10515 case 148:
10516 glxGetColorTableParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10517 break;
10518 case 149:
10519 glxGetColorTableParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10520 break;
10521 case 150:
10522 glxGetConvolutionFilter(tvb, pinfo, offsetp, t, byte_order, length);
10523 break;
10524 case 151:
10525 glxGetConvolutionParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10526 break;
10527 case 152:
10528 glxGetConvolutionParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10529 break;
10530 case 153:
10531 glxGetSeparableFilter(tvb, pinfo, offsetp, t, byte_order, length);
10532 break;
10533 case 154:
10534 glxGetHistogram(tvb, pinfo, offsetp, t, byte_order, length);
10535 break;
10536 case 155:
10537 glxGetHistogramParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10538 break;
10539 case 156:
10540 glxGetHistogramParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10541 break;
10542 case 157:
10543 glxGetMinmax(tvb, pinfo, offsetp, t, byte_order, length);
10544 break;
10545 case 158:
10546 glxGetMinmaxParameterfv(tvb, pinfo, offsetp, t, byte_order, length);
10547 break;
10548 case 159:
10549 glxGetMinmaxParameteriv(tvb, pinfo, offsetp, t, byte_order, length);
10550 break;
10551 case 160:
10552 glxGetCompressedTexImageARB(tvb, pinfo, offsetp, t, byte_order, length);
10553 break;
10554 case 161:
10555 glxDeleteQueriesARB(tvb, pinfo, offsetp, t, byte_order, length);
10556 break;
10557 case 162:
10558 glxGenQueriesARB(tvb, pinfo, offsetp, t, byte_order, length);
10559 break;
10560 case 163:
10561 glxIsQueryARB(tvb, pinfo, offsetp, t, byte_order, length);
10562 break;
10563 case 164:
10564 glxGetQueryivARB(tvb, pinfo, offsetp, t, byte_order, length);
10565 break;
10566 case 165:
10567 glxGetQueryObjectivARB(tvb, pinfo, offsetp, t, byte_order, length);
10568 break;
10569 case 166:
10570 glxGetQueryObjectuivARB(tvb, pinfo, offsetp, t, byte_order, length);
10571 break;
10572 /* No need for a default case here, since Unknown is printed above,
10573 and UNDECODED() is taken care of by dissect_x11_request */
10577 static void register_glx(void)
10579 set_handler("GLX", dispatch_glx, glx_errors, glx_events, glx_replies);
10582 static void struct_ScreenSize(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
10584 int i;
10585 for (i = 0; i < count; i++) {
10586 proto_item *item;
10587 proto_tree *t;
10588 int f_width;
10589 int f_height;
10590 int f_mwidth;
10591 int f_mheight;
10593 item = proto_tree_add_item(root, hf_x11_struct_ScreenSize, tvb, *offsetp, 8, ENC_NA);
10594 t = proto_item_add_subtree(item, ett_x11_rectangle);
10595 f_width = VALUE16(tvb, *offsetp);
10596 proto_tree_add_item(t, hf_x11_struct_ScreenSize_width, tvb, *offsetp, 2, byte_order);
10597 *offsetp += 2;
10598 f_height = VALUE16(tvb, *offsetp);
10599 proto_tree_add_item(t, hf_x11_struct_ScreenSize_height, tvb, *offsetp, 2, byte_order);
10600 *offsetp += 2;
10601 f_mwidth = VALUE16(tvb, *offsetp);
10602 proto_tree_add_item(t, hf_x11_struct_ScreenSize_mwidth, tvb, *offsetp, 2, byte_order);
10603 *offsetp += 2;
10604 f_mheight = VALUE16(tvb, *offsetp);
10605 proto_tree_add_item(t, hf_x11_struct_ScreenSize_mheight, tvb, *offsetp, 2, byte_order);
10606 *offsetp += 2;
10610 static int struct_size_RefreshRates(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
10612 int size = 0;
10613 int f_nRates;
10614 f_nRates = VALUE16(tvb, *offsetp + size + 0);
10615 size += f_nRates * 2;
10616 return size + 2;
10619 static void struct_RefreshRates(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
10621 int i;
10622 for (i = 0; i < count; i++) {
10623 proto_item *item;
10624 proto_tree *t;
10625 int f_nRates;
10627 item = proto_tree_add_item(root, hf_x11_struct_RefreshRates, tvb, *offsetp, struct_size_RefreshRates(tvb, offsetp, byte_order), ENC_NA);
10628 t = proto_item_add_subtree(item, ett_x11_rectangle);
10629 f_nRates = VALUE16(tvb, *offsetp);
10630 proto_tree_add_item(t, hf_x11_struct_RefreshRates_nRates, tvb, *offsetp, 2, byte_order);
10631 *offsetp += 2;
10632 listOfCard16(tvb, offsetp, t, hf_x11_struct_RefreshRates_rates, hf_x11_struct_RefreshRates_rates_item, f_nRates, byte_order);
10636 static void randrQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10638 int f_major_version;
10639 int f_minor_version;
10640 f_major_version = VALUE32(tvb, *offsetp);
10641 proto_tree_add_item(t, hf_x11_randr_QueryVersion_major_version, tvb, *offsetp, 4, byte_order);
10642 *offsetp += 4;
10643 f_minor_version = VALUE32(tvb, *offsetp);
10644 proto_tree_add_item(t, hf_x11_randr_QueryVersion_minor_version, tvb, *offsetp, 4, byte_order);
10645 *offsetp += 4;
10647 static void randrQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10649 int f_length, length, sequence_number;
10650 int f_major_version;
10651 int f_minor_version;
10653 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
10655 REPLY(reply);
10656 UNUSED(1);
10657 sequence_number = VALUE16(tvb, *offsetp);
10658 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10659 "sequencenumber: %d (randr-QueryVersion)", sequence_number);
10660 *offsetp += 2;
10661 f_length = VALUE32(tvb, *offsetp);
10662 length = f_length * 4 + 32;
10663 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10664 *offsetp += 4;
10665 f_major_version = VALUE32(tvb, *offsetp);
10666 proto_tree_add_item(t, hf_x11_randr_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
10667 *offsetp += 4;
10668 f_minor_version = VALUE32(tvb, *offsetp);
10669 proto_tree_add_item(t, hf_x11_randr_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
10670 *offsetp += 4;
10671 UNUSED(16);
10674 static void randrSetScreenConfig(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10676 int f_window;
10677 int f_timestamp;
10678 int f_config_timestamp;
10679 int f_sizeID;
10680 int f_rotation;
10681 int f_rate;
10682 f_window = VALUE32(tvb, *offsetp);
10683 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_window, tvb, *offsetp, 4, byte_order);
10684 *offsetp += 4;
10685 f_timestamp = VALUE32(tvb, *offsetp);
10686 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_timestamp, tvb, *offsetp, 4, byte_order);
10687 *offsetp += 4;
10688 f_config_timestamp = VALUE32(tvb, *offsetp);
10689 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_config_timestamp, tvb, *offsetp, 4, byte_order);
10690 *offsetp += 4;
10691 f_sizeID = VALUE16(tvb, *offsetp);
10692 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_sizeID, tvb, *offsetp, 2, byte_order);
10693 *offsetp += 2;
10694 f_rotation = VALUE16(tvb, *offsetp);
10696 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_rotation, tvb, *offsetp, 2, byte_order);
10697 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
10698 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
10699 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
10700 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
10701 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
10702 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
10703 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetScreenConfig_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
10705 *offsetp += 2;
10706 f_rate = VALUE16(tvb, *offsetp);
10707 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_rate, tvb, *offsetp, 2, byte_order);
10708 *offsetp += 2;
10709 UNUSED(2);
10711 static void randrSetScreenConfig_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10713 int f_length, length, sequence_number;
10714 int f_status;
10715 int f_new_timestamp;
10716 int f_config_timestamp;
10717 int f_root;
10718 int f_subpixel_order;
10720 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetScreenConfig");
10722 REPLY(reply);
10723 f_status = field8(tvb, offsetp, t, hf_x11_randr_SetScreenConfig_reply_status, byte_order);
10724 sequence_number = VALUE16(tvb, *offsetp);
10725 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10726 "sequencenumber: %d (randr-SetScreenConfig)", sequence_number);
10727 *offsetp += 2;
10728 f_length = VALUE32(tvb, *offsetp);
10729 length = f_length * 4 + 32;
10730 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10731 *offsetp += 4;
10732 f_new_timestamp = VALUE32(tvb, *offsetp);
10733 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_reply_new_timestamp, tvb, *offsetp, 4, byte_order);
10734 *offsetp += 4;
10735 f_config_timestamp = VALUE32(tvb, *offsetp);
10736 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_reply_config_timestamp, tvb, *offsetp, 4, byte_order);
10737 *offsetp += 4;
10738 f_root = VALUE32(tvb, *offsetp);
10739 proto_tree_add_item(t, hf_x11_randr_SetScreenConfig_reply_root, tvb, *offsetp, 4, byte_order);
10740 *offsetp += 4;
10741 f_subpixel_order = field16(tvb, offsetp, t, hf_x11_randr_SetScreenConfig_reply_subpixel_order, byte_order);
10742 UNUSED(10);
10745 static void randrSelectInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10747 int f_window;
10748 int f_enable;
10749 f_window = VALUE32(tvb, *offsetp);
10750 proto_tree_add_item(t, hf_x11_randr_SelectInput_window, tvb, *offsetp, 4, byte_order);
10751 *offsetp += 4;
10752 f_enable = VALUE16(tvb, *offsetp);
10754 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_SelectInput_enable, tvb, *offsetp, 2, byte_order);
10755 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
10756 proto_tree_add_item(bitmask_tree, hf_x11_randr_SelectInput_enable_mask_ScreenChange, tvb, *offsetp, 2, byte_order);
10757 proto_tree_add_item(bitmask_tree, hf_x11_randr_SelectInput_enable_mask_CrtcChange, tvb, *offsetp, 2, byte_order);
10758 proto_tree_add_item(bitmask_tree, hf_x11_randr_SelectInput_enable_mask_OutputChange, tvb, *offsetp, 2, byte_order);
10759 proto_tree_add_item(bitmask_tree, hf_x11_randr_SelectInput_enable_mask_OutputProperty, tvb, *offsetp, 2, byte_order);
10761 *offsetp += 2;
10762 UNUSED(2);
10765 static void randrGetScreenInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10767 int f_window;
10768 f_window = VALUE32(tvb, *offsetp);
10769 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_window, tvb, *offsetp, 4, byte_order);
10770 *offsetp += 4;
10772 static void randrGetScreenInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10774 int f_length, length, sequence_number;
10775 int f_rotations;
10776 int f_root;
10777 int f_timestamp;
10778 int f_config_timestamp;
10779 int f_nSizes;
10780 int f_sizeID;
10781 int f_rotation;
10782 int f_rate;
10783 int f_nInfo;
10785 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenInfo");
10787 REPLY(reply);
10788 f_rotations = VALUE8(tvb, *offsetp);
10790 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_rotations, tvb, *offsetp, 1, byte_order);
10791 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
10792 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_0, tvb, *offsetp, 1, byte_order);
10793 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_90, tvb, *offsetp, 1, byte_order);
10794 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_180, tvb, *offsetp, 1, byte_order);
10795 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Rotate_270, tvb, *offsetp, 1, byte_order);
10796 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Reflect_X, tvb, *offsetp, 1, byte_order);
10797 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotations_mask_Reflect_Y, tvb, *offsetp, 1, byte_order);
10799 *offsetp += 1;
10800 sequence_number = VALUE16(tvb, *offsetp);
10801 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10802 "sequencenumber: %d (randr-GetScreenInfo)", sequence_number);
10803 *offsetp += 2;
10804 f_length = VALUE32(tvb, *offsetp);
10805 length = f_length * 4 + 32;
10806 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10807 *offsetp += 4;
10808 f_root = VALUE32(tvb, *offsetp);
10809 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_root, tvb, *offsetp, 4, byte_order);
10810 *offsetp += 4;
10811 f_timestamp = VALUE32(tvb, *offsetp);
10812 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_timestamp, tvb, *offsetp, 4, byte_order);
10813 *offsetp += 4;
10814 f_config_timestamp = VALUE32(tvb, *offsetp);
10815 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_config_timestamp, tvb, *offsetp, 4, byte_order);
10816 *offsetp += 4;
10817 f_nSizes = VALUE16(tvb, *offsetp);
10818 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_nSizes, tvb, *offsetp, 2, byte_order);
10819 *offsetp += 2;
10820 f_sizeID = VALUE16(tvb, *offsetp);
10821 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_sizeID, tvb, *offsetp, 2, byte_order);
10822 *offsetp += 2;
10823 f_rotation = VALUE16(tvb, *offsetp);
10825 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_rotation, tvb, *offsetp, 2, byte_order);
10826 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
10827 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
10828 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
10829 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
10830 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
10831 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
10832 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetScreenInfo_reply_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
10834 *offsetp += 2;
10835 f_rate = VALUE16(tvb, *offsetp);
10836 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_rate, tvb, *offsetp, 2, byte_order);
10837 *offsetp += 2;
10838 f_nInfo = VALUE16(tvb, *offsetp);
10839 proto_tree_add_item(t, hf_x11_randr_GetScreenInfo_reply_nInfo, tvb, *offsetp, 2, byte_order);
10840 *offsetp += 2;
10841 UNUSED(2);
10842 struct_ScreenSize(tvb, offsetp, t, byte_order, f_nSizes);
10843 struct_RefreshRates(tvb, offsetp, t, byte_order, (f_nInfo - f_nSizes));
10846 static void randrGetScreenSizeRange(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10848 int f_window;
10849 f_window = VALUE32(tvb, *offsetp);
10850 proto_tree_add_item(t, hf_x11_randr_GetScreenSizeRange_window, tvb, *offsetp, 4, byte_order);
10851 *offsetp += 4;
10853 static void randrGetScreenSizeRange_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
10855 int f_length, length, sequence_number;
10856 int f_min_width;
10857 int f_min_height;
10858 int f_max_width;
10859 int f_max_height;
10861 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenSizeRange");
10863 REPLY(reply);
10864 UNUSED(1);
10865 sequence_number = VALUE16(tvb, *offsetp);
10866 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
10867 "sequencenumber: %d (randr-GetScreenSizeRange)", sequence_number);
10868 *offsetp += 2;
10869 f_length = VALUE32(tvb, *offsetp);
10870 length = f_length * 4 + 32;
10871 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
10872 *offsetp += 4;
10873 f_min_width = VALUE16(tvb, *offsetp);
10874 proto_tree_add_item(t, hf_x11_randr_GetScreenSizeRange_reply_min_width, tvb, *offsetp, 2, byte_order);
10875 *offsetp += 2;
10876 f_min_height = VALUE16(tvb, *offsetp);
10877 proto_tree_add_item(t, hf_x11_randr_GetScreenSizeRange_reply_min_height, tvb, *offsetp, 2, byte_order);
10878 *offsetp += 2;
10879 f_max_width = VALUE16(tvb, *offsetp);
10880 proto_tree_add_item(t, hf_x11_randr_GetScreenSizeRange_reply_max_width, tvb, *offsetp, 2, byte_order);
10881 *offsetp += 2;
10882 f_max_height = VALUE16(tvb, *offsetp);
10883 proto_tree_add_item(t, hf_x11_randr_GetScreenSizeRange_reply_max_height, tvb, *offsetp, 2, byte_order);
10884 *offsetp += 2;
10885 UNUSED(16);
10888 static void randrSetScreenSize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10890 int f_window;
10891 int f_width;
10892 int f_height;
10893 int f_mm_width;
10894 int f_mm_height;
10895 f_window = VALUE32(tvb, *offsetp);
10896 proto_tree_add_item(t, hf_x11_randr_SetScreenSize_window, tvb, *offsetp, 4, byte_order);
10897 *offsetp += 4;
10898 f_width = VALUE16(tvb, *offsetp);
10899 proto_tree_add_item(t, hf_x11_randr_SetScreenSize_width, tvb, *offsetp, 2, byte_order);
10900 *offsetp += 2;
10901 f_height = VALUE16(tvb, *offsetp);
10902 proto_tree_add_item(t, hf_x11_randr_SetScreenSize_height, tvb, *offsetp, 2, byte_order);
10903 *offsetp += 2;
10904 f_mm_width = VALUE32(tvb, *offsetp);
10905 proto_tree_add_item(t, hf_x11_randr_SetScreenSize_mm_width, tvb, *offsetp, 4, byte_order);
10906 *offsetp += 4;
10907 f_mm_height = VALUE32(tvb, *offsetp);
10908 proto_tree_add_item(t, hf_x11_randr_SetScreenSize_mm_height, tvb, *offsetp, 4, byte_order);
10909 *offsetp += 4;
10912 static void struct_ModeInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
10914 int i;
10915 for (i = 0; i < count; i++) {
10916 proto_item *item;
10917 proto_tree *t;
10918 int f_id;
10919 int f_width;
10920 int f_height;
10921 int f_dot_clock;
10922 int f_hsync_start;
10923 int f_hsync_end;
10924 int f_htotal;
10925 int f_hskew;
10926 int f_vsync_start;
10927 int f_vsync_end;
10928 int f_vtotal;
10929 int f_name_len;
10930 int f_mode_flags;
10932 item = proto_tree_add_item(root, hf_x11_struct_ModeInfo, tvb, *offsetp, 32, ENC_NA);
10933 t = proto_item_add_subtree(item, ett_x11_rectangle);
10934 f_id = VALUE32(tvb, *offsetp);
10935 proto_tree_add_item(t, hf_x11_struct_ModeInfo_id, tvb, *offsetp, 4, byte_order);
10936 *offsetp += 4;
10937 f_width = VALUE16(tvb, *offsetp);
10938 proto_tree_add_item(t, hf_x11_struct_ModeInfo_width, tvb, *offsetp, 2, byte_order);
10939 *offsetp += 2;
10940 f_height = VALUE16(tvb, *offsetp);
10941 proto_tree_add_item(t, hf_x11_struct_ModeInfo_height, tvb, *offsetp, 2, byte_order);
10942 *offsetp += 2;
10943 f_dot_clock = VALUE32(tvb, *offsetp);
10944 proto_tree_add_item(t, hf_x11_struct_ModeInfo_dot_clock, tvb, *offsetp, 4, byte_order);
10945 *offsetp += 4;
10946 f_hsync_start = VALUE16(tvb, *offsetp);
10947 proto_tree_add_item(t, hf_x11_struct_ModeInfo_hsync_start, tvb, *offsetp, 2, byte_order);
10948 *offsetp += 2;
10949 f_hsync_end = VALUE16(tvb, *offsetp);
10950 proto_tree_add_item(t, hf_x11_struct_ModeInfo_hsync_end, tvb, *offsetp, 2, byte_order);
10951 *offsetp += 2;
10952 f_htotal = VALUE16(tvb, *offsetp);
10953 proto_tree_add_item(t, hf_x11_struct_ModeInfo_htotal, tvb, *offsetp, 2, byte_order);
10954 *offsetp += 2;
10955 f_hskew = VALUE16(tvb, *offsetp);
10956 proto_tree_add_item(t, hf_x11_struct_ModeInfo_hskew, tvb, *offsetp, 2, byte_order);
10957 *offsetp += 2;
10958 f_vsync_start = VALUE16(tvb, *offsetp);
10959 proto_tree_add_item(t, hf_x11_struct_ModeInfo_vsync_start, tvb, *offsetp, 2, byte_order);
10960 *offsetp += 2;
10961 f_vsync_end = VALUE16(tvb, *offsetp);
10962 proto_tree_add_item(t, hf_x11_struct_ModeInfo_vsync_end, tvb, *offsetp, 2, byte_order);
10963 *offsetp += 2;
10964 f_vtotal = VALUE16(tvb, *offsetp);
10965 proto_tree_add_item(t, hf_x11_struct_ModeInfo_vtotal, tvb, *offsetp, 2, byte_order);
10966 *offsetp += 2;
10967 f_name_len = VALUE16(tvb, *offsetp);
10968 proto_tree_add_item(t, hf_x11_struct_ModeInfo_name_len, tvb, *offsetp, 2, byte_order);
10969 *offsetp += 2;
10970 f_mode_flags = VALUE32(tvb, *offsetp);
10972 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_ModeInfo_mode_flags, tvb, *offsetp, 4, byte_order);
10973 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
10974 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_HsyncPositive, tvb, *offsetp, 4, byte_order);
10975 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_HsyncNegative, tvb, *offsetp, 4, byte_order);
10976 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_VsyncPositive, tvb, *offsetp, 4, byte_order);
10977 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_VsyncNegative, tvb, *offsetp, 4, byte_order);
10978 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
10979 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_DoubleScan, tvb, *offsetp, 4, byte_order);
10980 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_Csync, tvb, *offsetp, 4, byte_order);
10981 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_CsyncPositive, tvb, *offsetp, 4, byte_order);
10982 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_CsyncNegative, tvb, *offsetp, 4, byte_order);
10983 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_HskewPresent, tvb, *offsetp, 4, byte_order);
10984 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_Bcast, tvb, *offsetp, 4, byte_order);
10985 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_PixelMultiplex, tvb, *offsetp, 4, byte_order);
10986 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_DoubleClock, tvb, *offsetp, 4, byte_order);
10987 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModeInfo_mode_flags_mask_HalveClock, tvb, *offsetp, 4, byte_order);
10989 *offsetp += 4;
10993 static void randrGetScreenResources(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
10995 int f_window;
10996 f_window = VALUE32(tvb, *offsetp);
10997 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_window, tvb, *offsetp, 4, byte_order);
10998 *offsetp += 4;
11000 static void randrGetScreenResources_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11002 int f_length, length, sequence_number;
11003 int f_timestamp;
11004 int f_config_timestamp;
11005 int f_num_crtcs;
11006 int f_num_outputs;
11007 int f_num_modes;
11008 int f_names_len;
11010 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenResources");
11012 REPLY(reply);
11013 UNUSED(1);
11014 sequence_number = VALUE16(tvb, *offsetp);
11015 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11016 "sequencenumber: %d (randr-GetScreenResources)", sequence_number);
11017 *offsetp += 2;
11018 f_length = VALUE32(tvb, *offsetp);
11019 length = f_length * 4 + 32;
11020 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11021 *offsetp += 4;
11022 f_timestamp = VALUE32(tvb, *offsetp);
11023 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_timestamp, tvb, *offsetp, 4, byte_order);
11024 *offsetp += 4;
11025 f_config_timestamp = VALUE32(tvb, *offsetp);
11026 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_config_timestamp, tvb, *offsetp, 4, byte_order);
11027 *offsetp += 4;
11028 f_num_crtcs = VALUE16(tvb, *offsetp);
11029 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_num_crtcs, tvb, *offsetp, 2, byte_order);
11030 *offsetp += 2;
11031 f_num_outputs = VALUE16(tvb, *offsetp);
11032 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_num_outputs, tvb, *offsetp, 2, byte_order);
11033 *offsetp += 2;
11034 f_num_modes = VALUE16(tvb, *offsetp);
11035 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_num_modes, tvb, *offsetp, 2, byte_order);
11036 *offsetp += 2;
11037 f_names_len = VALUE16(tvb, *offsetp);
11038 proto_tree_add_item(t, hf_x11_randr_GetScreenResources_reply_names_len, tvb, *offsetp, 2, byte_order);
11039 *offsetp += 2;
11040 UNUSED(8);
11041 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetScreenResources_reply_crtcs, hf_x11_randr_GetScreenResources_reply_crtcs_item, f_num_crtcs, byte_order);
11042 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetScreenResources_reply_outputs, hf_x11_randr_GetScreenResources_reply_outputs_item, f_num_outputs, byte_order);
11043 struct_ModeInfo(tvb, offsetp, t, byte_order, f_num_modes);
11044 listOfByte(tvb, offsetp, t, hf_x11_randr_GetScreenResources_reply_names, f_names_len, byte_order);
11047 static void randrGetOutputInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11049 int f_output;
11050 int f_config_timestamp;
11051 f_output = VALUE32(tvb, *offsetp);
11052 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_output, tvb, *offsetp, 4, byte_order);
11053 *offsetp += 4;
11054 f_config_timestamp = VALUE32(tvb, *offsetp);
11055 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_config_timestamp, tvb, *offsetp, 4, byte_order);
11056 *offsetp += 4;
11058 static void randrGetOutputInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11060 int f_length, length, sequence_number;
11061 int f_status;
11062 int f_timestamp;
11063 int f_crtc;
11064 int f_mm_width;
11065 int f_mm_height;
11066 int f_connection;
11067 int f_subpixel_order;
11068 int f_num_crtcs;
11069 int f_num_modes;
11070 int f_num_preferred;
11071 int f_num_clones;
11072 int f_name_len;
11074 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetOutputInfo");
11076 REPLY(reply);
11077 f_status = field8(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_status, byte_order);
11078 sequence_number = VALUE16(tvb, *offsetp);
11079 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11080 "sequencenumber: %d (randr-GetOutputInfo)", sequence_number);
11081 *offsetp += 2;
11082 f_length = VALUE32(tvb, *offsetp);
11083 length = f_length * 4 + 32;
11084 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11085 *offsetp += 4;
11086 f_timestamp = VALUE32(tvb, *offsetp);
11087 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_timestamp, tvb, *offsetp, 4, byte_order);
11088 *offsetp += 4;
11089 f_crtc = VALUE32(tvb, *offsetp);
11090 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_crtc, tvb, *offsetp, 4, byte_order);
11091 *offsetp += 4;
11092 f_mm_width = VALUE32(tvb, *offsetp);
11093 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_mm_width, tvb, *offsetp, 4, byte_order);
11094 *offsetp += 4;
11095 f_mm_height = VALUE32(tvb, *offsetp);
11096 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_mm_height, tvb, *offsetp, 4, byte_order);
11097 *offsetp += 4;
11098 f_connection = field8(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_connection, byte_order);
11099 f_subpixel_order = field8(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_subpixel_order, byte_order);
11100 f_num_crtcs = VALUE16(tvb, *offsetp);
11101 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_num_crtcs, tvb, *offsetp, 2, byte_order);
11102 *offsetp += 2;
11103 f_num_modes = VALUE16(tvb, *offsetp);
11104 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_num_modes, tvb, *offsetp, 2, byte_order);
11105 *offsetp += 2;
11106 f_num_preferred = VALUE16(tvb, *offsetp);
11107 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_num_preferred, tvb, *offsetp, 2, byte_order);
11108 *offsetp += 2;
11109 f_num_clones = VALUE16(tvb, *offsetp);
11110 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_num_clones, tvb, *offsetp, 2, byte_order);
11111 *offsetp += 2;
11112 f_name_len = VALUE16(tvb, *offsetp);
11113 proto_tree_add_item(t, hf_x11_randr_GetOutputInfo_reply_name_len, tvb, *offsetp, 2, byte_order);
11114 *offsetp += 2;
11115 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_crtcs, hf_x11_randr_GetOutputInfo_reply_crtcs_item, f_num_crtcs, byte_order);
11116 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_modes, hf_x11_randr_GetOutputInfo_reply_modes_item, f_num_modes, byte_order);
11117 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_clones, hf_x11_randr_GetOutputInfo_reply_clones_item, f_num_clones, byte_order);
11118 listOfByte(tvb, offsetp, t, hf_x11_randr_GetOutputInfo_reply_name, f_name_len, byte_order);
11121 static void randrListOutputProperties(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11123 int f_output;
11124 f_output = VALUE32(tvb, *offsetp);
11125 proto_tree_add_item(t, hf_x11_randr_ListOutputProperties_output, tvb, *offsetp, 4, byte_order);
11126 *offsetp += 4;
11128 static void randrListOutputProperties_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11130 int f_length, length, sequence_number;
11131 int f_num_atoms;
11133 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListOutputProperties");
11135 REPLY(reply);
11136 UNUSED(1);
11137 sequence_number = VALUE16(tvb, *offsetp);
11138 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11139 "sequencenumber: %d (randr-ListOutputProperties)", sequence_number);
11140 *offsetp += 2;
11141 f_length = VALUE32(tvb, *offsetp);
11142 length = f_length * 4 + 32;
11143 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11144 *offsetp += 4;
11145 f_num_atoms = VALUE16(tvb, *offsetp);
11146 proto_tree_add_item(t, hf_x11_randr_ListOutputProperties_reply_num_atoms, tvb, *offsetp, 2, byte_order);
11147 *offsetp += 2;
11148 UNUSED(22);
11149 listOfCard32(tvb, offsetp, t, hf_x11_randr_ListOutputProperties_reply_atoms, hf_x11_randr_ListOutputProperties_reply_atoms_item, f_num_atoms, byte_order);
11152 static void randrQueryOutputProperty(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11154 int f_output;
11155 int f_property;
11156 f_output = VALUE32(tvb, *offsetp);
11157 proto_tree_add_item(t, hf_x11_randr_QueryOutputProperty_output, tvb, *offsetp, 4, byte_order);
11158 *offsetp += 4;
11159 f_property = VALUE32(tvb, *offsetp);
11160 proto_tree_add_item(t, hf_x11_randr_QueryOutputProperty_property, tvb, *offsetp, 4, byte_order);
11161 *offsetp += 4;
11163 static void randrQueryOutputProperty_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11165 int f_length, length, sequence_number;
11166 int f_pending;
11167 int f_range;
11168 int f_immutable;
11170 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryOutputProperty");
11172 REPLY(reply);
11173 UNUSED(1);
11174 sequence_number = VALUE16(tvb, *offsetp);
11175 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11176 "sequencenumber: %d (randr-QueryOutputProperty)", sequence_number);
11177 *offsetp += 2;
11178 f_length = VALUE32(tvb, *offsetp);
11179 length = f_length * 4 + 32;
11180 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11181 *offsetp += 4;
11182 f_pending = VALUE8(tvb, *offsetp);
11183 proto_tree_add_item(t, hf_x11_randr_QueryOutputProperty_reply_pending, tvb, *offsetp, 1, byte_order);
11184 *offsetp += 1;
11185 f_range = VALUE8(tvb, *offsetp);
11186 proto_tree_add_item(t, hf_x11_randr_QueryOutputProperty_reply_range, tvb, *offsetp, 1, byte_order);
11187 *offsetp += 1;
11188 f_immutable = VALUE8(tvb, *offsetp);
11189 proto_tree_add_item(t, hf_x11_randr_QueryOutputProperty_reply_immutable, tvb, *offsetp, 1, byte_order);
11190 *offsetp += 1;
11191 UNUSED(21);
11192 listOfInt32(tvb, offsetp, t, hf_x11_randr_QueryOutputProperty_reply_validValues, hf_x11_randr_QueryOutputProperty_reply_validValues_item, f_length, byte_order);
11195 static void randrConfigureOutputProperty(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11197 int f_output;
11198 int f_property;
11199 int f_pending;
11200 int f_range;
11201 f_output = VALUE32(tvb, *offsetp);
11202 proto_tree_add_item(t, hf_x11_randr_ConfigureOutputProperty_output, tvb, *offsetp, 4, byte_order);
11203 *offsetp += 4;
11204 f_property = VALUE32(tvb, *offsetp);
11205 proto_tree_add_item(t, hf_x11_randr_ConfigureOutputProperty_property, tvb, *offsetp, 4, byte_order);
11206 *offsetp += 4;
11207 f_pending = VALUE8(tvb, *offsetp);
11208 proto_tree_add_item(t, hf_x11_randr_ConfigureOutputProperty_pending, tvb, *offsetp, 1, byte_order);
11209 *offsetp += 1;
11210 f_range = VALUE8(tvb, *offsetp);
11211 proto_tree_add_item(t, hf_x11_randr_ConfigureOutputProperty_range, tvb, *offsetp, 1, byte_order);
11212 *offsetp += 1;
11213 UNUSED(2);
11214 listOfInt32(tvb, offsetp, t, hf_x11_randr_ConfigureOutputProperty_values, hf_x11_randr_ConfigureOutputProperty_values_item, (length - 16) / 4, byte_order);
11217 static void randrChangeOutputProperty(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11219 int f_output;
11220 int f_property;
11221 int f_type;
11222 int f_format;
11223 int f_mode;
11224 int f_num_units;
11225 f_output = VALUE32(tvb, *offsetp);
11226 proto_tree_add_item(t, hf_x11_randr_ChangeOutputProperty_output, tvb, *offsetp, 4, byte_order);
11227 *offsetp += 4;
11228 f_property = VALUE32(tvb, *offsetp);
11229 proto_tree_add_item(t, hf_x11_randr_ChangeOutputProperty_property, tvb, *offsetp, 4, byte_order);
11230 *offsetp += 4;
11231 f_type = VALUE32(tvb, *offsetp);
11232 proto_tree_add_item(t, hf_x11_randr_ChangeOutputProperty_type, tvb, *offsetp, 4, byte_order);
11233 *offsetp += 4;
11234 f_format = VALUE8(tvb, *offsetp);
11235 proto_tree_add_item(t, hf_x11_randr_ChangeOutputProperty_format, tvb, *offsetp, 1, byte_order);
11236 *offsetp += 1;
11237 f_mode = field8(tvb, offsetp, t, hf_x11_randr_ChangeOutputProperty_mode, byte_order);
11238 UNUSED(2);
11239 f_num_units = VALUE32(tvb, *offsetp);
11240 proto_tree_add_item(t, hf_x11_randr_ChangeOutputProperty_num_units, tvb, *offsetp, 4, byte_order);
11241 *offsetp += 4;
11242 listOfByte(tvb, offsetp, t, hf_x11_randr_ChangeOutputProperty_data, ((f_num_units * f_format) / 8), byte_order);
11243 length -= ((f_num_units * f_format) / 8) * 1;
11246 static void randrDeleteOutputProperty(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11248 int f_output;
11249 int f_property;
11250 f_output = VALUE32(tvb, *offsetp);
11251 proto_tree_add_item(t, hf_x11_randr_DeleteOutputProperty_output, tvb, *offsetp, 4, byte_order);
11252 *offsetp += 4;
11253 f_property = VALUE32(tvb, *offsetp);
11254 proto_tree_add_item(t, hf_x11_randr_DeleteOutputProperty_property, tvb, *offsetp, 4, byte_order);
11255 *offsetp += 4;
11258 static void randrGetOutputProperty(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11260 int f_output;
11261 int f_property;
11262 int f_type;
11263 int f_long_offset;
11264 int f_long_length;
11265 int f_delete;
11266 int f_pending;
11267 f_output = VALUE32(tvb, *offsetp);
11268 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_output, tvb, *offsetp, 4, byte_order);
11269 *offsetp += 4;
11270 f_property = VALUE32(tvb, *offsetp);
11271 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_property, tvb, *offsetp, 4, byte_order);
11272 *offsetp += 4;
11273 f_type = field32(tvb, offsetp, t, hf_x11_randr_GetOutputProperty_type, byte_order);
11274 f_long_offset = VALUE32(tvb, *offsetp);
11275 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_long_offset, tvb, *offsetp, 4, byte_order);
11276 *offsetp += 4;
11277 f_long_length = VALUE32(tvb, *offsetp);
11278 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_long_length, tvb, *offsetp, 4, byte_order);
11279 *offsetp += 4;
11280 f_delete = VALUE8(tvb, *offsetp);
11281 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_delete, tvb, *offsetp, 1, byte_order);
11282 *offsetp += 1;
11283 f_pending = VALUE8(tvb, *offsetp);
11284 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_pending, tvb, *offsetp, 1, byte_order);
11285 *offsetp += 1;
11286 UNUSED(2);
11288 static void randrGetOutputProperty_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11290 int f_length, length, sequence_number;
11291 int f_format;
11292 int f_type;
11293 int f_bytes_after;
11294 int f_num_items;
11296 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetOutputProperty");
11298 REPLY(reply);
11299 f_format = VALUE8(tvb, *offsetp);
11300 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_reply_format, tvb, *offsetp, 1, byte_order);
11301 *offsetp += 1;
11302 sequence_number = VALUE16(tvb, *offsetp);
11303 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11304 "sequencenumber: %d (randr-GetOutputProperty)", sequence_number);
11305 *offsetp += 2;
11306 f_length = VALUE32(tvb, *offsetp);
11307 length = f_length * 4 + 32;
11308 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11309 *offsetp += 4;
11310 f_type = field32(tvb, offsetp, t, hf_x11_randr_GetOutputProperty_reply_type, byte_order);
11311 f_bytes_after = VALUE32(tvb, *offsetp);
11312 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_reply_bytes_after, tvb, *offsetp, 4, byte_order);
11313 *offsetp += 4;
11314 f_num_items = VALUE32(tvb, *offsetp);
11315 proto_tree_add_item(t, hf_x11_randr_GetOutputProperty_reply_num_items, tvb, *offsetp, 4, byte_order);
11316 *offsetp += 4;
11317 UNUSED(12);
11318 listOfByte(tvb, offsetp, t, hf_x11_randr_GetOutputProperty_reply_data, (f_num_items * (f_format / 8)), byte_order);
11321 static void randrCreateMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11323 int f_window;
11324 f_window = VALUE32(tvb, *offsetp);
11325 proto_tree_add_item(t, hf_x11_randr_CreateMode_window, tvb, *offsetp, 4, byte_order);
11326 *offsetp += 4;
11327 struct_ModeInfo(tvb, offsetp, t, byte_order, 1);
11328 listOfByte(tvb, offsetp, t, hf_x11_randr_CreateMode_name, (length - 40) / 1, byte_order);
11330 static void randrCreateMode_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11332 int f_length, length, sequence_number;
11333 int f_mode;
11335 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateMode");
11337 REPLY(reply);
11338 UNUSED(1);
11339 sequence_number = VALUE16(tvb, *offsetp);
11340 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11341 "sequencenumber: %d (randr-CreateMode)", sequence_number);
11342 *offsetp += 2;
11343 f_length = VALUE32(tvb, *offsetp);
11344 length = f_length * 4 + 32;
11345 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11346 *offsetp += 4;
11347 f_mode = VALUE32(tvb, *offsetp);
11348 proto_tree_add_item(t, hf_x11_randr_CreateMode_reply_mode, tvb, *offsetp, 4, byte_order);
11349 *offsetp += 4;
11350 UNUSED(20);
11353 static void randrDestroyMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11355 int f_mode;
11356 f_mode = VALUE32(tvb, *offsetp);
11357 proto_tree_add_item(t, hf_x11_randr_DestroyMode_mode, tvb, *offsetp, 4, byte_order);
11358 *offsetp += 4;
11361 static void randrAddOutputMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11363 int f_output;
11364 int f_mode;
11365 f_output = VALUE32(tvb, *offsetp);
11366 proto_tree_add_item(t, hf_x11_randr_AddOutputMode_output, tvb, *offsetp, 4, byte_order);
11367 *offsetp += 4;
11368 f_mode = VALUE32(tvb, *offsetp);
11369 proto_tree_add_item(t, hf_x11_randr_AddOutputMode_mode, tvb, *offsetp, 4, byte_order);
11370 *offsetp += 4;
11373 static void randrDeleteOutputMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11375 int f_output;
11376 int f_mode;
11377 f_output = VALUE32(tvb, *offsetp);
11378 proto_tree_add_item(t, hf_x11_randr_DeleteOutputMode_output, tvb, *offsetp, 4, byte_order);
11379 *offsetp += 4;
11380 f_mode = VALUE32(tvb, *offsetp);
11381 proto_tree_add_item(t, hf_x11_randr_DeleteOutputMode_mode, tvb, *offsetp, 4, byte_order);
11382 *offsetp += 4;
11385 static void randrGetCrtcInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11387 int f_crtc;
11388 int f_config_timestamp;
11389 f_crtc = VALUE32(tvb, *offsetp);
11390 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_crtc, tvb, *offsetp, 4, byte_order);
11391 *offsetp += 4;
11392 f_config_timestamp = VALUE32(tvb, *offsetp);
11393 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_config_timestamp, tvb, *offsetp, 4, byte_order);
11394 *offsetp += 4;
11396 static void randrGetCrtcInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11398 int f_length, length, sequence_number;
11399 int f_status;
11400 int f_timestamp;
11401 int f_x;
11402 int f_y;
11403 int f_width;
11404 int f_height;
11405 int f_mode;
11406 int f_rotation;
11407 int f_rotations;
11408 int f_num_outputs;
11409 int f_num_possible_outputs;
11411 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCrtcInfo");
11413 REPLY(reply);
11414 f_status = field8(tvb, offsetp, t, hf_x11_randr_GetCrtcInfo_reply_status, byte_order);
11415 sequence_number = VALUE16(tvb, *offsetp);
11416 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11417 "sequencenumber: %d (randr-GetCrtcInfo)", sequence_number);
11418 *offsetp += 2;
11419 f_length = VALUE32(tvb, *offsetp);
11420 length = f_length * 4 + 32;
11421 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11422 *offsetp += 4;
11423 f_timestamp = VALUE32(tvb, *offsetp);
11424 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_timestamp, tvb, *offsetp, 4, byte_order);
11425 *offsetp += 4;
11426 f_x = VALUE16(tvb, *offsetp);
11427 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_x, tvb, *offsetp, 2, byte_order);
11428 *offsetp += 2;
11429 f_y = VALUE16(tvb, *offsetp);
11430 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_y, tvb, *offsetp, 2, byte_order);
11431 *offsetp += 2;
11432 f_width = VALUE16(tvb, *offsetp);
11433 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_width, tvb, *offsetp, 2, byte_order);
11434 *offsetp += 2;
11435 f_height = VALUE16(tvb, *offsetp);
11436 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_height, tvb, *offsetp, 2, byte_order);
11437 *offsetp += 2;
11438 f_mode = VALUE32(tvb, *offsetp);
11439 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_mode, tvb, *offsetp, 4, byte_order);
11440 *offsetp += 4;
11441 f_rotation = VALUE16(tvb, *offsetp);
11443 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_rotation, tvb, *offsetp, 2, byte_order);
11444 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
11445 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
11446 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
11447 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
11448 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
11449 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
11450 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
11452 *offsetp += 2;
11453 f_rotations = VALUE16(tvb, *offsetp);
11455 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_rotations, tvb, *offsetp, 2, byte_order);
11456 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
11457 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
11458 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
11459 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
11460 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
11461 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
11462 proto_tree_add_item(bitmask_tree, hf_x11_randr_GetCrtcInfo_reply_rotations_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
11464 *offsetp += 2;
11465 f_num_outputs = VALUE16(tvb, *offsetp);
11466 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_num_outputs, tvb, *offsetp, 2, byte_order);
11467 *offsetp += 2;
11468 f_num_possible_outputs = VALUE16(tvb, *offsetp);
11469 proto_tree_add_item(t, hf_x11_randr_GetCrtcInfo_reply_num_possible_outputs, tvb, *offsetp, 2, byte_order);
11470 *offsetp += 2;
11471 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetCrtcInfo_reply_outputs, hf_x11_randr_GetCrtcInfo_reply_outputs_item, f_num_outputs, byte_order);
11472 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetCrtcInfo_reply_possible, hf_x11_randr_GetCrtcInfo_reply_possible_item, f_num_possible_outputs, byte_order);
11475 static void randrSetCrtcConfig(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11477 int f_crtc;
11478 int f_timestamp;
11479 int f_config_timestamp;
11480 int f_x;
11481 int f_y;
11482 int f_mode;
11483 int f_rotation;
11484 f_crtc = VALUE32(tvb, *offsetp);
11485 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_crtc, tvb, *offsetp, 4, byte_order);
11486 *offsetp += 4;
11487 f_timestamp = VALUE32(tvb, *offsetp);
11488 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_timestamp, tvb, *offsetp, 4, byte_order);
11489 *offsetp += 4;
11490 f_config_timestamp = VALUE32(tvb, *offsetp);
11491 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_config_timestamp, tvb, *offsetp, 4, byte_order);
11492 *offsetp += 4;
11493 f_x = VALUE16(tvb, *offsetp);
11494 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_x, tvb, *offsetp, 2, byte_order);
11495 *offsetp += 2;
11496 f_y = VALUE16(tvb, *offsetp);
11497 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_y, tvb, *offsetp, 2, byte_order);
11498 *offsetp += 2;
11499 f_mode = VALUE32(tvb, *offsetp);
11500 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_mode, tvb, *offsetp, 4, byte_order);
11501 *offsetp += 4;
11502 f_rotation = VALUE16(tvb, *offsetp);
11504 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_rotation, tvb, *offsetp, 2, byte_order);
11505 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
11506 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
11507 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
11508 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
11509 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
11510 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
11511 proto_tree_add_item(bitmask_tree, hf_x11_randr_SetCrtcConfig_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
11513 *offsetp += 2;
11514 UNUSED(2);
11515 listOfCard32(tvb, offsetp, t, hf_x11_randr_SetCrtcConfig_outputs, hf_x11_randr_SetCrtcConfig_outputs_item, (length - 28) / 4, byte_order);
11517 static void randrSetCrtcConfig_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11519 int f_length, length, sequence_number;
11520 int f_status;
11521 int f_timestamp;
11523 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetCrtcConfig");
11525 REPLY(reply);
11526 f_status = field8(tvb, offsetp, t, hf_x11_randr_SetCrtcConfig_reply_status, byte_order);
11527 sequence_number = VALUE16(tvb, *offsetp);
11528 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11529 "sequencenumber: %d (randr-SetCrtcConfig)", sequence_number);
11530 *offsetp += 2;
11531 f_length = VALUE32(tvb, *offsetp);
11532 length = f_length * 4 + 32;
11533 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11534 *offsetp += 4;
11535 f_timestamp = VALUE32(tvb, *offsetp);
11536 proto_tree_add_item(t, hf_x11_randr_SetCrtcConfig_reply_timestamp, tvb, *offsetp, 4, byte_order);
11537 *offsetp += 4;
11538 UNUSED(20);
11541 static void randrGetCrtcGammaSize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11543 int f_crtc;
11544 f_crtc = VALUE32(tvb, *offsetp);
11545 proto_tree_add_item(t, hf_x11_randr_GetCrtcGammaSize_crtc, tvb, *offsetp, 4, byte_order);
11546 *offsetp += 4;
11548 static void randrGetCrtcGammaSize_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11550 int f_length, length, sequence_number;
11551 int f_size;
11553 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCrtcGammaSize");
11555 REPLY(reply);
11556 UNUSED(1);
11557 sequence_number = VALUE16(tvb, *offsetp);
11558 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11559 "sequencenumber: %d (randr-GetCrtcGammaSize)", sequence_number);
11560 *offsetp += 2;
11561 f_length = VALUE32(tvb, *offsetp);
11562 length = f_length * 4 + 32;
11563 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11564 *offsetp += 4;
11565 f_size = VALUE16(tvb, *offsetp);
11566 proto_tree_add_item(t, hf_x11_randr_GetCrtcGammaSize_reply_size, tvb, *offsetp, 2, byte_order);
11567 *offsetp += 2;
11568 UNUSED(22);
11571 static void randrGetCrtcGamma(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11573 int f_crtc;
11574 f_crtc = VALUE32(tvb, *offsetp);
11575 proto_tree_add_item(t, hf_x11_randr_GetCrtcGamma_crtc, tvb, *offsetp, 4, byte_order);
11576 *offsetp += 4;
11578 static void randrGetCrtcGamma_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11580 int f_length, length, sequence_number;
11581 int f_size;
11583 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCrtcGamma");
11585 REPLY(reply);
11586 UNUSED(1);
11587 sequence_number = VALUE16(tvb, *offsetp);
11588 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11589 "sequencenumber: %d (randr-GetCrtcGamma)", sequence_number);
11590 *offsetp += 2;
11591 f_length = VALUE32(tvb, *offsetp);
11592 length = f_length * 4 + 32;
11593 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11594 *offsetp += 4;
11595 f_size = VALUE16(tvb, *offsetp);
11596 proto_tree_add_item(t, hf_x11_randr_GetCrtcGamma_reply_size, tvb, *offsetp, 2, byte_order);
11597 *offsetp += 2;
11598 UNUSED(22);
11599 listOfCard16(tvb, offsetp, t, hf_x11_randr_GetCrtcGamma_reply_red, hf_x11_randr_GetCrtcGamma_reply_red_item, f_size, byte_order);
11600 listOfCard16(tvb, offsetp, t, hf_x11_randr_GetCrtcGamma_reply_green, hf_x11_randr_GetCrtcGamma_reply_green_item, f_size, byte_order);
11601 listOfCard16(tvb, offsetp, t, hf_x11_randr_GetCrtcGamma_reply_blue, hf_x11_randr_GetCrtcGamma_reply_blue_item, f_size, byte_order);
11604 static void randrSetCrtcGamma(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11606 int f_crtc;
11607 int f_size;
11608 f_crtc = VALUE32(tvb, *offsetp);
11609 proto_tree_add_item(t, hf_x11_randr_SetCrtcGamma_crtc, tvb, *offsetp, 4, byte_order);
11610 *offsetp += 4;
11611 f_size = VALUE16(tvb, *offsetp);
11612 proto_tree_add_item(t, hf_x11_randr_SetCrtcGamma_size, tvb, *offsetp, 2, byte_order);
11613 *offsetp += 2;
11614 UNUSED(2);
11615 listOfCard16(tvb, offsetp, t, hf_x11_randr_SetCrtcGamma_red, hf_x11_randr_SetCrtcGamma_red_item, f_size, byte_order);
11616 length -= f_size * 2;
11617 listOfCard16(tvb, offsetp, t, hf_x11_randr_SetCrtcGamma_green, hf_x11_randr_SetCrtcGamma_green_item, f_size, byte_order);
11618 length -= f_size * 2;
11619 listOfCard16(tvb, offsetp, t, hf_x11_randr_SetCrtcGamma_blue, hf_x11_randr_SetCrtcGamma_blue_item, f_size, byte_order);
11620 length -= f_size * 2;
11623 static void randrGetScreenResourcesCurrent(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11625 int f_window;
11626 f_window = VALUE32(tvb, *offsetp);
11627 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_window, tvb, *offsetp, 4, byte_order);
11628 *offsetp += 4;
11630 static void randrGetScreenResourcesCurrent_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11632 int f_length, length, sequence_number;
11633 int f_timestamp;
11634 int f_config_timestamp;
11635 int f_num_crtcs;
11636 int f_num_outputs;
11637 int f_num_modes;
11638 int f_names_len;
11640 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenResourcesCurrent");
11642 REPLY(reply);
11643 UNUSED(1);
11644 sequence_number = VALUE16(tvb, *offsetp);
11645 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11646 "sequencenumber: %d (randr-GetScreenResourcesCurrent)", sequence_number);
11647 *offsetp += 2;
11648 f_length = VALUE32(tvb, *offsetp);
11649 length = f_length * 4 + 32;
11650 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11651 *offsetp += 4;
11652 f_timestamp = VALUE32(tvb, *offsetp);
11653 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_timestamp, tvb, *offsetp, 4, byte_order);
11654 *offsetp += 4;
11655 f_config_timestamp = VALUE32(tvb, *offsetp);
11656 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_config_timestamp, tvb, *offsetp, 4, byte_order);
11657 *offsetp += 4;
11658 f_num_crtcs = VALUE16(tvb, *offsetp);
11659 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_num_crtcs, tvb, *offsetp, 2, byte_order);
11660 *offsetp += 2;
11661 f_num_outputs = VALUE16(tvb, *offsetp);
11662 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_num_outputs, tvb, *offsetp, 2, byte_order);
11663 *offsetp += 2;
11664 f_num_modes = VALUE16(tvb, *offsetp);
11665 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_num_modes, tvb, *offsetp, 2, byte_order);
11666 *offsetp += 2;
11667 f_names_len = VALUE16(tvb, *offsetp);
11668 proto_tree_add_item(t, hf_x11_randr_GetScreenResourcesCurrent_reply_names_len, tvb, *offsetp, 2, byte_order);
11669 *offsetp += 2;
11670 UNUSED(8);
11671 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetScreenResourcesCurrent_reply_crtcs, hf_x11_randr_GetScreenResourcesCurrent_reply_crtcs_item, f_num_crtcs, byte_order);
11672 listOfCard32(tvb, offsetp, t, hf_x11_randr_GetScreenResourcesCurrent_reply_outputs, hf_x11_randr_GetScreenResourcesCurrent_reply_outputs_item, f_num_outputs, byte_order);
11673 struct_ModeInfo(tvb, offsetp, t, byte_order, f_num_modes);
11674 listOfByte(tvb, offsetp, t, hf_x11_randr_GetScreenResourcesCurrent_reply_names, f_names_len, byte_order);
11677 static void randrSetCrtcTransform(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11679 int f_crtc;
11680 int f_filter_len;
11681 f_crtc = VALUE32(tvb, *offsetp);
11682 proto_tree_add_item(t, hf_x11_randr_SetCrtcTransform_crtc, tvb, *offsetp, 4, byte_order);
11683 *offsetp += 4;
11684 struct_TRANSFORM(tvb, offsetp, t, byte_order, 1);
11685 f_filter_len = VALUE16(tvb, *offsetp);
11686 proto_tree_add_item(t, hf_x11_randr_SetCrtcTransform_filter_len, tvb, *offsetp, 2, byte_order);
11687 *offsetp += 2;
11688 UNUSED(2);
11689 listOfByte(tvb, offsetp, t, hf_x11_randr_SetCrtcTransform_filter_name, f_filter_len, byte_order);
11690 length -= f_filter_len * 1;
11691 listOfInt32(tvb, offsetp, t, hf_x11_randr_SetCrtcTransform_filter_params, hf_x11_randr_SetCrtcTransform_filter_params_item, (length - 48) / 4, byte_order);
11694 static void randrGetCrtcTransform(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11696 int f_crtc;
11697 f_crtc = VALUE32(tvb, *offsetp);
11698 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_crtc, tvb, *offsetp, 4, byte_order);
11699 *offsetp += 4;
11701 static void randrGetCrtcTransform_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11703 int f_length, length, sequence_number;
11704 int f_has_transforms;
11705 int f_pending_len;
11706 int f_pending_nparams;
11707 int f_current_len;
11708 int f_current_nparams;
11710 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCrtcTransform");
11712 REPLY(reply);
11713 UNUSED(1);
11714 sequence_number = VALUE16(tvb, *offsetp);
11715 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11716 "sequencenumber: %d (randr-GetCrtcTransform)", sequence_number);
11717 *offsetp += 2;
11718 f_length = VALUE32(tvb, *offsetp);
11719 length = f_length * 4 + 32;
11720 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11721 *offsetp += 4;
11722 struct_TRANSFORM(tvb, offsetp, t, byte_order, 1);
11723 f_has_transforms = VALUE8(tvb, *offsetp);
11724 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_reply_has_transforms, tvb, *offsetp, 1, byte_order);
11725 *offsetp += 1;
11726 UNUSED(3);
11727 struct_TRANSFORM(tvb, offsetp, t, byte_order, 1);
11728 UNUSED(4);
11729 f_pending_len = VALUE16(tvb, *offsetp);
11730 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_reply_pending_len, tvb, *offsetp, 2, byte_order);
11731 *offsetp += 2;
11732 f_pending_nparams = VALUE16(tvb, *offsetp);
11733 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_reply_pending_nparams, tvb, *offsetp, 2, byte_order);
11734 *offsetp += 2;
11735 f_current_len = VALUE16(tvb, *offsetp);
11736 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_reply_current_len, tvb, *offsetp, 2, byte_order);
11737 *offsetp += 2;
11738 f_current_nparams = VALUE16(tvb, *offsetp);
11739 proto_tree_add_item(t, hf_x11_randr_GetCrtcTransform_reply_current_nparams, tvb, *offsetp, 2, byte_order);
11740 *offsetp += 2;
11741 listOfByte(tvb, offsetp, t, hf_x11_randr_GetCrtcTransform_reply_pending_filter_name, f_pending_len, byte_order);
11742 listOfInt32(tvb, offsetp, t, hf_x11_randr_GetCrtcTransform_reply_pending_params, hf_x11_randr_GetCrtcTransform_reply_pending_params_item, f_pending_nparams, byte_order);
11743 listOfByte(tvb, offsetp, t, hf_x11_randr_GetCrtcTransform_reply_current_filter_name, f_current_len, byte_order);
11744 listOfInt32(tvb, offsetp, t, hf_x11_randr_GetCrtcTransform_reply_current_params, hf_x11_randr_GetCrtcTransform_reply_current_params_item, f_current_nparams, byte_order);
11747 static void randrGetPanning(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11749 int f_crtc;
11750 f_crtc = VALUE32(tvb, *offsetp);
11751 proto_tree_add_item(t, hf_x11_randr_GetPanning_crtc, tvb, *offsetp, 4, byte_order);
11752 *offsetp += 4;
11754 static void randrGetPanning_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11756 int f_length, length, sequence_number;
11757 int f_status;
11758 int f_timestamp;
11759 int f_left;
11760 int f_top;
11761 int f_width;
11762 int f_height;
11763 int f_track_left;
11764 int f_track_top;
11765 int f_track_width;
11766 int f_track_height;
11767 int f_border_left;
11768 int f_border_top;
11769 int f_border_right;
11770 int f_border_bottom;
11772 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPanning");
11774 REPLY(reply);
11775 f_status = field8(tvb, offsetp, t, hf_x11_randr_GetPanning_reply_status, byte_order);
11776 sequence_number = VALUE16(tvb, *offsetp);
11777 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11778 "sequencenumber: %d (randr-GetPanning)", sequence_number);
11779 *offsetp += 2;
11780 f_length = VALUE32(tvb, *offsetp);
11781 length = f_length * 4 + 32;
11782 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11783 *offsetp += 4;
11784 f_timestamp = VALUE32(tvb, *offsetp);
11785 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_timestamp, tvb, *offsetp, 4, byte_order);
11786 *offsetp += 4;
11787 f_left = VALUE16(tvb, *offsetp);
11788 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_left, tvb, *offsetp, 2, byte_order);
11789 *offsetp += 2;
11790 f_top = VALUE16(tvb, *offsetp);
11791 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_top, tvb, *offsetp, 2, byte_order);
11792 *offsetp += 2;
11793 f_width = VALUE16(tvb, *offsetp);
11794 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_width, tvb, *offsetp, 2, byte_order);
11795 *offsetp += 2;
11796 f_height = VALUE16(tvb, *offsetp);
11797 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_height, tvb, *offsetp, 2, byte_order);
11798 *offsetp += 2;
11799 f_track_left = VALUE16(tvb, *offsetp);
11800 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_track_left, tvb, *offsetp, 2, byte_order);
11801 *offsetp += 2;
11802 f_track_top = VALUE16(tvb, *offsetp);
11803 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_track_top, tvb, *offsetp, 2, byte_order);
11804 *offsetp += 2;
11805 f_track_width = VALUE16(tvb, *offsetp);
11806 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_track_width, tvb, *offsetp, 2, byte_order);
11807 *offsetp += 2;
11808 f_track_height = VALUE16(tvb, *offsetp);
11809 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_track_height, tvb, *offsetp, 2, byte_order);
11810 *offsetp += 2;
11811 f_border_left = VALUE16(tvb, *offsetp);
11812 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_border_left, tvb, *offsetp, 2, byte_order);
11813 *offsetp += 2;
11814 f_border_top = VALUE16(tvb, *offsetp);
11815 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_border_top, tvb, *offsetp, 2, byte_order);
11816 *offsetp += 2;
11817 f_border_right = VALUE16(tvb, *offsetp);
11818 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_border_right, tvb, *offsetp, 2, byte_order);
11819 *offsetp += 2;
11820 f_border_bottom = VALUE16(tvb, *offsetp);
11821 proto_tree_add_item(t, hf_x11_randr_GetPanning_reply_border_bottom, tvb, *offsetp, 2, byte_order);
11822 *offsetp += 2;
11825 static void randrSetPanning(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11827 int f_crtc;
11828 int f_timestamp;
11829 int f_left;
11830 int f_top;
11831 int f_width;
11832 int f_height;
11833 int f_track_left;
11834 int f_track_top;
11835 int f_track_width;
11836 int f_track_height;
11837 int f_border_left;
11838 int f_border_top;
11839 int f_border_right;
11840 int f_border_bottom;
11841 f_crtc = VALUE32(tvb, *offsetp);
11842 proto_tree_add_item(t, hf_x11_randr_SetPanning_crtc, tvb, *offsetp, 4, byte_order);
11843 *offsetp += 4;
11844 f_timestamp = VALUE32(tvb, *offsetp);
11845 proto_tree_add_item(t, hf_x11_randr_SetPanning_timestamp, tvb, *offsetp, 4, byte_order);
11846 *offsetp += 4;
11847 f_left = VALUE16(tvb, *offsetp);
11848 proto_tree_add_item(t, hf_x11_randr_SetPanning_left, tvb, *offsetp, 2, byte_order);
11849 *offsetp += 2;
11850 f_top = VALUE16(tvb, *offsetp);
11851 proto_tree_add_item(t, hf_x11_randr_SetPanning_top, tvb, *offsetp, 2, byte_order);
11852 *offsetp += 2;
11853 f_width = VALUE16(tvb, *offsetp);
11854 proto_tree_add_item(t, hf_x11_randr_SetPanning_width, tvb, *offsetp, 2, byte_order);
11855 *offsetp += 2;
11856 f_height = VALUE16(tvb, *offsetp);
11857 proto_tree_add_item(t, hf_x11_randr_SetPanning_height, tvb, *offsetp, 2, byte_order);
11858 *offsetp += 2;
11859 f_track_left = VALUE16(tvb, *offsetp);
11860 proto_tree_add_item(t, hf_x11_randr_SetPanning_track_left, tvb, *offsetp, 2, byte_order);
11861 *offsetp += 2;
11862 f_track_top = VALUE16(tvb, *offsetp);
11863 proto_tree_add_item(t, hf_x11_randr_SetPanning_track_top, tvb, *offsetp, 2, byte_order);
11864 *offsetp += 2;
11865 f_track_width = VALUE16(tvb, *offsetp);
11866 proto_tree_add_item(t, hf_x11_randr_SetPanning_track_width, tvb, *offsetp, 2, byte_order);
11867 *offsetp += 2;
11868 f_track_height = VALUE16(tvb, *offsetp);
11869 proto_tree_add_item(t, hf_x11_randr_SetPanning_track_height, tvb, *offsetp, 2, byte_order);
11870 *offsetp += 2;
11871 f_border_left = VALUE16(tvb, *offsetp);
11872 proto_tree_add_item(t, hf_x11_randr_SetPanning_border_left, tvb, *offsetp, 2, byte_order);
11873 *offsetp += 2;
11874 f_border_top = VALUE16(tvb, *offsetp);
11875 proto_tree_add_item(t, hf_x11_randr_SetPanning_border_top, tvb, *offsetp, 2, byte_order);
11876 *offsetp += 2;
11877 f_border_right = VALUE16(tvb, *offsetp);
11878 proto_tree_add_item(t, hf_x11_randr_SetPanning_border_right, tvb, *offsetp, 2, byte_order);
11879 *offsetp += 2;
11880 f_border_bottom = VALUE16(tvb, *offsetp);
11881 proto_tree_add_item(t, hf_x11_randr_SetPanning_border_bottom, tvb, *offsetp, 2, byte_order);
11882 *offsetp += 2;
11884 static void randrSetPanning_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11886 int f_length, length, sequence_number;
11887 int f_status;
11888 int f_timestamp;
11890 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetPanning");
11892 REPLY(reply);
11893 f_status = field8(tvb, offsetp, t, hf_x11_randr_SetPanning_reply_status, byte_order);
11894 sequence_number = VALUE16(tvb, *offsetp);
11895 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11896 "sequencenumber: %d (randr-SetPanning)", sequence_number);
11897 *offsetp += 2;
11898 f_length = VALUE32(tvb, *offsetp);
11899 length = f_length * 4 + 32;
11900 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11901 *offsetp += 4;
11902 f_timestamp = VALUE32(tvb, *offsetp);
11903 proto_tree_add_item(t, hf_x11_randr_SetPanning_reply_timestamp, tvb, *offsetp, 4, byte_order);
11904 *offsetp += 4;
11907 static void randrSetOutputPrimary(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11909 int f_window;
11910 int f_output;
11911 f_window = VALUE32(tvb, *offsetp);
11912 proto_tree_add_item(t, hf_x11_randr_SetOutputPrimary_window, tvb, *offsetp, 4, byte_order);
11913 *offsetp += 4;
11914 f_output = VALUE32(tvb, *offsetp);
11915 proto_tree_add_item(t, hf_x11_randr_SetOutputPrimary_output, tvb, *offsetp, 4, byte_order);
11916 *offsetp += 4;
11919 static void randrGetOutputPrimary(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
11921 int f_window;
11922 f_window = VALUE32(tvb, *offsetp);
11923 proto_tree_add_item(t, hf_x11_randr_GetOutputPrimary_window, tvb, *offsetp, 4, byte_order);
11924 *offsetp += 4;
11926 static void randrGetOutputPrimary_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
11928 int f_length, length, sequence_number;
11929 int f_output;
11931 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetOutputPrimary");
11933 REPLY(reply);
11934 UNUSED(1);
11935 sequence_number = VALUE16(tvb, *offsetp);
11936 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
11937 "sequencenumber: %d (randr-GetOutputPrimary)", sequence_number);
11938 *offsetp += 2;
11939 f_length = VALUE32(tvb, *offsetp);
11940 length = f_length * 4 + 32;
11941 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
11942 *offsetp += 4;
11943 f_output = VALUE32(tvb, *offsetp);
11944 proto_tree_add_item(t, hf_x11_randr_GetOutputPrimary_reply_output, tvb, *offsetp, 4, byte_order);
11945 *offsetp += 4;
11948 static void randrScreenChangeNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
11950 int f_rotation;
11951 int f_timestamp;
11952 int f_config_timestamp;
11953 int f_root;
11954 int f_request_window;
11955 int f_sizeID;
11956 int f_subpixel_order;
11957 int f_width;
11958 int f_height;
11959 int f_mwidth;
11960 int f_mheight;
11961 f_rotation = VALUE8(tvb, *offsetp);
11963 proto_item *ti = proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_rotation, tvb, *offsetp, 1, byte_order);
11964 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
11965 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Rotate_0, tvb, *offsetp, 1, byte_order);
11966 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Rotate_90, tvb, *offsetp, 1, byte_order);
11967 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Rotate_180, tvb, *offsetp, 1, byte_order);
11968 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Rotate_270, tvb, *offsetp, 1, byte_order);
11969 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Reflect_X, tvb, *offsetp, 1, byte_order);
11970 proto_tree_add_item(bitmask_tree, hf_x11_randr_ScreenChangeNotify_rotation_mask_Reflect_Y, tvb, *offsetp, 1, byte_order);
11972 *offsetp += 1;
11973 CARD16(event_sequencenumber);
11974 f_timestamp = VALUE32(tvb, *offsetp);
11975 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_timestamp, tvb, *offsetp, 4, byte_order);
11976 *offsetp += 4;
11977 f_config_timestamp = VALUE32(tvb, *offsetp);
11978 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_config_timestamp, tvb, *offsetp, 4, byte_order);
11979 *offsetp += 4;
11980 f_root = VALUE32(tvb, *offsetp);
11981 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_root, tvb, *offsetp, 4, byte_order);
11982 *offsetp += 4;
11983 f_request_window = VALUE32(tvb, *offsetp);
11984 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_request_window, tvb, *offsetp, 4, byte_order);
11985 *offsetp += 4;
11986 f_sizeID = VALUE16(tvb, *offsetp);
11987 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_sizeID, tvb, *offsetp, 2, byte_order);
11988 *offsetp += 2;
11989 f_subpixel_order = field16(tvb, offsetp, t, hf_x11_randr_ScreenChangeNotify_subpixel_order, byte_order);
11990 f_width = VALUE16(tvb, *offsetp);
11991 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_width, tvb, *offsetp, 2, byte_order);
11992 *offsetp += 2;
11993 f_height = VALUE16(tvb, *offsetp);
11994 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_height, tvb, *offsetp, 2, byte_order);
11995 *offsetp += 2;
11996 f_mwidth = VALUE16(tvb, *offsetp);
11997 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_mwidth, tvb, *offsetp, 2, byte_order);
11998 *offsetp += 2;
11999 f_mheight = VALUE16(tvb, *offsetp);
12000 proto_tree_add_item(t, hf_x11_randr_ScreenChangeNotify_mheight, tvb, *offsetp, 2, byte_order);
12001 *offsetp += 2;
12004 static void struct_CrtcChange(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12006 int i;
12007 for (i = 0; i < count; i++) {
12008 proto_item *item;
12009 proto_tree *t;
12010 int f_timestamp;
12011 int f_window;
12012 int f_crtc;
12013 int f_mode;
12014 int f_rotation;
12015 int f_x;
12016 int f_y;
12017 int f_width;
12018 int f_height;
12020 item = proto_tree_add_item(root, hf_x11_struct_CrtcChange, tvb, *offsetp, 28, ENC_NA);
12021 t = proto_item_add_subtree(item, ett_x11_rectangle);
12022 f_timestamp = VALUE32(tvb, *offsetp);
12023 proto_tree_add_item(t, hf_x11_struct_CrtcChange_timestamp, tvb, *offsetp, 4, byte_order);
12024 *offsetp += 4;
12025 f_window = VALUE32(tvb, *offsetp);
12026 proto_tree_add_item(t, hf_x11_struct_CrtcChange_window, tvb, *offsetp, 4, byte_order);
12027 *offsetp += 4;
12028 f_crtc = VALUE32(tvb, *offsetp);
12029 proto_tree_add_item(t, hf_x11_struct_CrtcChange_crtc, tvb, *offsetp, 4, byte_order);
12030 *offsetp += 4;
12031 f_mode = VALUE32(tvb, *offsetp);
12032 proto_tree_add_item(t, hf_x11_struct_CrtcChange_mode, tvb, *offsetp, 4, byte_order);
12033 *offsetp += 4;
12034 f_rotation = VALUE16(tvb, *offsetp);
12036 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_CrtcChange_rotation, tvb, *offsetp, 2, byte_order);
12037 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
12038 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
12039 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
12040 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
12041 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
12042 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
12043 proto_tree_add_item(bitmask_tree, hf_x11_struct_CrtcChange_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
12045 *offsetp += 2;
12046 UNUSED(2);
12047 f_x = VALUE16(tvb, *offsetp);
12048 proto_tree_add_item(t, hf_x11_struct_CrtcChange_x, tvb, *offsetp, 2, byte_order);
12049 *offsetp += 2;
12050 f_y = VALUE16(tvb, *offsetp);
12051 proto_tree_add_item(t, hf_x11_struct_CrtcChange_y, tvb, *offsetp, 2, byte_order);
12052 *offsetp += 2;
12053 f_width = VALUE16(tvb, *offsetp);
12054 proto_tree_add_item(t, hf_x11_struct_CrtcChange_width, tvb, *offsetp, 2, byte_order);
12055 *offsetp += 2;
12056 f_height = VALUE16(tvb, *offsetp);
12057 proto_tree_add_item(t, hf_x11_struct_CrtcChange_height, tvb, *offsetp, 2, byte_order);
12058 *offsetp += 2;
12062 static void struct_OutputChange(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12064 int i;
12065 for (i = 0; i < count; i++) {
12066 proto_item *item;
12067 proto_tree *t;
12068 int f_timestamp;
12069 int f_config_timestamp;
12070 int f_window;
12071 int f_output;
12072 int f_crtc;
12073 int f_mode;
12074 int f_rotation;
12075 int f_connection;
12076 int f_subpixel_order;
12078 item = proto_tree_add_item(root, hf_x11_struct_OutputChange, tvb, *offsetp, 28, ENC_NA);
12079 t = proto_item_add_subtree(item, ett_x11_rectangle);
12080 f_timestamp = VALUE32(tvb, *offsetp);
12081 proto_tree_add_item(t, hf_x11_struct_OutputChange_timestamp, tvb, *offsetp, 4, byte_order);
12082 *offsetp += 4;
12083 f_config_timestamp = VALUE32(tvb, *offsetp);
12084 proto_tree_add_item(t, hf_x11_struct_OutputChange_config_timestamp, tvb, *offsetp, 4, byte_order);
12085 *offsetp += 4;
12086 f_window = VALUE32(tvb, *offsetp);
12087 proto_tree_add_item(t, hf_x11_struct_OutputChange_window, tvb, *offsetp, 4, byte_order);
12088 *offsetp += 4;
12089 f_output = VALUE32(tvb, *offsetp);
12090 proto_tree_add_item(t, hf_x11_struct_OutputChange_output, tvb, *offsetp, 4, byte_order);
12091 *offsetp += 4;
12092 f_crtc = VALUE32(tvb, *offsetp);
12093 proto_tree_add_item(t, hf_x11_struct_OutputChange_crtc, tvb, *offsetp, 4, byte_order);
12094 *offsetp += 4;
12095 f_mode = VALUE32(tvb, *offsetp);
12096 proto_tree_add_item(t, hf_x11_struct_OutputChange_mode, tvb, *offsetp, 4, byte_order);
12097 *offsetp += 4;
12098 f_rotation = VALUE16(tvb, *offsetp);
12100 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_OutputChange_rotation, tvb, *offsetp, 2, byte_order);
12101 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
12102 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Rotate_0, tvb, *offsetp, 2, byte_order);
12103 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Rotate_90, tvb, *offsetp, 2, byte_order);
12104 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Rotate_180, tvb, *offsetp, 2, byte_order);
12105 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Rotate_270, tvb, *offsetp, 2, byte_order);
12106 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Reflect_X, tvb, *offsetp, 2, byte_order);
12107 proto_tree_add_item(bitmask_tree, hf_x11_struct_OutputChange_rotation_mask_Reflect_Y, tvb, *offsetp, 2, byte_order);
12109 *offsetp += 2;
12110 f_connection = field8(tvb, offsetp, t, hf_x11_struct_OutputChange_connection, byte_order);
12111 f_subpixel_order = field8(tvb, offsetp, t, hf_x11_struct_OutputChange_subpixel_order, byte_order);
12115 static void struct_OutputProperty(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12117 int i;
12118 for (i = 0; i < count; i++) {
12119 proto_item *item;
12120 proto_tree *t;
12121 int f_window;
12122 int f_output;
12123 int f_atom;
12124 int f_timestamp;
12125 int f_status;
12127 item = proto_tree_add_item(root, hf_x11_struct_OutputProperty, tvb, *offsetp, 28, ENC_NA);
12128 t = proto_item_add_subtree(item, ett_x11_rectangle);
12129 f_window = VALUE32(tvb, *offsetp);
12130 proto_tree_add_item(t, hf_x11_struct_OutputProperty_window, tvb, *offsetp, 4, byte_order);
12131 *offsetp += 4;
12132 f_output = VALUE32(tvb, *offsetp);
12133 proto_tree_add_item(t, hf_x11_struct_OutputProperty_output, tvb, *offsetp, 4, byte_order);
12134 *offsetp += 4;
12135 f_atom = VALUE32(tvb, *offsetp);
12136 proto_tree_add_item(t, hf_x11_struct_OutputProperty_atom, tvb, *offsetp, 4, byte_order);
12137 *offsetp += 4;
12138 f_timestamp = VALUE32(tvb, *offsetp);
12139 proto_tree_add_item(t, hf_x11_struct_OutputProperty_timestamp, tvb, *offsetp, 4, byte_order);
12140 *offsetp += 4;
12141 f_status = field8(tvb, offsetp, t, hf_x11_struct_OutputProperty_status, byte_order);
12142 UNUSED(11);
12146 static void struct_NotifyData(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order, int count)
12148 int i;
12149 int base = *offsetp;
12150 for (i = 0; i < count; i++) {
12151 proto_item *item;
12152 proto_tree *t;
12153 item = proto_tree_add_item(root, hf_x11_union_NotifyData, tvb, base, 28, ENC_NA);
12154 t = proto_item_add_subtree(item, ett_x11_rectangle);
12156 *offsetp = base;
12157 struct_CrtcChange(tvb, offsetp, t, byte_order, 1);
12158 *offsetp = base;
12159 struct_OutputChange(tvb, offsetp, t, byte_order, 1);
12160 *offsetp = base;
12161 struct_OutputProperty(tvb, offsetp, t, byte_order, 1);
12162 base += 28;
12164 *offsetp = base;
12167 static void randrNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
12169 int f_subCode;
12170 f_subCode = field8(tvb, offsetp, t, hf_x11_randr_Notify_subCode, byte_order);
12171 CARD16(event_sequencenumber);
12172 struct_NotifyData(tvb, offsetp, t, byte_order, 1);
12174 static const value_string randr_extension_minor[] = {
12175 { 0, "QueryVersion" },
12176 { 2, "SetScreenConfig" },
12177 { 4, "SelectInput" },
12178 { 5, "GetScreenInfo" },
12179 { 6, "GetScreenSizeRange" },
12180 { 7, "SetScreenSize" },
12181 { 8, "GetScreenResources" },
12182 { 9, "GetOutputInfo" },
12183 { 10, "ListOutputProperties" },
12184 { 11, "QueryOutputProperty" },
12185 { 12, "ConfigureOutputProperty" },
12186 { 13, "ChangeOutputProperty" },
12187 { 14, "DeleteOutputProperty" },
12188 { 15, "GetOutputProperty" },
12189 { 16, "CreateMode" },
12190 { 17, "DestroyMode" },
12191 { 18, "AddOutputMode" },
12192 { 19, "DeleteOutputMode" },
12193 { 20, "GetCrtcInfo" },
12194 { 21, "SetCrtcConfig" },
12195 { 22, "GetCrtcGammaSize" },
12196 { 23, "GetCrtcGamma" },
12197 { 24, "SetCrtcGamma" },
12198 { 25, "GetScreenResourcesCurrent" },
12199 { 26, "SetCrtcTransform" },
12200 { 27, "GetCrtcTransform" },
12201 { 28, "GetPanning" },
12202 { 29, "SetPanning" },
12203 { 30, "SetOutputPrimary" },
12204 { 31, "GetOutputPrimary" },
12205 { 0, NULL }
12207 const x11_event_info randr_events[] = {
12208 { "randr-ScreenChangeNotify", randrScreenChangeNotify },
12209 { "randr-Notify", randrNotify },
12210 { NULL, NULL }
12212 static x11_reply_info randr_replies[] = {
12213 { 0, randrQueryVersion_Reply },
12214 { 2, randrSetScreenConfig_Reply },
12215 { 5, randrGetScreenInfo_Reply },
12216 { 6, randrGetScreenSizeRange_Reply },
12217 { 8, randrGetScreenResources_Reply },
12218 { 9, randrGetOutputInfo_Reply },
12219 { 10, randrListOutputProperties_Reply },
12220 { 11, randrQueryOutputProperty_Reply },
12221 { 15, randrGetOutputProperty_Reply },
12222 { 16, randrCreateMode_Reply },
12223 { 20, randrGetCrtcInfo_Reply },
12224 { 21, randrSetCrtcConfig_Reply },
12225 { 22, randrGetCrtcGammaSize_Reply },
12226 { 23, randrGetCrtcGamma_Reply },
12227 { 25, randrGetScreenResourcesCurrent_Reply },
12228 { 27, randrGetCrtcTransform_Reply },
12229 { 28, randrGetPanning_Reply },
12230 { 29, randrSetPanning_Reply },
12231 { 31, randrGetOutputPrimary_Reply },
12232 { 0, NULL }
12235 static void dispatch_randr(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12237 int minor, length;
12238 minor = CARD8(randr_extension_minor);
12239 length = REQUEST_LENGTH();
12241 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
12242 val_to_str(minor, randr_extension_minor,
12243 "<Unknown opcode %d>"));
12244 switch (minor) {
12245 case 0:
12246 randrQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
12247 break;
12248 case 2:
12249 randrSetScreenConfig(tvb, pinfo, offsetp, t, byte_order, length);
12250 break;
12251 case 4:
12252 randrSelectInput(tvb, pinfo, offsetp, t, byte_order, length);
12253 break;
12254 case 5:
12255 randrGetScreenInfo(tvb, pinfo, offsetp, t, byte_order, length);
12256 break;
12257 case 6:
12258 randrGetScreenSizeRange(tvb, pinfo, offsetp, t, byte_order, length);
12259 break;
12260 case 7:
12261 randrSetScreenSize(tvb, pinfo, offsetp, t, byte_order, length);
12262 break;
12263 case 8:
12264 randrGetScreenResources(tvb, pinfo, offsetp, t, byte_order, length);
12265 break;
12266 case 9:
12267 randrGetOutputInfo(tvb, pinfo, offsetp, t, byte_order, length);
12268 break;
12269 case 10:
12270 randrListOutputProperties(tvb, pinfo, offsetp, t, byte_order, length);
12271 break;
12272 case 11:
12273 randrQueryOutputProperty(tvb, pinfo, offsetp, t, byte_order, length);
12274 break;
12275 case 12:
12276 randrConfigureOutputProperty(tvb, pinfo, offsetp, t, byte_order, length);
12277 break;
12278 case 13:
12279 randrChangeOutputProperty(tvb, pinfo, offsetp, t, byte_order, length);
12280 break;
12281 case 14:
12282 randrDeleteOutputProperty(tvb, pinfo, offsetp, t, byte_order, length);
12283 break;
12284 case 15:
12285 randrGetOutputProperty(tvb, pinfo, offsetp, t, byte_order, length);
12286 break;
12287 case 16:
12288 randrCreateMode(tvb, pinfo, offsetp, t, byte_order, length);
12289 break;
12290 case 17:
12291 randrDestroyMode(tvb, pinfo, offsetp, t, byte_order, length);
12292 break;
12293 case 18:
12294 randrAddOutputMode(tvb, pinfo, offsetp, t, byte_order, length);
12295 break;
12296 case 19:
12297 randrDeleteOutputMode(tvb, pinfo, offsetp, t, byte_order, length);
12298 break;
12299 case 20:
12300 randrGetCrtcInfo(tvb, pinfo, offsetp, t, byte_order, length);
12301 break;
12302 case 21:
12303 randrSetCrtcConfig(tvb, pinfo, offsetp, t, byte_order, length);
12304 break;
12305 case 22:
12306 randrGetCrtcGammaSize(tvb, pinfo, offsetp, t, byte_order, length);
12307 break;
12308 case 23:
12309 randrGetCrtcGamma(tvb, pinfo, offsetp, t, byte_order, length);
12310 break;
12311 case 24:
12312 randrSetCrtcGamma(tvb, pinfo, offsetp, t, byte_order, length);
12313 break;
12314 case 25:
12315 randrGetScreenResourcesCurrent(tvb, pinfo, offsetp, t, byte_order, length);
12316 break;
12317 case 26:
12318 randrSetCrtcTransform(tvb, pinfo, offsetp, t, byte_order, length);
12319 break;
12320 case 27:
12321 randrGetCrtcTransform(tvb, pinfo, offsetp, t, byte_order, length);
12322 break;
12323 case 28:
12324 randrGetPanning(tvb, pinfo, offsetp, t, byte_order, length);
12325 break;
12326 case 29:
12327 randrSetPanning(tvb, pinfo, offsetp, t, byte_order, length);
12328 break;
12329 case 30:
12330 randrSetOutputPrimary(tvb, pinfo, offsetp, t, byte_order, length);
12331 break;
12332 case 31:
12333 randrGetOutputPrimary(tvb, pinfo, offsetp, t, byte_order, length);
12334 break;
12335 /* No need for a default case here, since Unknown is printed above,
12336 and UNDECODED() is taken care of by dissect_x11_request */
12340 static void register_randr(void)
12342 set_handler("RANDR", dispatch_randr, randr_errors, randr_events, randr_replies);
12345 static void struct_Range8(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12347 int i;
12348 for (i = 0; i < count; i++) {
12349 proto_item *item;
12350 proto_tree *t;
12351 int f_first;
12352 int f_last;
12354 item = proto_tree_add_item(root, hf_x11_struct_Range8, tvb, *offsetp, 2, ENC_NA);
12355 t = proto_item_add_subtree(item, ett_x11_rectangle);
12356 f_first = VALUE8(tvb, *offsetp);
12357 proto_tree_add_item(t, hf_x11_struct_Range8_first, tvb, *offsetp, 1, byte_order);
12358 *offsetp += 1;
12359 f_last = VALUE8(tvb, *offsetp);
12360 proto_tree_add_item(t, hf_x11_struct_Range8_last, tvb, *offsetp, 1, byte_order);
12361 *offsetp += 1;
12365 static void struct_Range16(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12367 int i;
12368 for (i = 0; i < count; i++) {
12369 proto_item *item;
12370 proto_tree *t;
12371 int f_first;
12372 int f_last;
12374 item = proto_tree_add_item(root, hf_x11_struct_Range16, tvb, *offsetp, 4, ENC_NA);
12375 t = proto_item_add_subtree(item, ett_x11_rectangle);
12376 f_first = VALUE16(tvb, *offsetp);
12377 proto_tree_add_item(t, hf_x11_struct_Range16_first, tvb, *offsetp, 2, byte_order);
12378 *offsetp += 2;
12379 f_last = VALUE16(tvb, *offsetp);
12380 proto_tree_add_item(t, hf_x11_struct_Range16_last, tvb, *offsetp, 2, byte_order);
12381 *offsetp += 2;
12385 static void struct_ExtRange(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12387 int i;
12388 for (i = 0; i < count; i++) {
12389 proto_item *item;
12390 proto_tree *t;
12392 item = proto_tree_add_item(root, hf_x11_struct_ExtRange, tvb, *offsetp, 6, ENC_NA);
12393 t = proto_item_add_subtree(item, ett_x11_rectangle);
12394 struct_Range8(tvb, offsetp, t, byte_order, 1);
12395 struct_Range16(tvb, offsetp, t, byte_order, 1);
12399 static void struct_Range(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12401 int i;
12402 for (i = 0; i < count; i++) {
12403 proto_item *item;
12404 proto_tree *t;
12405 int f_client_started;
12406 int f_client_died;
12408 item = proto_tree_add_item(root, hf_x11_struct_Range, tvb, *offsetp, 24, ENC_NA);
12409 t = proto_item_add_subtree(item, ett_x11_rectangle);
12410 struct_Range8(tvb, offsetp, t, byte_order, 1);
12411 struct_Range8(tvb, offsetp, t, byte_order, 1);
12412 struct_ExtRange(tvb, offsetp, t, byte_order, 1);
12413 struct_ExtRange(tvb, offsetp, t, byte_order, 1);
12414 struct_Range8(tvb, offsetp, t, byte_order, 1);
12415 struct_Range8(tvb, offsetp, t, byte_order, 1);
12416 struct_Range8(tvb, offsetp, t, byte_order, 1);
12417 f_client_started = VALUE8(tvb, *offsetp);
12418 proto_tree_add_item(t, hf_x11_struct_Range_client_started, tvb, *offsetp, 1, byte_order);
12419 *offsetp += 1;
12420 f_client_died = VALUE8(tvb, *offsetp);
12421 proto_tree_add_item(t, hf_x11_struct_Range_client_died, tvb, *offsetp, 1, byte_order);
12422 *offsetp += 1;
12426 static int struct_size_ClientInfo(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
12428 int size = 0;
12429 int f_num_ranges;
12430 f_num_ranges = VALUE32(tvb, *offsetp + size + 4);
12431 size += f_num_ranges * 24;
12432 return size + 8;
12435 static void struct_ClientInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
12437 int i;
12438 for (i = 0; i < count; i++) {
12439 proto_item *item;
12440 proto_tree *t;
12441 int f_client_resource;
12442 int f_num_ranges;
12444 item = proto_tree_add_item(root, hf_x11_struct_ClientInfo, tvb, *offsetp, struct_size_ClientInfo(tvb, offsetp, byte_order), ENC_NA);
12445 t = proto_item_add_subtree(item, ett_x11_rectangle);
12446 f_client_resource = VALUE32(tvb, *offsetp);
12447 proto_tree_add_item(t, hf_x11_struct_ClientInfo_client_resource, tvb, *offsetp, 4, byte_order);
12448 *offsetp += 4;
12449 f_num_ranges = VALUE32(tvb, *offsetp);
12450 proto_tree_add_item(t, hf_x11_struct_ClientInfo_num_ranges, tvb, *offsetp, 4, byte_order);
12451 *offsetp += 4;
12452 struct_Range(tvb, offsetp, t, byte_order, f_num_ranges);
12456 static void recordQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12458 int f_major_version;
12459 int f_minor_version;
12460 f_major_version = VALUE16(tvb, *offsetp);
12461 proto_tree_add_item(t, hf_x11_record_QueryVersion_major_version, tvb, *offsetp, 2, byte_order);
12462 *offsetp += 2;
12463 f_minor_version = VALUE16(tvb, *offsetp);
12464 proto_tree_add_item(t, hf_x11_record_QueryVersion_minor_version, tvb, *offsetp, 2, byte_order);
12465 *offsetp += 2;
12467 static void recordQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12469 int f_length, length, sequence_number;
12470 int f_major_version;
12471 int f_minor_version;
12473 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
12475 REPLY(reply);
12476 UNUSED(1);
12477 sequence_number = VALUE16(tvb, *offsetp);
12478 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12479 "sequencenumber: %d (record-QueryVersion)", sequence_number);
12480 *offsetp += 2;
12481 f_length = VALUE32(tvb, *offsetp);
12482 length = f_length * 4 + 32;
12483 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12484 *offsetp += 4;
12485 f_major_version = VALUE16(tvb, *offsetp);
12486 proto_tree_add_item(t, hf_x11_record_QueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
12487 *offsetp += 2;
12488 f_minor_version = VALUE16(tvb, *offsetp);
12489 proto_tree_add_item(t, hf_x11_record_QueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
12490 *offsetp += 2;
12493 static void recordCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12495 int f_context;
12496 int f_element_header;
12497 int f_num_client_specs;
12498 int f_num_ranges;
12499 f_context = VALUE32(tvb, *offsetp);
12500 proto_tree_add_item(t, hf_x11_record_CreateContext_context, tvb, *offsetp, 4, byte_order);
12501 *offsetp += 4;
12502 f_element_header = VALUE8(tvb, *offsetp);
12503 proto_tree_add_item(t, hf_x11_record_CreateContext_element_header, tvb, *offsetp, 1, byte_order);
12504 *offsetp += 1;
12505 UNUSED(3);
12506 f_num_client_specs = VALUE32(tvb, *offsetp);
12507 proto_tree_add_item(t, hf_x11_record_CreateContext_num_client_specs, tvb, *offsetp, 4, byte_order);
12508 *offsetp += 4;
12509 f_num_ranges = VALUE32(tvb, *offsetp);
12510 proto_tree_add_item(t, hf_x11_record_CreateContext_num_ranges, tvb, *offsetp, 4, byte_order);
12511 *offsetp += 4;
12512 listOfCard32(tvb, offsetp, t, hf_x11_record_CreateContext_client_specs, hf_x11_record_CreateContext_client_specs_item, f_num_client_specs, byte_order);
12513 length -= f_num_client_specs * 4;
12514 struct_Range(tvb, offsetp, t, byte_order, f_num_ranges);
12515 length -= f_num_ranges * 24;
12518 static void recordRegisterClients(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12520 int f_context;
12521 int f_element_header;
12522 int f_num_client_specs;
12523 int f_num_ranges;
12524 f_context = VALUE32(tvb, *offsetp);
12525 proto_tree_add_item(t, hf_x11_record_RegisterClients_context, tvb, *offsetp, 4, byte_order);
12526 *offsetp += 4;
12527 f_element_header = VALUE8(tvb, *offsetp);
12528 proto_tree_add_item(t, hf_x11_record_RegisterClients_element_header, tvb, *offsetp, 1, byte_order);
12529 *offsetp += 1;
12530 UNUSED(3);
12531 f_num_client_specs = VALUE32(tvb, *offsetp);
12532 proto_tree_add_item(t, hf_x11_record_RegisterClients_num_client_specs, tvb, *offsetp, 4, byte_order);
12533 *offsetp += 4;
12534 f_num_ranges = VALUE32(tvb, *offsetp);
12535 proto_tree_add_item(t, hf_x11_record_RegisterClients_num_ranges, tvb, *offsetp, 4, byte_order);
12536 *offsetp += 4;
12537 listOfCard32(tvb, offsetp, t, hf_x11_record_RegisterClients_client_specs, hf_x11_record_RegisterClients_client_specs_item, f_num_client_specs, byte_order);
12538 length -= f_num_client_specs * 4;
12539 struct_Range(tvb, offsetp, t, byte_order, f_num_ranges);
12540 length -= f_num_ranges * 24;
12543 static void recordUnregisterClients(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12545 int f_context;
12546 int f_num_client_specs;
12547 f_context = VALUE32(tvb, *offsetp);
12548 proto_tree_add_item(t, hf_x11_record_UnregisterClients_context, tvb, *offsetp, 4, byte_order);
12549 *offsetp += 4;
12550 f_num_client_specs = VALUE32(tvb, *offsetp);
12551 proto_tree_add_item(t, hf_x11_record_UnregisterClients_num_client_specs, tvb, *offsetp, 4, byte_order);
12552 *offsetp += 4;
12553 listOfCard32(tvb, offsetp, t, hf_x11_record_UnregisterClients_client_specs, hf_x11_record_UnregisterClients_client_specs_item, f_num_client_specs, byte_order);
12554 length -= f_num_client_specs * 4;
12557 static void recordGetContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12559 int f_context;
12560 f_context = VALUE32(tvb, *offsetp);
12561 proto_tree_add_item(t, hf_x11_record_GetContext_context, tvb, *offsetp, 4, byte_order);
12562 *offsetp += 4;
12564 static void recordGetContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12566 int f_length, length, sequence_number;
12567 int f_enabled;
12568 int f_element_header;
12569 int f_num_intercepted_clients;
12571 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetContext");
12573 REPLY(reply);
12574 f_enabled = VALUE8(tvb, *offsetp);
12575 proto_tree_add_item(t, hf_x11_record_GetContext_reply_enabled, tvb, *offsetp, 1, byte_order);
12576 *offsetp += 1;
12577 sequence_number = VALUE16(tvb, *offsetp);
12578 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12579 "sequencenumber: %d (record-GetContext)", sequence_number);
12580 *offsetp += 2;
12581 f_length = VALUE32(tvb, *offsetp);
12582 length = f_length * 4 + 32;
12583 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12584 *offsetp += 4;
12585 f_element_header = VALUE8(tvb, *offsetp);
12586 proto_tree_add_item(t, hf_x11_record_GetContext_reply_element_header, tvb, *offsetp, 1, byte_order);
12587 *offsetp += 1;
12588 UNUSED(3);
12589 f_num_intercepted_clients = VALUE32(tvb, *offsetp);
12590 proto_tree_add_item(t, hf_x11_record_GetContext_reply_num_intercepted_clients, tvb, *offsetp, 4, byte_order);
12591 *offsetp += 4;
12592 UNUSED(16);
12593 struct_ClientInfo(tvb, offsetp, t, byte_order, f_num_intercepted_clients);
12596 static void recordEnableContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12598 int f_context;
12599 f_context = VALUE32(tvb, *offsetp);
12600 proto_tree_add_item(t, hf_x11_record_EnableContext_context, tvb, *offsetp, 4, byte_order);
12601 *offsetp += 4;
12603 static void recordEnableContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12605 int f_length, length, sequence_number;
12606 int f_category;
12607 int f_element_header;
12608 int f_client_swapped;
12609 int f_xid_base;
12610 int f_server_time;
12611 int f_rec_sequence_num;
12613 col_append_fstr(pinfo->cinfo, COL_INFO, "-EnableContext");
12615 REPLY(reply);
12616 f_category = VALUE8(tvb, *offsetp);
12617 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_category, tvb, *offsetp, 1, byte_order);
12618 *offsetp += 1;
12619 sequence_number = VALUE16(tvb, *offsetp);
12620 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12621 "sequencenumber: %d (record-EnableContext)", sequence_number);
12622 *offsetp += 2;
12623 f_length = VALUE32(tvb, *offsetp);
12624 length = f_length * 4 + 32;
12625 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12626 *offsetp += 4;
12627 f_element_header = VALUE8(tvb, *offsetp);
12628 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_element_header, tvb, *offsetp, 1, byte_order);
12629 *offsetp += 1;
12630 f_client_swapped = VALUE8(tvb, *offsetp);
12631 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_client_swapped, tvb, *offsetp, 1, byte_order);
12632 *offsetp += 1;
12633 UNUSED(2);
12634 f_xid_base = VALUE32(tvb, *offsetp);
12635 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_xid_base, tvb, *offsetp, 4, byte_order);
12636 *offsetp += 4;
12637 f_server_time = VALUE32(tvb, *offsetp);
12638 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_server_time, tvb, *offsetp, 4, byte_order);
12639 *offsetp += 4;
12640 f_rec_sequence_num = VALUE32(tvb, *offsetp);
12641 proto_tree_add_item(t, hf_x11_record_EnableContext_reply_rec_sequence_num, tvb, *offsetp, 4, byte_order);
12642 *offsetp += 4;
12643 UNUSED(8);
12644 listOfByte(tvb, offsetp, t, hf_x11_record_EnableContext_reply_data, (f_length * 4), byte_order);
12647 static void recordDisableContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12649 int f_context;
12650 f_context = VALUE32(tvb, *offsetp);
12651 proto_tree_add_item(t, hf_x11_record_DisableContext_context, tvb, *offsetp, 4, byte_order);
12652 *offsetp += 4;
12655 static void recordFreeContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12657 int f_context;
12658 f_context = VALUE32(tvb, *offsetp);
12659 proto_tree_add_item(t, hf_x11_record_FreeContext_context, tvb, *offsetp, 4, byte_order);
12660 *offsetp += 4;
12662 static const value_string record_extension_minor[] = {
12663 { 0, "QueryVersion" },
12664 { 1, "CreateContext" },
12665 { 2, "RegisterClients" },
12666 { 3, "UnregisterClients" },
12667 { 4, "GetContext" },
12668 { 5, "EnableContext" },
12669 { 6, "DisableContext" },
12670 { 7, "FreeContext" },
12671 { 0, NULL }
12673 const x11_event_info record_events[] = {
12674 { NULL, NULL }
12676 static x11_reply_info record_replies[] = {
12677 { 0, recordQueryVersion_Reply },
12678 { 4, recordGetContext_Reply },
12679 { 5, recordEnableContext_Reply },
12680 { 0, NULL }
12683 static void dispatch_record(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12685 int minor, length;
12686 minor = CARD8(record_extension_minor);
12687 length = REQUEST_LENGTH();
12689 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
12690 val_to_str(minor, record_extension_minor,
12691 "<Unknown opcode %d>"));
12692 switch (minor) {
12693 case 0:
12694 recordQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
12695 break;
12696 case 1:
12697 recordCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
12698 break;
12699 case 2:
12700 recordRegisterClients(tvb, pinfo, offsetp, t, byte_order, length);
12701 break;
12702 case 3:
12703 recordUnregisterClients(tvb, pinfo, offsetp, t, byte_order, length);
12704 break;
12705 case 4:
12706 recordGetContext(tvb, pinfo, offsetp, t, byte_order, length);
12707 break;
12708 case 5:
12709 recordEnableContext(tvb, pinfo, offsetp, t, byte_order, length);
12710 break;
12711 case 6:
12712 recordDisableContext(tvb, pinfo, offsetp, t, byte_order, length);
12713 break;
12714 case 7:
12715 recordFreeContext(tvb, pinfo, offsetp, t, byte_order, length);
12716 break;
12717 /* No need for a default case here, since Unknown is printed above,
12718 and UNDECODED() is taken care of by dissect_x11_request */
12722 static void register_record(void)
12724 set_handler("RECORD", dispatch_record, record_errors, record_events, record_replies);
12727 static void renderQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12729 int f_client_major_version;
12730 int f_client_minor_version;
12731 f_client_major_version = VALUE32(tvb, *offsetp);
12732 proto_tree_add_item(t, hf_x11_render_QueryVersion_client_major_version, tvb, *offsetp, 4, byte_order);
12733 *offsetp += 4;
12734 f_client_minor_version = VALUE32(tvb, *offsetp);
12735 proto_tree_add_item(t, hf_x11_render_QueryVersion_client_minor_version, tvb, *offsetp, 4, byte_order);
12736 *offsetp += 4;
12738 static void renderQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12740 int f_length, length, sequence_number;
12741 int f_major_version;
12742 int f_minor_version;
12744 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
12746 REPLY(reply);
12747 UNUSED(1);
12748 sequence_number = VALUE16(tvb, *offsetp);
12749 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12750 "sequencenumber: %d (render-QueryVersion)", sequence_number);
12751 *offsetp += 2;
12752 f_length = VALUE32(tvb, *offsetp);
12753 length = f_length * 4 + 32;
12754 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12755 *offsetp += 4;
12756 f_major_version = VALUE32(tvb, *offsetp);
12757 proto_tree_add_item(t, hf_x11_render_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
12758 *offsetp += 4;
12759 f_minor_version = VALUE32(tvb, *offsetp);
12760 proto_tree_add_item(t, hf_x11_render_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
12761 *offsetp += 4;
12762 UNUSED(16);
12765 static void renderQueryPictFormats(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
12768 static void renderQueryPictFormats_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12770 int f_length, length, sequence_number;
12771 int f_num_formats;
12772 int f_num_screens;
12773 int f_num_depths;
12774 int f_num_visuals;
12775 int f_num_subpixel;
12777 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryPictFormats");
12779 REPLY(reply);
12780 UNUSED(1);
12781 sequence_number = VALUE16(tvb, *offsetp);
12782 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12783 "sequencenumber: %d (render-QueryPictFormats)", sequence_number);
12784 *offsetp += 2;
12785 f_length = VALUE32(tvb, *offsetp);
12786 length = f_length * 4 + 32;
12787 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12788 *offsetp += 4;
12789 f_num_formats = VALUE32(tvb, *offsetp);
12790 proto_tree_add_item(t, hf_x11_render_QueryPictFormats_reply_num_formats, tvb, *offsetp, 4, byte_order);
12791 *offsetp += 4;
12792 f_num_screens = VALUE32(tvb, *offsetp);
12793 proto_tree_add_item(t, hf_x11_render_QueryPictFormats_reply_num_screens, tvb, *offsetp, 4, byte_order);
12794 *offsetp += 4;
12795 f_num_depths = VALUE32(tvb, *offsetp);
12796 proto_tree_add_item(t, hf_x11_render_QueryPictFormats_reply_num_depths, tvb, *offsetp, 4, byte_order);
12797 *offsetp += 4;
12798 f_num_visuals = VALUE32(tvb, *offsetp);
12799 proto_tree_add_item(t, hf_x11_render_QueryPictFormats_reply_num_visuals, tvb, *offsetp, 4, byte_order);
12800 *offsetp += 4;
12801 f_num_subpixel = VALUE32(tvb, *offsetp);
12802 proto_tree_add_item(t, hf_x11_render_QueryPictFormats_reply_num_subpixel, tvb, *offsetp, 4, byte_order);
12803 *offsetp += 4;
12804 UNUSED(4);
12805 struct_PICTFORMINFO(tvb, offsetp, t, byte_order, f_num_formats);
12806 struct_PICTSCREEN(tvb, offsetp, t, byte_order, f_num_screens);
12807 listOfCard32(tvb, offsetp, t, hf_x11_render_QueryPictFormats_reply_subpixels, hf_x11_render_QueryPictFormats_reply_subpixels_item, f_num_subpixel, byte_order);
12810 static void renderQueryPictIndexValues(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12812 int f_format;
12813 f_format = VALUE32(tvb, *offsetp);
12814 proto_tree_add_item(t, hf_x11_render_QueryPictIndexValues_format, tvb, *offsetp, 4, byte_order);
12815 *offsetp += 4;
12817 static void renderQueryPictIndexValues_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
12819 int f_length, length, sequence_number;
12820 int f_num_values;
12822 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryPictIndexValues");
12824 REPLY(reply);
12825 UNUSED(1);
12826 sequence_number = VALUE16(tvb, *offsetp);
12827 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
12828 "sequencenumber: %d (render-QueryPictIndexValues)", sequence_number);
12829 *offsetp += 2;
12830 f_length = VALUE32(tvb, *offsetp);
12831 length = f_length * 4 + 32;
12832 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
12833 *offsetp += 4;
12834 f_num_values = VALUE32(tvb, *offsetp);
12835 proto_tree_add_item(t, hf_x11_render_QueryPictIndexValues_reply_num_values, tvb, *offsetp, 4, byte_order);
12836 *offsetp += 4;
12837 UNUSED(20);
12838 struct_INDEXVALUE(tvb, offsetp, t, byte_order, f_num_values);
12841 static void renderCreatePicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12843 int f_pid;
12844 int f_drawable;
12845 int f_format;
12846 f_pid = VALUE32(tvb, *offsetp);
12847 proto_tree_add_item(t, hf_x11_render_CreatePicture_pid, tvb, *offsetp, 4, byte_order);
12848 *offsetp += 4;
12849 f_drawable = VALUE32(tvb, *offsetp);
12850 proto_tree_add_item(t, hf_x11_render_CreatePicture_drawable, tvb, *offsetp, 4, byte_order);
12851 *offsetp += 4;
12852 f_format = VALUE32(tvb, *offsetp);
12853 proto_tree_add_item(t, hf_x11_render_CreatePicture_format, tvb, *offsetp, 4, byte_order);
12854 *offsetp += 4;
12857 static void renderChangePicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12859 int f_picture;
12860 f_picture = VALUE32(tvb, *offsetp);
12861 proto_tree_add_item(t, hf_x11_render_ChangePicture_picture, tvb, *offsetp, 4, byte_order);
12862 *offsetp += 4;
12865 static void renderSetPictureClipRectangles(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12867 int f_picture;
12868 int f_clip_x_origin;
12869 int f_clip_y_origin;
12870 f_picture = VALUE32(tvb, *offsetp);
12871 proto_tree_add_item(t, hf_x11_render_SetPictureClipRectangles_picture, tvb, *offsetp, 4, byte_order);
12872 *offsetp += 4;
12873 f_clip_x_origin = VALUE16(tvb, *offsetp);
12874 proto_tree_add_item(t, hf_x11_render_SetPictureClipRectangles_clip_x_origin, tvb, *offsetp, 2, byte_order);
12875 *offsetp += 2;
12876 f_clip_y_origin = VALUE16(tvb, *offsetp);
12877 proto_tree_add_item(t, hf_x11_render_SetPictureClipRectangles_clip_y_origin, tvb, *offsetp, 2, byte_order);
12878 *offsetp += 2;
12879 struct_RECTANGLE(tvb, offsetp, t, byte_order, (length - 12) / 8);
12882 static void renderFreePicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12884 int f_picture;
12885 f_picture = VALUE32(tvb, *offsetp);
12886 proto_tree_add_item(t, hf_x11_render_FreePicture_picture, tvb, *offsetp, 4, byte_order);
12887 *offsetp += 4;
12890 static void renderComposite(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12892 int f_op;
12893 int f_src;
12894 int f_mask;
12895 int f_dst;
12896 int f_src_x;
12897 int f_src_y;
12898 int f_mask_x;
12899 int f_mask_y;
12900 int f_dst_x;
12901 int f_dst_y;
12902 int f_width;
12903 int f_height;
12904 f_op = field8(tvb, offsetp, t, hf_x11_render_Composite_op, byte_order);
12905 UNUSED(3);
12906 f_src = VALUE32(tvb, *offsetp);
12907 proto_tree_add_item(t, hf_x11_render_Composite_src, tvb, *offsetp, 4, byte_order);
12908 *offsetp += 4;
12909 f_mask = field32(tvb, offsetp, t, hf_x11_render_Composite_mask, byte_order);
12910 f_dst = VALUE32(tvb, *offsetp);
12911 proto_tree_add_item(t, hf_x11_render_Composite_dst, tvb, *offsetp, 4, byte_order);
12912 *offsetp += 4;
12913 f_src_x = VALUE16(tvb, *offsetp);
12914 proto_tree_add_item(t, hf_x11_render_Composite_src_x, tvb, *offsetp, 2, byte_order);
12915 *offsetp += 2;
12916 f_src_y = VALUE16(tvb, *offsetp);
12917 proto_tree_add_item(t, hf_x11_render_Composite_src_y, tvb, *offsetp, 2, byte_order);
12918 *offsetp += 2;
12919 f_mask_x = VALUE16(tvb, *offsetp);
12920 proto_tree_add_item(t, hf_x11_render_Composite_mask_x, tvb, *offsetp, 2, byte_order);
12921 *offsetp += 2;
12922 f_mask_y = VALUE16(tvb, *offsetp);
12923 proto_tree_add_item(t, hf_x11_render_Composite_mask_y, tvb, *offsetp, 2, byte_order);
12924 *offsetp += 2;
12925 f_dst_x = VALUE16(tvb, *offsetp);
12926 proto_tree_add_item(t, hf_x11_render_Composite_dst_x, tvb, *offsetp, 2, byte_order);
12927 *offsetp += 2;
12928 f_dst_y = VALUE16(tvb, *offsetp);
12929 proto_tree_add_item(t, hf_x11_render_Composite_dst_y, tvb, *offsetp, 2, byte_order);
12930 *offsetp += 2;
12931 f_width = VALUE16(tvb, *offsetp);
12932 proto_tree_add_item(t, hf_x11_render_Composite_width, tvb, *offsetp, 2, byte_order);
12933 *offsetp += 2;
12934 f_height = VALUE16(tvb, *offsetp);
12935 proto_tree_add_item(t, hf_x11_render_Composite_height, tvb, *offsetp, 2, byte_order);
12936 *offsetp += 2;
12939 static void renderTrapezoids(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12941 int f_op;
12942 int f_src;
12943 int f_dst;
12944 int f_mask_format;
12945 int f_src_x;
12946 int f_src_y;
12947 f_op = field8(tvb, offsetp, t, hf_x11_render_Trapezoids_op, byte_order);
12948 UNUSED(3);
12949 f_src = VALUE32(tvb, *offsetp);
12950 proto_tree_add_item(t, hf_x11_render_Trapezoids_src, tvb, *offsetp, 4, byte_order);
12951 *offsetp += 4;
12952 f_dst = VALUE32(tvb, *offsetp);
12953 proto_tree_add_item(t, hf_x11_render_Trapezoids_dst, tvb, *offsetp, 4, byte_order);
12954 *offsetp += 4;
12955 f_mask_format = VALUE32(tvb, *offsetp);
12956 proto_tree_add_item(t, hf_x11_render_Trapezoids_mask_format, tvb, *offsetp, 4, byte_order);
12957 *offsetp += 4;
12958 f_src_x = VALUE16(tvb, *offsetp);
12959 proto_tree_add_item(t, hf_x11_render_Trapezoids_src_x, tvb, *offsetp, 2, byte_order);
12960 *offsetp += 2;
12961 f_src_y = VALUE16(tvb, *offsetp);
12962 proto_tree_add_item(t, hf_x11_render_Trapezoids_src_y, tvb, *offsetp, 2, byte_order);
12963 *offsetp += 2;
12964 struct_TRAPEZOID(tvb, offsetp, t, byte_order, (length - 24) / 40);
12967 static void renderTriangles(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12969 int f_op;
12970 int f_src;
12971 int f_dst;
12972 int f_mask_format;
12973 int f_src_x;
12974 int f_src_y;
12975 f_op = field8(tvb, offsetp, t, hf_x11_render_Triangles_op, byte_order);
12976 UNUSED(3);
12977 f_src = VALUE32(tvb, *offsetp);
12978 proto_tree_add_item(t, hf_x11_render_Triangles_src, tvb, *offsetp, 4, byte_order);
12979 *offsetp += 4;
12980 f_dst = VALUE32(tvb, *offsetp);
12981 proto_tree_add_item(t, hf_x11_render_Triangles_dst, tvb, *offsetp, 4, byte_order);
12982 *offsetp += 4;
12983 f_mask_format = VALUE32(tvb, *offsetp);
12984 proto_tree_add_item(t, hf_x11_render_Triangles_mask_format, tvb, *offsetp, 4, byte_order);
12985 *offsetp += 4;
12986 f_src_x = VALUE16(tvb, *offsetp);
12987 proto_tree_add_item(t, hf_x11_render_Triangles_src_x, tvb, *offsetp, 2, byte_order);
12988 *offsetp += 2;
12989 f_src_y = VALUE16(tvb, *offsetp);
12990 proto_tree_add_item(t, hf_x11_render_Triangles_src_y, tvb, *offsetp, 2, byte_order);
12991 *offsetp += 2;
12992 struct_TRIANGLE(tvb, offsetp, t, byte_order, (length - 24) / 24);
12995 static void renderTriStrip(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
12997 int f_op;
12998 int f_src;
12999 int f_dst;
13000 int f_mask_format;
13001 int f_src_x;
13002 int f_src_y;
13003 f_op = field8(tvb, offsetp, t, hf_x11_render_TriStrip_op, byte_order);
13004 UNUSED(3);
13005 f_src = VALUE32(tvb, *offsetp);
13006 proto_tree_add_item(t, hf_x11_render_TriStrip_src, tvb, *offsetp, 4, byte_order);
13007 *offsetp += 4;
13008 f_dst = VALUE32(tvb, *offsetp);
13009 proto_tree_add_item(t, hf_x11_render_TriStrip_dst, tvb, *offsetp, 4, byte_order);
13010 *offsetp += 4;
13011 f_mask_format = VALUE32(tvb, *offsetp);
13012 proto_tree_add_item(t, hf_x11_render_TriStrip_mask_format, tvb, *offsetp, 4, byte_order);
13013 *offsetp += 4;
13014 f_src_x = VALUE16(tvb, *offsetp);
13015 proto_tree_add_item(t, hf_x11_render_TriStrip_src_x, tvb, *offsetp, 2, byte_order);
13016 *offsetp += 2;
13017 f_src_y = VALUE16(tvb, *offsetp);
13018 proto_tree_add_item(t, hf_x11_render_TriStrip_src_y, tvb, *offsetp, 2, byte_order);
13019 *offsetp += 2;
13020 struct_POINTFIX(tvb, offsetp, t, byte_order, (length - 24) / 8);
13023 static void renderTriFan(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13025 int f_op;
13026 int f_src;
13027 int f_dst;
13028 int f_mask_format;
13029 int f_src_x;
13030 int f_src_y;
13031 f_op = field8(tvb, offsetp, t, hf_x11_render_TriFan_op, byte_order);
13032 UNUSED(3);
13033 f_src = VALUE32(tvb, *offsetp);
13034 proto_tree_add_item(t, hf_x11_render_TriFan_src, tvb, *offsetp, 4, byte_order);
13035 *offsetp += 4;
13036 f_dst = VALUE32(tvb, *offsetp);
13037 proto_tree_add_item(t, hf_x11_render_TriFan_dst, tvb, *offsetp, 4, byte_order);
13038 *offsetp += 4;
13039 f_mask_format = VALUE32(tvb, *offsetp);
13040 proto_tree_add_item(t, hf_x11_render_TriFan_mask_format, tvb, *offsetp, 4, byte_order);
13041 *offsetp += 4;
13042 f_src_x = VALUE16(tvb, *offsetp);
13043 proto_tree_add_item(t, hf_x11_render_TriFan_src_x, tvb, *offsetp, 2, byte_order);
13044 *offsetp += 2;
13045 f_src_y = VALUE16(tvb, *offsetp);
13046 proto_tree_add_item(t, hf_x11_render_TriFan_src_y, tvb, *offsetp, 2, byte_order);
13047 *offsetp += 2;
13048 struct_POINTFIX(tvb, offsetp, t, byte_order, (length - 24) / 8);
13051 static void renderCreateGlyphSet(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13053 int f_gsid;
13054 int f_format;
13055 f_gsid = VALUE32(tvb, *offsetp);
13056 proto_tree_add_item(t, hf_x11_render_CreateGlyphSet_gsid, tvb, *offsetp, 4, byte_order);
13057 *offsetp += 4;
13058 f_format = VALUE32(tvb, *offsetp);
13059 proto_tree_add_item(t, hf_x11_render_CreateGlyphSet_format, tvb, *offsetp, 4, byte_order);
13060 *offsetp += 4;
13063 static void renderReferenceGlyphSet(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13065 int f_gsid;
13066 int f_existing;
13067 f_gsid = VALUE32(tvb, *offsetp);
13068 proto_tree_add_item(t, hf_x11_render_ReferenceGlyphSet_gsid, tvb, *offsetp, 4, byte_order);
13069 *offsetp += 4;
13070 f_existing = VALUE32(tvb, *offsetp);
13071 proto_tree_add_item(t, hf_x11_render_ReferenceGlyphSet_existing, tvb, *offsetp, 4, byte_order);
13072 *offsetp += 4;
13075 static void renderFreeGlyphSet(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13077 int f_glyphset;
13078 f_glyphset = VALUE32(tvb, *offsetp);
13079 proto_tree_add_item(t, hf_x11_render_FreeGlyphSet_glyphset, tvb, *offsetp, 4, byte_order);
13080 *offsetp += 4;
13083 static void renderAddGlyphs(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13085 int f_glyphset;
13086 int f_glyphs_len;
13087 f_glyphset = VALUE32(tvb, *offsetp);
13088 proto_tree_add_item(t, hf_x11_render_AddGlyphs_glyphset, tvb, *offsetp, 4, byte_order);
13089 *offsetp += 4;
13090 f_glyphs_len = VALUE32(tvb, *offsetp);
13091 proto_tree_add_item(t, hf_x11_render_AddGlyphs_glyphs_len, tvb, *offsetp, 4, byte_order);
13092 *offsetp += 4;
13093 listOfCard32(tvb, offsetp, t, hf_x11_render_AddGlyphs_glyphids, hf_x11_render_AddGlyphs_glyphids_item, f_glyphs_len, byte_order);
13094 length -= f_glyphs_len * 4;
13095 struct_GLYPHINFO(tvb, offsetp, t, byte_order, f_glyphs_len);
13096 length -= f_glyphs_len * 12;
13097 listOfByte(tvb, offsetp, t, hf_x11_render_AddGlyphs_data, (length - 12) / 1, byte_order);
13100 static void renderFreeGlyphs(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13102 int f_glyphset;
13103 f_glyphset = VALUE32(tvb, *offsetp);
13104 proto_tree_add_item(t, hf_x11_render_FreeGlyphs_glyphset, tvb, *offsetp, 4, byte_order);
13105 *offsetp += 4;
13106 listOfCard32(tvb, offsetp, t, hf_x11_render_FreeGlyphs_glyphs, hf_x11_render_FreeGlyphs_glyphs_item, (length - 8) / 4, byte_order);
13109 static void renderCompositeGlyphs8(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13111 int f_op;
13112 int f_src;
13113 int f_dst;
13114 int f_mask_format;
13115 int f_glyphset;
13116 int f_src_x;
13117 int f_src_y;
13118 f_op = field8(tvb, offsetp, t, hf_x11_render_CompositeGlyphs8_op, byte_order);
13119 UNUSED(3);
13120 f_src = VALUE32(tvb, *offsetp);
13121 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_src, tvb, *offsetp, 4, byte_order);
13122 *offsetp += 4;
13123 f_dst = VALUE32(tvb, *offsetp);
13124 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_dst, tvb, *offsetp, 4, byte_order);
13125 *offsetp += 4;
13126 f_mask_format = VALUE32(tvb, *offsetp);
13127 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_mask_format, tvb, *offsetp, 4, byte_order);
13128 *offsetp += 4;
13129 f_glyphset = VALUE32(tvb, *offsetp);
13130 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_glyphset, tvb, *offsetp, 4, byte_order);
13131 *offsetp += 4;
13132 f_src_x = VALUE16(tvb, *offsetp);
13133 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_src_x, tvb, *offsetp, 2, byte_order);
13134 *offsetp += 2;
13135 f_src_y = VALUE16(tvb, *offsetp);
13136 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs8_src_y, tvb, *offsetp, 2, byte_order);
13137 *offsetp += 2;
13138 listOfByte(tvb, offsetp, t, hf_x11_render_CompositeGlyphs8_glyphcmds, (length - 28) / 1, byte_order);
13141 static void renderCompositeGlyphs16(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13143 int f_op;
13144 int f_src;
13145 int f_dst;
13146 int f_mask_format;
13147 int f_glyphset;
13148 int f_src_x;
13149 int f_src_y;
13150 f_op = field8(tvb, offsetp, t, hf_x11_render_CompositeGlyphs16_op, byte_order);
13151 UNUSED(3);
13152 f_src = VALUE32(tvb, *offsetp);
13153 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_src, tvb, *offsetp, 4, byte_order);
13154 *offsetp += 4;
13155 f_dst = VALUE32(tvb, *offsetp);
13156 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_dst, tvb, *offsetp, 4, byte_order);
13157 *offsetp += 4;
13158 f_mask_format = VALUE32(tvb, *offsetp);
13159 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_mask_format, tvb, *offsetp, 4, byte_order);
13160 *offsetp += 4;
13161 f_glyphset = VALUE32(tvb, *offsetp);
13162 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_glyphset, tvb, *offsetp, 4, byte_order);
13163 *offsetp += 4;
13164 f_src_x = VALUE16(tvb, *offsetp);
13165 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_src_x, tvb, *offsetp, 2, byte_order);
13166 *offsetp += 2;
13167 f_src_y = VALUE16(tvb, *offsetp);
13168 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs16_src_y, tvb, *offsetp, 2, byte_order);
13169 *offsetp += 2;
13170 listOfByte(tvb, offsetp, t, hf_x11_render_CompositeGlyphs16_glyphcmds, (length - 28) / 1, byte_order);
13173 static void renderCompositeGlyphs32(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13175 int f_op;
13176 int f_src;
13177 int f_dst;
13178 int f_mask_format;
13179 int f_glyphset;
13180 int f_src_x;
13181 int f_src_y;
13182 f_op = field8(tvb, offsetp, t, hf_x11_render_CompositeGlyphs32_op, byte_order);
13183 UNUSED(3);
13184 f_src = VALUE32(tvb, *offsetp);
13185 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_src, tvb, *offsetp, 4, byte_order);
13186 *offsetp += 4;
13187 f_dst = VALUE32(tvb, *offsetp);
13188 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_dst, tvb, *offsetp, 4, byte_order);
13189 *offsetp += 4;
13190 f_mask_format = VALUE32(tvb, *offsetp);
13191 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_mask_format, tvb, *offsetp, 4, byte_order);
13192 *offsetp += 4;
13193 f_glyphset = VALUE32(tvb, *offsetp);
13194 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_glyphset, tvb, *offsetp, 4, byte_order);
13195 *offsetp += 4;
13196 f_src_x = VALUE16(tvb, *offsetp);
13197 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_src_x, tvb, *offsetp, 2, byte_order);
13198 *offsetp += 2;
13199 f_src_y = VALUE16(tvb, *offsetp);
13200 proto_tree_add_item(t, hf_x11_render_CompositeGlyphs32_src_y, tvb, *offsetp, 2, byte_order);
13201 *offsetp += 2;
13202 listOfByte(tvb, offsetp, t, hf_x11_render_CompositeGlyphs32_glyphcmds, (length - 28) / 1, byte_order);
13205 static void renderFillRectangles(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13207 int f_op;
13208 int f_dst;
13209 f_op = field8(tvb, offsetp, t, hf_x11_render_FillRectangles_op, byte_order);
13210 UNUSED(3);
13211 f_dst = VALUE32(tvb, *offsetp);
13212 proto_tree_add_item(t, hf_x11_render_FillRectangles_dst, tvb, *offsetp, 4, byte_order);
13213 *offsetp += 4;
13214 struct_COLOR(tvb, offsetp, t, byte_order, 1);
13215 struct_RECTANGLE(tvb, offsetp, t, byte_order, (length - 20) / 8);
13218 static void renderCreateCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13220 int f_cid;
13221 int f_source;
13222 int f_x;
13223 int f_y;
13224 f_cid = VALUE32(tvb, *offsetp);
13225 proto_tree_add_item(t, hf_x11_render_CreateCursor_cid, tvb, *offsetp, 4, byte_order);
13226 *offsetp += 4;
13227 f_source = VALUE32(tvb, *offsetp);
13228 proto_tree_add_item(t, hf_x11_render_CreateCursor_source, tvb, *offsetp, 4, byte_order);
13229 *offsetp += 4;
13230 f_x = VALUE16(tvb, *offsetp);
13231 proto_tree_add_item(t, hf_x11_render_CreateCursor_x, tvb, *offsetp, 2, byte_order);
13232 *offsetp += 2;
13233 f_y = VALUE16(tvb, *offsetp);
13234 proto_tree_add_item(t, hf_x11_render_CreateCursor_y, tvb, *offsetp, 2, byte_order);
13235 *offsetp += 2;
13238 static void renderSetPictureTransform(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13240 int f_picture;
13241 f_picture = VALUE32(tvb, *offsetp);
13242 proto_tree_add_item(t, hf_x11_render_SetPictureTransform_picture, tvb, *offsetp, 4, byte_order);
13243 *offsetp += 4;
13244 struct_TRANSFORM(tvb, offsetp, t, byte_order, 1);
13247 static void renderQueryFilters(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13249 int f_drawable;
13250 f_drawable = VALUE32(tvb, *offsetp);
13251 proto_tree_add_item(t, hf_x11_render_QueryFilters_drawable, tvb, *offsetp, 4, byte_order);
13252 *offsetp += 4;
13254 static void renderQueryFilters_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13256 int f_length, length, sequence_number;
13257 int f_num_aliases;
13258 int f_num_filters;
13260 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryFilters");
13262 REPLY(reply);
13263 UNUSED(1);
13264 sequence_number = VALUE16(tvb, *offsetp);
13265 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13266 "sequencenumber: %d (render-QueryFilters)", sequence_number);
13267 *offsetp += 2;
13268 f_length = VALUE32(tvb, *offsetp);
13269 length = f_length * 4 + 32;
13270 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13271 *offsetp += 4;
13272 f_num_aliases = VALUE32(tvb, *offsetp);
13273 proto_tree_add_item(t, hf_x11_render_QueryFilters_reply_num_aliases, tvb, *offsetp, 4, byte_order);
13274 *offsetp += 4;
13275 f_num_filters = VALUE32(tvb, *offsetp);
13276 proto_tree_add_item(t, hf_x11_render_QueryFilters_reply_num_filters, tvb, *offsetp, 4, byte_order);
13277 *offsetp += 4;
13278 UNUSED(16);
13279 listOfCard16(tvb, offsetp, t, hf_x11_render_QueryFilters_reply_aliases, hf_x11_render_QueryFilters_reply_aliases_item, f_num_aliases, byte_order);
13280 struct_STR(tvb, offsetp, t, byte_order, f_num_filters);
13283 static void renderSetPictureFilter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13285 int f_picture;
13286 int f_filter_len;
13287 f_picture = VALUE32(tvb, *offsetp);
13288 proto_tree_add_item(t, hf_x11_render_SetPictureFilter_picture, tvb, *offsetp, 4, byte_order);
13289 *offsetp += 4;
13290 f_filter_len = VALUE16(tvb, *offsetp);
13291 proto_tree_add_item(t, hf_x11_render_SetPictureFilter_filter_len, tvb, *offsetp, 2, byte_order);
13292 *offsetp += 2;
13293 UNUSED(2);
13294 listOfByte(tvb, offsetp, t, hf_x11_render_SetPictureFilter_filter, f_filter_len, byte_order);
13295 length -= f_filter_len * 1;
13296 listOfInt32(tvb, offsetp, t, hf_x11_render_SetPictureFilter_values, hf_x11_render_SetPictureFilter_values_item, (length - 12) / 4, byte_order);
13299 static void renderCreateAnimCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13301 int f_cid;
13302 f_cid = VALUE32(tvb, *offsetp);
13303 proto_tree_add_item(t, hf_x11_render_CreateAnimCursor_cid, tvb, *offsetp, 4, byte_order);
13304 *offsetp += 4;
13305 struct_ANIMCURSORELT(tvb, offsetp, t, byte_order, (length - 8) / 8);
13308 static void renderAddTraps(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13310 int f_picture;
13311 int f_x_off;
13312 int f_y_off;
13313 f_picture = VALUE32(tvb, *offsetp);
13314 proto_tree_add_item(t, hf_x11_render_AddTraps_picture, tvb, *offsetp, 4, byte_order);
13315 *offsetp += 4;
13316 f_x_off = VALUE16(tvb, *offsetp);
13317 proto_tree_add_item(t, hf_x11_render_AddTraps_x_off, tvb, *offsetp, 2, byte_order);
13318 *offsetp += 2;
13319 f_y_off = VALUE16(tvb, *offsetp);
13320 proto_tree_add_item(t, hf_x11_render_AddTraps_y_off, tvb, *offsetp, 2, byte_order);
13321 *offsetp += 2;
13322 struct_TRAP(tvb, offsetp, t, byte_order, (length - 12) / 24);
13325 static void renderCreateSolidFill(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13327 int f_picture;
13328 f_picture = VALUE32(tvb, *offsetp);
13329 proto_tree_add_item(t, hf_x11_render_CreateSolidFill_picture, tvb, *offsetp, 4, byte_order);
13330 *offsetp += 4;
13331 struct_COLOR(tvb, offsetp, t, byte_order, 1);
13334 static void renderCreateLinearGradient(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13336 int f_picture;
13337 int f_num_stops;
13338 f_picture = VALUE32(tvb, *offsetp);
13339 proto_tree_add_item(t, hf_x11_render_CreateLinearGradient_picture, tvb, *offsetp, 4, byte_order);
13340 *offsetp += 4;
13341 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
13342 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
13343 f_num_stops = VALUE32(tvb, *offsetp);
13344 proto_tree_add_item(t, hf_x11_render_CreateLinearGradient_num_stops, tvb, *offsetp, 4, byte_order);
13345 *offsetp += 4;
13346 listOfInt32(tvb, offsetp, t, hf_x11_render_CreateLinearGradient_stops, hf_x11_render_CreateLinearGradient_stops_item, f_num_stops, byte_order);
13347 length -= f_num_stops * 4;
13348 struct_COLOR(tvb, offsetp, t, byte_order, f_num_stops);
13349 length -= f_num_stops * 8;
13352 static void renderCreateRadialGradient(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13354 int f_picture;
13355 int f_inner_radius;
13356 int f_outer_radius;
13357 int f_num_stops;
13358 f_picture = VALUE32(tvb, *offsetp);
13359 proto_tree_add_item(t, hf_x11_render_CreateRadialGradient_picture, tvb, *offsetp, 4, byte_order);
13360 *offsetp += 4;
13361 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
13362 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
13363 f_inner_radius = VALUE32(tvb, *offsetp);
13364 proto_tree_add_item(t, hf_x11_render_CreateRadialGradient_inner_radius, tvb, *offsetp, 4, byte_order);
13365 *offsetp += 4;
13366 f_outer_radius = VALUE32(tvb, *offsetp);
13367 proto_tree_add_item(t, hf_x11_render_CreateRadialGradient_outer_radius, tvb, *offsetp, 4, byte_order);
13368 *offsetp += 4;
13369 f_num_stops = VALUE32(tvb, *offsetp);
13370 proto_tree_add_item(t, hf_x11_render_CreateRadialGradient_num_stops, tvb, *offsetp, 4, byte_order);
13371 *offsetp += 4;
13372 listOfInt32(tvb, offsetp, t, hf_x11_render_CreateRadialGradient_stops, hf_x11_render_CreateRadialGradient_stops_item, f_num_stops, byte_order);
13373 length -= f_num_stops * 4;
13374 struct_COLOR(tvb, offsetp, t, byte_order, f_num_stops);
13375 length -= f_num_stops * 8;
13378 static void renderCreateConicalGradient(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13380 int f_picture;
13381 int f_angle;
13382 int f_num_stops;
13383 f_picture = VALUE32(tvb, *offsetp);
13384 proto_tree_add_item(t, hf_x11_render_CreateConicalGradient_picture, tvb, *offsetp, 4, byte_order);
13385 *offsetp += 4;
13386 struct_POINTFIX(tvb, offsetp, t, byte_order, 1);
13387 f_angle = VALUE32(tvb, *offsetp);
13388 proto_tree_add_item(t, hf_x11_render_CreateConicalGradient_angle, tvb, *offsetp, 4, byte_order);
13389 *offsetp += 4;
13390 f_num_stops = VALUE32(tvb, *offsetp);
13391 proto_tree_add_item(t, hf_x11_render_CreateConicalGradient_num_stops, tvb, *offsetp, 4, byte_order);
13392 *offsetp += 4;
13393 listOfInt32(tvb, offsetp, t, hf_x11_render_CreateConicalGradient_stops, hf_x11_render_CreateConicalGradient_stops_item, f_num_stops, byte_order);
13394 length -= f_num_stops * 4;
13395 struct_COLOR(tvb, offsetp, t, byte_order, f_num_stops);
13396 length -= f_num_stops * 8;
13398 static const value_string render_extension_minor[] = {
13399 { 0, "QueryVersion" },
13400 { 1, "QueryPictFormats" },
13401 { 2, "QueryPictIndexValues" },
13402 { 4, "CreatePicture" },
13403 { 5, "ChangePicture" },
13404 { 6, "SetPictureClipRectangles" },
13405 { 7, "FreePicture" },
13406 { 8, "Composite" },
13407 { 10, "Trapezoids" },
13408 { 11, "Triangles" },
13409 { 12, "TriStrip" },
13410 { 13, "TriFan" },
13411 { 17, "CreateGlyphSet" },
13412 { 18, "ReferenceGlyphSet" },
13413 { 19, "FreeGlyphSet" },
13414 { 20, "AddGlyphs" },
13415 { 22, "FreeGlyphs" },
13416 { 23, "CompositeGlyphs8" },
13417 { 24, "CompositeGlyphs16" },
13418 { 25, "CompositeGlyphs32" },
13419 { 26, "FillRectangles" },
13420 { 27, "CreateCursor" },
13421 { 28, "SetPictureTransform" },
13422 { 29, "QueryFilters" },
13423 { 30, "SetPictureFilter" },
13424 { 31, "CreateAnimCursor" },
13425 { 32, "AddTraps" },
13426 { 33, "CreateSolidFill" },
13427 { 34, "CreateLinearGradient" },
13428 { 35, "CreateRadialGradient" },
13429 { 36, "CreateConicalGradient" },
13430 { 0, NULL }
13432 const x11_event_info render_events[] = {
13433 { NULL, NULL }
13435 static x11_reply_info render_replies[] = {
13436 { 0, renderQueryVersion_Reply },
13437 { 1, renderQueryPictFormats_Reply },
13438 { 2, renderQueryPictIndexValues_Reply },
13439 { 29, renderQueryFilters_Reply },
13440 { 0, NULL }
13443 static void dispatch_render(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13445 int minor, length;
13446 minor = CARD8(render_extension_minor);
13447 length = REQUEST_LENGTH();
13449 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
13450 val_to_str(minor, render_extension_minor,
13451 "<Unknown opcode %d>"));
13452 switch (minor) {
13453 case 0:
13454 renderQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
13455 break;
13456 case 1:
13457 renderQueryPictFormats(tvb, pinfo, offsetp, t, byte_order, length);
13458 break;
13459 case 2:
13460 renderQueryPictIndexValues(tvb, pinfo, offsetp, t, byte_order, length);
13461 break;
13462 case 4:
13463 renderCreatePicture(tvb, pinfo, offsetp, t, byte_order, length);
13464 break;
13465 case 5:
13466 renderChangePicture(tvb, pinfo, offsetp, t, byte_order, length);
13467 break;
13468 case 6:
13469 renderSetPictureClipRectangles(tvb, pinfo, offsetp, t, byte_order, length);
13470 break;
13471 case 7:
13472 renderFreePicture(tvb, pinfo, offsetp, t, byte_order, length);
13473 break;
13474 case 8:
13475 renderComposite(tvb, pinfo, offsetp, t, byte_order, length);
13476 break;
13477 case 10:
13478 renderTrapezoids(tvb, pinfo, offsetp, t, byte_order, length);
13479 break;
13480 case 11:
13481 renderTriangles(tvb, pinfo, offsetp, t, byte_order, length);
13482 break;
13483 case 12:
13484 renderTriStrip(tvb, pinfo, offsetp, t, byte_order, length);
13485 break;
13486 case 13:
13487 renderTriFan(tvb, pinfo, offsetp, t, byte_order, length);
13488 break;
13489 case 17:
13490 renderCreateGlyphSet(tvb, pinfo, offsetp, t, byte_order, length);
13491 break;
13492 case 18:
13493 renderReferenceGlyphSet(tvb, pinfo, offsetp, t, byte_order, length);
13494 break;
13495 case 19:
13496 renderFreeGlyphSet(tvb, pinfo, offsetp, t, byte_order, length);
13497 break;
13498 case 20:
13499 renderAddGlyphs(tvb, pinfo, offsetp, t, byte_order, length);
13500 break;
13501 case 22:
13502 renderFreeGlyphs(tvb, pinfo, offsetp, t, byte_order, length);
13503 break;
13504 case 23:
13505 renderCompositeGlyphs8(tvb, pinfo, offsetp, t, byte_order, length);
13506 break;
13507 case 24:
13508 renderCompositeGlyphs16(tvb, pinfo, offsetp, t, byte_order, length);
13509 break;
13510 case 25:
13511 renderCompositeGlyphs32(tvb, pinfo, offsetp, t, byte_order, length);
13512 break;
13513 case 26:
13514 renderFillRectangles(tvb, pinfo, offsetp, t, byte_order, length);
13515 break;
13516 case 27:
13517 renderCreateCursor(tvb, pinfo, offsetp, t, byte_order, length);
13518 break;
13519 case 28:
13520 renderSetPictureTransform(tvb, pinfo, offsetp, t, byte_order, length);
13521 break;
13522 case 29:
13523 renderQueryFilters(tvb, pinfo, offsetp, t, byte_order, length);
13524 break;
13525 case 30:
13526 renderSetPictureFilter(tvb, pinfo, offsetp, t, byte_order, length);
13527 break;
13528 case 31:
13529 renderCreateAnimCursor(tvb, pinfo, offsetp, t, byte_order, length);
13530 break;
13531 case 32:
13532 renderAddTraps(tvb, pinfo, offsetp, t, byte_order, length);
13533 break;
13534 case 33:
13535 renderCreateSolidFill(tvb, pinfo, offsetp, t, byte_order, length);
13536 break;
13537 case 34:
13538 renderCreateLinearGradient(tvb, pinfo, offsetp, t, byte_order, length);
13539 break;
13540 case 35:
13541 renderCreateRadialGradient(tvb, pinfo, offsetp, t, byte_order, length);
13542 break;
13543 case 36:
13544 renderCreateConicalGradient(tvb, pinfo, offsetp, t, byte_order, length);
13545 break;
13546 /* No need for a default case here, since Unknown is printed above,
13547 and UNDECODED() is taken care of by dissect_x11_request */
13551 static void register_render(void)
13553 set_handler("RENDER", dispatch_render, render_errors, render_events, render_replies);
13556 static void struct_Client(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
13558 int i;
13559 for (i = 0; i < count; i++) {
13560 proto_item *item;
13561 proto_tree *t;
13562 int f_resource_base;
13563 int f_resource_mask;
13565 item = proto_tree_add_item(root, hf_x11_struct_Client, tvb, *offsetp, 8, ENC_NA);
13566 t = proto_item_add_subtree(item, ett_x11_rectangle);
13567 f_resource_base = VALUE32(tvb, *offsetp);
13568 proto_tree_add_item(t, hf_x11_struct_Client_resource_base, tvb, *offsetp, 4, byte_order);
13569 *offsetp += 4;
13570 f_resource_mask = VALUE32(tvb, *offsetp);
13571 proto_tree_add_item(t, hf_x11_struct_Client_resource_mask, tvb, *offsetp, 4, byte_order);
13572 *offsetp += 4;
13576 static void struct_Type(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
13578 int i;
13579 for (i = 0; i < count; i++) {
13580 proto_item *item;
13581 proto_tree *t;
13582 int f_resource_type;
13583 int f_count;
13585 item = proto_tree_add_item(root, hf_x11_struct_Type, tvb, *offsetp, 8, ENC_NA);
13586 t = proto_item_add_subtree(item, ett_x11_rectangle);
13587 f_resource_type = VALUE32(tvb, *offsetp);
13588 proto_tree_add_item(t, hf_x11_struct_Type_resource_type, tvb, *offsetp, 4, byte_order);
13589 *offsetp += 4;
13590 f_count = VALUE32(tvb, *offsetp);
13591 proto_tree_add_item(t, hf_x11_struct_Type_count, tvb, *offsetp, 4, byte_order);
13592 *offsetp += 4;
13596 static void resQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13598 int f_client_major;
13599 int f_client_minor;
13600 f_client_major = VALUE8(tvb, *offsetp);
13601 proto_tree_add_item(t, hf_x11_res_QueryVersion_client_major, tvb, *offsetp, 1, byte_order);
13602 *offsetp += 1;
13603 f_client_minor = VALUE8(tvb, *offsetp);
13604 proto_tree_add_item(t, hf_x11_res_QueryVersion_client_minor, tvb, *offsetp, 1, byte_order);
13605 *offsetp += 1;
13607 static void resQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13609 int f_length, length, sequence_number;
13610 int f_server_major;
13611 int f_server_minor;
13613 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
13615 REPLY(reply);
13616 UNUSED(1);
13617 sequence_number = VALUE16(tvb, *offsetp);
13618 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13619 "sequencenumber: %d (res-QueryVersion)", sequence_number);
13620 *offsetp += 2;
13621 f_length = VALUE32(tvb, *offsetp);
13622 length = f_length * 4 + 32;
13623 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13624 *offsetp += 4;
13625 f_server_major = VALUE16(tvb, *offsetp);
13626 proto_tree_add_item(t, hf_x11_res_QueryVersion_reply_server_major, tvb, *offsetp, 2, byte_order);
13627 *offsetp += 2;
13628 f_server_minor = VALUE16(tvb, *offsetp);
13629 proto_tree_add_item(t, hf_x11_res_QueryVersion_reply_server_minor, tvb, *offsetp, 2, byte_order);
13630 *offsetp += 2;
13633 static void resQueryClients(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
13636 static void resQueryClients_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13638 int f_length, length, sequence_number;
13639 int f_num_clients;
13641 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryClients");
13643 REPLY(reply);
13644 UNUSED(1);
13645 sequence_number = VALUE16(tvb, *offsetp);
13646 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13647 "sequencenumber: %d (res-QueryClients)", sequence_number);
13648 *offsetp += 2;
13649 f_length = VALUE32(tvb, *offsetp);
13650 length = f_length * 4 + 32;
13651 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13652 *offsetp += 4;
13653 f_num_clients = VALUE32(tvb, *offsetp);
13654 proto_tree_add_item(t, hf_x11_res_QueryClients_reply_num_clients, tvb, *offsetp, 4, byte_order);
13655 *offsetp += 4;
13656 UNUSED(20);
13657 struct_Client(tvb, offsetp, t, byte_order, f_num_clients);
13660 static void resQueryClientResources(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13662 int f_xid;
13663 f_xid = VALUE32(tvb, *offsetp);
13664 proto_tree_add_item(t, hf_x11_res_QueryClientResources_xid, tvb, *offsetp, 4, byte_order);
13665 *offsetp += 4;
13667 static void resQueryClientResources_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13669 int f_length, length, sequence_number;
13670 int f_num_types;
13672 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryClientResources");
13674 REPLY(reply);
13675 UNUSED(1);
13676 sequence_number = VALUE16(tvb, *offsetp);
13677 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13678 "sequencenumber: %d (res-QueryClientResources)", sequence_number);
13679 *offsetp += 2;
13680 f_length = VALUE32(tvb, *offsetp);
13681 length = f_length * 4 + 32;
13682 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13683 *offsetp += 4;
13684 f_num_types = VALUE32(tvb, *offsetp);
13685 proto_tree_add_item(t, hf_x11_res_QueryClientResources_reply_num_types, tvb, *offsetp, 4, byte_order);
13686 *offsetp += 4;
13687 UNUSED(20);
13688 struct_Type(tvb, offsetp, t, byte_order, f_num_types);
13691 static void resQueryClientPixmapBytes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13693 int f_xid;
13694 f_xid = VALUE32(tvb, *offsetp);
13695 proto_tree_add_item(t, hf_x11_res_QueryClientPixmapBytes_xid, tvb, *offsetp, 4, byte_order);
13696 *offsetp += 4;
13698 static void resQueryClientPixmapBytes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13700 int f_length, length, sequence_number;
13701 int f_bytes;
13702 int f_bytes_overflow;
13704 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryClientPixmapBytes");
13706 REPLY(reply);
13707 UNUSED(1);
13708 sequence_number = VALUE16(tvb, *offsetp);
13709 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13710 "sequencenumber: %d (res-QueryClientPixmapBytes)", sequence_number);
13711 *offsetp += 2;
13712 f_length = VALUE32(tvb, *offsetp);
13713 length = f_length * 4 + 32;
13714 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13715 *offsetp += 4;
13716 f_bytes = VALUE32(tvb, *offsetp);
13717 proto_tree_add_item(t, hf_x11_res_QueryClientPixmapBytes_reply_bytes, tvb, *offsetp, 4, byte_order);
13718 *offsetp += 4;
13719 f_bytes_overflow = VALUE32(tvb, *offsetp);
13720 proto_tree_add_item(t, hf_x11_res_QueryClientPixmapBytes_reply_bytes_overflow, tvb, *offsetp, 4, byte_order);
13721 *offsetp += 4;
13723 static const value_string res_extension_minor[] = {
13724 { 0, "QueryVersion" },
13725 { 1, "QueryClients" },
13726 { 2, "QueryClientResources" },
13727 { 3, "QueryClientPixmapBytes" },
13728 { 0, NULL }
13730 const x11_event_info res_events[] = {
13731 { NULL, NULL }
13733 static x11_reply_info res_replies[] = {
13734 { 0, resQueryVersion_Reply },
13735 { 1, resQueryClients_Reply },
13736 { 2, resQueryClientResources_Reply },
13737 { 3, resQueryClientPixmapBytes_Reply },
13738 { 0, NULL }
13741 static void dispatch_res(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13743 int minor, length;
13744 minor = CARD8(res_extension_minor);
13745 length = REQUEST_LENGTH();
13747 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
13748 val_to_str(minor, res_extension_minor,
13749 "<Unknown opcode %d>"));
13750 switch (minor) {
13751 case 0:
13752 resQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
13753 break;
13754 case 1:
13755 resQueryClients(tvb, pinfo, offsetp, t, byte_order, length);
13756 break;
13757 case 2:
13758 resQueryClientResources(tvb, pinfo, offsetp, t, byte_order, length);
13759 break;
13760 case 3:
13761 resQueryClientPixmapBytes(tvb, pinfo, offsetp, t, byte_order, length);
13762 break;
13763 /* No need for a default case here, since Unknown is printed above,
13764 and UNDECODED() is taken care of by dissect_x11_request */
13768 static void register_res(void)
13770 set_handler("X-Resource", dispatch_res, res_errors, res_events, res_replies);
13773 static void screensaverQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13775 int f_client_major_version;
13776 int f_client_minor_version;
13777 f_client_major_version = VALUE8(tvb, *offsetp);
13778 proto_tree_add_item(t, hf_x11_screensaver_QueryVersion_client_major_version, tvb, *offsetp, 1, byte_order);
13779 *offsetp += 1;
13780 f_client_minor_version = VALUE8(tvb, *offsetp);
13781 proto_tree_add_item(t, hf_x11_screensaver_QueryVersion_client_minor_version, tvb, *offsetp, 1, byte_order);
13782 *offsetp += 1;
13783 UNUSED(2);
13785 static void screensaverQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13787 int f_length, length, sequence_number;
13788 int f_server_major_version;
13789 int f_server_minor_version;
13791 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
13793 REPLY(reply);
13794 UNUSED(1);
13795 sequence_number = VALUE16(tvb, *offsetp);
13796 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13797 "sequencenumber: %d (screensaver-QueryVersion)", sequence_number);
13798 *offsetp += 2;
13799 f_length = VALUE32(tvb, *offsetp);
13800 length = f_length * 4 + 32;
13801 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13802 *offsetp += 4;
13803 f_server_major_version = VALUE16(tvb, *offsetp);
13804 proto_tree_add_item(t, hf_x11_screensaver_QueryVersion_reply_server_major_version, tvb, *offsetp, 2, byte_order);
13805 *offsetp += 2;
13806 f_server_minor_version = VALUE16(tvb, *offsetp);
13807 proto_tree_add_item(t, hf_x11_screensaver_QueryVersion_reply_server_minor_version, tvb, *offsetp, 2, byte_order);
13808 *offsetp += 2;
13809 UNUSED(20);
13812 static void screensaverQueryInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13814 int f_drawable;
13815 f_drawable = VALUE32(tvb, *offsetp);
13816 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_drawable, tvb, *offsetp, 4, byte_order);
13817 *offsetp += 4;
13819 static void screensaverQueryInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13821 int f_length, length, sequence_number;
13822 int f_state;
13823 int f_saver_window;
13824 int f_ms_until_server;
13825 int f_ms_since_user_input;
13826 int f_event_mask;
13827 int f_kind;
13829 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryInfo");
13831 REPLY(reply);
13832 f_state = VALUE8(tvb, *offsetp);
13833 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_state, tvb, *offsetp, 1, byte_order);
13834 *offsetp += 1;
13835 sequence_number = VALUE16(tvb, *offsetp);
13836 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
13837 "sequencenumber: %d (screensaver-QueryInfo)", sequence_number);
13838 *offsetp += 2;
13839 f_length = VALUE32(tvb, *offsetp);
13840 length = f_length * 4 + 32;
13841 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
13842 *offsetp += 4;
13843 f_saver_window = VALUE32(tvb, *offsetp);
13844 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_saver_window, tvb, *offsetp, 4, byte_order);
13845 *offsetp += 4;
13846 f_ms_until_server = VALUE32(tvb, *offsetp);
13847 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_ms_until_server, tvb, *offsetp, 4, byte_order);
13848 *offsetp += 4;
13849 f_ms_since_user_input = VALUE32(tvb, *offsetp);
13850 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_ms_since_user_input, tvb, *offsetp, 4, byte_order);
13851 *offsetp += 4;
13852 f_event_mask = VALUE32(tvb, *offsetp);
13853 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_event_mask, tvb, *offsetp, 4, byte_order);
13854 *offsetp += 4;
13855 f_kind = VALUE8(tvb, *offsetp);
13856 proto_tree_add_item(t, hf_x11_screensaver_QueryInfo_reply_kind, tvb, *offsetp, 1, ENC_NA);
13857 *offsetp += 1;
13858 UNUSED(7);
13861 static void screensaverSelectInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13863 int f_drawable;
13864 int f_event_mask;
13865 f_drawable = VALUE32(tvb, *offsetp);
13866 proto_tree_add_item(t, hf_x11_screensaver_SelectInput_drawable, tvb, *offsetp, 4, byte_order);
13867 *offsetp += 4;
13868 f_event_mask = VALUE32(tvb, *offsetp);
13869 proto_tree_add_item(t, hf_x11_screensaver_SelectInput_event_mask, tvb, *offsetp, 4, byte_order);
13870 *offsetp += 4;
13873 static void screensaverSetAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13875 int f_drawable;
13876 int f_x;
13877 int f_y;
13878 int f_width;
13879 int f_height;
13880 int f_border_width;
13881 int f_class;
13882 int f_depth;
13883 int f_visual;
13884 f_drawable = VALUE32(tvb, *offsetp);
13885 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_drawable, tvb, *offsetp, 4, byte_order);
13886 *offsetp += 4;
13887 f_x = VALUE16(tvb, *offsetp);
13888 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_x, tvb, *offsetp, 2, byte_order);
13889 *offsetp += 2;
13890 f_y = VALUE16(tvb, *offsetp);
13891 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_y, tvb, *offsetp, 2, byte_order);
13892 *offsetp += 2;
13893 f_width = VALUE16(tvb, *offsetp);
13894 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_width, tvb, *offsetp, 2, byte_order);
13895 *offsetp += 2;
13896 f_height = VALUE16(tvb, *offsetp);
13897 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_height, tvb, *offsetp, 2, byte_order);
13898 *offsetp += 2;
13899 f_border_width = VALUE16(tvb, *offsetp);
13900 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_border_width, tvb, *offsetp, 2, byte_order);
13901 *offsetp += 2;
13902 f_class = VALUE8(tvb, *offsetp);
13903 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_class, tvb, *offsetp, 1, ENC_NA);
13904 *offsetp += 1;
13905 f_depth = VALUE8(tvb, *offsetp);
13906 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_depth, tvb, *offsetp, 1, byte_order);
13907 *offsetp += 1;
13908 f_visual = VALUE32(tvb, *offsetp);
13909 proto_tree_add_item(t, hf_x11_screensaver_SetAttributes_visual, tvb, *offsetp, 4, byte_order);
13910 *offsetp += 4;
13913 static void screensaverUnsetAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13915 int f_drawable;
13916 f_drawable = VALUE32(tvb, *offsetp);
13917 proto_tree_add_item(t, hf_x11_screensaver_UnsetAttributes_drawable, tvb, *offsetp, 4, byte_order);
13918 *offsetp += 4;
13921 static void screensaverSuspend(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
13923 int f_suspend;
13924 f_suspend = VALUE8(tvb, *offsetp);
13925 proto_tree_add_item(t, hf_x11_screensaver_Suspend_suspend, tvb, *offsetp, 1, byte_order);
13926 *offsetp += 1;
13927 UNUSED(3);
13930 static void screensaverNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
13932 int f_code;
13933 int f_state;
13934 int f_sequence_number;
13935 int f_time;
13936 int f_root;
13937 int f_window;
13938 int f_kind;
13939 int f_forced;
13940 f_code = VALUE8(tvb, *offsetp);
13941 proto_tree_add_item(t, hf_x11_screensaver_Notify_code, tvb, *offsetp, 1, byte_order);
13942 *offsetp += 1;
13943 CARD16(event_sequencenumber);
13944 f_state = VALUE8(tvb, *offsetp);
13945 proto_tree_add_item(t, hf_x11_screensaver_Notify_state, tvb, *offsetp, 1, ENC_NA);
13946 *offsetp += 1;
13947 UNUSED(1);
13948 f_sequence_number = VALUE16(tvb, *offsetp);
13949 proto_tree_add_item(t, hf_x11_screensaver_Notify_sequence_number, tvb, *offsetp, 2, byte_order);
13950 *offsetp += 2;
13951 f_time = VALUE32(tvb, *offsetp);
13952 proto_tree_add_item(t, hf_x11_screensaver_Notify_time, tvb, *offsetp, 4, byte_order);
13953 *offsetp += 4;
13954 f_root = VALUE32(tvb, *offsetp);
13955 proto_tree_add_item(t, hf_x11_screensaver_Notify_root, tvb, *offsetp, 4, byte_order);
13956 *offsetp += 4;
13957 f_window = VALUE32(tvb, *offsetp);
13958 proto_tree_add_item(t, hf_x11_screensaver_Notify_window, tvb, *offsetp, 4, byte_order);
13959 *offsetp += 4;
13960 f_kind = VALUE8(tvb, *offsetp);
13961 proto_tree_add_item(t, hf_x11_screensaver_Notify_kind, tvb, *offsetp, 1, ENC_NA);
13962 *offsetp += 1;
13963 f_forced = VALUE8(tvb, *offsetp);
13964 proto_tree_add_item(t, hf_x11_screensaver_Notify_forced, tvb, *offsetp, 1, byte_order);
13965 *offsetp += 1;
13966 UNUSED(14);
13968 static const value_string screensaver_extension_minor[] = {
13969 { 0, "QueryVersion" },
13970 { 1, "QueryInfo" },
13971 { 2, "SelectInput" },
13972 { 3, "SetAttributes" },
13973 { 4, "UnsetAttributes" },
13974 { 5, "Suspend" },
13975 { 0, NULL }
13977 const x11_event_info screensaver_events[] = {
13978 { "screensaver-Notify", screensaverNotify },
13979 { NULL, NULL }
13981 static x11_reply_info screensaver_replies[] = {
13982 { 0, screensaverQueryVersion_Reply },
13983 { 1, screensaverQueryInfo_Reply },
13984 { 0, NULL }
13987 static void dispatch_screensaver(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
13989 int minor, length;
13990 minor = CARD8(screensaver_extension_minor);
13991 length = REQUEST_LENGTH();
13993 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
13994 val_to_str(minor, screensaver_extension_minor,
13995 "<Unknown opcode %d>"));
13996 switch (minor) {
13997 case 0:
13998 screensaverQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
13999 break;
14000 case 1:
14001 screensaverQueryInfo(tvb, pinfo, offsetp, t, byte_order, length);
14002 break;
14003 case 2:
14004 screensaverSelectInput(tvb, pinfo, offsetp, t, byte_order, length);
14005 break;
14006 case 3:
14007 screensaverSetAttributes(tvb, pinfo, offsetp, t, byte_order, length);
14008 break;
14009 case 4:
14010 screensaverUnsetAttributes(tvb, pinfo, offsetp, t, byte_order, length);
14011 break;
14012 case 5:
14013 screensaverSuspend(tvb, pinfo, offsetp, t, byte_order, length);
14014 break;
14015 /* No need for a default case here, since Unknown is printed above,
14016 and UNDECODED() is taken care of by dissect_x11_request */
14020 static void register_screensaver(void)
14022 set_handler("MIT-SCREEN-SAVER", dispatch_screensaver, screensaver_errors, screensaver_events, screensaver_replies);
14025 static void shapeNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
14027 int f_shape_kind;
14028 int f_affected_window;
14029 int f_extents_x;
14030 int f_extents_y;
14031 int f_extents_width;
14032 int f_extents_height;
14033 int f_server_time;
14034 int f_shaped;
14035 f_shape_kind = field8(tvb, offsetp, t, hf_x11_shape_Notify_shape_kind, byte_order);
14036 CARD16(event_sequencenumber);
14037 f_affected_window = VALUE32(tvb, *offsetp);
14038 proto_tree_add_item(t, hf_x11_shape_Notify_affected_window, tvb, *offsetp, 4, byte_order);
14039 *offsetp += 4;
14040 f_extents_x = VALUE16(tvb, *offsetp);
14041 proto_tree_add_item(t, hf_x11_shape_Notify_extents_x, tvb, *offsetp, 2, byte_order);
14042 *offsetp += 2;
14043 f_extents_y = VALUE16(tvb, *offsetp);
14044 proto_tree_add_item(t, hf_x11_shape_Notify_extents_y, tvb, *offsetp, 2, byte_order);
14045 *offsetp += 2;
14046 f_extents_width = VALUE16(tvb, *offsetp);
14047 proto_tree_add_item(t, hf_x11_shape_Notify_extents_width, tvb, *offsetp, 2, byte_order);
14048 *offsetp += 2;
14049 f_extents_height = VALUE16(tvb, *offsetp);
14050 proto_tree_add_item(t, hf_x11_shape_Notify_extents_height, tvb, *offsetp, 2, byte_order);
14051 *offsetp += 2;
14052 f_server_time = VALUE32(tvb, *offsetp);
14053 proto_tree_add_item(t, hf_x11_shape_Notify_server_time, tvb, *offsetp, 4, byte_order);
14054 *offsetp += 4;
14055 f_shaped = VALUE8(tvb, *offsetp);
14056 proto_tree_add_item(t, hf_x11_shape_Notify_shaped, tvb, *offsetp, 1, byte_order);
14057 *offsetp += 1;
14058 UNUSED(11);
14061 static void shapeQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
14064 static void shapeQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14066 int f_length, length, sequence_number;
14067 int f_major_version;
14068 int f_minor_version;
14070 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
14072 REPLY(reply);
14073 UNUSED(1);
14074 sequence_number = VALUE16(tvb, *offsetp);
14075 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14076 "sequencenumber: %d (shape-QueryVersion)", sequence_number);
14077 *offsetp += 2;
14078 f_length = VALUE32(tvb, *offsetp);
14079 length = f_length * 4 + 32;
14080 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14081 *offsetp += 4;
14082 f_major_version = VALUE16(tvb, *offsetp);
14083 proto_tree_add_item(t, hf_x11_shape_QueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
14084 *offsetp += 2;
14085 f_minor_version = VALUE16(tvb, *offsetp);
14086 proto_tree_add_item(t, hf_x11_shape_QueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
14087 *offsetp += 2;
14090 static void shapeRectangles(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14092 int f_operation;
14093 int f_destination_kind;
14094 int f_ordering;
14095 int f_destination_window;
14096 int f_x_offset;
14097 int f_y_offset;
14098 f_operation = field8(tvb, offsetp, t, hf_x11_shape_Rectangles_operation, byte_order);
14099 f_destination_kind = field8(tvb, offsetp, t, hf_x11_shape_Rectangles_destination_kind, byte_order);
14100 f_ordering = field8(tvb, offsetp, t, hf_x11_shape_Rectangles_ordering, byte_order);
14101 UNUSED(1);
14102 f_destination_window = VALUE32(tvb, *offsetp);
14103 proto_tree_add_item(t, hf_x11_shape_Rectangles_destination_window, tvb, *offsetp, 4, byte_order);
14104 *offsetp += 4;
14105 f_x_offset = VALUE16(tvb, *offsetp);
14106 proto_tree_add_item(t, hf_x11_shape_Rectangles_x_offset, tvb, *offsetp, 2, byte_order);
14107 *offsetp += 2;
14108 f_y_offset = VALUE16(tvb, *offsetp);
14109 proto_tree_add_item(t, hf_x11_shape_Rectangles_y_offset, tvb, *offsetp, 2, byte_order);
14110 *offsetp += 2;
14111 struct_RECTANGLE(tvb, offsetp, t, byte_order, (length - 16) / 8);
14114 static void shapeMask(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14116 int f_operation;
14117 int f_destination_kind;
14118 int f_destination_window;
14119 int f_x_offset;
14120 int f_y_offset;
14121 int f_source_bitmap;
14122 f_operation = field8(tvb, offsetp, t, hf_x11_shape_Mask_operation, byte_order);
14123 f_destination_kind = field8(tvb, offsetp, t, hf_x11_shape_Mask_destination_kind, byte_order);
14124 UNUSED(2);
14125 f_destination_window = VALUE32(tvb, *offsetp);
14126 proto_tree_add_item(t, hf_x11_shape_Mask_destination_window, tvb, *offsetp, 4, byte_order);
14127 *offsetp += 4;
14128 f_x_offset = VALUE16(tvb, *offsetp);
14129 proto_tree_add_item(t, hf_x11_shape_Mask_x_offset, tvb, *offsetp, 2, byte_order);
14130 *offsetp += 2;
14131 f_y_offset = VALUE16(tvb, *offsetp);
14132 proto_tree_add_item(t, hf_x11_shape_Mask_y_offset, tvb, *offsetp, 2, byte_order);
14133 *offsetp += 2;
14134 f_source_bitmap = field32(tvb, offsetp, t, hf_x11_shape_Mask_source_bitmap, byte_order);
14137 static void shapeCombine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14139 int f_operation;
14140 int f_destination_kind;
14141 int f_source_kind;
14142 int f_destination_window;
14143 int f_x_offset;
14144 int f_y_offset;
14145 int f_source_window;
14146 f_operation = field8(tvb, offsetp, t, hf_x11_shape_Combine_operation, byte_order);
14147 f_destination_kind = field8(tvb, offsetp, t, hf_x11_shape_Combine_destination_kind, byte_order);
14148 f_source_kind = field8(tvb, offsetp, t, hf_x11_shape_Combine_source_kind, byte_order);
14149 UNUSED(1);
14150 f_destination_window = VALUE32(tvb, *offsetp);
14151 proto_tree_add_item(t, hf_x11_shape_Combine_destination_window, tvb, *offsetp, 4, byte_order);
14152 *offsetp += 4;
14153 f_x_offset = VALUE16(tvb, *offsetp);
14154 proto_tree_add_item(t, hf_x11_shape_Combine_x_offset, tvb, *offsetp, 2, byte_order);
14155 *offsetp += 2;
14156 f_y_offset = VALUE16(tvb, *offsetp);
14157 proto_tree_add_item(t, hf_x11_shape_Combine_y_offset, tvb, *offsetp, 2, byte_order);
14158 *offsetp += 2;
14159 f_source_window = VALUE32(tvb, *offsetp);
14160 proto_tree_add_item(t, hf_x11_shape_Combine_source_window, tvb, *offsetp, 4, byte_order);
14161 *offsetp += 4;
14164 static void shapeOffset(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14166 int f_destination_kind;
14167 int f_destination_window;
14168 int f_x_offset;
14169 int f_y_offset;
14170 f_destination_kind = field8(tvb, offsetp, t, hf_x11_shape_Offset_destination_kind, byte_order);
14171 UNUSED(3);
14172 f_destination_window = VALUE32(tvb, *offsetp);
14173 proto_tree_add_item(t, hf_x11_shape_Offset_destination_window, tvb, *offsetp, 4, byte_order);
14174 *offsetp += 4;
14175 f_x_offset = VALUE16(tvb, *offsetp);
14176 proto_tree_add_item(t, hf_x11_shape_Offset_x_offset, tvb, *offsetp, 2, byte_order);
14177 *offsetp += 2;
14178 f_y_offset = VALUE16(tvb, *offsetp);
14179 proto_tree_add_item(t, hf_x11_shape_Offset_y_offset, tvb, *offsetp, 2, byte_order);
14180 *offsetp += 2;
14183 static void shapeQueryExtents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14185 int f_destination_window;
14186 f_destination_window = VALUE32(tvb, *offsetp);
14187 proto_tree_add_item(t, hf_x11_shape_QueryExtents_destination_window, tvb, *offsetp, 4, byte_order);
14188 *offsetp += 4;
14190 static void shapeQueryExtents_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14192 int f_length, length, sequence_number;
14193 int f_bounding_shaped;
14194 int f_clip_shaped;
14195 int f_bounding_shape_extents_x;
14196 int f_bounding_shape_extents_y;
14197 int f_bounding_shape_extents_width;
14198 int f_bounding_shape_extents_height;
14199 int f_clip_shape_extents_x;
14200 int f_clip_shape_extents_y;
14201 int f_clip_shape_extents_width;
14202 int f_clip_shape_extents_height;
14204 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryExtents");
14206 REPLY(reply);
14207 UNUSED(1);
14208 sequence_number = VALUE16(tvb, *offsetp);
14209 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14210 "sequencenumber: %d (shape-QueryExtents)", sequence_number);
14211 *offsetp += 2;
14212 f_length = VALUE32(tvb, *offsetp);
14213 length = f_length * 4 + 32;
14214 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14215 *offsetp += 4;
14216 f_bounding_shaped = VALUE8(tvb, *offsetp);
14217 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_bounding_shaped, tvb, *offsetp, 1, byte_order);
14218 *offsetp += 1;
14219 f_clip_shaped = VALUE8(tvb, *offsetp);
14220 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_clip_shaped, tvb, *offsetp, 1, byte_order);
14221 *offsetp += 1;
14222 UNUSED(2);
14223 f_bounding_shape_extents_x = VALUE16(tvb, *offsetp);
14224 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_x, tvb, *offsetp, 2, byte_order);
14225 *offsetp += 2;
14226 f_bounding_shape_extents_y = VALUE16(tvb, *offsetp);
14227 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_y, tvb, *offsetp, 2, byte_order);
14228 *offsetp += 2;
14229 f_bounding_shape_extents_width = VALUE16(tvb, *offsetp);
14230 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_width, tvb, *offsetp, 2, byte_order);
14231 *offsetp += 2;
14232 f_bounding_shape_extents_height = VALUE16(tvb, *offsetp);
14233 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_bounding_shape_extents_height, tvb, *offsetp, 2, byte_order);
14234 *offsetp += 2;
14235 f_clip_shape_extents_x = VALUE16(tvb, *offsetp);
14236 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_clip_shape_extents_x, tvb, *offsetp, 2, byte_order);
14237 *offsetp += 2;
14238 f_clip_shape_extents_y = VALUE16(tvb, *offsetp);
14239 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_clip_shape_extents_y, tvb, *offsetp, 2, byte_order);
14240 *offsetp += 2;
14241 f_clip_shape_extents_width = VALUE16(tvb, *offsetp);
14242 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_clip_shape_extents_width, tvb, *offsetp, 2, byte_order);
14243 *offsetp += 2;
14244 f_clip_shape_extents_height = VALUE16(tvb, *offsetp);
14245 proto_tree_add_item(t, hf_x11_shape_QueryExtents_reply_clip_shape_extents_height, tvb, *offsetp, 2, byte_order);
14246 *offsetp += 2;
14249 static void shapeSelectInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14251 int f_destination_window;
14252 int f_enable;
14253 f_destination_window = VALUE32(tvb, *offsetp);
14254 proto_tree_add_item(t, hf_x11_shape_SelectInput_destination_window, tvb, *offsetp, 4, byte_order);
14255 *offsetp += 4;
14256 f_enable = VALUE8(tvb, *offsetp);
14257 proto_tree_add_item(t, hf_x11_shape_SelectInput_enable, tvb, *offsetp, 1, byte_order);
14258 *offsetp += 1;
14259 UNUSED(3);
14262 static void shapeInputSelected(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14264 int f_destination_window;
14265 f_destination_window = VALUE32(tvb, *offsetp);
14266 proto_tree_add_item(t, hf_x11_shape_InputSelected_destination_window, tvb, *offsetp, 4, byte_order);
14267 *offsetp += 4;
14269 static void shapeInputSelected_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14271 int f_length, length, sequence_number;
14272 int f_enabled;
14274 col_append_fstr(pinfo->cinfo, COL_INFO, "-InputSelected");
14276 REPLY(reply);
14277 f_enabled = VALUE8(tvb, *offsetp);
14278 proto_tree_add_item(t, hf_x11_shape_InputSelected_reply_enabled, tvb, *offsetp, 1, byte_order);
14279 *offsetp += 1;
14280 sequence_number = VALUE16(tvb, *offsetp);
14281 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14282 "sequencenumber: %d (shape-InputSelected)", sequence_number);
14283 *offsetp += 2;
14284 f_length = VALUE32(tvb, *offsetp);
14285 length = f_length * 4 + 32;
14286 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14287 *offsetp += 4;
14290 static void shapeGetRectangles(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14292 int f_window;
14293 int f_source_kind;
14294 f_window = VALUE32(tvb, *offsetp);
14295 proto_tree_add_item(t, hf_x11_shape_GetRectangles_window, tvb, *offsetp, 4, byte_order);
14296 *offsetp += 4;
14297 f_source_kind = field8(tvb, offsetp, t, hf_x11_shape_GetRectangles_source_kind, byte_order);
14298 UNUSED(3);
14300 static void shapeGetRectangles_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14302 int f_length, length, sequence_number;
14303 int f_ordering;
14304 int f_rectangles_len;
14306 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetRectangles");
14308 REPLY(reply);
14309 f_ordering = field8(tvb, offsetp, t, hf_x11_shape_GetRectangles_reply_ordering, byte_order);
14310 sequence_number = VALUE16(tvb, *offsetp);
14311 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14312 "sequencenumber: %d (shape-GetRectangles)", sequence_number);
14313 *offsetp += 2;
14314 f_length = VALUE32(tvb, *offsetp);
14315 length = f_length * 4 + 32;
14316 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14317 *offsetp += 4;
14318 f_rectangles_len = VALUE32(tvb, *offsetp);
14319 proto_tree_add_item(t, hf_x11_shape_GetRectangles_reply_rectangles_len, tvb, *offsetp, 4, byte_order);
14320 *offsetp += 4;
14321 UNUSED(20);
14322 struct_RECTANGLE(tvb, offsetp, t, byte_order, f_rectangles_len);
14324 static const value_string shape_extension_minor[] = {
14325 { 0, "QueryVersion" },
14326 { 1, "Rectangles" },
14327 { 2, "Mask" },
14328 { 3, "Combine" },
14329 { 4, "Offset" },
14330 { 5, "QueryExtents" },
14331 { 6, "SelectInput" },
14332 { 7, "InputSelected" },
14333 { 8, "GetRectangles" },
14334 { 0, NULL }
14336 const x11_event_info shape_events[] = {
14337 { "shape-Notify", shapeNotify },
14338 { NULL, NULL }
14340 static x11_reply_info shape_replies[] = {
14341 { 0, shapeQueryVersion_Reply },
14342 { 5, shapeQueryExtents_Reply },
14343 { 7, shapeInputSelected_Reply },
14344 { 8, shapeGetRectangles_Reply },
14345 { 0, NULL }
14348 static void dispatch_shape(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14350 int minor, length;
14351 minor = CARD8(shape_extension_minor);
14352 length = REQUEST_LENGTH();
14354 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
14355 val_to_str(minor, shape_extension_minor,
14356 "<Unknown opcode %d>"));
14357 switch (minor) {
14358 case 0:
14359 shapeQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
14360 break;
14361 case 1:
14362 shapeRectangles(tvb, pinfo, offsetp, t, byte_order, length);
14363 break;
14364 case 2:
14365 shapeMask(tvb, pinfo, offsetp, t, byte_order, length);
14366 break;
14367 case 3:
14368 shapeCombine(tvb, pinfo, offsetp, t, byte_order, length);
14369 break;
14370 case 4:
14371 shapeOffset(tvb, pinfo, offsetp, t, byte_order, length);
14372 break;
14373 case 5:
14374 shapeQueryExtents(tvb, pinfo, offsetp, t, byte_order, length);
14375 break;
14376 case 6:
14377 shapeSelectInput(tvb, pinfo, offsetp, t, byte_order, length);
14378 break;
14379 case 7:
14380 shapeInputSelected(tvb, pinfo, offsetp, t, byte_order, length);
14381 break;
14382 case 8:
14383 shapeGetRectangles(tvb, pinfo, offsetp, t, byte_order, length);
14384 break;
14385 /* No need for a default case here, since Unknown is printed above,
14386 and UNDECODED() is taken care of by dissect_x11_request */
14390 static void register_shape(void)
14392 set_handler("SHAPE", dispatch_shape, shape_errors, shape_events, shape_replies);
14395 static void shmCompletion(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
14397 int f_drawable;
14398 int f_minor_event;
14399 int f_major_event;
14400 int f_shmseg;
14401 int f_offset;
14402 UNUSED(1);
14403 CARD16(event_sequencenumber);
14404 f_drawable = VALUE32(tvb, *offsetp);
14405 proto_tree_add_item(t, hf_x11_shm_Completion_drawable, tvb, *offsetp, 4, byte_order);
14406 *offsetp += 4;
14407 f_minor_event = VALUE16(tvb, *offsetp);
14408 proto_tree_add_item(t, hf_x11_shm_Completion_minor_event, tvb, *offsetp, 2, byte_order);
14409 *offsetp += 2;
14410 f_major_event = VALUE8(tvb, *offsetp);
14411 proto_tree_add_item(t, hf_x11_shm_Completion_major_event, tvb, *offsetp, 1, ENC_NA);
14412 *offsetp += 1;
14413 UNUSED(1);
14414 f_shmseg = VALUE32(tvb, *offsetp);
14415 proto_tree_add_item(t, hf_x11_shm_Completion_shmseg, tvb, *offsetp, 4, byte_order);
14416 *offsetp += 4;
14417 f_offset = VALUE32(tvb, *offsetp);
14418 proto_tree_add_item(t, hf_x11_shm_Completion_offset, tvb, *offsetp, 4, byte_order);
14419 *offsetp += 4;
14422 static void shmQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
14425 static void shmQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14427 int f_length, length, sequence_number;
14428 int f_shared_pixmaps;
14429 int f_major_version;
14430 int f_minor_version;
14431 int f_uid;
14432 int f_gid;
14433 int f_pixmap_format;
14435 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
14437 REPLY(reply);
14438 f_shared_pixmaps = VALUE8(tvb, *offsetp);
14439 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_shared_pixmaps, tvb, *offsetp, 1, byte_order);
14440 *offsetp += 1;
14441 sequence_number = VALUE16(tvb, *offsetp);
14442 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14443 "sequencenumber: %d (shm-QueryVersion)", sequence_number);
14444 *offsetp += 2;
14445 f_length = VALUE32(tvb, *offsetp);
14446 length = f_length * 4 + 32;
14447 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14448 *offsetp += 4;
14449 f_major_version = VALUE16(tvb, *offsetp);
14450 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
14451 *offsetp += 2;
14452 f_minor_version = VALUE16(tvb, *offsetp);
14453 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
14454 *offsetp += 2;
14455 f_uid = VALUE16(tvb, *offsetp);
14456 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_uid, tvb, *offsetp, 2, byte_order);
14457 *offsetp += 2;
14458 f_gid = VALUE16(tvb, *offsetp);
14459 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_gid, tvb, *offsetp, 2, byte_order);
14460 *offsetp += 2;
14461 f_pixmap_format = VALUE8(tvb, *offsetp);
14462 proto_tree_add_item(t, hf_x11_shm_QueryVersion_reply_pixmap_format, tvb, *offsetp, 1, byte_order);
14463 *offsetp += 1;
14464 UNUSED(15);
14467 static void shmAttach(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14469 int f_shmseg;
14470 int f_shmid;
14471 int f_read_only;
14472 f_shmseg = VALUE32(tvb, *offsetp);
14473 proto_tree_add_item(t, hf_x11_shm_Attach_shmseg, tvb, *offsetp, 4, byte_order);
14474 *offsetp += 4;
14475 f_shmid = VALUE32(tvb, *offsetp);
14476 proto_tree_add_item(t, hf_x11_shm_Attach_shmid, tvb, *offsetp, 4, byte_order);
14477 *offsetp += 4;
14478 f_read_only = VALUE8(tvb, *offsetp);
14479 proto_tree_add_item(t, hf_x11_shm_Attach_read_only, tvb, *offsetp, 1, byte_order);
14480 *offsetp += 1;
14481 UNUSED(3);
14484 static void shmDetach(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14486 int f_shmseg;
14487 f_shmseg = VALUE32(tvb, *offsetp);
14488 proto_tree_add_item(t, hf_x11_shm_Detach_shmseg, tvb, *offsetp, 4, byte_order);
14489 *offsetp += 4;
14492 static void shmPutImage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14494 int f_drawable;
14495 int f_gc;
14496 int f_total_width;
14497 int f_total_height;
14498 int f_src_x;
14499 int f_src_y;
14500 int f_src_width;
14501 int f_src_height;
14502 int f_dst_x;
14503 int f_dst_y;
14504 int f_depth;
14505 int f_format;
14506 int f_send_event;
14507 int f_shmseg;
14508 int f_offset;
14509 f_drawable = VALUE32(tvb, *offsetp);
14510 proto_tree_add_item(t, hf_x11_shm_PutImage_drawable, tvb, *offsetp, 4, byte_order);
14511 *offsetp += 4;
14512 f_gc = VALUE32(tvb, *offsetp);
14513 proto_tree_add_item(t, hf_x11_shm_PutImage_gc, tvb, *offsetp, 4, byte_order);
14514 *offsetp += 4;
14515 f_total_width = VALUE16(tvb, *offsetp);
14516 proto_tree_add_item(t, hf_x11_shm_PutImage_total_width, tvb, *offsetp, 2, byte_order);
14517 *offsetp += 2;
14518 f_total_height = VALUE16(tvb, *offsetp);
14519 proto_tree_add_item(t, hf_x11_shm_PutImage_total_height, tvb, *offsetp, 2, byte_order);
14520 *offsetp += 2;
14521 f_src_x = VALUE16(tvb, *offsetp);
14522 proto_tree_add_item(t, hf_x11_shm_PutImage_src_x, tvb, *offsetp, 2, byte_order);
14523 *offsetp += 2;
14524 f_src_y = VALUE16(tvb, *offsetp);
14525 proto_tree_add_item(t, hf_x11_shm_PutImage_src_y, tvb, *offsetp, 2, byte_order);
14526 *offsetp += 2;
14527 f_src_width = VALUE16(tvb, *offsetp);
14528 proto_tree_add_item(t, hf_x11_shm_PutImage_src_width, tvb, *offsetp, 2, byte_order);
14529 *offsetp += 2;
14530 f_src_height = VALUE16(tvb, *offsetp);
14531 proto_tree_add_item(t, hf_x11_shm_PutImage_src_height, tvb, *offsetp, 2, byte_order);
14532 *offsetp += 2;
14533 f_dst_x = VALUE16(tvb, *offsetp);
14534 proto_tree_add_item(t, hf_x11_shm_PutImage_dst_x, tvb, *offsetp, 2, byte_order);
14535 *offsetp += 2;
14536 f_dst_y = VALUE16(tvb, *offsetp);
14537 proto_tree_add_item(t, hf_x11_shm_PutImage_dst_y, tvb, *offsetp, 2, byte_order);
14538 *offsetp += 2;
14539 f_depth = VALUE8(tvb, *offsetp);
14540 proto_tree_add_item(t, hf_x11_shm_PutImage_depth, tvb, *offsetp, 1, byte_order);
14541 *offsetp += 1;
14542 f_format = VALUE8(tvb, *offsetp);
14543 proto_tree_add_item(t, hf_x11_shm_PutImage_format, tvb, *offsetp, 1, byte_order);
14544 *offsetp += 1;
14545 f_send_event = VALUE8(tvb, *offsetp);
14546 proto_tree_add_item(t, hf_x11_shm_PutImage_send_event, tvb, *offsetp, 1, byte_order);
14547 *offsetp += 1;
14548 UNUSED(1);
14549 f_shmseg = VALUE32(tvb, *offsetp);
14550 proto_tree_add_item(t, hf_x11_shm_PutImage_shmseg, tvb, *offsetp, 4, byte_order);
14551 *offsetp += 4;
14552 f_offset = VALUE32(tvb, *offsetp);
14553 proto_tree_add_item(t, hf_x11_shm_PutImage_offset, tvb, *offsetp, 4, byte_order);
14554 *offsetp += 4;
14557 static void shmGetImage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14559 int f_drawable;
14560 int f_x;
14561 int f_y;
14562 int f_width;
14563 int f_height;
14564 int f_plane_mask;
14565 int f_format;
14566 int f_shmseg;
14567 int f_offset;
14568 f_drawable = VALUE32(tvb, *offsetp);
14569 proto_tree_add_item(t, hf_x11_shm_GetImage_drawable, tvb, *offsetp, 4, byte_order);
14570 *offsetp += 4;
14571 f_x = VALUE16(tvb, *offsetp);
14572 proto_tree_add_item(t, hf_x11_shm_GetImage_x, tvb, *offsetp, 2, byte_order);
14573 *offsetp += 2;
14574 f_y = VALUE16(tvb, *offsetp);
14575 proto_tree_add_item(t, hf_x11_shm_GetImage_y, tvb, *offsetp, 2, byte_order);
14576 *offsetp += 2;
14577 f_width = VALUE16(tvb, *offsetp);
14578 proto_tree_add_item(t, hf_x11_shm_GetImage_width, tvb, *offsetp, 2, byte_order);
14579 *offsetp += 2;
14580 f_height = VALUE16(tvb, *offsetp);
14581 proto_tree_add_item(t, hf_x11_shm_GetImage_height, tvb, *offsetp, 2, byte_order);
14582 *offsetp += 2;
14583 f_plane_mask = VALUE32(tvb, *offsetp);
14584 proto_tree_add_item(t, hf_x11_shm_GetImage_plane_mask, tvb, *offsetp, 4, byte_order);
14585 *offsetp += 4;
14586 f_format = VALUE8(tvb, *offsetp);
14587 proto_tree_add_item(t, hf_x11_shm_GetImage_format, tvb, *offsetp, 1, byte_order);
14588 *offsetp += 1;
14589 UNUSED(3);
14590 f_shmseg = VALUE32(tvb, *offsetp);
14591 proto_tree_add_item(t, hf_x11_shm_GetImage_shmseg, tvb, *offsetp, 4, byte_order);
14592 *offsetp += 4;
14593 f_offset = VALUE32(tvb, *offsetp);
14594 proto_tree_add_item(t, hf_x11_shm_GetImage_offset, tvb, *offsetp, 4, byte_order);
14595 *offsetp += 4;
14597 static void shmGetImage_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14599 int f_length, length, sequence_number;
14600 int f_depth;
14601 int f_visual;
14602 int f_size;
14604 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetImage");
14606 REPLY(reply);
14607 f_depth = VALUE8(tvb, *offsetp);
14608 proto_tree_add_item(t, hf_x11_shm_GetImage_reply_depth, tvb, *offsetp, 1, byte_order);
14609 *offsetp += 1;
14610 sequence_number = VALUE16(tvb, *offsetp);
14611 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14612 "sequencenumber: %d (shm-GetImage)", sequence_number);
14613 *offsetp += 2;
14614 f_length = VALUE32(tvb, *offsetp);
14615 length = f_length * 4 + 32;
14616 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14617 *offsetp += 4;
14618 f_visual = VALUE32(tvb, *offsetp);
14619 proto_tree_add_item(t, hf_x11_shm_GetImage_reply_visual, tvb, *offsetp, 4, byte_order);
14620 *offsetp += 4;
14621 f_size = VALUE32(tvb, *offsetp);
14622 proto_tree_add_item(t, hf_x11_shm_GetImage_reply_size, tvb, *offsetp, 4, byte_order);
14623 *offsetp += 4;
14626 static void shmCreatePixmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14628 int f_pid;
14629 int f_drawable;
14630 int f_width;
14631 int f_height;
14632 int f_depth;
14633 int f_shmseg;
14634 int f_offset;
14635 f_pid = VALUE32(tvb, *offsetp);
14636 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_pid, tvb, *offsetp, 4, byte_order);
14637 *offsetp += 4;
14638 f_drawable = VALUE32(tvb, *offsetp);
14639 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_drawable, tvb, *offsetp, 4, byte_order);
14640 *offsetp += 4;
14641 f_width = VALUE16(tvb, *offsetp);
14642 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_width, tvb, *offsetp, 2, byte_order);
14643 *offsetp += 2;
14644 f_height = VALUE16(tvb, *offsetp);
14645 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_height, tvb, *offsetp, 2, byte_order);
14646 *offsetp += 2;
14647 f_depth = VALUE8(tvb, *offsetp);
14648 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_depth, tvb, *offsetp, 1, byte_order);
14649 *offsetp += 1;
14650 UNUSED(3);
14651 f_shmseg = VALUE32(tvb, *offsetp);
14652 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_shmseg, tvb, *offsetp, 4, byte_order);
14653 *offsetp += 4;
14654 f_offset = VALUE32(tvb, *offsetp);
14655 proto_tree_add_item(t, hf_x11_shm_CreatePixmap_offset, tvb, *offsetp, 4, byte_order);
14656 *offsetp += 4;
14658 static const value_string shm_extension_minor[] = {
14659 { 0, "QueryVersion" },
14660 { 1, "Attach" },
14661 { 2, "Detach" },
14662 { 3, "PutImage" },
14663 { 4, "GetImage" },
14664 { 5, "CreatePixmap" },
14665 { 0, NULL }
14667 const x11_event_info shm_events[] = {
14668 { "shm-Completion", shmCompletion },
14669 { NULL, NULL }
14671 static x11_reply_info shm_replies[] = {
14672 { 0, shmQueryVersion_Reply },
14673 { 4, shmGetImage_Reply },
14674 { 0, NULL }
14677 static void dispatch_shm(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14679 int minor, length;
14680 minor = CARD8(shm_extension_minor);
14681 length = REQUEST_LENGTH();
14683 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
14684 val_to_str(minor, shm_extension_minor,
14685 "<Unknown opcode %d>"));
14686 switch (minor) {
14687 case 0:
14688 shmQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
14689 break;
14690 case 1:
14691 shmAttach(tvb, pinfo, offsetp, t, byte_order, length);
14692 break;
14693 case 2:
14694 shmDetach(tvb, pinfo, offsetp, t, byte_order, length);
14695 break;
14696 case 3:
14697 shmPutImage(tvb, pinfo, offsetp, t, byte_order, length);
14698 break;
14699 case 4:
14700 shmGetImage(tvb, pinfo, offsetp, t, byte_order, length);
14701 break;
14702 case 5:
14703 shmCreatePixmap(tvb, pinfo, offsetp, t, byte_order, length);
14704 break;
14705 /* No need for a default case here, since Unknown is printed above,
14706 and UNDECODED() is taken care of by dissect_x11_request */
14710 static void register_shm(void)
14712 set_handler("MIT-SHM", dispatch_shm, shm_errors, shm_events, shm_replies);
14715 static void struct_INT64(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
14717 int i;
14718 for (i = 0; i < count; i++) {
14719 proto_item *item;
14720 proto_tree *t;
14721 int f_hi;
14722 int f_lo;
14724 item = proto_tree_add_item(root, hf_x11_struct_INT64, tvb, *offsetp, 8, ENC_NA);
14725 t = proto_item_add_subtree(item, ett_x11_rectangle);
14726 f_hi = VALUE32(tvb, *offsetp);
14727 proto_tree_add_item(t, hf_x11_struct_INT64_hi, tvb, *offsetp, 4, byte_order);
14728 *offsetp += 4;
14729 f_lo = VALUE32(tvb, *offsetp);
14730 proto_tree_add_item(t, hf_x11_struct_INT64_lo, tvb, *offsetp, 4, byte_order);
14731 *offsetp += 4;
14735 static int struct_size_SYSTEMCOUNTER(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
14737 int size = 0;
14738 int f_name_len;
14739 f_name_len = VALUE16(tvb, *offsetp + size + 12);
14740 size += f_name_len * 1;
14741 return size + 14;
14744 static void struct_SYSTEMCOUNTER(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
14746 int i;
14747 for (i = 0; i < count; i++) {
14748 proto_item *item;
14749 proto_tree *t;
14750 int f_counter;
14751 int f_name_len;
14753 item = proto_tree_add_item(root, hf_x11_struct_SYSTEMCOUNTER, tvb, *offsetp, struct_size_SYSTEMCOUNTER(tvb, offsetp, byte_order), ENC_NA);
14754 t = proto_item_add_subtree(item, ett_x11_rectangle);
14755 f_counter = VALUE32(tvb, *offsetp);
14756 proto_tree_add_item(t, hf_x11_struct_SYSTEMCOUNTER_counter, tvb, *offsetp, 4, byte_order);
14757 *offsetp += 4;
14758 struct_INT64(tvb, offsetp, t, byte_order, 1);
14759 f_name_len = VALUE16(tvb, *offsetp);
14760 proto_tree_add_item(t, hf_x11_struct_SYSTEMCOUNTER_name_len, tvb, *offsetp, 2, byte_order);
14761 *offsetp += 2;
14762 listOfByte(tvb, offsetp, t, hf_x11_struct_SYSTEMCOUNTER_name, f_name_len, byte_order);
14766 static void struct_TRIGGER(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
14768 int i;
14769 for (i = 0; i < count; i++) {
14770 proto_item *item;
14771 proto_tree *t;
14772 int f_counter;
14773 int f_wait_type;
14774 int f_test_type;
14776 item = proto_tree_add_item(root, hf_x11_struct_TRIGGER, tvb, *offsetp, 20, ENC_NA);
14777 t = proto_item_add_subtree(item, ett_x11_rectangle);
14778 f_counter = VALUE32(tvb, *offsetp);
14779 proto_tree_add_item(t, hf_x11_struct_TRIGGER_counter, tvb, *offsetp, 4, byte_order);
14780 *offsetp += 4;
14781 f_wait_type = field32(tvb, offsetp, t, hf_x11_struct_TRIGGER_wait_type, byte_order);
14782 struct_INT64(tvb, offsetp, t, byte_order, 1);
14783 f_test_type = field32(tvb, offsetp, t, hf_x11_struct_TRIGGER_test_type, byte_order);
14787 static void struct_WAITCONDITION(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
14789 int i;
14790 for (i = 0; i < count; i++) {
14791 proto_item *item;
14792 proto_tree *t;
14794 item = proto_tree_add_item(root, hf_x11_struct_WAITCONDITION, tvb, *offsetp, 28, ENC_NA);
14795 t = proto_item_add_subtree(item, ett_x11_rectangle);
14796 struct_TRIGGER(tvb, offsetp, t, byte_order, 1);
14797 struct_INT64(tvb, offsetp, t, byte_order, 1);
14801 static void syncInitialize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14803 int f_desired_major_version;
14804 int f_desired_minor_version;
14805 f_desired_major_version = VALUE8(tvb, *offsetp);
14806 proto_tree_add_item(t, hf_x11_sync_Initialize_desired_major_version, tvb, *offsetp, 1, byte_order);
14807 *offsetp += 1;
14808 f_desired_minor_version = VALUE8(tvb, *offsetp);
14809 proto_tree_add_item(t, hf_x11_sync_Initialize_desired_minor_version, tvb, *offsetp, 1, byte_order);
14810 *offsetp += 1;
14812 static void syncInitialize_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14814 int f_length, length, sequence_number;
14815 int f_major_version;
14816 int f_minor_version;
14818 col_append_fstr(pinfo->cinfo, COL_INFO, "-Initialize");
14820 REPLY(reply);
14821 UNUSED(1);
14822 sequence_number = VALUE16(tvb, *offsetp);
14823 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14824 "sequencenumber: %d (sync-Initialize)", sequence_number);
14825 *offsetp += 2;
14826 f_length = VALUE32(tvb, *offsetp);
14827 length = f_length * 4 + 32;
14828 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14829 *offsetp += 4;
14830 f_major_version = VALUE8(tvb, *offsetp);
14831 proto_tree_add_item(t, hf_x11_sync_Initialize_reply_major_version, tvb, *offsetp, 1, byte_order);
14832 *offsetp += 1;
14833 f_minor_version = VALUE8(tvb, *offsetp);
14834 proto_tree_add_item(t, hf_x11_sync_Initialize_reply_minor_version, tvb, *offsetp, 1, byte_order);
14835 *offsetp += 1;
14836 UNUSED(22);
14839 static void syncListSystemCounters(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
14842 static void syncListSystemCounters_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14844 int f_length, length, sequence_number;
14845 int f_counters_len;
14847 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListSystemCounters");
14849 REPLY(reply);
14850 UNUSED(1);
14851 sequence_number = VALUE16(tvb, *offsetp);
14852 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14853 "sequencenumber: %d (sync-ListSystemCounters)", sequence_number);
14854 *offsetp += 2;
14855 f_length = VALUE32(tvb, *offsetp);
14856 length = f_length * 4 + 32;
14857 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14858 *offsetp += 4;
14859 f_counters_len = VALUE32(tvb, *offsetp);
14860 proto_tree_add_item(t, hf_x11_sync_ListSystemCounters_reply_counters_len, tvb, *offsetp, 4, byte_order);
14861 *offsetp += 4;
14862 UNUSED(20);
14863 struct_SYSTEMCOUNTER(tvb, offsetp, t, byte_order, f_counters_len);
14866 static void syncCreateCounter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14868 int f_id;
14869 f_id = VALUE32(tvb, *offsetp);
14870 proto_tree_add_item(t, hf_x11_sync_CreateCounter_id, tvb, *offsetp, 4, byte_order);
14871 *offsetp += 4;
14872 struct_INT64(tvb, offsetp, t, byte_order, 1);
14875 static void syncDestroyCounter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14877 int f_counter;
14878 f_counter = VALUE32(tvb, *offsetp);
14879 proto_tree_add_item(t, hf_x11_sync_DestroyCounter_counter, tvb, *offsetp, 4, byte_order);
14880 *offsetp += 4;
14883 static void syncQueryCounter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14885 int f_counter;
14886 f_counter = VALUE32(tvb, *offsetp);
14887 proto_tree_add_item(t, hf_x11_sync_QueryCounter_counter, tvb, *offsetp, 4, byte_order);
14888 *offsetp += 4;
14890 static void syncQueryCounter_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14892 int f_length, length, sequence_number;
14894 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryCounter");
14896 REPLY(reply);
14897 UNUSED(1);
14898 sequence_number = VALUE16(tvb, *offsetp);
14899 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14900 "sequencenumber: %d (sync-QueryCounter)", sequence_number);
14901 *offsetp += 2;
14902 f_length = VALUE32(tvb, *offsetp);
14903 length = f_length * 4 + 32;
14904 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14905 *offsetp += 4;
14906 struct_INT64(tvb, offsetp, t, byte_order, 1);
14909 static void syncAwait(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14911 struct_WAITCONDITION(tvb, offsetp, t, byte_order, (length - 4) / 28);
14914 static void syncChangeCounter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14916 int f_counter;
14917 f_counter = VALUE32(tvb, *offsetp);
14918 proto_tree_add_item(t, hf_x11_sync_ChangeCounter_counter, tvb, *offsetp, 4, byte_order);
14919 *offsetp += 4;
14920 struct_INT64(tvb, offsetp, t, byte_order, 1);
14923 static void syncSetCounter(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14925 int f_counter;
14926 f_counter = VALUE32(tvb, *offsetp);
14927 proto_tree_add_item(t, hf_x11_sync_SetCounter_counter, tvb, *offsetp, 4, byte_order);
14928 *offsetp += 4;
14929 struct_INT64(tvb, offsetp, t, byte_order, 1);
14932 static void syncCreateAlarm(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14934 int f_id;
14935 f_id = VALUE32(tvb, *offsetp);
14936 proto_tree_add_item(t, hf_x11_sync_CreateAlarm_id, tvb, *offsetp, 4, byte_order);
14937 *offsetp += 4;
14940 static void syncChangeAlarm(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14942 int f_id;
14943 f_id = VALUE32(tvb, *offsetp);
14944 proto_tree_add_item(t, hf_x11_sync_ChangeAlarm_id, tvb, *offsetp, 4, byte_order);
14945 *offsetp += 4;
14948 static void syncDestroyAlarm(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14950 int f_alarm;
14951 f_alarm = VALUE32(tvb, *offsetp);
14952 proto_tree_add_item(t, hf_x11_sync_DestroyAlarm_alarm, tvb, *offsetp, 4, byte_order);
14953 *offsetp += 4;
14956 static void syncQueryAlarm(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14958 int f_alarm;
14959 f_alarm = VALUE32(tvb, *offsetp);
14960 proto_tree_add_item(t, hf_x11_sync_QueryAlarm_alarm, tvb, *offsetp, 4, byte_order);
14961 *offsetp += 4;
14963 static void syncQueryAlarm_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
14965 int f_length, length, sequence_number;
14966 int f_events;
14967 int f_state;
14969 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryAlarm");
14971 REPLY(reply);
14972 UNUSED(1);
14973 sequence_number = VALUE16(tvb, *offsetp);
14974 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
14975 "sequencenumber: %d (sync-QueryAlarm)", sequence_number);
14976 *offsetp += 2;
14977 f_length = VALUE32(tvb, *offsetp);
14978 length = f_length * 4 + 32;
14979 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
14980 *offsetp += 4;
14981 struct_TRIGGER(tvb, offsetp, t, byte_order, 1);
14982 struct_INT64(tvb, offsetp, t, byte_order, 1);
14983 f_events = VALUE8(tvb, *offsetp);
14984 proto_tree_add_item(t, hf_x11_sync_QueryAlarm_reply_events, tvb, *offsetp, 1, byte_order);
14985 *offsetp += 1;
14986 f_state = field8(tvb, offsetp, t, hf_x11_sync_QueryAlarm_reply_state, byte_order);
14987 UNUSED(2);
14990 static void syncSetPriority(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
14992 int f_id;
14993 int f_priority;
14994 f_id = VALUE32(tvb, *offsetp);
14995 proto_tree_add_item(t, hf_x11_sync_SetPriority_id, tvb, *offsetp, 4, byte_order);
14996 *offsetp += 4;
14997 f_priority = VALUE32(tvb, *offsetp);
14998 proto_tree_add_item(t, hf_x11_sync_SetPriority_priority, tvb, *offsetp, 4, byte_order);
14999 *offsetp += 4;
15002 static void syncGetPriority(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15004 int f_id;
15005 f_id = VALUE32(tvb, *offsetp);
15006 proto_tree_add_item(t, hf_x11_sync_GetPriority_id, tvb, *offsetp, 4, byte_order);
15007 *offsetp += 4;
15009 static void syncGetPriority_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15011 int f_length, length, sequence_number;
15012 int f_priority;
15014 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPriority");
15016 REPLY(reply);
15017 UNUSED(1);
15018 sequence_number = VALUE16(tvb, *offsetp);
15019 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15020 "sequencenumber: %d (sync-GetPriority)", sequence_number);
15021 *offsetp += 2;
15022 f_length = VALUE32(tvb, *offsetp);
15023 length = f_length * 4 + 32;
15024 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15025 *offsetp += 4;
15026 f_priority = VALUE32(tvb, *offsetp);
15027 proto_tree_add_item(t, hf_x11_sync_GetPriority_reply_priority, tvb, *offsetp, 4, byte_order);
15028 *offsetp += 4;
15031 static void syncCreateFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15033 int f_drawable;
15034 int f_fence;
15035 int f_initially_triggered;
15036 f_drawable = VALUE32(tvb, *offsetp);
15037 proto_tree_add_item(t, hf_x11_sync_CreateFence_drawable, tvb, *offsetp, 4, byte_order);
15038 *offsetp += 4;
15039 f_fence = VALUE32(tvb, *offsetp);
15040 proto_tree_add_item(t, hf_x11_sync_CreateFence_fence, tvb, *offsetp, 4, byte_order);
15041 *offsetp += 4;
15042 f_initially_triggered = VALUE8(tvb, *offsetp);
15043 proto_tree_add_item(t, hf_x11_sync_CreateFence_initially_triggered, tvb, *offsetp, 1, byte_order);
15044 *offsetp += 1;
15047 static void syncTriggerFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15049 int f_fence;
15050 f_fence = VALUE32(tvb, *offsetp);
15051 proto_tree_add_item(t, hf_x11_sync_TriggerFence_fence, tvb, *offsetp, 4, byte_order);
15052 *offsetp += 4;
15055 static void syncResetFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15057 int f_fence;
15058 f_fence = VALUE32(tvb, *offsetp);
15059 proto_tree_add_item(t, hf_x11_sync_ResetFence_fence, tvb, *offsetp, 4, byte_order);
15060 *offsetp += 4;
15063 static void syncDestroyFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15065 int f_fence;
15066 f_fence = VALUE32(tvb, *offsetp);
15067 proto_tree_add_item(t, hf_x11_sync_DestroyFence_fence, tvb, *offsetp, 4, byte_order);
15068 *offsetp += 4;
15071 static void syncQueryFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15073 int f_fence;
15074 f_fence = VALUE32(tvb, *offsetp);
15075 proto_tree_add_item(t, hf_x11_sync_QueryFence_fence, tvb, *offsetp, 4, byte_order);
15076 *offsetp += 4;
15078 static void syncQueryFence_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15080 int f_length, length, sequence_number;
15081 int f_triggered;
15083 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryFence");
15085 REPLY(reply);
15086 UNUSED(1);
15087 sequence_number = VALUE16(tvb, *offsetp);
15088 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15089 "sequencenumber: %d (sync-QueryFence)", sequence_number);
15090 *offsetp += 2;
15091 f_length = VALUE32(tvb, *offsetp);
15092 length = f_length * 4 + 32;
15093 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15094 *offsetp += 4;
15095 f_triggered = VALUE8(tvb, *offsetp);
15096 proto_tree_add_item(t, hf_x11_sync_QueryFence_reply_triggered, tvb, *offsetp, 1, byte_order);
15097 *offsetp += 1;
15098 UNUSED(23);
15101 static void syncAwaitFence(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15103 listOfCard32(tvb, offsetp, t, hf_x11_sync_AwaitFence_fence_list, hf_x11_sync_AwaitFence_fence_list_item, (length - 4) / 4, byte_order);
15106 static void syncCounterNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
15108 int f_kind;
15109 int f_counter;
15110 int f_timestamp;
15111 int f_count;
15112 int f_destroyed;
15113 f_kind = VALUE8(tvb, *offsetp);
15114 proto_tree_add_item(t, hf_x11_sync_CounterNotify_kind, tvb, *offsetp, 1, byte_order);
15115 *offsetp += 1;
15116 CARD16(event_sequencenumber);
15117 f_counter = VALUE32(tvb, *offsetp);
15118 proto_tree_add_item(t, hf_x11_sync_CounterNotify_counter, tvb, *offsetp, 4, byte_order);
15119 *offsetp += 4;
15120 struct_INT64(tvb, offsetp, t, byte_order, 1);
15121 struct_INT64(tvb, offsetp, t, byte_order, 1);
15122 f_timestamp = VALUE32(tvb, *offsetp);
15123 proto_tree_add_item(t, hf_x11_sync_CounterNotify_timestamp, tvb, *offsetp, 4, byte_order);
15124 *offsetp += 4;
15125 f_count = VALUE16(tvb, *offsetp);
15126 proto_tree_add_item(t, hf_x11_sync_CounterNotify_count, tvb, *offsetp, 2, byte_order);
15127 *offsetp += 2;
15128 f_destroyed = VALUE8(tvb, *offsetp);
15129 proto_tree_add_item(t, hf_x11_sync_CounterNotify_destroyed, tvb, *offsetp, 1, byte_order);
15130 *offsetp += 1;
15131 UNUSED(1);
15134 static void syncAlarmNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
15136 int f_kind;
15137 int f_alarm;
15138 int f_timestamp;
15139 int f_state;
15140 f_kind = VALUE8(tvb, *offsetp);
15141 proto_tree_add_item(t, hf_x11_sync_AlarmNotify_kind, tvb, *offsetp, 1, byte_order);
15142 *offsetp += 1;
15143 CARD16(event_sequencenumber);
15144 f_alarm = VALUE32(tvb, *offsetp);
15145 proto_tree_add_item(t, hf_x11_sync_AlarmNotify_alarm, tvb, *offsetp, 4, byte_order);
15146 *offsetp += 4;
15147 struct_INT64(tvb, offsetp, t, byte_order, 1);
15148 struct_INT64(tvb, offsetp, t, byte_order, 1);
15149 f_timestamp = VALUE32(tvb, *offsetp);
15150 proto_tree_add_item(t, hf_x11_sync_AlarmNotify_timestamp, tvb, *offsetp, 4, byte_order);
15151 *offsetp += 4;
15152 f_state = field8(tvb, offsetp, t, hf_x11_sync_AlarmNotify_state, byte_order);
15153 UNUSED(3);
15155 static const value_string sync_extension_minor[] = {
15156 { 0, "Initialize" },
15157 { 1, "ListSystemCounters" },
15158 { 2, "CreateCounter" },
15159 { 3, "SetCounter" },
15160 { 4, "ChangeCounter" },
15161 { 5, "QueryCounter" },
15162 { 6, "DestroyCounter" },
15163 { 7, "Await" },
15164 { 8, "CreateAlarm" },
15165 { 9, "ChangeAlarm" },
15166 { 10, "QueryAlarm" },
15167 { 11, "DestroyAlarm" },
15168 { 12, "SetPriority" },
15169 { 13, "GetPriority" },
15170 { 14, "CreateFence" },
15171 { 15, "TriggerFence" },
15172 { 16, "ResetFence" },
15173 { 17, "DestroyFence" },
15174 { 18, "QueryFence" },
15175 { 19, "AwaitFence" },
15176 { 0, NULL }
15178 const x11_event_info sync_events[] = {
15179 { "sync-CounterNotify", syncCounterNotify },
15180 { "sync-AlarmNotify", syncAlarmNotify },
15181 { NULL, NULL }
15183 static x11_reply_info sync_replies[] = {
15184 { 0, syncInitialize_Reply },
15185 { 1, syncListSystemCounters_Reply },
15186 { 5, syncQueryCounter_Reply },
15187 { 10, syncQueryAlarm_Reply },
15188 { 13, syncGetPriority_Reply },
15189 { 18, syncQueryFence_Reply },
15190 { 0, NULL }
15193 static void dispatch_sync(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15195 int minor, length;
15196 minor = CARD8(sync_extension_minor);
15197 length = REQUEST_LENGTH();
15199 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
15200 val_to_str(minor, sync_extension_minor,
15201 "<Unknown opcode %d>"));
15202 switch (minor) {
15203 case 0:
15204 syncInitialize(tvb, pinfo, offsetp, t, byte_order, length);
15205 break;
15206 case 1:
15207 syncListSystemCounters(tvb, pinfo, offsetp, t, byte_order, length);
15208 break;
15209 case 2:
15210 syncCreateCounter(tvb, pinfo, offsetp, t, byte_order, length);
15211 break;
15212 case 3:
15213 syncSetCounter(tvb, pinfo, offsetp, t, byte_order, length);
15214 break;
15215 case 4:
15216 syncChangeCounter(tvb, pinfo, offsetp, t, byte_order, length);
15217 break;
15218 case 5:
15219 syncQueryCounter(tvb, pinfo, offsetp, t, byte_order, length);
15220 break;
15221 case 6:
15222 syncDestroyCounter(tvb, pinfo, offsetp, t, byte_order, length);
15223 break;
15224 case 7:
15225 syncAwait(tvb, pinfo, offsetp, t, byte_order, length);
15226 break;
15227 case 8:
15228 syncCreateAlarm(tvb, pinfo, offsetp, t, byte_order, length);
15229 break;
15230 case 9:
15231 syncChangeAlarm(tvb, pinfo, offsetp, t, byte_order, length);
15232 break;
15233 case 10:
15234 syncQueryAlarm(tvb, pinfo, offsetp, t, byte_order, length);
15235 break;
15236 case 11:
15237 syncDestroyAlarm(tvb, pinfo, offsetp, t, byte_order, length);
15238 break;
15239 case 12:
15240 syncSetPriority(tvb, pinfo, offsetp, t, byte_order, length);
15241 break;
15242 case 13:
15243 syncGetPriority(tvb, pinfo, offsetp, t, byte_order, length);
15244 break;
15245 case 14:
15246 syncCreateFence(tvb, pinfo, offsetp, t, byte_order, length);
15247 break;
15248 case 15:
15249 syncTriggerFence(tvb, pinfo, offsetp, t, byte_order, length);
15250 break;
15251 case 16:
15252 syncResetFence(tvb, pinfo, offsetp, t, byte_order, length);
15253 break;
15254 case 17:
15255 syncDestroyFence(tvb, pinfo, offsetp, t, byte_order, length);
15256 break;
15257 case 18:
15258 syncQueryFence(tvb, pinfo, offsetp, t, byte_order, length);
15259 break;
15260 case 19:
15261 syncAwaitFence(tvb, pinfo, offsetp, t, byte_order, length);
15262 break;
15263 /* No need for a default case here, since Unknown is printed above,
15264 and UNDECODED() is taken care of by dissect_x11_request */
15268 static void register_sync(void)
15270 set_handler("SYNC", dispatch_sync, sync_errors, sync_events, sync_replies);
15273 static void xc_miscGetVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15275 int f_client_major_version;
15276 int f_client_minor_version;
15277 f_client_major_version = VALUE16(tvb, *offsetp);
15278 proto_tree_add_item(t, hf_x11_xc_misc_GetVersion_client_major_version, tvb, *offsetp, 2, byte_order);
15279 *offsetp += 2;
15280 f_client_minor_version = VALUE16(tvb, *offsetp);
15281 proto_tree_add_item(t, hf_x11_xc_misc_GetVersion_client_minor_version, tvb, *offsetp, 2, byte_order);
15282 *offsetp += 2;
15284 static void xc_miscGetVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15286 int f_length, length, sequence_number;
15287 int f_server_major_version;
15288 int f_server_minor_version;
15290 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetVersion");
15292 REPLY(reply);
15293 UNUSED(1);
15294 sequence_number = VALUE16(tvb, *offsetp);
15295 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15296 "sequencenumber: %d (xc_misc-GetVersion)", sequence_number);
15297 *offsetp += 2;
15298 f_length = VALUE32(tvb, *offsetp);
15299 length = f_length * 4 + 32;
15300 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15301 *offsetp += 4;
15302 f_server_major_version = VALUE16(tvb, *offsetp);
15303 proto_tree_add_item(t, hf_x11_xc_misc_GetVersion_reply_server_major_version, tvb, *offsetp, 2, byte_order);
15304 *offsetp += 2;
15305 f_server_minor_version = VALUE16(tvb, *offsetp);
15306 proto_tree_add_item(t, hf_x11_xc_misc_GetVersion_reply_server_minor_version, tvb, *offsetp, 2, byte_order);
15307 *offsetp += 2;
15310 static void xc_miscGetXIDRange(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
15313 static void xc_miscGetXIDRange_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15315 int f_length, length, sequence_number;
15316 int f_start_id;
15317 int f_count;
15319 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetXIDRange");
15321 REPLY(reply);
15322 UNUSED(1);
15323 sequence_number = VALUE16(tvb, *offsetp);
15324 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15325 "sequencenumber: %d (xc_misc-GetXIDRange)", sequence_number);
15326 *offsetp += 2;
15327 f_length = VALUE32(tvb, *offsetp);
15328 length = f_length * 4 + 32;
15329 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15330 *offsetp += 4;
15331 f_start_id = VALUE32(tvb, *offsetp);
15332 proto_tree_add_item(t, hf_x11_xc_misc_GetXIDRange_reply_start_id, tvb, *offsetp, 4, byte_order);
15333 *offsetp += 4;
15334 f_count = VALUE32(tvb, *offsetp);
15335 proto_tree_add_item(t, hf_x11_xc_misc_GetXIDRange_reply_count, tvb, *offsetp, 4, byte_order);
15336 *offsetp += 4;
15339 static void xc_miscGetXIDList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15341 int f_count;
15342 f_count = VALUE32(tvb, *offsetp);
15343 proto_tree_add_item(t, hf_x11_xc_misc_GetXIDList_count, tvb, *offsetp, 4, byte_order);
15344 *offsetp += 4;
15346 static void xc_miscGetXIDList_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15348 int f_length, length, sequence_number;
15349 int f_ids_len;
15351 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetXIDList");
15353 REPLY(reply);
15354 UNUSED(1);
15355 sequence_number = VALUE16(tvb, *offsetp);
15356 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15357 "sequencenumber: %d (xc_misc-GetXIDList)", sequence_number);
15358 *offsetp += 2;
15359 f_length = VALUE32(tvb, *offsetp);
15360 length = f_length * 4 + 32;
15361 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15362 *offsetp += 4;
15363 f_ids_len = VALUE32(tvb, *offsetp);
15364 proto_tree_add_item(t, hf_x11_xc_misc_GetXIDList_reply_ids_len, tvb, *offsetp, 4, byte_order);
15365 *offsetp += 4;
15366 UNUSED(20);
15367 listOfCard32(tvb, offsetp, t, hf_x11_xc_misc_GetXIDList_reply_ids, hf_x11_xc_misc_GetXIDList_reply_ids_item, f_ids_len, byte_order);
15369 static const value_string xc_misc_extension_minor[] = {
15370 { 0, "GetVersion" },
15371 { 1, "GetXIDRange" },
15372 { 2, "GetXIDList" },
15373 { 0, NULL }
15375 const x11_event_info xc_misc_events[] = {
15376 { NULL, NULL }
15378 static x11_reply_info xc_misc_replies[] = {
15379 { 0, xc_miscGetVersion_Reply },
15380 { 1, xc_miscGetXIDRange_Reply },
15381 { 2, xc_miscGetXIDList_Reply },
15382 { 0, NULL }
15385 static void dispatch_xc_misc(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15387 int minor, length;
15388 minor = CARD8(xc_misc_extension_minor);
15389 length = REQUEST_LENGTH();
15391 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
15392 val_to_str(minor, xc_misc_extension_minor,
15393 "<Unknown opcode %d>"));
15394 switch (minor) {
15395 case 0:
15396 xc_miscGetVersion(tvb, pinfo, offsetp, t, byte_order, length);
15397 break;
15398 case 1:
15399 xc_miscGetXIDRange(tvb, pinfo, offsetp, t, byte_order, length);
15400 break;
15401 case 2:
15402 xc_miscGetXIDList(tvb, pinfo, offsetp, t, byte_order, length);
15403 break;
15404 /* No need for a default case here, since Unknown is printed above,
15405 and UNDECODED() is taken care of by dissect_x11_request */
15409 static void register_xc_misc(void)
15411 set_handler("XC-MISC", dispatch_xc_misc, xc_misc_errors, xc_misc_events, xc_misc_replies);
15414 static void xevieQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15416 int f_client_major_version;
15417 int f_client_minor_version;
15418 f_client_major_version = VALUE16(tvb, *offsetp);
15419 proto_tree_add_item(t, hf_x11_xevie_QueryVersion_client_major_version, tvb, *offsetp, 2, byte_order);
15420 *offsetp += 2;
15421 f_client_minor_version = VALUE16(tvb, *offsetp);
15422 proto_tree_add_item(t, hf_x11_xevie_QueryVersion_client_minor_version, tvb, *offsetp, 2, byte_order);
15423 *offsetp += 2;
15425 static void xevieQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15427 int f_length, length, sequence_number;
15428 int f_server_major_version;
15429 int f_server_minor_version;
15431 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
15433 REPLY(reply);
15434 UNUSED(1);
15435 sequence_number = VALUE16(tvb, *offsetp);
15436 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15437 "sequencenumber: %d (xevie-QueryVersion)", sequence_number);
15438 *offsetp += 2;
15439 f_length = VALUE32(tvb, *offsetp);
15440 length = f_length * 4 + 32;
15441 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15442 *offsetp += 4;
15443 f_server_major_version = VALUE16(tvb, *offsetp);
15444 proto_tree_add_item(t, hf_x11_xevie_QueryVersion_reply_server_major_version, tvb, *offsetp, 2, byte_order);
15445 *offsetp += 2;
15446 f_server_minor_version = VALUE16(tvb, *offsetp);
15447 proto_tree_add_item(t, hf_x11_xevie_QueryVersion_reply_server_minor_version, tvb, *offsetp, 2, byte_order);
15448 *offsetp += 2;
15449 UNUSED(20);
15452 static void xevieStart(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15454 int f_screen;
15455 f_screen = VALUE32(tvb, *offsetp);
15456 proto_tree_add_item(t, hf_x11_xevie_Start_screen, tvb, *offsetp, 4, byte_order);
15457 *offsetp += 4;
15459 static void xevieStart_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15461 int f_length, length, sequence_number;
15463 col_append_fstr(pinfo->cinfo, COL_INFO, "-Start");
15465 REPLY(reply);
15466 UNUSED(1);
15467 sequence_number = VALUE16(tvb, *offsetp);
15468 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15469 "sequencenumber: %d (xevie-Start)", sequence_number);
15470 *offsetp += 2;
15471 f_length = VALUE32(tvb, *offsetp);
15472 length = f_length * 4 + 32;
15473 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15474 *offsetp += 4;
15475 UNUSED(24);
15478 static void xevieEnd(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15480 int f_cmap;
15481 f_cmap = VALUE32(tvb, *offsetp);
15482 proto_tree_add_item(t, hf_x11_xevie_End_cmap, tvb, *offsetp, 4, byte_order);
15483 *offsetp += 4;
15485 static void xevieEnd_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15487 int f_length, length, sequence_number;
15489 col_append_fstr(pinfo->cinfo, COL_INFO, "-End");
15491 REPLY(reply);
15492 UNUSED(1);
15493 sequence_number = VALUE16(tvb, *offsetp);
15494 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15495 "sequencenumber: %d (xevie-End)", sequence_number);
15496 *offsetp += 2;
15497 f_length = VALUE32(tvb, *offsetp);
15498 length = f_length * 4 + 32;
15499 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15500 *offsetp += 4;
15501 UNUSED(24);
15504 static void struct_Event(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
15506 int i;
15507 for (i = 0; i < count; i++) {
15508 proto_item *item;
15509 proto_tree *t;
15511 item = proto_tree_add_item(root, hf_x11_struct_Event, tvb, *offsetp, 32, ENC_NA);
15512 t = proto_item_add_subtree(item, ett_x11_rectangle);
15513 UNUSED(32);
15517 static void xevieSend(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15519 int f_data_type;
15520 struct_Event(tvb, offsetp, t, byte_order, 1);
15521 f_data_type = VALUE32(tvb, *offsetp);
15522 proto_tree_add_item(t, hf_x11_xevie_Send_data_type, tvb, *offsetp, 4, byte_order);
15523 *offsetp += 4;
15524 UNUSED(64);
15526 static void xevieSend_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15528 int f_length, length, sequence_number;
15530 col_append_fstr(pinfo->cinfo, COL_INFO, "-Send");
15532 REPLY(reply);
15533 UNUSED(1);
15534 sequence_number = VALUE16(tvb, *offsetp);
15535 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15536 "sequencenumber: %d (xevie-Send)", sequence_number);
15537 *offsetp += 2;
15538 f_length = VALUE32(tvb, *offsetp);
15539 length = f_length * 4 + 32;
15540 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15541 *offsetp += 4;
15542 UNUSED(24);
15545 static void xevieSelectInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15547 int f_event_mask;
15548 f_event_mask = VALUE32(tvb, *offsetp);
15549 proto_tree_add_item(t, hf_x11_xevie_SelectInput_event_mask, tvb, *offsetp, 4, byte_order);
15550 *offsetp += 4;
15552 static void xevieSelectInput_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15554 int f_length, length, sequence_number;
15556 col_append_fstr(pinfo->cinfo, COL_INFO, "-SelectInput");
15558 REPLY(reply);
15559 UNUSED(1);
15560 sequence_number = VALUE16(tvb, *offsetp);
15561 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15562 "sequencenumber: %d (xevie-SelectInput)", sequence_number);
15563 *offsetp += 2;
15564 f_length = VALUE32(tvb, *offsetp);
15565 length = f_length * 4 + 32;
15566 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15567 *offsetp += 4;
15568 UNUSED(24);
15570 static const value_string xevie_extension_minor[] = {
15571 { 0, "QueryVersion" },
15572 { 1, "Start" },
15573 { 2, "End" },
15574 { 3, "Send" },
15575 { 4, "SelectInput" },
15576 { 0, NULL }
15578 const x11_event_info xevie_events[] = {
15579 { NULL, NULL }
15581 static x11_reply_info xevie_replies[] = {
15582 { 0, xevieQueryVersion_Reply },
15583 { 1, xevieStart_Reply },
15584 { 2, xevieEnd_Reply },
15585 { 3, xevieSend_Reply },
15586 { 4, xevieSelectInput_Reply },
15587 { 0, NULL }
15590 static void dispatch_xevie(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15592 int minor, length;
15593 minor = CARD8(xevie_extension_minor);
15594 length = REQUEST_LENGTH();
15596 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
15597 val_to_str(minor, xevie_extension_minor,
15598 "<Unknown opcode %d>"));
15599 switch (minor) {
15600 case 0:
15601 xevieQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
15602 break;
15603 case 1:
15604 xevieStart(tvb, pinfo, offsetp, t, byte_order, length);
15605 break;
15606 case 2:
15607 xevieEnd(tvb, pinfo, offsetp, t, byte_order, length);
15608 break;
15609 case 3:
15610 xevieSend(tvb, pinfo, offsetp, t, byte_order, length);
15611 break;
15612 case 4:
15613 xevieSelectInput(tvb, pinfo, offsetp, t, byte_order, length);
15614 break;
15615 /* No need for a default case here, since Unknown is printed above,
15616 and UNDECODED() is taken care of by dissect_x11_request */
15620 static void register_xevie(void)
15622 set_handler("XEVIE", dispatch_xevie, xevie_errors, xevie_events, xevie_replies);
15625 static void struct_DrmClipRect(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
15627 int i;
15628 for (i = 0; i < count; i++) {
15629 proto_item *item;
15630 proto_tree *t;
15631 int f_x1;
15632 int f_y1;
15633 int f_x2;
15634 int f_x3;
15636 item = proto_tree_add_item(root, hf_x11_struct_DrmClipRect, tvb, *offsetp, 8, ENC_NA);
15637 t = proto_item_add_subtree(item, ett_x11_rectangle);
15638 f_x1 = VALUE16(tvb, *offsetp);
15639 proto_tree_add_item(t, hf_x11_struct_DrmClipRect_x1, tvb, *offsetp, 2, byte_order);
15640 *offsetp += 2;
15641 f_y1 = VALUE16(tvb, *offsetp);
15642 proto_tree_add_item(t, hf_x11_struct_DrmClipRect_y1, tvb, *offsetp, 2, byte_order);
15643 *offsetp += 2;
15644 f_x2 = VALUE16(tvb, *offsetp);
15645 proto_tree_add_item(t, hf_x11_struct_DrmClipRect_x2, tvb, *offsetp, 2, byte_order);
15646 *offsetp += 2;
15647 f_x3 = VALUE16(tvb, *offsetp);
15648 proto_tree_add_item(t, hf_x11_struct_DrmClipRect_x3, tvb, *offsetp, 2, byte_order);
15649 *offsetp += 2;
15653 static void xf86driQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
15656 static void xf86driQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15658 int f_length, length, sequence_number;
15659 int f_dri_major_version;
15660 int f_dri_minor_version;
15661 int f_dri_minor_patch;
15663 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
15665 REPLY(reply);
15666 UNUSED(1);
15667 sequence_number = VALUE16(tvb, *offsetp);
15668 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15669 "sequencenumber: %d (xf86dri-QueryVersion)", sequence_number);
15670 *offsetp += 2;
15671 f_length = VALUE32(tvb, *offsetp);
15672 length = f_length * 4 + 32;
15673 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15674 *offsetp += 4;
15675 f_dri_major_version = VALUE16(tvb, *offsetp);
15676 proto_tree_add_item(t, hf_x11_xf86dri_QueryVersion_reply_dri_major_version, tvb, *offsetp, 2, byte_order);
15677 *offsetp += 2;
15678 f_dri_minor_version = VALUE16(tvb, *offsetp);
15679 proto_tree_add_item(t, hf_x11_xf86dri_QueryVersion_reply_dri_minor_version, tvb, *offsetp, 2, byte_order);
15680 *offsetp += 2;
15681 f_dri_minor_patch = VALUE32(tvb, *offsetp);
15682 proto_tree_add_item(t, hf_x11_xf86dri_QueryVersion_reply_dri_minor_patch, tvb, *offsetp, 4, byte_order);
15683 *offsetp += 4;
15686 static void xf86driQueryDirectRenderingCapable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15688 int f_screen;
15689 f_screen = VALUE32(tvb, *offsetp);
15690 proto_tree_add_item(t, hf_x11_xf86dri_QueryDirectRenderingCapable_screen, tvb, *offsetp, 4, byte_order);
15691 *offsetp += 4;
15693 static void xf86driQueryDirectRenderingCapable_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15695 int f_length, length, sequence_number;
15696 int f_is_capable;
15698 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryDirectRenderingCapable");
15700 REPLY(reply);
15701 UNUSED(1);
15702 sequence_number = VALUE16(tvb, *offsetp);
15703 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15704 "sequencenumber: %d (xf86dri-QueryDirectRenderingCapable)", sequence_number);
15705 *offsetp += 2;
15706 f_length = VALUE32(tvb, *offsetp);
15707 length = f_length * 4 + 32;
15708 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15709 *offsetp += 4;
15710 f_is_capable = VALUE8(tvb, *offsetp);
15711 proto_tree_add_item(t, hf_x11_xf86dri_QueryDirectRenderingCapable_reply_is_capable, tvb, *offsetp, 1, byte_order);
15712 *offsetp += 1;
15715 static void xf86driOpenConnection(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15717 int f_screen;
15718 f_screen = VALUE32(tvb, *offsetp);
15719 proto_tree_add_item(t, hf_x11_xf86dri_OpenConnection_screen, tvb, *offsetp, 4, byte_order);
15720 *offsetp += 4;
15722 static void xf86driOpenConnection_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15724 int f_length, length, sequence_number;
15725 int f_sarea_handle_low;
15726 int f_sarea_handle_high;
15727 int f_bus_id_len;
15729 col_append_fstr(pinfo->cinfo, COL_INFO, "-OpenConnection");
15731 REPLY(reply);
15732 UNUSED(1);
15733 sequence_number = VALUE16(tvb, *offsetp);
15734 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15735 "sequencenumber: %d (xf86dri-OpenConnection)", sequence_number);
15736 *offsetp += 2;
15737 f_length = VALUE32(tvb, *offsetp);
15738 length = f_length * 4 + 32;
15739 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15740 *offsetp += 4;
15741 f_sarea_handle_low = VALUE32(tvb, *offsetp);
15742 proto_tree_add_item(t, hf_x11_xf86dri_OpenConnection_reply_sarea_handle_low, tvb, *offsetp, 4, byte_order);
15743 *offsetp += 4;
15744 f_sarea_handle_high = VALUE32(tvb, *offsetp);
15745 proto_tree_add_item(t, hf_x11_xf86dri_OpenConnection_reply_sarea_handle_high, tvb, *offsetp, 4, byte_order);
15746 *offsetp += 4;
15747 f_bus_id_len = VALUE32(tvb, *offsetp);
15748 proto_tree_add_item(t, hf_x11_xf86dri_OpenConnection_reply_bus_id_len, tvb, *offsetp, 4, byte_order);
15749 *offsetp += 4;
15750 UNUSED(12);
15751 listOfByte(tvb, offsetp, t, hf_x11_xf86dri_OpenConnection_reply_bus_id, f_bus_id_len, byte_order);
15754 static void xf86driCloseConnection(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15756 int f_screen;
15757 f_screen = VALUE32(tvb, *offsetp);
15758 proto_tree_add_item(t, hf_x11_xf86dri_CloseConnection_screen, tvb, *offsetp, 4, byte_order);
15759 *offsetp += 4;
15762 static void xf86driGetClientDriverName(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15764 int f_screen;
15765 f_screen = VALUE32(tvb, *offsetp);
15766 proto_tree_add_item(t, hf_x11_xf86dri_GetClientDriverName_screen, tvb, *offsetp, 4, byte_order);
15767 *offsetp += 4;
15769 static void xf86driGetClientDriverName_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15771 int f_length, length, sequence_number;
15772 int f_client_driver_major_version;
15773 int f_client_driver_minor_version;
15774 int f_client_driver_patch_version;
15775 int f_client_driver_name_len;
15777 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetClientDriverName");
15779 REPLY(reply);
15780 UNUSED(1);
15781 sequence_number = VALUE16(tvb, *offsetp);
15782 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15783 "sequencenumber: %d (xf86dri-GetClientDriverName)", sequence_number);
15784 *offsetp += 2;
15785 f_length = VALUE32(tvb, *offsetp);
15786 length = f_length * 4 + 32;
15787 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15788 *offsetp += 4;
15789 f_client_driver_major_version = VALUE32(tvb, *offsetp);
15790 proto_tree_add_item(t, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_major_version, tvb, *offsetp, 4, byte_order);
15791 *offsetp += 4;
15792 f_client_driver_minor_version = VALUE32(tvb, *offsetp);
15793 proto_tree_add_item(t, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_minor_version, tvb, *offsetp, 4, byte_order);
15794 *offsetp += 4;
15795 f_client_driver_patch_version = VALUE32(tvb, *offsetp);
15796 proto_tree_add_item(t, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_patch_version, tvb, *offsetp, 4, byte_order);
15797 *offsetp += 4;
15798 f_client_driver_name_len = VALUE32(tvb, *offsetp);
15799 proto_tree_add_item(t, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_name_len, tvb, *offsetp, 4, byte_order);
15800 *offsetp += 4;
15801 UNUSED(8);
15802 listOfByte(tvb, offsetp, t, hf_x11_xf86dri_GetClientDriverName_reply_client_driver_name, f_client_driver_name_len, byte_order);
15805 static void xf86driCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15807 int f_screen;
15808 int f_visual;
15809 int f_context;
15810 f_screen = VALUE32(tvb, *offsetp);
15811 proto_tree_add_item(t, hf_x11_xf86dri_CreateContext_screen, tvb, *offsetp, 4, byte_order);
15812 *offsetp += 4;
15813 f_visual = VALUE32(tvb, *offsetp);
15814 proto_tree_add_item(t, hf_x11_xf86dri_CreateContext_visual, tvb, *offsetp, 4, byte_order);
15815 *offsetp += 4;
15816 f_context = VALUE32(tvb, *offsetp);
15817 proto_tree_add_item(t, hf_x11_xf86dri_CreateContext_context, tvb, *offsetp, 4, byte_order);
15818 *offsetp += 4;
15820 static void xf86driCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15822 int f_length, length, sequence_number;
15823 int f_hw_context;
15825 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateContext");
15827 REPLY(reply);
15828 UNUSED(1);
15829 sequence_number = VALUE16(tvb, *offsetp);
15830 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15831 "sequencenumber: %d (xf86dri-CreateContext)", sequence_number);
15832 *offsetp += 2;
15833 f_length = VALUE32(tvb, *offsetp);
15834 length = f_length * 4 + 32;
15835 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15836 *offsetp += 4;
15837 f_hw_context = VALUE32(tvb, *offsetp);
15838 proto_tree_add_item(t, hf_x11_xf86dri_CreateContext_reply_hw_context, tvb, *offsetp, 4, byte_order);
15839 *offsetp += 4;
15842 static void xf86driDestroyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15844 int f_screen;
15845 int f_context;
15846 f_screen = VALUE32(tvb, *offsetp);
15847 proto_tree_add_item(t, hf_x11_xf86dri_DestroyContext_screen, tvb, *offsetp, 4, byte_order);
15848 *offsetp += 4;
15849 f_context = VALUE32(tvb, *offsetp);
15850 proto_tree_add_item(t, hf_x11_xf86dri_DestroyContext_context, tvb, *offsetp, 4, byte_order);
15851 *offsetp += 4;
15854 static void xf86driCreateDrawable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15856 int f_screen;
15857 int f_drawable;
15858 f_screen = VALUE32(tvb, *offsetp);
15859 proto_tree_add_item(t, hf_x11_xf86dri_CreateDrawable_screen, tvb, *offsetp, 4, byte_order);
15860 *offsetp += 4;
15861 f_drawable = VALUE32(tvb, *offsetp);
15862 proto_tree_add_item(t, hf_x11_xf86dri_CreateDrawable_drawable, tvb, *offsetp, 4, byte_order);
15863 *offsetp += 4;
15865 static void xf86driCreateDrawable_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15867 int f_length, length, sequence_number;
15868 int f_hw_drawable_handle;
15870 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateDrawable");
15872 REPLY(reply);
15873 UNUSED(1);
15874 sequence_number = VALUE16(tvb, *offsetp);
15875 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15876 "sequencenumber: %d (xf86dri-CreateDrawable)", sequence_number);
15877 *offsetp += 2;
15878 f_length = VALUE32(tvb, *offsetp);
15879 length = f_length * 4 + 32;
15880 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15881 *offsetp += 4;
15882 f_hw_drawable_handle = VALUE32(tvb, *offsetp);
15883 proto_tree_add_item(t, hf_x11_xf86dri_CreateDrawable_reply_hw_drawable_handle, tvb, *offsetp, 4, byte_order);
15884 *offsetp += 4;
15887 static void xf86driDestroyDrawable(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15889 int f_screen;
15890 int f_drawable;
15891 f_screen = VALUE32(tvb, *offsetp);
15892 proto_tree_add_item(t, hf_x11_xf86dri_DestroyDrawable_screen, tvb, *offsetp, 4, byte_order);
15893 *offsetp += 4;
15894 f_drawable = VALUE32(tvb, *offsetp);
15895 proto_tree_add_item(t, hf_x11_xf86dri_DestroyDrawable_drawable, tvb, *offsetp, 4, byte_order);
15896 *offsetp += 4;
15899 static void xf86driGetDrawableInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15901 int f_screen;
15902 int f_drawable;
15903 f_screen = VALUE32(tvb, *offsetp);
15904 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_screen, tvb, *offsetp, 4, byte_order);
15905 *offsetp += 4;
15906 f_drawable = VALUE32(tvb, *offsetp);
15907 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_drawable, tvb, *offsetp, 4, byte_order);
15908 *offsetp += 4;
15910 static void xf86driGetDrawableInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15912 int f_length, length, sequence_number;
15913 int f_drawable_table_index;
15914 int f_drawable_table_stamp;
15915 int f_drawable_origin_X;
15916 int f_drawable_origin_Y;
15917 int f_drawable_size_W;
15918 int f_drawable_size_H;
15919 int f_num_clip_rects;
15920 int f_back_x;
15921 int f_back_y;
15922 int f_num_back_clip_rects;
15924 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDrawableInfo");
15926 REPLY(reply);
15927 UNUSED(1);
15928 sequence_number = VALUE16(tvb, *offsetp);
15929 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15930 "sequencenumber: %d (xf86dri-GetDrawableInfo)", sequence_number);
15931 *offsetp += 2;
15932 f_length = VALUE32(tvb, *offsetp);
15933 length = f_length * 4 + 32;
15934 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15935 *offsetp += 4;
15936 f_drawable_table_index = VALUE32(tvb, *offsetp);
15937 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_table_index, tvb, *offsetp, 4, byte_order);
15938 *offsetp += 4;
15939 f_drawable_table_stamp = VALUE32(tvb, *offsetp);
15940 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_table_stamp, tvb, *offsetp, 4, byte_order);
15941 *offsetp += 4;
15942 f_drawable_origin_X = VALUE16(tvb, *offsetp);
15943 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_origin_X, tvb, *offsetp, 2, byte_order);
15944 *offsetp += 2;
15945 f_drawable_origin_Y = VALUE16(tvb, *offsetp);
15946 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_origin_Y, tvb, *offsetp, 2, byte_order);
15947 *offsetp += 2;
15948 f_drawable_size_W = VALUE16(tvb, *offsetp);
15949 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_size_W, tvb, *offsetp, 2, byte_order);
15950 *offsetp += 2;
15951 f_drawable_size_H = VALUE16(tvb, *offsetp);
15952 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_drawable_size_H, tvb, *offsetp, 2, byte_order);
15953 *offsetp += 2;
15954 f_num_clip_rects = VALUE32(tvb, *offsetp);
15955 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_num_clip_rects, tvb, *offsetp, 4, byte_order);
15956 *offsetp += 4;
15957 f_back_x = VALUE16(tvb, *offsetp);
15958 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_back_x, tvb, *offsetp, 2, byte_order);
15959 *offsetp += 2;
15960 f_back_y = VALUE16(tvb, *offsetp);
15961 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_back_y, tvb, *offsetp, 2, byte_order);
15962 *offsetp += 2;
15963 f_num_back_clip_rects = VALUE32(tvb, *offsetp);
15964 proto_tree_add_item(t, hf_x11_xf86dri_GetDrawableInfo_reply_num_back_clip_rects, tvb, *offsetp, 4, byte_order);
15965 *offsetp += 4;
15966 struct_DrmClipRect(tvb, offsetp, t, byte_order, f_num_clip_rects);
15967 struct_DrmClipRect(tvb, offsetp, t, byte_order, f_num_back_clip_rects);
15970 static void xf86driGetDeviceInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
15972 int f_screen;
15973 f_screen = VALUE32(tvb, *offsetp);
15974 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_screen, tvb, *offsetp, 4, byte_order);
15975 *offsetp += 4;
15977 static void xf86driGetDeviceInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
15979 int f_length, length, sequence_number;
15980 int f_framebuffer_handle_low;
15981 int f_framebuffer_handle_high;
15982 int f_framebuffer_origin_offset;
15983 int f_framebuffer_size;
15984 int f_framebuffer_stride;
15985 int f_device_private_size;
15987 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceInfo");
15989 REPLY(reply);
15990 UNUSED(1);
15991 sequence_number = VALUE16(tvb, *offsetp);
15992 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
15993 "sequencenumber: %d (xf86dri-GetDeviceInfo)", sequence_number);
15994 *offsetp += 2;
15995 f_length = VALUE32(tvb, *offsetp);
15996 length = f_length * 4 + 32;
15997 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
15998 *offsetp += 4;
15999 f_framebuffer_handle_low = VALUE32(tvb, *offsetp);
16000 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_handle_low, tvb, *offsetp, 4, byte_order);
16001 *offsetp += 4;
16002 f_framebuffer_handle_high = VALUE32(tvb, *offsetp);
16003 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_handle_high, tvb, *offsetp, 4, byte_order);
16004 *offsetp += 4;
16005 f_framebuffer_origin_offset = VALUE32(tvb, *offsetp);
16006 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_origin_offset, tvb, *offsetp, 4, byte_order);
16007 *offsetp += 4;
16008 f_framebuffer_size = VALUE32(tvb, *offsetp);
16009 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_size, tvb, *offsetp, 4, byte_order);
16010 *offsetp += 4;
16011 f_framebuffer_stride = VALUE32(tvb, *offsetp);
16012 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_framebuffer_stride, tvb, *offsetp, 4, byte_order);
16013 *offsetp += 4;
16014 f_device_private_size = VALUE32(tvb, *offsetp);
16015 proto_tree_add_item(t, hf_x11_xf86dri_GetDeviceInfo_reply_device_private_size, tvb, *offsetp, 4, byte_order);
16016 *offsetp += 4;
16017 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);
16020 static void xf86driAuthConnection(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16022 int f_screen;
16023 int f_magic;
16024 f_screen = VALUE32(tvb, *offsetp);
16025 proto_tree_add_item(t, hf_x11_xf86dri_AuthConnection_screen, tvb, *offsetp, 4, byte_order);
16026 *offsetp += 4;
16027 f_magic = VALUE32(tvb, *offsetp);
16028 proto_tree_add_item(t, hf_x11_xf86dri_AuthConnection_magic, tvb, *offsetp, 4, byte_order);
16029 *offsetp += 4;
16031 static void xf86driAuthConnection_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16033 int f_length, length, sequence_number;
16034 int f_authenticated;
16036 col_append_fstr(pinfo->cinfo, COL_INFO, "-AuthConnection");
16038 REPLY(reply);
16039 UNUSED(1);
16040 sequence_number = VALUE16(tvb, *offsetp);
16041 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16042 "sequencenumber: %d (xf86dri-AuthConnection)", sequence_number);
16043 *offsetp += 2;
16044 f_length = VALUE32(tvb, *offsetp);
16045 length = f_length * 4 + 32;
16046 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16047 *offsetp += 4;
16048 f_authenticated = VALUE32(tvb, *offsetp);
16049 proto_tree_add_item(t, hf_x11_xf86dri_AuthConnection_reply_authenticated, tvb, *offsetp, 4, byte_order);
16050 *offsetp += 4;
16052 static const value_string xf86dri_extension_minor[] = {
16053 { 0, "QueryVersion" },
16054 { 1, "QueryDirectRenderingCapable" },
16055 { 2, "OpenConnection" },
16056 { 3, "CloseConnection" },
16057 { 4, "GetClientDriverName" },
16058 { 5, "CreateContext" },
16059 { 6, "DestroyContext" },
16060 { 7, "CreateDrawable" },
16061 { 8, "DestroyDrawable" },
16062 { 9, "GetDrawableInfo" },
16063 { 10, "GetDeviceInfo" },
16064 { 11, "AuthConnection" },
16065 { 0, NULL }
16067 const x11_event_info xf86dri_events[] = {
16068 { NULL, NULL }
16070 static x11_reply_info xf86dri_replies[] = {
16071 { 0, xf86driQueryVersion_Reply },
16072 { 1, xf86driQueryDirectRenderingCapable_Reply },
16073 { 2, xf86driOpenConnection_Reply },
16074 { 4, xf86driGetClientDriverName_Reply },
16075 { 5, xf86driCreateContext_Reply },
16076 { 7, xf86driCreateDrawable_Reply },
16077 { 9, xf86driGetDrawableInfo_Reply },
16078 { 10, xf86driGetDeviceInfo_Reply },
16079 { 11, xf86driAuthConnection_Reply },
16080 { 0, NULL }
16083 static void dispatch_xf86dri(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16085 int minor, length;
16086 minor = CARD8(xf86dri_extension_minor);
16087 length = REQUEST_LENGTH();
16089 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
16090 val_to_str(minor, xf86dri_extension_minor,
16091 "<Unknown opcode %d>"));
16092 switch (minor) {
16093 case 0:
16094 xf86driQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
16095 break;
16096 case 1:
16097 xf86driQueryDirectRenderingCapable(tvb, pinfo, offsetp, t, byte_order, length);
16098 break;
16099 case 2:
16100 xf86driOpenConnection(tvb, pinfo, offsetp, t, byte_order, length);
16101 break;
16102 case 3:
16103 xf86driCloseConnection(tvb, pinfo, offsetp, t, byte_order, length);
16104 break;
16105 case 4:
16106 xf86driGetClientDriverName(tvb, pinfo, offsetp, t, byte_order, length);
16107 break;
16108 case 5:
16109 xf86driCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
16110 break;
16111 case 6:
16112 xf86driDestroyContext(tvb, pinfo, offsetp, t, byte_order, length);
16113 break;
16114 case 7:
16115 xf86driCreateDrawable(tvb, pinfo, offsetp, t, byte_order, length);
16116 break;
16117 case 8:
16118 xf86driDestroyDrawable(tvb, pinfo, offsetp, t, byte_order, length);
16119 break;
16120 case 9:
16121 xf86driGetDrawableInfo(tvb, pinfo, offsetp, t, byte_order, length);
16122 break;
16123 case 10:
16124 xf86driGetDeviceInfo(tvb, pinfo, offsetp, t, byte_order, length);
16125 break;
16126 case 11:
16127 xf86driAuthConnection(tvb, pinfo, offsetp, t, byte_order, length);
16128 break;
16129 /* No need for a default case here, since Unknown is printed above,
16130 and UNDECODED() is taken care of by dissect_x11_request */
16134 static void register_xf86dri(void)
16136 set_handler("XFree86-DRI", dispatch_xf86dri, xf86dri_errors, xf86dri_events, xf86dri_replies);
16139 static void xf86vidmodeQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
16142 static void xf86vidmodeQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16144 int f_length, length, sequence_number;
16145 int f_major_version;
16146 int f_minor_version;
16148 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
16150 REPLY(reply);
16151 UNUSED(1);
16152 sequence_number = VALUE16(tvb, *offsetp);
16153 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16154 "sequencenumber: %d (xf86vidmode-QueryVersion)", sequence_number);
16155 *offsetp += 2;
16156 f_length = VALUE32(tvb, *offsetp);
16157 length = f_length * 4 + 32;
16158 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16159 *offsetp += 4;
16160 f_major_version = VALUE16(tvb, *offsetp);
16161 proto_tree_add_item(t, hf_x11_xf86vidmode_QueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
16162 *offsetp += 2;
16163 f_minor_version = VALUE16(tvb, *offsetp);
16164 proto_tree_add_item(t, hf_x11_xf86vidmode_QueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
16165 *offsetp += 2;
16168 static void xf86vidmodeGetModeLine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16170 int f_screen;
16171 f_screen = VALUE16(tvb, *offsetp);
16172 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_screen, tvb, *offsetp, 2, byte_order);
16173 *offsetp += 2;
16174 UNUSED(2);
16176 static void xf86vidmodeGetModeLine_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16178 int f_length, length, sequence_number;
16179 int f_dotclock;
16180 int f_hdisplay;
16181 int f_hsyncstart;
16182 int f_hsyncend;
16183 int f_htotal;
16184 int f_hskew;
16185 int f_vdisplay;
16186 int f_vsyncstart;
16187 int f_vsyncend;
16188 int f_vtotal;
16189 int f_flags;
16190 int f_privsize;
16192 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetModeLine");
16194 REPLY(reply);
16195 UNUSED(1);
16196 sequence_number = VALUE16(tvb, *offsetp);
16197 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16198 "sequencenumber: %d (xf86vidmode-GetModeLine)", sequence_number);
16199 *offsetp += 2;
16200 f_length = VALUE32(tvb, *offsetp);
16201 length = f_length * 4 + 32;
16202 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16203 *offsetp += 4;
16204 f_dotclock = VALUE32(tvb, *offsetp);
16205 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_dotclock, tvb, *offsetp, 4, byte_order);
16206 *offsetp += 4;
16207 f_hdisplay = VALUE16(tvb, *offsetp);
16208 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_hdisplay, tvb, *offsetp, 2, byte_order);
16209 *offsetp += 2;
16210 f_hsyncstart = VALUE16(tvb, *offsetp);
16211 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_hsyncstart, tvb, *offsetp, 2, byte_order);
16212 *offsetp += 2;
16213 f_hsyncend = VALUE16(tvb, *offsetp);
16214 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_hsyncend, tvb, *offsetp, 2, byte_order);
16215 *offsetp += 2;
16216 f_htotal = VALUE16(tvb, *offsetp);
16217 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_htotal, tvb, *offsetp, 2, byte_order);
16218 *offsetp += 2;
16219 f_hskew = VALUE16(tvb, *offsetp);
16220 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_hskew, tvb, *offsetp, 2, byte_order);
16221 *offsetp += 2;
16222 f_vdisplay = VALUE16(tvb, *offsetp);
16223 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_vdisplay, tvb, *offsetp, 2, byte_order);
16224 *offsetp += 2;
16225 f_vsyncstart = VALUE16(tvb, *offsetp);
16226 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_vsyncstart, tvb, *offsetp, 2, byte_order);
16227 *offsetp += 2;
16228 f_vsyncend = VALUE16(tvb, *offsetp);
16229 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_vsyncend, tvb, *offsetp, 2, byte_order);
16230 *offsetp += 2;
16231 f_vtotal = VALUE16(tvb, *offsetp);
16232 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_vtotal, tvb, *offsetp, 2, byte_order);
16233 *offsetp += 2;
16234 UNUSED(2);
16235 f_flags = VALUE32(tvb, *offsetp);
16237 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_flags, tvb, *offsetp, 4, byte_order);
16238 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16239 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16240 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16241 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16242 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16243 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16244 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16245 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16246 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16247 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16248 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16249 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16250 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16251 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetModeLine_reply_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16253 *offsetp += 4;
16254 UNUSED(12);
16255 f_privsize = VALUE32(tvb, *offsetp);
16256 proto_tree_add_item(t, hf_x11_xf86vidmode_GetModeLine_reply_privsize, tvb, *offsetp, 4, byte_order);
16257 *offsetp += 4;
16258 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_GetModeLine_reply_private, f_privsize, byte_order);
16261 static void xf86vidmodeModModeLine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16263 int f_screen;
16264 int f_hdisplay;
16265 int f_hsyncstart;
16266 int f_hsyncend;
16267 int f_htotal;
16268 int f_hskew;
16269 int f_vdisplay;
16270 int f_vsyncstart;
16271 int f_vsyncend;
16272 int f_vtotal;
16273 int f_flags;
16274 int f_privsize;
16275 f_screen = VALUE32(tvb, *offsetp);
16276 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_screen, tvb, *offsetp, 4, byte_order);
16277 *offsetp += 4;
16278 f_hdisplay = VALUE16(tvb, *offsetp);
16279 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_hdisplay, tvb, *offsetp, 2, byte_order);
16280 *offsetp += 2;
16281 f_hsyncstart = VALUE16(tvb, *offsetp);
16282 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_hsyncstart, tvb, *offsetp, 2, byte_order);
16283 *offsetp += 2;
16284 f_hsyncend = VALUE16(tvb, *offsetp);
16285 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_hsyncend, tvb, *offsetp, 2, byte_order);
16286 *offsetp += 2;
16287 f_htotal = VALUE16(tvb, *offsetp);
16288 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_htotal, tvb, *offsetp, 2, byte_order);
16289 *offsetp += 2;
16290 f_hskew = VALUE16(tvb, *offsetp);
16291 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_hskew, tvb, *offsetp, 2, byte_order);
16292 *offsetp += 2;
16293 f_vdisplay = VALUE16(tvb, *offsetp);
16294 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_vdisplay, tvb, *offsetp, 2, byte_order);
16295 *offsetp += 2;
16296 f_vsyncstart = VALUE16(tvb, *offsetp);
16297 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_vsyncstart, tvb, *offsetp, 2, byte_order);
16298 *offsetp += 2;
16299 f_vsyncend = VALUE16(tvb, *offsetp);
16300 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_vsyncend, tvb, *offsetp, 2, byte_order);
16301 *offsetp += 2;
16302 f_vtotal = VALUE16(tvb, *offsetp);
16303 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_vtotal, tvb, *offsetp, 2, byte_order);
16304 *offsetp += 2;
16305 UNUSED(2);
16306 f_flags = VALUE32(tvb, *offsetp);
16308 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_flags, tvb, *offsetp, 4, byte_order);
16309 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16310 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16311 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16312 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16313 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16314 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16315 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16316 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16317 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16318 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16319 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16320 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16321 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16322 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ModModeLine_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16324 *offsetp += 4;
16325 UNUSED(12);
16326 f_privsize = VALUE32(tvb, *offsetp);
16327 proto_tree_add_item(t, hf_x11_xf86vidmode_ModModeLine_privsize, tvb, *offsetp, 4, byte_order);
16328 *offsetp += 4;
16329 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_ModModeLine_private, f_privsize, byte_order);
16330 length -= f_privsize * 1;
16333 static void xf86vidmodeSwitchMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16335 int f_screen;
16336 int f_zoom;
16337 f_screen = VALUE16(tvb, *offsetp);
16338 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchMode_screen, tvb, *offsetp, 2, byte_order);
16339 *offsetp += 2;
16340 f_zoom = VALUE16(tvb, *offsetp);
16341 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchMode_zoom, tvb, *offsetp, 2, byte_order);
16342 *offsetp += 2;
16345 static void xf86vidmodeGetMonitor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16347 int f_screen;
16348 f_screen = VALUE16(tvb, *offsetp);
16349 proto_tree_add_item(t, hf_x11_xf86vidmode_GetMonitor_screen, tvb, *offsetp, 2, byte_order);
16350 *offsetp += 2;
16351 UNUSED(2);
16353 static void xf86vidmodeGetMonitor_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16355 int f_length, length, sequence_number;
16356 int f_vendor_length;
16357 int f_model_length;
16358 int f_num_hsync;
16359 int f_num_vsync;
16361 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMonitor");
16363 REPLY(reply);
16364 UNUSED(1);
16365 sequence_number = VALUE16(tvb, *offsetp);
16366 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16367 "sequencenumber: %d (xf86vidmode-GetMonitor)", sequence_number);
16368 *offsetp += 2;
16369 f_length = VALUE32(tvb, *offsetp);
16370 length = f_length * 4 + 32;
16371 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16372 *offsetp += 4;
16373 f_vendor_length = VALUE8(tvb, *offsetp);
16374 proto_tree_add_item(t, hf_x11_xf86vidmode_GetMonitor_reply_vendor_length, tvb, *offsetp, 1, byte_order);
16375 *offsetp += 1;
16376 f_model_length = VALUE8(tvb, *offsetp);
16377 proto_tree_add_item(t, hf_x11_xf86vidmode_GetMonitor_reply_model_length, tvb, *offsetp, 1, byte_order);
16378 *offsetp += 1;
16379 f_num_hsync = VALUE8(tvb, *offsetp);
16380 proto_tree_add_item(t, hf_x11_xf86vidmode_GetMonitor_reply_num_hsync, tvb, *offsetp, 1, byte_order);
16381 *offsetp += 1;
16382 f_num_vsync = VALUE8(tvb, *offsetp);
16383 proto_tree_add_item(t, hf_x11_xf86vidmode_GetMonitor_reply_num_vsync, tvb, *offsetp, 1, byte_order);
16384 *offsetp += 1;
16385 UNUSED(20);
16386 listOfCard32(tvb, offsetp, t, hf_x11_xf86vidmode_GetMonitor_reply_hsync, hf_x11_xf86vidmode_GetMonitor_reply_hsync_item, f_num_hsync, byte_order);
16387 listOfCard32(tvb, offsetp, t, hf_x11_xf86vidmode_GetMonitor_reply_vsync, hf_x11_xf86vidmode_GetMonitor_reply_vsync_item, f_num_vsync, byte_order);
16388 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_GetMonitor_reply_vendor, f_vendor_length, byte_order);
16389 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_GetMonitor_reply_alignment_pad, (((f_vendor_length + 3 ) & (~3)) - f_vendor_length), byte_order);
16390 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_GetMonitor_reply_model, f_model_length, byte_order);
16393 static void xf86vidmodeLockModeSwitch(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16395 int f_screen;
16396 int f_lock;
16397 f_screen = VALUE16(tvb, *offsetp);
16398 proto_tree_add_item(t, hf_x11_xf86vidmode_LockModeSwitch_screen, tvb, *offsetp, 2, byte_order);
16399 *offsetp += 2;
16400 f_lock = VALUE16(tvb, *offsetp);
16401 proto_tree_add_item(t, hf_x11_xf86vidmode_LockModeSwitch_lock, tvb, *offsetp, 2, byte_order);
16402 *offsetp += 2;
16405 static void xf86vidmodeGetAllModeLines(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16407 int f_screen;
16408 f_screen = VALUE16(tvb, *offsetp);
16409 proto_tree_add_item(t, hf_x11_xf86vidmode_GetAllModeLines_screen, tvb, *offsetp, 2, byte_order);
16410 *offsetp += 2;
16411 UNUSED(2);
16413 static void xf86vidmodeGetAllModeLines_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16415 int f_length, length, sequence_number;
16416 int f_modecount;
16418 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetAllModeLines");
16420 REPLY(reply);
16421 UNUSED(1);
16422 sequence_number = VALUE16(tvb, *offsetp);
16423 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16424 "sequencenumber: %d (xf86vidmode-GetAllModeLines)", sequence_number);
16425 *offsetp += 2;
16426 f_length = VALUE32(tvb, *offsetp);
16427 length = f_length * 4 + 32;
16428 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16429 *offsetp += 4;
16430 f_modecount = VALUE32(tvb, *offsetp);
16431 proto_tree_add_item(t, hf_x11_xf86vidmode_GetAllModeLines_reply_modecount, tvb, *offsetp, 4, byte_order);
16432 *offsetp += 4;
16433 UNUSED(20);
16434 struct_ModeInfo(tvb, offsetp, t, byte_order, f_modecount);
16437 static void xf86vidmodeAddModeLine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16439 int f_screen;
16440 int f_dotclock;
16441 int f_hdisplay;
16442 int f_hsyncstart;
16443 int f_hsyncend;
16444 int f_htotal;
16445 int f_hskew;
16446 int f_vdisplay;
16447 int f_vsyncstart;
16448 int f_vsyncend;
16449 int f_vtotal;
16450 int f_flags;
16451 int f_privsize;
16452 int f_after_dotclock;
16453 int f_after_hdisplay;
16454 int f_after_hsyncstart;
16455 int f_after_hsyncend;
16456 int f_after_htotal;
16457 int f_after_hskew;
16458 int f_after_vdisplay;
16459 int f_after_vsyncstart;
16460 int f_after_vsyncend;
16461 int f_after_vtotal;
16462 int f_after_flags;
16463 f_screen = VALUE32(tvb, *offsetp);
16464 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_screen, tvb, *offsetp, 4, byte_order);
16465 *offsetp += 4;
16466 f_dotclock = VALUE32(tvb, *offsetp);
16467 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_dotclock, tvb, *offsetp, 4, byte_order);
16468 *offsetp += 4;
16469 f_hdisplay = VALUE16(tvb, *offsetp);
16470 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_hdisplay, tvb, *offsetp, 2, byte_order);
16471 *offsetp += 2;
16472 f_hsyncstart = VALUE16(tvb, *offsetp);
16473 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_hsyncstart, tvb, *offsetp, 2, byte_order);
16474 *offsetp += 2;
16475 f_hsyncend = VALUE16(tvb, *offsetp);
16476 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_hsyncend, tvb, *offsetp, 2, byte_order);
16477 *offsetp += 2;
16478 f_htotal = VALUE16(tvb, *offsetp);
16479 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_htotal, tvb, *offsetp, 2, byte_order);
16480 *offsetp += 2;
16481 f_hskew = VALUE16(tvb, *offsetp);
16482 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_hskew, tvb, *offsetp, 2, byte_order);
16483 *offsetp += 2;
16484 f_vdisplay = VALUE16(tvb, *offsetp);
16485 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_vdisplay, tvb, *offsetp, 2, byte_order);
16486 *offsetp += 2;
16487 f_vsyncstart = VALUE16(tvb, *offsetp);
16488 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_vsyncstart, tvb, *offsetp, 2, byte_order);
16489 *offsetp += 2;
16490 f_vsyncend = VALUE16(tvb, *offsetp);
16491 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_vsyncend, tvb, *offsetp, 2, byte_order);
16492 *offsetp += 2;
16493 f_vtotal = VALUE16(tvb, *offsetp);
16494 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_vtotal, tvb, *offsetp, 2, byte_order);
16495 *offsetp += 2;
16496 UNUSED(2);
16497 f_flags = VALUE32(tvb, *offsetp);
16499 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_flags, tvb, *offsetp, 4, byte_order);
16500 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16501 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16502 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16503 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16504 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16505 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16506 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16507 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16508 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16509 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16510 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16511 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16512 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16513 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16515 *offsetp += 4;
16516 UNUSED(12);
16517 f_privsize = VALUE32(tvb, *offsetp);
16518 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_privsize, tvb, *offsetp, 4, byte_order);
16519 *offsetp += 4;
16520 f_after_dotclock = VALUE32(tvb, *offsetp);
16521 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_dotclock, tvb, *offsetp, 4, byte_order);
16522 *offsetp += 4;
16523 f_after_hdisplay = VALUE16(tvb, *offsetp);
16524 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_hdisplay, tvb, *offsetp, 2, byte_order);
16525 *offsetp += 2;
16526 f_after_hsyncstart = VALUE16(tvb, *offsetp);
16527 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_hsyncstart, tvb, *offsetp, 2, byte_order);
16528 *offsetp += 2;
16529 f_after_hsyncend = VALUE16(tvb, *offsetp);
16530 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_hsyncend, tvb, *offsetp, 2, byte_order);
16531 *offsetp += 2;
16532 f_after_htotal = VALUE16(tvb, *offsetp);
16533 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_htotal, tvb, *offsetp, 2, byte_order);
16534 *offsetp += 2;
16535 f_after_hskew = VALUE16(tvb, *offsetp);
16536 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_hskew, tvb, *offsetp, 2, byte_order);
16537 *offsetp += 2;
16538 f_after_vdisplay = VALUE16(tvb, *offsetp);
16539 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_vdisplay, tvb, *offsetp, 2, byte_order);
16540 *offsetp += 2;
16541 f_after_vsyncstart = VALUE16(tvb, *offsetp);
16542 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_vsyncstart, tvb, *offsetp, 2, byte_order);
16543 *offsetp += 2;
16544 f_after_vsyncend = VALUE16(tvb, *offsetp);
16545 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_vsyncend, tvb, *offsetp, 2, byte_order);
16546 *offsetp += 2;
16547 f_after_vtotal = VALUE16(tvb, *offsetp);
16548 proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_vtotal, tvb, *offsetp, 2, byte_order);
16549 *offsetp += 2;
16550 UNUSED(2);
16551 f_after_flags = VALUE32(tvb, *offsetp);
16553 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_AddModeLine_after_flags, tvb, *offsetp, 4, byte_order);
16554 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16555 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16556 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16557 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16558 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16559 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16560 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16561 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16562 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16563 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16564 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16565 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16566 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16567 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_AddModeLine_after_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16569 *offsetp += 4;
16570 UNUSED(12);
16571 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_AddModeLine_private, f_privsize, byte_order);
16572 length -= f_privsize * 1;
16575 static void xf86vidmodeDeleteModeLine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16577 int f_screen;
16578 int f_dotclock;
16579 int f_hdisplay;
16580 int f_hsyncstart;
16581 int f_hsyncend;
16582 int f_htotal;
16583 int f_hskew;
16584 int f_vdisplay;
16585 int f_vsyncstart;
16586 int f_vsyncend;
16587 int f_vtotal;
16588 int f_flags;
16589 int f_privsize;
16590 f_screen = VALUE32(tvb, *offsetp);
16591 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_screen, tvb, *offsetp, 4, byte_order);
16592 *offsetp += 4;
16593 f_dotclock = VALUE32(tvb, *offsetp);
16594 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_dotclock, tvb, *offsetp, 4, byte_order);
16595 *offsetp += 4;
16596 f_hdisplay = VALUE16(tvb, *offsetp);
16597 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_hdisplay, tvb, *offsetp, 2, byte_order);
16598 *offsetp += 2;
16599 f_hsyncstart = VALUE16(tvb, *offsetp);
16600 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_hsyncstart, tvb, *offsetp, 2, byte_order);
16601 *offsetp += 2;
16602 f_hsyncend = VALUE16(tvb, *offsetp);
16603 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_hsyncend, tvb, *offsetp, 2, byte_order);
16604 *offsetp += 2;
16605 f_htotal = VALUE16(tvb, *offsetp);
16606 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_htotal, tvb, *offsetp, 2, byte_order);
16607 *offsetp += 2;
16608 f_hskew = VALUE16(tvb, *offsetp);
16609 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_hskew, tvb, *offsetp, 2, byte_order);
16610 *offsetp += 2;
16611 f_vdisplay = VALUE16(tvb, *offsetp);
16612 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_vdisplay, tvb, *offsetp, 2, byte_order);
16613 *offsetp += 2;
16614 f_vsyncstart = VALUE16(tvb, *offsetp);
16615 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_vsyncstart, tvb, *offsetp, 2, byte_order);
16616 *offsetp += 2;
16617 f_vsyncend = VALUE16(tvb, *offsetp);
16618 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_vsyncend, tvb, *offsetp, 2, byte_order);
16619 *offsetp += 2;
16620 f_vtotal = VALUE16(tvb, *offsetp);
16621 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_vtotal, tvb, *offsetp, 2, byte_order);
16622 *offsetp += 2;
16623 UNUSED(2);
16624 f_flags = VALUE32(tvb, *offsetp);
16626 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_flags, tvb, *offsetp, 4, byte_order);
16627 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16628 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16629 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16630 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16631 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16632 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16633 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16634 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16635 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16636 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16637 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16638 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16639 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16640 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_DeleteModeLine_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16642 *offsetp += 4;
16643 UNUSED(12);
16644 f_privsize = VALUE32(tvb, *offsetp);
16645 proto_tree_add_item(t, hf_x11_xf86vidmode_DeleteModeLine_privsize, tvb, *offsetp, 4, byte_order);
16646 *offsetp += 4;
16647 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_DeleteModeLine_private, f_privsize, byte_order);
16648 length -= f_privsize * 1;
16651 static void xf86vidmodeValidateModeLine(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16653 int f_screen;
16654 int f_dotclock;
16655 int f_hdisplay;
16656 int f_hsyncstart;
16657 int f_hsyncend;
16658 int f_htotal;
16659 int f_hskew;
16660 int f_vdisplay;
16661 int f_vsyncstart;
16662 int f_vsyncend;
16663 int f_vtotal;
16664 int f_flags;
16665 int f_privsize;
16666 f_screen = VALUE32(tvb, *offsetp);
16667 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_screen, tvb, *offsetp, 4, byte_order);
16668 *offsetp += 4;
16669 f_dotclock = VALUE32(tvb, *offsetp);
16670 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_dotclock, tvb, *offsetp, 4, byte_order);
16671 *offsetp += 4;
16672 f_hdisplay = VALUE16(tvb, *offsetp);
16673 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_hdisplay, tvb, *offsetp, 2, byte_order);
16674 *offsetp += 2;
16675 f_hsyncstart = VALUE16(tvb, *offsetp);
16676 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_hsyncstart, tvb, *offsetp, 2, byte_order);
16677 *offsetp += 2;
16678 f_hsyncend = VALUE16(tvb, *offsetp);
16679 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_hsyncend, tvb, *offsetp, 2, byte_order);
16680 *offsetp += 2;
16681 f_htotal = VALUE16(tvb, *offsetp);
16682 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_htotal, tvb, *offsetp, 2, byte_order);
16683 *offsetp += 2;
16684 f_hskew = VALUE16(tvb, *offsetp);
16685 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_hskew, tvb, *offsetp, 2, byte_order);
16686 *offsetp += 2;
16687 f_vdisplay = VALUE16(tvb, *offsetp);
16688 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_vdisplay, tvb, *offsetp, 2, byte_order);
16689 *offsetp += 2;
16690 f_vsyncstart = VALUE16(tvb, *offsetp);
16691 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_vsyncstart, tvb, *offsetp, 2, byte_order);
16692 *offsetp += 2;
16693 f_vsyncend = VALUE16(tvb, *offsetp);
16694 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_vsyncend, tvb, *offsetp, 2, byte_order);
16695 *offsetp += 2;
16696 f_vtotal = VALUE16(tvb, *offsetp);
16697 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_vtotal, tvb, *offsetp, 2, byte_order);
16698 *offsetp += 2;
16699 UNUSED(2);
16700 f_flags = VALUE32(tvb, *offsetp);
16702 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_flags, tvb, *offsetp, 4, byte_order);
16703 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16704 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16705 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16706 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16707 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16708 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16709 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16710 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16711 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16712 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16713 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16714 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16715 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16716 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_ValidateModeLine_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16718 *offsetp += 4;
16719 UNUSED(12);
16720 f_privsize = VALUE32(tvb, *offsetp);
16721 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_privsize, tvb, *offsetp, 4, byte_order);
16722 *offsetp += 4;
16723 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_ValidateModeLine_private, f_privsize, byte_order);
16724 length -= f_privsize * 1;
16726 static void xf86vidmodeValidateModeLine_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16728 int f_length, length, sequence_number;
16729 int f_status;
16731 col_append_fstr(pinfo->cinfo, COL_INFO, "-ValidateModeLine");
16733 REPLY(reply);
16734 UNUSED(1);
16735 sequence_number = VALUE16(tvb, *offsetp);
16736 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16737 "sequencenumber: %d (xf86vidmode-ValidateModeLine)", sequence_number);
16738 *offsetp += 2;
16739 f_length = VALUE32(tvb, *offsetp);
16740 length = f_length * 4 + 32;
16741 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16742 *offsetp += 4;
16743 f_status = VALUE32(tvb, *offsetp);
16744 proto_tree_add_item(t, hf_x11_xf86vidmode_ValidateModeLine_reply_status, tvb, *offsetp, 4, byte_order);
16745 *offsetp += 4;
16746 UNUSED(20);
16749 static void xf86vidmodeSwitchToMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16751 int f_screen;
16752 int f_dotclock;
16753 int f_hdisplay;
16754 int f_hsyncstart;
16755 int f_hsyncend;
16756 int f_htotal;
16757 int f_hskew;
16758 int f_vdisplay;
16759 int f_vsyncstart;
16760 int f_vsyncend;
16761 int f_vtotal;
16762 int f_flags;
16763 int f_privsize;
16764 f_screen = VALUE32(tvb, *offsetp);
16765 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_screen, tvb, *offsetp, 4, byte_order);
16766 *offsetp += 4;
16767 f_dotclock = VALUE32(tvb, *offsetp);
16768 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_dotclock, tvb, *offsetp, 4, byte_order);
16769 *offsetp += 4;
16770 f_hdisplay = VALUE16(tvb, *offsetp);
16771 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_hdisplay, tvb, *offsetp, 2, byte_order);
16772 *offsetp += 2;
16773 f_hsyncstart = VALUE16(tvb, *offsetp);
16774 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_hsyncstart, tvb, *offsetp, 2, byte_order);
16775 *offsetp += 2;
16776 f_hsyncend = VALUE16(tvb, *offsetp);
16777 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_hsyncend, tvb, *offsetp, 2, byte_order);
16778 *offsetp += 2;
16779 f_htotal = VALUE16(tvb, *offsetp);
16780 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_htotal, tvb, *offsetp, 2, byte_order);
16781 *offsetp += 2;
16782 f_hskew = VALUE16(tvb, *offsetp);
16783 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_hskew, tvb, *offsetp, 2, byte_order);
16784 *offsetp += 2;
16785 f_vdisplay = VALUE16(tvb, *offsetp);
16786 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_vdisplay, tvb, *offsetp, 2, byte_order);
16787 *offsetp += 2;
16788 f_vsyncstart = VALUE16(tvb, *offsetp);
16789 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_vsyncstart, tvb, *offsetp, 2, byte_order);
16790 *offsetp += 2;
16791 f_vsyncend = VALUE16(tvb, *offsetp);
16792 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_vsyncend, tvb, *offsetp, 2, byte_order);
16793 *offsetp += 2;
16794 f_vtotal = VALUE16(tvb, *offsetp);
16795 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_vtotal, tvb, *offsetp, 2, byte_order);
16796 *offsetp += 2;
16797 UNUSED(2);
16798 f_flags = VALUE32(tvb, *offsetp);
16800 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_flags, tvb, *offsetp, 4, byte_order);
16801 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16802 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_HSync, tvb, *offsetp, 4, byte_order);
16803 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_HSync, tvb, *offsetp, 4, byte_order);
16804 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_VSync, tvb, *offsetp, 4, byte_order);
16805 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_VSync, tvb, *offsetp, 4, byte_order);
16806 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Interlace, tvb, *offsetp, 4, byte_order);
16807 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Composite_Sync, tvb, *offsetp, 4, byte_order);
16808 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Positive_CSync, tvb, *offsetp, 4, byte_order);
16809 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Negative_CSync, tvb, *offsetp, 4, byte_order);
16810 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_HSkew, tvb, *offsetp, 4, byte_order);
16811 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Broadcast, tvb, *offsetp, 4, byte_order);
16812 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Pixmux, tvb, *offsetp, 4, byte_order);
16813 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Double_Clock, tvb, *offsetp, 4, byte_order);
16814 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_SwitchToMode_flags_mask_Half_Clock, tvb, *offsetp, 4, byte_order);
16816 *offsetp += 4;
16817 UNUSED(12);
16818 f_privsize = VALUE32(tvb, *offsetp);
16819 proto_tree_add_item(t, hf_x11_xf86vidmode_SwitchToMode_privsize, tvb, *offsetp, 4, byte_order);
16820 *offsetp += 4;
16821 listOfByte(tvb, offsetp, t, hf_x11_xf86vidmode_SwitchToMode_private, f_privsize, byte_order);
16822 length -= f_privsize * 1;
16825 static void xf86vidmodeGetViewPort(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16827 int f_screen;
16828 f_screen = VALUE16(tvb, *offsetp);
16829 proto_tree_add_item(t, hf_x11_xf86vidmode_GetViewPort_screen, tvb, *offsetp, 2, byte_order);
16830 *offsetp += 2;
16831 UNUSED(2);
16833 static void xf86vidmodeGetViewPort_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16835 int f_length, length, sequence_number;
16836 int f_x;
16837 int f_y;
16839 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetViewPort");
16841 REPLY(reply);
16842 UNUSED(1);
16843 sequence_number = VALUE16(tvb, *offsetp);
16844 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16845 "sequencenumber: %d (xf86vidmode-GetViewPort)", sequence_number);
16846 *offsetp += 2;
16847 f_length = VALUE32(tvb, *offsetp);
16848 length = f_length * 4 + 32;
16849 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16850 *offsetp += 4;
16851 f_x = VALUE32(tvb, *offsetp);
16852 proto_tree_add_item(t, hf_x11_xf86vidmode_GetViewPort_reply_x, tvb, *offsetp, 4, byte_order);
16853 *offsetp += 4;
16854 f_y = VALUE32(tvb, *offsetp);
16855 proto_tree_add_item(t, hf_x11_xf86vidmode_GetViewPort_reply_y, tvb, *offsetp, 4, byte_order);
16856 *offsetp += 4;
16857 UNUSED(16);
16860 static void xf86vidmodeSetViewPort(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16862 int f_screen;
16863 int f_x;
16864 int f_y;
16865 f_screen = VALUE16(tvb, *offsetp);
16866 proto_tree_add_item(t, hf_x11_xf86vidmode_SetViewPort_screen, tvb, *offsetp, 2, byte_order);
16867 *offsetp += 2;
16868 UNUSED(2);
16869 f_x = VALUE32(tvb, *offsetp);
16870 proto_tree_add_item(t, hf_x11_xf86vidmode_SetViewPort_x, tvb, *offsetp, 4, byte_order);
16871 *offsetp += 4;
16872 f_y = VALUE32(tvb, *offsetp);
16873 proto_tree_add_item(t, hf_x11_xf86vidmode_SetViewPort_y, tvb, *offsetp, 4, byte_order);
16874 *offsetp += 4;
16877 static void xf86vidmodeGetDotClocks(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16879 int f_screen;
16880 f_screen = VALUE16(tvb, *offsetp);
16881 proto_tree_add_item(t, hf_x11_xf86vidmode_GetDotClocks_screen, tvb, *offsetp, 2, byte_order);
16882 *offsetp += 2;
16883 UNUSED(2);
16885 static void xf86vidmodeGetDotClocks_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16887 int f_length, length, sequence_number;
16888 int f_flags;
16889 int f_clocks;
16890 int f_maxclocks;
16892 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDotClocks");
16894 REPLY(reply);
16895 UNUSED(1);
16896 sequence_number = VALUE16(tvb, *offsetp);
16897 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16898 "sequencenumber: %d (xf86vidmode-GetDotClocks)", sequence_number);
16899 *offsetp += 2;
16900 f_length = VALUE32(tvb, *offsetp);
16901 length = f_length * 4 + 32;
16902 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16903 *offsetp += 4;
16904 f_flags = VALUE32(tvb, *offsetp);
16906 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_GetDotClocks_reply_flags, tvb, *offsetp, 4, byte_order);
16907 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
16908 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetDotClocks_reply_flags_mask_Programable, tvb, *offsetp, 4, byte_order);
16910 *offsetp += 4;
16911 f_clocks = VALUE32(tvb, *offsetp);
16912 proto_tree_add_item(t, hf_x11_xf86vidmode_GetDotClocks_reply_clocks, tvb, *offsetp, 4, byte_order);
16913 *offsetp += 4;
16914 f_maxclocks = VALUE32(tvb, *offsetp);
16915 proto_tree_add_item(t, hf_x11_xf86vidmode_GetDotClocks_reply_maxclocks, tvb, *offsetp, 4, byte_order);
16916 *offsetp += 4;
16917 UNUSED(12);
16918 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);
16921 static void xf86vidmodeSetClientVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16923 int f_major;
16924 int f_minor;
16925 f_major = VALUE16(tvb, *offsetp);
16926 proto_tree_add_item(t, hf_x11_xf86vidmode_SetClientVersion_major, tvb, *offsetp, 2, byte_order);
16927 *offsetp += 2;
16928 f_minor = VALUE16(tvb, *offsetp);
16929 proto_tree_add_item(t, hf_x11_xf86vidmode_SetClientVersion_minor, tvb, *offsetp, 2, byte_order);
16930 *offsetp += 2;
16933 static void xf86vidmodeSetGamma(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16935 int f_screen;
16936 int f_red;
16937 int f_green;
16938 int f_blue;
16939 f_screen = VALUE16(tvb, *offsetp);
16940 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGamma_screen, tvb, *offsetp, 2, byte_order);
16941 *offsetp += 2;
16942 UNUSED(2);
16943 f_red = VALUE32(tvb, *offsetp);
16944 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGamma_red, tvb, *offsetp, 4, byte_order);
16945 *offsetp += 4;
16946 f_green = VALUE32(tvb, *offsetp);
16947 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGamma_green, tvb, *offsetp, 4, byte_order);
16948 *offsetp += 4;
16949 f_blue = VALUE32(tvb, *offsetp);
16950 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGamma_blue, tvb, *offsetp, 4, byte_order);
16951 *offsetp += 4;
16952 UNUSED(12);
16955 static void xf86vidmodeGetGamma(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16957 int f_screen;
16958 f_screen = VALUE16(tvb, *offsetp);
16959 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGamma_screen, tvb, *offsetp, 2, byte_order);
16960 *offsetp += 2;
16961 UNUSED(26);
16963 static void xf86vidmodeGetGamma_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
16965 int f_length, length, sequence_number;
16966 int f_red;
16967 int f_green;
16968 int f_blue;
16970 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetGamma");
16972 REPLY(reply);
16973 UNUSED(1);
16974 sequence_number = VALUE16(tvb, *offsetp);
16975 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
16976 "sequencenumber: %d (xf86vidmode-GetGamma)", sequence_number);
16977 *offsetp += 2;
16978 f_length = VALUE32(tvb, *offsetp);
16979 length = f_length * 4 + 32;
16980 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
16981 *offsetp += 4;
16982 f_red = VALUE32(tvb, *offsetp);
16983 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGamma_reply_red, tvb, *offsetp, 4, byte_order);
16984 *offsetp += 4;
16985 f_green = VALUE32(tvb, *offsetp);
16986 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGamma_reply_green, tvb, *offsetp, 4, byte_order);
16987 *offsetp += 4;
16988 f_blue = VALUE32(tvb, *offsetp);
16989 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGamma_reply_blue, tvb, *offsetp, 4, byte_order);
16990 *offsetp += 4;
16991 UNUSED(12);
16994 static void xf86vidmodeGetGammaRamp(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
16996 int f_screen;
16997 int f_size;
16998 f_screen = VALUE16(tvb, *offsetp);
16999 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGammaRamp_screen, tvb, *offsetp, 2, byte_order);
17000 *offsetp += 2;
17001 f_size = VALUE16(tvb, *offsetp);
17002 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGammaRamp_size, tvb, *offsetp, 2, byte_order);
17003 *offsetp += 2;
17005 static void xf86vidmodeGetGammaRamp_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17007 int f_length, length, sequence_number;
17008 int f_size;
17010 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetGammaRamp");
17012 REPLY(reply);
17013 UNUSED(1);
17014 sequence_number = VALUE16(tvb, *offsetp);
17015 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17016 "sequencenumber: %d (xf86vidmode-GetGammaRamp)", sequence_number);
17017 *offsetp += 2;
17018 f_length = VALUE32(tvb, *offsetp);
17019 length = f_length * 4 + 32;
17020 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17021 *offsetp += 4;
17022 f_size = VALUE16(tvb, *offsetp);
17023 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGammaRamp_reply_size, tvb, *offsetp, 2, byte_order);
17024 *offsetp += 2;
17025 UNUSED(22);
17026 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_GetGammaRamp_reply_red, hf_x11_xf86vidmode_GetGammaRamp_reply_red_item, ((f_size + 1) & (~1)), byte_order);
17027 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_GetGammaRamp_reply_green, hf_x11_xf86vidmode_GetGammaRamp_reply_green_item, ((f_size + 1) & (~1)), byte_order);
17028 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_GetGammaRamp_reply_blue, hf_x11_xf86vidmode_GetGammaRamp_reply_blue_item, ((f_size + 1) & (~1)), byte_order);
17031 static void xf86vidmodeSetGammaRamp(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17033 int f_screen;
17034 int f_size;
17035 f_screen = VALUE16(tvb, *offsetp);
17036 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGammaRamp_screen, tvb, *offsetp, 2, byte_order);
17037 *offsetp += 2;
17038 f_size = VALUE16(tvb, *offsetp);
17039 proto_tree_add_item(t, hf_x11_xf86vidmode_SetGammaRamp_size, tvb, *offsetp, 2, byte_order);
17040 *offsetp += 2;
17041 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_SetGammaRamp_red, hf_x11_xf86vidmode_SetGammaRamp_red_item, ((f_size + 1) & (~1)), byte_order);
17042 length -= ((f_size + 1) & (~1)) * 2;
17043 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_SetGammaRamp_green, hf_x11_xf86vidmode_SetGammaRamp_green_item, ((f_size + 1) & (~1)), byte_order);
17044 length -= ((f_size + 1) & (~1)) * 2;
17045 listOfCard16(tvb, offsetp, t, hf_x11_xf86vidmode_SetGammaRamp_blue, hf_x11_xf86vidmode_SetGammaRamp_blue_item, ((f_size + 1) & (~1)), byte_order);
17046 length -= ((f_size + 1) & (~1)) * 2;
17049 static void xf86vidmodeGetGammaRampSize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17051 int f_screen;
17052 f_screen = VALUE16(tvb, *offsetp);
17053 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGammaRampSize_screen, tvb, *offsetp, 2, byte_order);
17054 *offsetp += 2;
17055 UNUSED(2);
17057 static void xf86vidmodeGetGammaRampSize_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17059 int f_length, length, sequence_number;
17060 int f_size;
17062 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetGammaRampSize");
17064 REPLY(reply);
17065 UNUSED(1);
17066 sequence_number = VALUE16(tvb, *offsetp);
17067 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17068 "sequencenumber: %d (xf86vidmode-GetGammaRampSize)", sequence_number);
17069 *offsetp += 2;
17070 f_length = VALUE32(tvb, *offsetp);
17071 length = f_length * 4 + 32;
17072 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17073 *offsetp += 4;
17074 f_size = VALUE16(tvb, *offsetp);
17075 proto_tree_add_item(t, hf_x11_xf86vidmode_GetGammaRampSize_reply_size, tvb, *offsetp, 2, byte_order);
17076 *offsetp += 2;
17077 UNUSED(22);
17080 static void xf86vidmodeGetPermissions(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17082 int f_screen;
17083 f_screen = VALUE16(tvb, *offsetp);
17084 proto_tree_add_item(t, hf_x11_xf86vidmode_GetPermissions_screen, tvb, *offsetp, 2, byte_order);
17085 *offsetp += 2;
17086 UNUSED(2);
17088 static void xf86vidmodeGetPermissions_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17090 int f_length, length, sequence_number;
17091 int f_permissions;
17093 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPermissions");
17095 REPLY(reply);
17096 UNUSED(1);
17097 sequence_number = VALUE16(tvb, *offsetp);
17098 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17099 "sequencenumber: %d (xf86vidmode-GetPermissions)", sequence_number);
17100 *offsetp += 2;
17101 f_length = VALUE32(tvb, *offsetp);
17102 length = f_length * 4 + 32;
17103 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17104 *offsetp += 4;
17105 f_permissions = VALUE32(tvb, *offsetp);
17107 proto_item *ti = proto_tree_add_item(t, hf_x11_xf86vidmode_GetPermissions_reply_permissions, tvb, *offsetp, 4, byte_order);
17108 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
17109 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetPermissions_reply_permissions_mask_Read, tvb, *offsetp, 4, byte_order);
17110 proto_tree_add_item(bitmask_tree, hf_x11_xf86vidmode_GetPermissions_reply_permissions_mask_Write, tvb, *offsetp, 4, byte_order);
17112 *offsetp += 4;
17113 UNUSED(20);
17115 static const value_string xf86vidmode_extension_minor[] = {
17116 { 0, "QueryVersion" },
17117 { 1, "GetModeLine" },
17118 { 2, "ModModeLine" },
17119 { 3, "SwitchMode" },
17120 { 4, "GetMonitor" },
17121 { 5, "LockModeSwitch" },
17122 { 6, "GetAllModeLines" },
17123 { 7, "AddModeLine" },
17124 { 8, "DeleteModeLine" },
17125 { 9, "ValidateModeLine" },
17126 { 10, "SwitchToMode" },
17127 { 11, "GetViewPort" },
17128 { 12, "SetViewPort" },
17129 { 13, "GetDotClocks" },
17130 { 14, "SetClientVersion" },
17131 { 15, "SetGamma" },
17132 { 16, "GetGamma" },
17133 { 17, "GetGammaRamp" },
17134 { 18, "SetGammaRamp" },
17135 { 19, "GetGammaRampSize" },
17136 { 20, "GetPermissions" },
17137 { 0, NULL }
17139 const x11_event_info xf86vidmode_events[] = {
17140 { NULL, NULL }
17142 static x11_reply_info xf86vidmode_replies[] = {
17143 { 0, xf86vidmodeQueryVersion_Reply },
17144 { 1, xf86vidmodeGetModeLine_Reply },
17145 { 4, xf86vidmodeGetMonitor_Reply },
17146 { 6, xf86vidmodeGetAllModeLines_Reply },
17147 { 9, xf86vidmodeValidateModeLine_Reply },
17148 { 11, xf86vidmodeGetViewPort_Reply },
17149 { 13, xf86vidmodeGetDotClocks_Reply },
17150 { 16, xf86vidmodeGetGamma_Reply },
17151 { 17, xf86vidmodeGetGammaRamp_Reply },
17152 { 19, xf86vidmodeGetGammaRampSize_Reply },
17153 { 20, xf86vidmodeGetPermissions_Reply },
17154 { 0, NULL }
17157 static void dispatch_xf86vidmode(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17159 int minor, length;
17160 minor = CARD8(xf86vidmode_extension_minor);
17161 length = REQUEST_LENGTH();
17163 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
17164 val_to_str(minor, xf86vidmode_extension_minor,
17165 "<Unknown opcode %d>"));
17166 switch (minor) {
17167 case 0:
17168 xf86vidmodeQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
17169 break;
17170 case 1:
17171 xf86vidmodeGetModeLine(tvb, pinfo, offsetp, t, byte_order, length);
17172 break;
17173 case 2:
17174 xf86vidmodeModModeLine(tvb, pinfo, offsetp, t, byte_order, length);
17175 break;
17176 case 3:
17177 xf86vidmodeSwitchMode(tvb, pinfo, offsetp, t, byte_order, length);
17178 break;
17179 case 4:
17180 xf86vidmodeGetMonitor(tvb, pinfo, offsetp, t, byte_order, length);
17181 break;
17182 case 5:
17183 xf86vidmodeLockModeSwitch(tvb, pinfo, offsetp, t, byte_order, length);
17184 break;
17185 case 6:
17186 xf86vidmodeGetAllModeLines(tvb, pinfo, offsetp, t, byte_order, length);
17187 break;
17188 case 7:
17189 xf86vidmodeAddModeLine(tvb, pinfo, offsetp, t, byte_order, length);
17190 break;
17191 case 8:
17192 xf86vidmodeDeleteModeLine(tvb, pinfo, offsetp, t, byte_order, length);
17193 break;
17194 case 9:
17195 xf86vidmodeValidateModeLine(tvb, pinfo, offsetp, t, byte_order, length);
17196 break;
17197 case 10:
17198 xf86vidmodeSwitchToMode(tvb, pinfo, offsetp, t, byte_order, length);
17199 break;
17200 case 11:
17201 xf86vidmodeGetViewPort(tvb, pinfo, offsetp, t, byte_order, length);
17202 break;
17203 case 12:
17204 xf86vidmodeSetViewPort(tvb, pinfo, offsetp, t, byte_order, length);
17205 break;
17206 case 13:
17207 xf86vidmodeGetDotClocks(tvb, pinfo, offsetp, t, byte_order, length);
17208 break;
17209 case 14:
17210 xf86vidmodeSetClientVersion(tvb, pinfo, offsetp, t, byte_order, length);
17211 break;
17212 case 15:
17213 xf86vidmodeSetGamma(tvb, pinfo, offsetp, t, byte_order, length);
17214 break;
17215 case 16:
17216 xf86vidmodeGetGamma(tvb, pinfo, offsetp, t, byte_order, length);
17217 break;
17218 case 17:
17219 xf86vidmodeGetGammaRamp(tvb, pinfo, offsetp, t, byte_order, length);
17220 break;
17221 case 18:
17222 xf86vidmodeSetGammaRamp(tvb, pinfo, offsetp, t, byte_order, length);
17223 break;
17224 case 19:
17225 xf86vidmodeGetGammaRampSize(tvb, pinfo, offsetp, t, byte_order, length);
17226 break;
17227 case 20:
17228 xf86vidmodeGetPermissions(tvb, pinfo, offsetp, t, byte_order, length);
17229 break;
17230 /* No need for a default case here, since Unknown is printed above,
17231 and UNDECODED() is taken care of by dissect_x11_request */
17235 static void register_xf86vidmode(void)
17237 set_handler("XFree86-VidModeExtension", dispatch_xf86vidmode, xf86vidmode_errors, xf86vidmode_events, xf86vidmode_replies);
17240 static void xfixesQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17242 int f_client_major_version;
17243 int f_client_minor_version;
17244 f_client_major_version = VALUE32(tvb, *offsetp);
17245 proto_tree_add_item(t, hf_x11_xfixes_QueryVersion_client_major_version, tvb, *offsetp, 4, byte_order);
17246 *offsetp += 4;
17247 f_client_minor_version = VALUE32(tvb, *offsetp);
17248 proto_tree_add_item(t, hf_x11_xfixes_QueryVersion_client_minor_version, tvb, *offsetp, 4, byte_order);
17249 *offsetp += 4;
17251 static void xfixesQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17253 int f_length, length, sequence_number;
17254 int f_major_version;
17255 int f_minor_version;
17257 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
17259 REPLY(reply);
17260 UNUSED(1);
17261 sequence_number = VALUE16(tvb, *offsetp);
17262 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17263 "sequencenumber: %d (xfixes-QueryVersion)", sequence_number);
17264 *offsetp += 2;
17265 f_length = VALUE32(tvb, *offsetp);
17266 length = f_length * 4 + 32;
17267 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17268 *offsetp += 4;
17269 f_major_version = VALUE32(tvb, *offsetp);
17270 proto_tree_add_item(t, hf_x11_xfixes_QueryVersion_reply_major_version, tvb, *offsetp, 4, byte_order);
17271 *offsetp += 4;
17272 f_minor_version = VALUE32(tvb, *offsetp);
17273 proto_tree_add_item(t, hf_x11_xfixes_QueryVersion_reply_minor_version, tvb, *offsetp, 4, byte_order);
17274 *offsetp += 4;
17275 UNUSED(16);
17278 static void xfixesChangeSaveSet(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17280 int f_mode;
17281 int f_target;
17282 int f_map;
17283 int f_window;
17284 f_mode = field8(tvb, offsetp, t, hf_x11_xfixes_ChangeSaveSet_mode, byte_order);
17285 f_target = field8(tvb, offsetp, t, hf_x11_xfixes_ChangeSaveSet_target, byte_order);
17286 f_map = field8(tvb, offsetp, t, hf_x11_xfixes_ChangeSaveSet_map, byte_order);
17287 UNUSED(1);
17288 f_window = VALUE32(tvb, *offsetp);
17289 proto_tree_add_item(t, hf_x11_xfixes_ChangeSaveSet_window, tvb, *offsetp, 4, byte_order);
17290 *offsetp += 4;
17293 static void xfixesSelectionNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
17295 int f_subtype;
17296 int f_window;
17297 int f_owner;
17298 int f_selection;
17299 int f_timestamp;
17300 int f_selection_timestamp;
17301 f_subtype = field8(tvb, offsetp, t, hf_x11_xfixes_SelectionNotify_subtype, byte_order);
17302 CARD16(event_sequencenumber);
17303 f_window = VALUE32(tvb, *offsetp);
17304 proto_tree_add_item(t, hf_x11_xfixes_SelectionNotify_window, tvb, *offsetp, 4, byte_order);
17305 *offsetp += 4;
17306 f_owner = VALUE32(tvb, *offsetp);
17307 proto_tree_add_item(t, hf_x11_xfixes_SelectionNotify_owner, tvb, *offsetp, 4, byte_order);
17308 *offsetp += 4;
17309 f_selection = VALUE32(tvb, *offsetp);
17310 proto_tree_add_item(t, hf_x11_xfixes_SelectionNotify_selection, tvb, *offsetp, 4, byte_order);
17311 *offsetp += 4;
17312 f_timestamp = VALUE32(tvb, *offsetp);
17313 proto_tree_add_item(t, hf_x11_xfixes_SelectionNotify_timestamp, tvb, *offsetp, 4, byte_order);
17314 *offsetp += 4;
17315 f_selection_timestamp = VALUE32(tvb, *offsetp);
17316 proto_tree_add_item(t, hf_x11_xfixes_SelectionNotify_selection_timestamp, tvb, *offsetp, 4, byte_order);
17317 *offsetp += 4;
17318 UNUSED(8);
17321 static void xfixesSelectSelectionInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17323 int f_window;
17324 int f_selection;
17325 int f_event_mask;
17326 f_window = VALUE32(tvb, *offsetp);
17327 proto_tree_add_item(t, hf_x11_xfixes_SelectSelectionInput_window, tvb, *offsetp, 4, byte_order);
17328 *offsetp += 4;
17329 f_selection = VALUE32(tvb, *offsetp);
17330 proto_tree_add_item(t, hf_x11_xfixes_SelectSelectionInput_selection, tvb, *offsetp, 4, byte_order);
17331 *offsetp += 4;
17332 f_event_mask = VALUE32(tvb, *offsetp);
17334 proto_item *ti = proto_tree_add_item(t, hf_x11_xfixes_SelectSelectionInput_event_mask, tvb, *offsetp, 4, byte_order);
17335 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
17336 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SetSelectionOwner, tvb, *offsetp, 4, byte_order);
17337 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SelectionWindowDestroy, tvb, *offsetp, 4, byte_order);
17338 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_SelectSelectionInput_event_mask_mask_SelectionClientClose, tvb, *offsetp, 4, byte_order);
17340 *offsetp += 4;
17343 static void xfixesCursorNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
17345 int f_subtype;
17346 int f_window;
17347 int f_cursor_serial;
17348 int f_timestamp;
17349 int f_name;
17350 f_subtype = field8(tvb, offsetp, t, hf_x11_xfixes_CursorNotify_subtype, byte_order);
17351 CARD16(event_sequencenumber);
17352 f_window = VALUE32(tvb, *offsetp);
17353 proto_tree_add_item(t, hf_x11_xfixes_CursorNotify_window, tvb, *offsetp, 4, byte_order);
17354 *offsetp += 4;
17355 f_cursor_serial = VALUE32(tvb, *offsetp);
17356 proto_tree_add_item(t, hf_x11_xfixes_CursorNotify_cursor_serial, tvb, *offsetp, 4, byte_order);
17357 *offsetp += 4;
17358 f_timestamp = VALUE32(tvb, *offsetp);
17359 proto_tree_add_item(t, hf_x11_xfixes_CursorNotify_timestamp, tvb, *offsetp, 4, byte_order);
17360 *offsetp += 4;
17361 f_name = field32(tvb, offsetp, t, hf_x11_xfixes_CursorNotify_name, byte_order);
17362 UNUSED(12);
17365 static void xfixesSelectCursorInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17367 int f_window;
17368 int f_event_mask;
17369 f_window = VALUE32(tvb, *offsetp);
17370 proto_tree_add_item(t, hf_x11_xfixes_SelectCursorInput_window, tvb, *offsetp, 4, byte_order);
17371 *offsetp += 4;
17372 f_event_mask = VALUE32(tvb, *offsetp);
17374 proto_item *ti = proto_tree_add_item(t, hf_x11_xfixes_SelectCursorInput_event_mask, tvb, *offsetp, 4, byte_order);
17375 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
17376 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_SelectCursorInput_event_mask_mask_DisplayCursor, tvb, *offsetp, 4, byte_order);
17378 *offsetp += 4;
17381 static void xfixesGetCursorImage(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
17384 static void xfixesGetCursorImage_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17386 int f_length, length, sequence_number;
17387 int f_x;
17388 int f_y;
17389 int f_width;
17390 int f_height;
17391 int f_xhot;
17392 int f_yhot;
17393 int f_cursor_serial;
17395 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCursorImage");
17397 REPLY(reply);
17398 UNUSED(1);
17399 sequence_number = VALUE16(tvb, *offsetp);
17400 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17401 "sequencenumber: %d (xfixes-GetCursorImage)", sequence_number);
17402 *offsetp += 2;
17403 f_length = VALUE32(tvb, *offsetp);
17404 length = f_length * 4 + 32;
17405 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17406 *offsetp += 4;
17407 f_x = VALUE16(tvb, *offsetp);
17408 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_x, tvb, *offsetp, 2, byte_order);
17409 *offsetp += 2;
17410 f_y = VALUE16(tvb, *offsetp);
17411 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_y, tvb, *offsetp, 2, byte_order);
17412 *offsetp += 2;
17413 f_width = VALUE16(tvb, *offsetp);
17414 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_width, tvb, *offsetp, 2, byte_order);
17415 *offsetp += 2;
17416 f_height = VALUE16(tvb, *offsetp);
17417 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_height, tvb, *offsetp, 2, byte_order);
17418 *offsetp += 2;
17419 f_xhot = VALUE16(tvb, *offsetp);
17420 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_xhot, tvb, *offsetp, 2, byte_order);
17421 *offsetp += 2;
17422 f_yhot = VALUE16(tvb, *offsetp);
17423 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_yhot, tvb, *offsetp, 2, byte_order);
17424 *offsetp += 2;
17425 f_cursor_serial = VALUE32(tvb, *offsetp);
17426 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImage_reply_cursor_serial, tvb, *offsetp, 4, byte_order);
17427 *offsetp += 4;
17428 UNUSED(8);
17429 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);
17432 static void xfixesCreateRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17434 int f_region;
17435 f_region = VALUE32(tvb, *offsetp);
17436 proto_tree_add_item(t, hf_x11_xfixes_CreateRegion_region, tvb, *offsetp, 4, byte_order);
17437 *offsetp += 4;
17438 struct_RECTANGLE(tvb, offsetp, t, byte_order, (length - 8) / 8);
17441 static void xfixesCreateRegionFromBitmap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17443 int f_region;
17444 int f_bitmap;
17445 f_region = VALUE32(tvb, *offsetp);
17446 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromBitmap_region, tvb, *offsetp, 4, byte_order);
17447 *offsetp += 4;
17448 f_bitmap = VALUE32(tvb, *offsetp);
17449 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromBitmap_bitmap, tvb, *offsetp, 4, byte_order);
17450 *offsetp += 4;
17453 static void xfixesCreateRegionFromWindow(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17455 int f_region;
17456 int f_window;
17457 int f_kind;
17458 f_region = VALUE32(tvb, *offsetp);
17459 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromWindow_region, tvb, *offsetp, 4, byte_order);
17460 *offsetp += 4;
17461 f_window = VALUE32(tvb, *offsetp);
17462 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromWindow_window, tvb, *offsetp, 4, byte_order);
17463 *offsetp += 4;
17464 f_kind = field8(tvb, offsetp, t, hf_x11_xfixes_CreateRegionFromWindow_kind, byte_order);
17465 UNUSED(3);
17468 static void xfixesCreateRegionFromGC(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17470 int f_region;
17471 int f_gc;
17472 f_region = VALUE32(tvb, *offsetp);
17473 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromGC_region, tvb, *offsetp, 4, byte_order);
17474 *offsetp += 4;
17475 f_gc = VALUE32(tvb, *offsetp);
17476 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromGC_gc, tvb, *offsetp, 4, byte_order);
17477 *offsetp += 4;
17480 static void xfixesCreateRegionFromPicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17482 int f_region;
17483 int f_picture;
17484 f_region = VALUE32(tvb, *offsetp);
17485 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromPicture_region, tvb, *offsetp, 4, byte_order);
17486 *offsetp += 4;
17487 f_picture = VALUE32(tvb, *offsetp);
17488 proto_tree_add_item(t, hf_x11_xfixes_CreateRegionFromPicture_picture, tvb, *offsetp, 4, byte_order);
17489 *offsetp += 4;
17492 static void xfixesDestroyRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17494 int f_region;
17495 f_region = VALUE32(tvb, *offsetp);
17496 proto_tree_add_item(t, hf_x11_xfixes_DestroyRegion_region, tvb, *offsetp, 4, byte_order);
17497 *offsetp += 4;
17500 static void xfixesSetRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17502 int f_region;
17503 f_region = VALUE32(tvb, *offsetp);
17504 proto_tree_add_item(t, hf_x11_xfixes_SetRegion_region, tvb, *offsetp, 4, byte_order);
17505 *offsetp += 4;
17506 struct_RECTANGLE(tvb, offsetp, t, byte_order, (length - 8) / 8);
17509 static void xfixesCopyRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17511 int f_source;
17512 int f_destination;
17513 f_source = VALUE32(tvb, *offsetp);
17514 proto_tree_add_item(t, hf_x11_xfixes_CopyRegion_source, tvb, *offsetp, 4, byte_order);
17515 *offsetp += 4;
17516 f_destination = VALUE32(tvb, *offsetp);
17517 proto_tree_add_item(t, hf_x11_xfixes_CopyRegion_destination, tvb, *offsetp, 4, byte_order);
17518 *offsetp += 4;
17521 static void xfixesUnionRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17523 int f_source1;
17524 int f_source2;
17525 int f_destination;
17526 f_source1 = VALUE32(tvb, *offsetp);
17527 proto_tree_add_item(t, hf_x11_xfixes_UnionRegion_source1, tvb, *offsetp, 4, byte_order);
17528 *offsetp += 4;
17529 f_source2 = VALUE32(tvb, *offsetp);
17530 proto_tree_add_item(t, hf_x11_xfixes_UnionRegion_source2, tvb, *offsetp, 4, byte_order);
17531 *offsetp += 4;
17532 f_destination = VALUE32(tvb, *offsetp);
17533 proto_tree_add_item(t, hf_x11_xfixes_UnionRegion_destination, tvb, *offsetp, 4, byte_order);
17534 *offsetp += 4;
17537 static void xfixesIntersectRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17539 int f_source1;
17540 int f_source2;
17541 int f_destination;
17542 f_source1 = VALUE32(tvb, *offsetp);
17543 proto_tree_add_item(t, hf_x11_xfixes_IntersectRegion_source1, tvb, *offsetp, 4, byte_order);
17544 *offsetp += 4;
17545 f_source2 = VALUE32(tvb, *offsetp);
17546 proto_tree_add_item(t, hf_x11_xfixes_IntersectRegion_source2, tvb, *offsetp, 4, byte_order);
17547 *offsetp += 4;
17548 f_destination = VALUE32(tvb, *offsetp);
17549 proto_tree_add_item(t, hf_x11_xfixes_IntersectRegion_destination, tvb, *offsetp, 4, byte_order);
17550 *offsetp += 4;
17553 static void xfixesSubtractRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17555 int f_source1;
17556 int f_source2;
17557 int f_destination;
17558 f_source1 = VALUE32(tvb, *offsetp);
17559 proto_tree_add_item(t, hf_x11_xfixes_SubtractRegion_source1, tvb, *offsetp, 4, byte_order);
17560 *offsetp += 4;
17561 f_source2 = VALUE32(tvb, *offsetp);
17562 proto_tree_add_item(t, hf_x11_xfixes_SubtractRegion_source2, tvb, *offsetp, 4, byte_order);
17563 *offsetp += 4;
17564 f_destination = VALUE32(tvb, *offsetp);
17565 proto_tree_add_item(t, hf_x11_xfixes_SubtractRegion_destination, tvb, *offsetp, 4, byte_order);
17566 *offsetp += 4;
17569 static void xfixesInvertRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17571 int f_source;
17572 int f_destination;
17573 f_source = VALUE32(tvb, *offsetp);
17574 proto_tree_add_item(t, hf_x11_xfixes_InvertRegion_source, tvb, *offsetp, 4, byte_order);
17575 *offsetp += 4;
17576 struct_RECTANGLE(tvb, offsetp, t, byte_order, 1);
17577 f_destination = VALUE32(tvb, *offsetp);
17578 proto_tree_add_item(t, hf_x11_xfixes_InvertRegion_destination, tvb, *offsetp, 4, byte_order);
17579 *offsetp += 4;
17582 static void xfixesTranslateRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17584 int f_region;
17585 int f_dx;
17586 int f_dy;
17587 f_region = VALUE32(tvb, *offsetp);
17588 proto_tree_add_item(t, hf_x11_xfixes_TranslateRegion_region, tvb, *offsetp, 4, byte_order);
17589 *offsetp += 4;
17590 f_dx = VALUE16(tvb, *offsetp);
17591 proto_tree_add_item(t, hf_x11_xfixes_TranslateRegion_dx, tvb, *offsetp, 2, byte_order);
17592 *offsetp += 2;
17593 f_dy = VALUE16(tvb, *offsetp);
17594 proto_tree_add_item(t, hf_x11_xfixes_TranslateRegion_dy, tvb, *offsetp, 2, byte_order);
17595 *offsetp += 2;
17598 static void xfixesRegionExtents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17600 int f_source;
17601 int f_destination;
17602 f_source = VALUE32(tvb, *offsetp);
17603 proto_tree_add_item(t, hf_x11_xfixes_RegionExtents_source, tvb, *offsetp, 4, byte_order);
17604 *offsetp += 4;
17605 f_destination = VALUE32(tvb, *offsetp);
17606 proto_tree_add_item(t, hf_x11_xfixes_RegionExtents_destination, tvb, *offsetp, 4, byte_order);
17607 *offsetp += 4;
17610 static void xfixesFetchRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17612 int f_region;
17613 f_region = VALUE32(tvb, *offsetp);
17614 proto_tree_add_item(t, hf_x11_xfixes_FetchRegion_region, tvb, *offsetp, 4, byte_order);
17615 *offsetp += 4;
17617 static void xfixesFetchRegion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17619 int f_length, length, sequence_number;
17621 col_append_fstr(pinfo->cinfo, COL_INFO, "-FetchRegion");
17623 REPLY(reply);
17624 UNUSED(1);
17625 sequence_number = VALUE16(tvb, *offsetp);
17626 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17627 "sequencenumber: %d (xfixes-FetchRegion)", sequence_number);
17628 *offsetp += 2;
17629 f_length = VALUE32(tvb, *offsetp);
17630 length = f_length * 4 + 32;
17631 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17632 *offsetp += 4;
17633 struct_RECTANGLE(tvb, offsetp, t, byte_order, 1);
17634 UNUSED(16);
17635 struct_RECTANGLE(tvb, offsetp, t, byte_order, (f_length / 2));
17638 static void xfixesSetGCClipRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17640 int f_gc;
17641 int f_region;
17642 int f_x_origin;
17643 int f_y_origin;
17644 f_gc = VALUE32(tvb, *offsetp);
17645 proto_tree_add_item(t, hf_x11_xfixes_SetGCClipRegion_gc, tvb, *offsetp, 4, byte_order);
17646 *offsetp += 4;
17647 f_region = field32(tvb, offsetp, t, hf_x11_xfixes_SetGCClipRegion_region, byte_order);
17648 f_x_origin = VALUE16(tvb, *offsetp);
17649 proto_tree_add_item(t, hf_x11_xfixes_SetGCClipRegion_x_origin, tvb, *offsetp, 2, byte_order);
17650 *offsetp += 2;
17651 f_y_origin = VALUE16(tvb, *offsetp);
17652 proto_tree_add_item(t, hf_x11_xfixes_SetGCClipRegion_y_origin, tvb, *offsetp, 2, byte_order);
17653 *offsetp += 2;
17656 static void xfixesSetWindowShapeRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17658 int f_dest;
17659 int f_dest_kind;
17660 int f_x_offset;
17661 int f_y_offset;
17662 int f_region;
17663 f_dest = VALUE32(tvb, *offsetp);
17664 proto_tree_add_item(t, hf_x11_xfixes_SetWindowShapeRegion_dest, tvb, *offsetp, 4, byte_order);
17665 *offsetp += 4;
17666 f_dest_kind = field8(tvb, offsetp, t, hf_x11_xfixes_SetWindowShapeRegion_dest_kind, byte_order);
17667 UNUSED(3);
17668 f_x_offset = VALUE16(tvb, *offsetp);
17669 proto_tree_add_item(t, hf_x11_xfixes_SetWindowShapeRegion_x_offset, tvb, *offsetp, 2, byte_order);
17670 *offsetp += 2;
17671 f_y_offset = VALUE16(tvb, *offsetp);
17672 proto_tree_add_item(t, hf_x11_xfixes_SetWindowShapeRegion_y_offset, tvb, *offsetp, 2, byte_order);
17673 *offsetp += 2;
17674 f_region = field32(tvb, offsetp, t, hf_x11_xfixes_SetWindowShapeRegion_region, byte_order);
17677 static void xfixesSetPictureClipRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17679 int f_picture;
17680 int f_region;
17681 int f_x_origin;
17682 int f_y_origin;
17683 f_picture = VALUE32(tvb, *offsetp);
17684 proto_tree_add_item(t, hf_x11_xfixes_SetPictureClipRegion_picture, tvb, *offsetp, 4, byte_order);
17685 *offsetp += 4;
17686 f_region = field32(tvb, offsetp, t, hf_x11_xfixes_SetPictureClipRegion_region, byte_order);
17687 f_x_origin = VALUE16(tvb, *offsetp);
17688 proto_tree_add_item(t, hf_x11_xfixes_SetPictureClipRegion_x_origin, tvb, *offsetp, 2, byte_order);
17689 *offsetp += 2;
17690 f_y_origin = VALUE16(tvb, *offsetp);
17691 proto_tree_add_item(t, hf_x11_xfixes_SetPictureClipRegion_y_origin, tvb, *offsetp, 2, byte_order);
17692 *offsetp += 2;
17695 static void xfixesSetCursorName(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17697 int f_cursor;
17698 int f_nbytes;
17699 f_cursor = VALUE32(tvb, *offsetp);
17700 proto_tree_add_item(t, hf_x11_xfixes_SetCursorName_cursor, tvb, *offsetp, 4, byte_order);
17701 *offsetp += 4;
17702 f_nbytes = VALUE16(tvb, *offsetp);
17703 proto_tree_add_item(t, hf_x11_xfixes_SetCursorName_nbytes, tvb, *offsetp, 2, byte_order);
17704 *offsetp += 2;
17705 UNUSED(2);
17706 listOfByte(tvb, offsetp, t, hf_x11_xfixes_SetCursorName_name, f_nbytes, byte_order);
17707 length -= f_nbytes * 1;
17710 static void xfixesGetCursorName(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17712 int f_cursor;
17713 f_cursor = VALUE32(tvb, *offsetp);
17714 proto_tree_add_item(t, hf_x11_xfixes_GetCursorName_cursor, tvb, *offsetp, 4, byte_order);
17715 *offsetp += 4;
17717 static void xfixesGetCursorName_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17719 int f_length, length, sequence_number;
17720 int f_atom;
17721 int f_nbytes;
17723 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCursorName");
17725 REPLY(reply);
17726 UNUSED(1);
17727 sequence_number = VALUE16(tvb, *offsetp);
17728 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17729 "sequencenumber: %d (xfixes-GetCursorName)", sequence_number);
17730 *offsetp += 2;
17731 f_length = VALUE32(tvb, *offsetp);
17732 length = f_length * 4 + 32;
17733 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17734 *offsetp += 4;
17735 f_atom = field32(tvb, offsetp, t, hf_x11_xfixes_GetCursorName_reply_atom, byte_order);
17736 f_nbytes = VALUE16(tvb, *offsetp);
17737 proto_tree_add_item(t, hf_x11_xfixes_GetCursorName_reply_nbytes, tvb, *offsetp, 2, byte_order);
17738 *offsetp += 2;
17739 UNUSED(18);
17740 listOfByte(tvb, offsetp, t, hf_x11_xfixes_GetCursorName_reply_name, f_nbytes, byte_order);
17743 static void xfixesGetCursorImageAndName(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
17746 static void xfixesGetCursorImageAndName_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17748 int f_length, length, sequence_number;
17749 int f_x;
17750 int f_y;
17751 int f_width;
17752 int f_height;
17753 int f_xhot;
17754 int f_yhot;
17755 int f_cursor_serial;
17756 int f_cursor_atom;
17757 int f_nbytes;
17759 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCursorImageAndName");
17761 REPLY(reply);
17762 UNUSED(1);
17763 sequence_number = VALUE16(tvb, *offsetp);
17764 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
17765 "sequencenumber: %d (xfixes-GetCursorImageAndName)", sequence_number);
17766 *offsetp += 2;
17767 f_length = VALUE32(tvb, *offsetp);
17768 length = f_length * 4 + 32;
17769 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
17770 *offsetp += 4;
17771 f_x = VALUE16(tvb, *offsetp);
17772 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_x, tvb, *offsetp, 2, byte_order);
17773 *offsetp += 2;
17774 f_y = VALUE16(tvb, *offsetp);
17775 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_y, tvb, *offsetp, 2, byte_order);
17776 *offsetp += 2;
17777 f_width = VALUE16(tvb, *offsetp);
17778 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_width, tvb, *offsetp, 2, byte_order);
17779 *offsetp += 2;
17780 f_height = VALUE16(tvb, *offsetp);
17781 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_height, tvb, *offsetp, 2, byte_order);
17782 *offsetp += 2;
17783 f_xhot = VALUE16(tvb, *offsetp);
17784 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_xhot, tvb, *offsetp, 2, byte_order);
17785 *offsetp += 2;
17786 f_yhot = VALUE16(tvb, *offsetp);
17787 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_yhot, tvb, *offsetp, 2, byte_order);
17788 *offsetp += 2;
17789 f_cursor_serial = VALUE32(tvb, *offsetp);
17790 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_serial, tvb, *offsetp, 4, byte_order);
17791 *offsetp += 4;
17792 f_cursor_atom = field32(tvb, offsetp, t, hf_x11_xfixes_GetCursorImageAndName_reply_cursor_atom, byte_order);
17793 f_nbytes = VALUE16(tvb, *offsetp);
17794 proto_tree_add_item(t, hf_x11_xfixes_GetCursorImageAndName_reply_nbytes, tvb, *offsetp, 2, byte_order);
17795 *offsetp += 2;
17796 UNUSED(2);
17797 listOfByte(tvb, offsetp, t, hf_x11_xfixes_GetCursorImageAndName_reply_name, f_nbytes, byte_order);
17798 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);
17801 static void xfixesChangeCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17803 int f_source;
17804 int f_destination;
17805 f_source = VALUE32(tvb, *offsetp);
17806 proto_tree_add_item(t, hf_x11_xfixes_ChangeCursor_source, tvb, *offsetp, 4, byte_order);
17807 *offsetp += 4;
17808 f_destination = VALUE32(tvb, *offsetp);
17809 proto_tree_add_item(t, hf_x11_xfixes_ChangeCursor_destination, tvb, *offsetp, 4, byte_order);
17810 *offsetp += 4;
17813 static void xfixesChangeCursorByName(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17815 int f_src;
17816 int f_nbytes;
17817 f_src = VALUE32(tvb, *offsetp);
17818 proto_tree_add_item(t, hf_x11_xfixes_ChangeCursorByName_src, tvb, *offsetp, 4, byte_order);
17819 *offsetp += 4;
17820 f_nbytes = VALUE16(tvb, *offsetp);
17821 proto_tree_add_item(t, hf_x11_xfixes_ChangeCursorByName_nbytes, tvb, *offsetp, 2, byte_order);
17822 *offsetp += 2;
17823 UNUSED(2);
17824 listOfByte(tvb, offsetp, t, hf_x11_xfixes_ChangeCursorByName_name, f_nbytes, byte_order);
17825 length -= f_nbytes * 1;
17828 static void xfixesExpandRegion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17830 int f_source;
17831 int f_destination;
17832 int f_left;
17833 int f_right;
17834 int f_top;
17835 int f_bottom;
17836 f_source = VALUE32(tvb, *offsetp);
17837 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_source, tvb, *offsetp, 4, byte_order);
17838 *offsetp += 4;
17839 f_destination = VALUE32(tvb, *offsetp);
17840 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_destination, tvb, *offsetp, 4, byte_order);
17841 *offsetp += 4;
17842 f_left = VALUE16(tvb, *offsetp);
17843 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_left, tvb, *offsetp, 2, byte_order);
17844 *offsetp += 2;
17845 f_right = VALUE16(tvb, *offsetp);
17846 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_right, tvb, *offsetp, 2, byte_order);
17847 *offsetp += 2;
17848 f_top = VALUE16(tvb, *offsetp);
17849 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_top, tvb, *offsetp, 2, byte_order);
17850 *offsetp += 2;
17851 f_bottom = VALUE16(tvb, *offsetp);
17852 proto_tree_add_item(t, hf_x11_xfixes_ExpandRegion_bottom, tvb, *offsetp, 2, byte_order);
17853 *offsetp += 2;
17856 static void xfixesHideCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17858 int f_window;
17859 f_window = VALUE32(tvb, *offsetp);
17860 proto_tree_add_item(t, hf_x11_xfixes_HideCursor_window, tvb, *offsetp, 4, byte_order);
17861 *offsetp += 4;
17864 static void xfixesShowCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17866 int f_window;
17867 f_window = VALUE32(tvb, *offsetp);
17868 proto_tree_add_item(t, hf_x11_xfixes_ShowCursor_window, tvb, *offsetp, 4, byte_order);
17869 *offsetp += 4;
17872 static void xfixesCreatePointerBarrier(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17874 int f_barrier;
17875 int f_window;
17876 int f_x1;
17877 int f_y1;
17878 int f_x2;
17879 int f_y2;
17880 int f_directions;
17881 int f_num_devices;
17882 f_barrier = VALUE32(tvb, *offsetp);
17883 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_barrier, tvb, *offsetp, 4, byte_order);
17884 *offsetp += 4;
17885 f_window = VALUE32(tvb, *offsetp);
17886 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_window, tvb, *offsetp, 4, byte_order);
17887 *offsetp += 4;
17888 f_x1 = VALUE16(tvb, *offsetp);
17889 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_x1, tvb, *offsetp, 2, byte_order);
17890 *offsetp += 2;
17891 f_y1 = VALUE16(tvb, *offsetp);
17892 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_y1, tvb, *offsetp, 2, byte_order);
17893 *offsetp += 2;
17894 f_x2 = VALUE16(tvb, *offsetp);
17895 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_x2, tvb, *offsetp, 2, byte_order);
17896 *offsetp += 2;
17897 f_y2 = VALUE16(tvb, *offsetp);
17898 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_y2, tvb, *offsetp, 2, byte_order);
17899 *offsetp += 2;
17900 f_directions = VALUE32(tvb, *offsetp);
17902 proto_item *ti = proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_directions, tvb, *offsetp, 4, byte_order);
17903 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
17904 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_CreatePointerBarrier_directions_mask_PositiveX, tvb, *offsetp, 4, byte_order);
17905 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_CreatePointerBarrier_directions_mask_PositiveY, tvb, *offsetp, 4, byte_order);
17906 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_CreatePointerBarrier_directions_mask_NegativeX, tvb, *offsetp, 4, byte_order);
17907 proto_tree_add_item(bitmask_tree, hf_x11_xfixes_CreatePointerBarrier_directions_mask_NegativeY, tvb, *offsetp, 4, byte_order);
17909 *offsetp += 4;
17910 UNUSED(2);
17911 f_num_devices = VALUE16(tvb, *offsetp);
17912 proto_tree_add_item(t, hf_x11_xfixes_CreatePointerBarrier_num_devices, tvb, *offsetp, 2, byte_order);
17913 *offsetp += 2;
17914 listOfCard16(tvb, offsetp, t, hf_x11_xfixes_CreatePointerBarrier_devices, hf_x11_xfixes_CreatePointerBarrier_devices_item, f_num_devices, byte_order);
17915 length -= f_num_devices * 2;
17918 static void xfixesDeletePointerBarrier(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
17920 int f_barrier;
17921 f_barrier = VALUE32(tvb, *offsetp);
17922 proto_tree_add_item(t, hf_x11_xfixes_DeletePointerBarrier_barrier, tvb, *offsetp, 4, byte_order);
17923 *offsetp += 4;
17925 static const value_string xfixes_extension_minor[] = {
17926 { 0, "QueryVersion" },
17927 { 1, "ChangeSaveSet" },
17928 { 2, "SelectSelectionInput" },
17929 { 3, "SelectCursorInput" },
17930 { 4, "GetCursorImage" },
17931 { 5, "CreateRegion" },
17932 { 6, "CreateRegionFromBitmap" },
17933 { 7, "CreateRegionFromWindow" },
17934 { 8, "CreateRegionFromGC" },
17935 { 9, "CreateRegionFromPicture" },
17936 { 10, "DestroyRegion" },
17937 { 11, "SetRegion" },
17938 { 12, "CopyRegion" },
17939 { 13, "UnionRegion" },
17940 { 14, "IntersectRegion" },
17941 { 15, "SubtractRegion" },
17942 { 16, "InvertRegion" },
17943 { 17, "TranslateRegion" },
17944 { 18, "RegionExtents" },
17945 { 19, "FetchRegion" },
17946 { 20, "SetGCClipRegion" },
17947 { 21, "SetWindowShapeRegion" },
17948 { 22, "SetPictureClipRegion" },
17949 { 23, "SetCursorName" },
17950 { 24, "GetCursorName" },
17951 { 25, "GetCursorImageAndName" },
17952 { 26, "ChangeCursor" },
17953 { 27, "ChangeCursorByName" },
17954 { 28, "ExpandRegion" },
17955 { 29, "HideCursor" },
17956 { 30, "ShowCursor" },
17957 { 31, "CreatePointerBarrier" },
17958 { 32, "DeletePointerBarrier" },
17959 { 0, NULL }
17961 const x11_event_info xfixes_events[] = {
17962 { "xfixes-SelectionNotify", xfixesSelectionNotify },
17963 { "xfixes-CursorNotify", xfixesCursorNotify },
17964 { NULL, NULL }
17966 static x11_reply_info xfixes_replies[] = {
17967 { 0, xfixesQueryVersion_Reply },
17968 { 4, xfixesGetCursorImage_Reply },
17969 { 19, xfixesFetchRegion_Reply },
17970 { 24, xfixesGetCursorName_Reply },
17971 { 25, xfixesGetCursorImageAndName_Reply },
17972 { 0, NULL }
17975 static void dispatch_xfixes(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
17977 int minor, length;
17978 minor = CARD8(xfixes_extension_minor);
17979 length = REQUEST_LENGTH();
17981 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
17982 val_to_str(minor, xfixes_extension_minor,
17983 "<Unknown opcode %d>"));
17984 switch (minor) {
17985 case 0:
17986 xfixesQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
17987 break;
17988 case 1:
17989 xfixesChangeSaveSet(tvb, pinfo, offsetp, t, byte_order, length);
17990 break;
17991 case 2:
17992 xfixesSelectSelectionInput(tvb, pinfo, offsetp, t, byte_order, length);
17993 break;
17994 case 3:
17995 xfixesSelectCursorInput(tvb, pinfo, offsetp, t, byte_order, length);
17996 break;
17997 case 4:
17998 xfixesGetCursorImage(tvb, pinfo, offsetp, t, byte_order, length);
17999 break;
18000 case 5:
18001 xfixesCreateRegion(tvb, pinfo, offsetp, t, byte_order, length);
18002 break;
18003 case 6:
18004 xfixesCreateRegionFromBitmap(tvb, pinfo, offsetp, t, byte_order, length);
18005 break;
18006 case 7:
18007 xfixesCreateRegionFromWindow(tvb, pinfo, offsetp, t, byte_order, length);
18008 break;
18009 case 8:
18010 xfixesCreateRegionFromGC(tvb, pinfo, offsetp, t, byte_order, length);
18011 break;
18012 case 9:
18013 xfixesCreateRegionFromPicture(tvb, pinfo, offsetp, t, byte_order, length);
18014 break;
18015 case 10:
18016 xfixesDestroyRegion(tvb, pinfo, offsetp, t, byte_order, length);
18017 break;
18018 case 11:
18019 xfixesSetRegion(tvb, pinfo, offsetp, t, byte_order, length);
18020 break;
18021 case 12:
18022 xfixesCopyRegion(tvb, pinfo, offsetp, t, byte_order, length);
18023 break;
18024 case 13:
18025 xfixesUnionRegion(tvb, pinfo, offsetp, t, byte_order, length);
18026 break;
18027 case 14:
18028 xfixesIntersectRegion(tvb, pinfo, offsetp, t, byte_order, length);
18029 break;
18030 case 15:
18031 xfixesSubtractRegion(tvb, pinfo, offsetp, t, byte_order, length);
18032 break;
18033 case 16:
18034 xfixesInvertRegion(tvb, pinfo, offsetp, t, byte_order, length);
18035 break;
18036 case 17:
18037 xfixesTranslateRegion(tvb, pinfo, offsetp, t, byte_order, length);
18038 break;
18039 case 18:
18040 xfixesRegionExtents(tvb, pinfo, offsetp, t, byte_order, length);
18041 break;
18042 case 19:
18043 xfixesFetchRegion(tvb, pinfo, offsetp, t, byte_order, length);
18044 break;
18045 case 20:
18046 xfixesSetGCClipRegion(tvb, pinfo, offsetp, t, byte_order, length);
18047 break;
18048 case 21:
18049 xfixesSetWindowShapeRegion(tvb, pinfo, offsetp, t, byte_order, length);
18050 break;
18051 case 22:
18052 xfixesSetPictureClipRegion(tvb, pinfo, offsetp, t, byte_order, length);
18053 break;
18054 case 23:
18055 xfixesSetCursorName(tvb, pinfo, offsetp, t, byte_order, length);
18056 break;
18057 case 24:
18058 xfixesGetCursorName(tvb, pinfo, offsetp, t, byte_order, length);
18059 break;
18060 case 25:
18061 xfixesGetCursorImageAndName(tvb, pinfo, offsetp, t, byte_order, length);
18062 break;
18063 case 26:
18064 xfixesChangeCursor(tvb, pinfo, offsetp, t, byte_order, length);
18065 break;
18066 case 27:
18067 xfixesChangeCursorByName(tvb, pinfo, offsetp, t, byte_order, length);
18068 break;
18069 case 28:
18070 xfixesExpandRegion(tvb, pinfo, offsetp, t, byte_order, length);
18071 break;
18072 case 29:
18073 xfixesHideCursor(tvb, pinfo, offsetp, t, byte_order, length);
18074 break;
18075 case 30:
18076 xfixesShowCursor(tvb, pinfo, offsetp, t, byte_order, length);
18077 break;
18078 case 31:
18079 xfixesCreatePointerBarrier(tvb, pinfo, offsetp, t, byte_order, length);
18080 break;
18081 case 32:
18082 xfixesDeletePointerBarrier(tvb, pinfo, offsetp, t, byte_order, length);
18083 break;
18084 /* No need for a default case here, since Unknown is printed above,
18085 and UNDECODED() is taken care of by dissect_x11_request */
18089 static void register_xfixes(void)
18091 set_handler("XFIXES", dispatch_xfixes, xfixes_errors, xfixes_events, xfixes_replies);
18094 static void struct_ScreenInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
18096 int i;
18097 for (i = 0; i < count; i++) {
18098 proto_item *item;
18099 proto_tree *t;
18100 int f_x_org;
18101 int f_y_org;
18102 int f_width;
18103 int f_height;
18105 item = proto_tree_add_item(root, hf_x11_struct_ScreenInfo, tvb, *offsetp, 8, ENC_NA);
18106 t = proto_item_add_subtree(item, ett_x11_rectangle);
18107 f_x_org = VALUE16(tvb, *offsetp);
18108 proto_tree_add_item(t, hf_x11_struct_ScreenInfo_x_org, tvb, *offsetp, 2, byte_order);
18109 *offsetp += 2;
18110 f_y_org = VALUE16(tvb, *offsetp);
18111 proto_tree_add_item(t, hf_x11_struct_ScreenInfo_y_org, tvb, *offsetp, 2, byte_order);
18112 *offsetp += 2;
18113 f_width = VALUE16(tvb, *offsetp);
18114 proto_tree_add_item(t, hf_x11_struct_ScreenInfo_width, tvb, *offsetp, 2, byte_order);
18115 *offsetp += 2;
18116 f_height = VALUE16(tvb, *offsetp);
18117 proto_tree_add_item(t, hf_x11_struct_ScreenInfo_height, tvb, *offsetp, 2, byte_order);
18118 *offsetp += 2;
18122 static void xineramaQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18124 int f_major;
18125 int f_minor;
18126 f_major = VALUE8(tvb, *offsetp);
18127 proto_tree_add_item(t, hf_x11_xinerama_QueryVersion_major, tvb, *offsetp, 1, byte_order);
18128 *offsetp += 1;
18129 f_minor = VALUE8(tvb, *offsetp);
18130 proto_tree_add_item(t, hf_x11_xinerama_QueryVersion_minor, tvb, *offsetp, 1, byte_order);
18131 *offsetp += 1;
18133 static void xineramaQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18135 int f_length, length, sequence_number;
18136 int f_major;
18137 int f_minor;
18139 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
18141 REPLY(reply);
18142 UNUSED(1);
18143 sequence_number = VALUE16(tvb, *offsetp);
18144 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18145 "sequencenumber: %d (xinerama-QueryVersion)", sequence_number);
18146 *offsetp += 2;
18147 f_length = VALUE32(tvb, *offsetp);
18148 length = f_length * 4 + 32;
18149 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18150 *offsetp += 4;
18151 f_major = VALUE16(tvb, *offsetp);
18152 proto_tree_add_item(t, hf_x11_xinerama_QueryVersion_reply_major, tvb, *offsetp, 2, byte_order);
18153 *offsetp += 2;
18154 f_minor = VALUE16(tvb, *offsetp);
18155 proto_tree_add_item(t, hf_x11_xinerama_QueryVersion_reply_minor, tvb, *offsetp, 2, byte_order);
18156 *offsetp += 2;
18159 static void xineramaGetState(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18161 int f_window;
18162 f_window = VALUE32(tvb, *offsetp);
18163 proto_tree_add_item(t, hf_x11_xinerama_GetState_window, tvb, *offsetp, 4, byte_order);
18164 *offsetp += 4;
18166 static void xineramaGetState_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18168 int f_length, length, sequence_number;
18169 int f_state;
18170 int f_window;
18172 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetState");
18174 REPLY(reply);
18175 f_state = VALUE8(tvb, *offsetp);
18176 proto_tree_add_item(t, hf_x11_xinerama_GetState_reply_state, tvb, *offsetp, 1, ENC_NA);
18177 *offsetp += 1;
18178 sequence_number = VALUE16(tvb, *offsetp);
18179 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18180 "sequencenumber: %d (xinerama-GetState)", sequence_number);
18181 *offsetp += 2;
18182 f_length = VALUE32(tvb, *offsetp);
18183 length = f_length * 4 + 32;
18184 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18185 *offsetp += 4;
18186 f_window = VALUE32(tvb, *offsetp);
18187 proto_tree_add_item(t, hf_x11_xinerama_GetState_reply_window, tvb, *offsetp, 4, byte_order);
18188 *offsetp += 4;
18191 static void xineramaGetScreenCount(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18193 int f_window;
18194 f_window = VALUE32(tvb, *offsetp);
18195 proto_tree_add_item(t, hf_x11_xinerama_GetScreenCount_window, tvb, *offsetp, 4, byte_order);
18196 *offsetp += 4;
18198 static void xineramaGetScreenCount_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18200 int f_length, length, sequence_number;
18201 int f_screen_count;
18202 int f_window;
18204 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenCount");
18206 REPLY(reply);
18207 f_screen_count = VALUE8(tvb, *offsetp);
18208 proto_tree_add_item(t, hf_x11_xinerama_GetScreenCount_reply_screen_count, tvb, *offsetp, 1, ENC_NA);
18209 *offsetp += 1;
18210 sequence_number = VALUE16(tvb, *offsetp);
18211 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18212 "sequencenumber: %d (xinerama-GetScreenCount)", sequence_number);
18213 *offsetp += 2;
18214 f_length = VALUE32(tvb, *offsetp);
18215 length = f_length * 4 + 32;
18216 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18217 *offsetp += 4;
18218 f_window = VALUE32(tvb, *offsetp);
18219 proto_tree_add_item(t, hf_x11_xinerama_GetScreenCount_reply_window, tvb, *offsetp, 4, byte_order);
18220 *offsetp += 4;
18223 static void xineramaGetScreenSize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18225 int f_window;
18226 int f_screen;
18227 f_window = VALUE32(tvb, *offsetp);
18228 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_window, tvb, *offsetp, 4, byte_order);
18229 *offsetp += 4;
18230 f_screen = VALUE32(tvb, *offsetp);
18231 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_screen, tvb, *offsetp, 4, byte_order);
18232 *offsetp += 4;
18234 static void xineramaGetScreenSize_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18236 int f_length, length, sequence_number;
18237 int f_width;
18238 int f_height;
18239 int f_window;
18240 int f_screen;
18242 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetScreenSize");
18244 REPLY(reply);
18245 UNUSED(1);
18246 sequence_number = VALUE16(tvb, *offsetp);
18247 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18248 "sequencenumber: %d (xinerama-GetScreenSize)", sequence_number);
18249 *offsetp += 2;
18250 f_length = VALUE32(tvb, *offsetp);
18251 length = f_length * 4 + 32;
18252 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18253 *offsetp += 4;
18254 f_width = VALUE32(tvb, *offsetp);
18255 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_reply_width, tvb, *offsetp, 4, byte_order);
18256 *offsetp += 4;
18257 f_height = VALUE32(tvb, *offsetp);
18258 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_reply_height, tvb, *offsetp, 4, byte_order);
18259 *offsetp += 4;
18260 f_window = VALUE32(tvb, *offsetp);
18261 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_reply_window, tvb, *offsetp, 4, byte_order);
18262 *offsetp += 4;
18263 f_screen = VALUE32(tvb, *offsetp);
18264 proto_tree_add_item(t, hf_x11_xinerama_GetScreenSize_reply_screen, tvb, *offsetp, 4, byte_order);
18265 *offsetp += 4;
18268 static void xineramaIsActive(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
18271 static void xineramaIsActive_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18273 int f_length, length, sequence_number;
18274 int f_state;
18276 col_append_fstr(pinfo->cinfo, COL_INFO, "-IsActive");
18278 REPLY(reply);
18279 UNUSED(1);
18280 sequence_number = VALUE16(tvb, *offsetp);
18281 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18282 "sequencenumber: %d (xinerama-IsActive)", sequence_number);
18283 *offsetp += 2;
18284 f_length = VALUE32(tvb, *offsetp);
18285 length = f_length * 4 + 32;
18286 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18287 *offsetp += 4;
18288 f_state = VALUE32(tvb, *offsetp);
18289 proto_tree_add_item(t, hf_x11_xinerama_IsActive_reply_state, tvb, *offsetp, 4, byte_order);
18290 *offsetp += 4;
18293 static void xineramaQueryScreens(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
18296 static void xineramaQueryScreens_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18298 int f_length, length, sequence_number;
18299 int f_number;
18301 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryScreens");
18303 REPLY(reply);
18304 UNUSED(1);
18305 sequence_number = VALUE16(tvb, *offsetp);
18306 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18307 "sequencenumber: %d (xinerama-QueryScreens)", sequence_number);
18308 *offsetp += 2;
18309 f_length = VALUE32(tvb, *offsetp);
18310 length = f_length * 4 + 32;
18311 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18312 *offsetp += 4;
18313 f_number = VALUE32(tvb, *offsetp);
18314 proto_tree_add_item(t, hf_x11_xinerama_QueryScreens_reply_number, tvb, *offsetp, 4, byte_order);
18315 *offsetp += 4;
18316 UNUSED(20);
18317 struct_ScreenInfo(tvb, offsetp, t, byte_order, f_number);
18319 static const value_string xinerama_extension_minor[] = {
18320 { 0, "QueryVersion" },
18321 { 1, "GetState" },
18322 { 2, "GetScreenCount" },
18323 { 3, "GetScreenSize" },
18324 { 4, "IsActive" },
18325 { 5, "QueryScreens" },
18326 { 0, NULL }
18328 const x11_event_info xinerama_events[] = {
18329 { NULL, NULL }
18331 static x11_reply_info xinerama_replies[] = {
18332 { 0, xineramaQueryVersion_Reply },
18333 { 1, xineramaGetState_Reply },
18334 { 2, xineramaGetScreenCount_Reply },
18335 { 3, xineramaGetScreenSize_Reply },
18336 { 4, xineramaIsActive_Reply },
18337 { 5, xineramaQueryScreens_Reply },
18338 { 0, NULL }
18341 static void dispatch_xinerama(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18343 int minor, length;
18344 minor = CARD8(xinerama_extension_minor);
18345 length = REQUEST_LENGTH();
18347 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
18348 val_to_str(minor, xinerama_extension_minor,
18349 "<Unknown opcode %d>"));
18350 switch (minor) {
18351 case 0:
18352 xineramaQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
18353 break;
18354 case 1:
18355 xineramaGetState(tvb, pinfo, offsetp, t, byte_order, length);
18356 break;
18357 case 2:
18358 xineramaGetScreenCount(tvb, pinfo, offsetp, t, byte_order, length);
18359 break;
18360 case 3:
18361 xineramaGetScreenSize(tvb, pinfo, offsetp, t, byte_order, length);
18362 break;
18363 case 4:
18364 xineramaIsActive(tvb, pinfo, offsetp, t, byte_order, length);
18365 break;
18366 case 5:
18367 xineramaQueryScreens(tvb, pinfo, offsetp, t, byte_order, length);
18368 break;
18369 /* No need for a default case here, since Unknown is printed above,
18370 and UNDECODED() is taken care of by dissect_x11_request */
18374 static void register_xinerama(void)
18376 set_handler("XINERAMA", dispatch_xinerama, xinerama_errors, xinerama_events, xinerama_replies);
18379 static void xinputGetExtensionVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18381 int f_name_len;
18382 f_name_len = VALUE16(tvb, *offsetp);
18383 proto_tree_add_item(t, hf_x11_xinput_GetExtensionVersion_name_len, tvb, *offsetp, 2, byte_order);
18384 *offsetp += 2;
18385 UNUSED(2);
18386 listOfByte(tvb, offsetp, t, hf_x11_xinput_GetExtensionVersion_name, f_name_len, byte_order);
18387 length -= f_name_len * 1;
18389 static void xinputGetExtensionVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18391 int f_length, length, sequence_number;
18392 int f_server_major;
18393 int f_server_minor;
18394 int f_present;
18396 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetExtensionVersion");
18398 REPLY(reply);
18399 UNUSED(1);
18400 sequence_number = VALUE16(tvb, *offsetp);
18401 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18402 "sequencenumber: %d (xinput-GetExtensionVersion)", sequence_number);
18403 *offsetp += 2;
18404 f_length = VALUE32(tvb, *offsetp);
18405 length = f_length * 4 + 32;
18406 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18407 *offsetp += 4;
18408 f_server_major = VALUE16(tvb, *offsetp);
18409 proto_tree_add_item(t, hf_x11_xinput_GetExtensionVersion_reply_server_major, tvb, *offsetp, 2, byte_order);
18410 *offsetp += 2;
18411 f_server_minor = VALUE16(tvb, *offsetp);
18412 proto_tree_add_item(t, hf_x11_xinput_GetExtensionVersion_reply_server_minor, tvb, *offsetp, 2, byte_order);
18413 *offsetp += 2;
18414 f_present = VALUE8(tvb, *offsetp);
18415 proto_tree_add_item(t, hf_x11_xinput_GetExtensionVersion_reply_present, tvb, *offsetp, 1, byte_order);
18416 *offsetp += 1;
18417 UNUSED(19);
18420 static void struct_DeviceInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
18422 int i;
18423 for (i = 0; i < count; i++) {
18424 proto_item *item;
18425 proto_tree *t;
18426 int f_device_type;
18427 int f_device_id;
18428 int f_num_class_info;
18429 int f_device_use;
18431 item = proto_tree_add_item(root, hf_x11_struct_DeviceInfo, tvb, *offsetp, 8, ENC_NA);
18432 t = proto_item_add_subtree(item, ett_x11_rectangle);
18433 f_device_type = VALUE32(tvb, *offsetp);
18434 proto_tree_add_item(t, hf_x11_struct_DeviceInfo_device_type, tvb, *offsetp, 4, byte_order);
18435 *offsetp += 4;
18436 f_device_id = VALUE8(tvb, *offsetp);
18437 proto_tree_add_item(t, hf_x11_struct_DeviceInfo_device_id, tvb, *offsetp, 1, byte_order);
18438 *offsetp += 1;
18439 f_num_class_info = VALUE8(tvb, *offsetp);
18440 proto_tree_add_item(t, hf_x11_struct_DeviceInfo_num_class_info, tvb, *offsetp, 1, byte_order);
18441 *offsetp += 1;
18442 f_device_use = field8(tvb, offsetp, t, hf_x11_struct_DeviceInfo_device_use, byte_order);
18443 UNUSED(1);
18447 static void xinputListInputDevices(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
18450 static void xinputListInputDevices_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18452 int f_length, length, sequence_number;
18453 int f_devices_len;
18455 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListInputDevices");
18457 REPLY(reply);
18458 UNUSED(1);
18459 sequence_number = VALUE16(tvb, *offsetp);
18460 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18461 "sequencenumber: %d (xinput-ListInputDevices)", sequence_number);
18462 *offsetp += 2;
18463 f_length = VALUE32(tvb, *offsetp);
18464 length = f_length * 4 + 32;
18465 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18466 *offsetp += 4;
18467 f_devices_len = VALUE8(tvb, *offsetp);
18468 proto_tree_add_item(t, hf_x11_xinput_ListInputDevices_reply_devices_len, tvb, *offsetp, 1, byte_order);
18469 *offsetp += 1;
18470 UNUSED(23);
18471 struct_DeviceInfo(tvb, offsetp, t, byte_order, f_devices_len);
18474 static void struct_InputClassInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
18476 int i;
18477 for (i = 0; i < count; i++) {
18478 proto_item *item;
18479 proto_tree *t;
18480 int f_class_id;
18481 int f_event_type_base;
18483 item = proto_tree_add_item(root, hf_x11_struct_InputClassInfo, tvb, *offsetp, 2, ENC_NA);
18484 t = proto_item_add_subtree(item, ett_x11_rectangle);
18485 f_class_id = field8(tvb, offsetp, t, hf_x11_struct_InputClassInfo_class_id, byte_order);
18486 f_event_type_base = VALUE8(tvb, *offsetp);
18487 proto_tree_add_item(t, hf_x11_struct_InputClassInfo_event_type_base, tvb, *offsetp, 1, byte_order);
18488 *offsetp += 1;
18492 static void xinputOpenDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18494 int f_device_id;
18495 f_device_id = VALUE8(tvb, *offsetp);
18496 proto_tree_add_item(t, hf_x11_xinput_OpenDevice_device_id, tvb, *offsetp, 1, byte_order);
18497 *offsetp += 1;
18498 UNUSED(3);
18500 static void xinputOpenDevice_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18502 int f_length, length, sequence_number;
18503 int f_num_classes;
18505 col_append_fstr(pinfo->cinfo, COL_INFO, "-OpenDevice");
18507 REPLY(reply);
18508 UNUSED(1);
18509 sequence_number = VALUE16(tvb, *offsetp);
18510 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18511 "sequencenumber: %d (xinput-OpenDevice)", sequence_number);
18512 *offsetp += 2;
18513 f_length = VALUE32(tvb, *offsetp);
18514 length = f_length * 4 + 32;
18515 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18516 *offsetp += 4;
18517 f_num_classes = VALUE8(tvb, *offsetp);
18518 proto_tree_add_item(t, hf_x11_xinput_OpenDevice_reply_num_classes, tvb, *offsetp, 1, byte_order);
18519 *offsetp += 1;
18520 UNUSED(23);
18521 struct_InputClassInfo(tvb, offsetp, t, byte_order, f_num_classes);
18524 static void xinputCloseDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18526 int f_device_id;
18527 f_device_id = VALUE8(tvb, *offsetp);
18528 proto_tree_add_item(t, hf_x11_xinput_CloseDevice_device_id, tvb, *offsetp, 1, byte_order);
18529 *offsetp += 1;
18530 UNUSED(3);
18533 static void xinputSetDeviceMode(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18535 int f_device_id;
18536 int f_mode;
18537 f_device_id = VALUE8(tvb, *offsetp);
18538 proto_tree_add_item(t, hf_x11_xinput_SetDeviceMode_device_id, tvb, *offsetp, 1, byte_order);
18539 *offsetp += 1;
18540 f_mode = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceMode_mode, byte_order);
18541 UNUSED(2);
18543 static void xinputSetDeviceMode_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18545 int f_length, length, sequence_number;
18546 int f_status;
18548 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetDeviceMode");
18550 REPLY(reply);
18551 UNUSED(1);
18552 sequence_number = VALUE16(tvb, *offsetp);
18553 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18554 "sequencenumber: %d (xinput-SetDeviceMode)", sequence_number);
18555 *offsetp += 2;
18556 f_length = VALUE32(tvb, *offsetp);
18557 length = f_length * 4 + 32;
18558 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18559 *offsetp += 4;
18560 f_status = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceMode_reply_status, byte_order);
18561 UNUSED(23);
18564 static void xinputSelectExtensionEvent(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18566 int f_window;
18567 int f_num_classes;
18568 f_window = VALUE32(tvb, *offsetp);
18569 proto_tree_add_item(t, hf_x11_xinput_SelectExtensionEvent_window, tvb, *offsetp, 4, byte_order);
18570 *offsetp += 4;
18571 f_num_classes = VALUE16(tvb, *offsetp);
18572 proto_tree_add_item(t, hf_x11_xinput_SelectExtensionEvent_num_classes, tvb, *offsetp, 2, byte_order);
18573 *offsetp += 2;
18574 UNUSED(2);
18575 listOfCard32(tvb, offsetp, t, hf_x11_xinput_SelectExtensionEvent_classes, hf_x11_xinput_SelectExtensionEvent_classes_item, f_num_classes, byte_order);
18576 length -= f_num_classes * 4;
18579 static void xinputGetSelectedExtensionEvents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18581 int f_window;
18582 f_window = VALUE32(tvb, *offsetp);
18583 proto_tree_add_item(t, hf_x11_xinput_GetSelectedExtensionEvents_window, tvb, *offsetp, 4, byte_order);
18584 *offsetp += 4;
18586 static void xinputGetSelectedExtensionEvents_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18588 int f_length, length, sequence_number;
18589 int f_num_this_classes;
18590 int f_num_all_classes;
18592 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSelectedExtensionEvents");
18594 REPLY(reply);
18595 UNUSED(1);
18596 sequence_number = VALUE16(tvb, *offsetp);
18597 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18598 "sequencenumber: %d (xinput-GetSelectedExtensionEvents)", sequence_number);
18599 *offsetp += 2;
18600 f_length = VALUE32(tvb, *offsetp);
18601 length = f_length * 4 + 32;
18602 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18603 *offsetp += 4;
18604 f_num_this_classes = VALUE16(tvb, *offsetp);
18605 proto_tree_add_item(t, hf_x11_xinput_GetSelectedExtensionEvents_reply_num_this_classes, tvb, *offsetp, 2, byte_order);
18606 *offsetp += 2;
18607 f_num_all_classes = VALUE16(tvb, *offsetp);
18608 proto_tree_add_item(t, hf_x11_xinput_GetSelectedExtensionEvents_reply_num_all_classes, tvb, *offsetp, 2, byte_order);
18609 *offsetp += 2;
18610 UNUSED(20);
18611 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);
18612 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);
18615 static void xinputChangeDeviceDontPropagateList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18617 int f_window;
18618 int f_num_classes;
18619 int f_mode;
18620 f_window = VALUE32(tvb, *offsetp);
18621 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceDontPropagateList_window, tvb, *offsetp, 4, byte_order);
18622 *offsetp += 4;
18623 f_num_classes = VALUE16(tvb, *offsetp);
18624 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceDontPropagateList_num_classes, tvb, *offsetp, 2, byte_order);
18625 *offsetp += 2;
18626 f_mode = field8(tvb, offsetp, t, hf_x11_xinput_ChangeDeviceDontPropagateList_mode, byte_order);
18627 UNUSED(1);
18628 listOfCard32(tvb, offsetp, t, hf_x11_xinput_ChangeDeviceDontPropagateList_classes, hf_x11_xinput_ChangeDeviceDontPropagateList_classes_item, f_num_classes, byte_order);
18629 length -= f_num_classes * 4;
18632 static void xinputGetDeviceDontPropagateList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18634 int f_window;
18635 f_window = VALUE32(tvb, *offsetp);
18636 proto_tree_add_item(t, hf_x11_xinput_GetDeviceDontPropagateList_window, tvb, *offsetp, 4, byte_order);
18637 *offsetp += 4;
18639 static void xinputGetDeviceDontPropagateList_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18641 int f_length, length, sequence_number;
18642 int f_num_classes;
18644 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceDontPropagateList");
18646 REPLY(reply);
18647 UNUSED(1);
18648 sequence_number = VALUE16(tvb, *offsetp);
18649 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18650 "sequencenumber: %d (xinput-GetDeviceDontPropagateList)", sequence_number);
18651 *offsetp += 2;
18652 f_length = VALUE32(tvb, *offsetp);
18653 length = f_length * 4 + 32;
18654 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18655 *offsetp += 4;
18656 f_num_classes = VALUE16(tvb, *offsetp);
18657 proto_tree_add_item(t, hf_x11_xinput_GetDeviceDontPropagateList_reply_num_classes, tvb, *offsetp, 2, byte_order);
18658 *offsetp += 2;
18659 UNUSED(22);
18660 listOfCard32(tvb, offsetp, t, hf_x11_xinput_GetDeviceDontPropagateList_reply_classes, hf_x11_xinput_GetDeviceDontPropagateList_reply_classes_item, f_num_classes, byte_order);
18663 static void xinputGetDeviceMotionEvents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18665 int f_start;
18666 int f_stop;
18667 int f_device_id;
18668 f_start = VALUE32(tvb, *offsetp);
18669 proto_tree_add_item(t, hf_x11_xinput_GetDeviceMotionEvents_start, tvb, *offsetp, 4, byte_order);
18670 *offsetp += 4;
18671 f_stop = field32(tvb, offsetp, t, hf_x11_xinput_GetDeviceMotionEvents_stop, byte_order);
18672 f_device_id = VALUE8(tvb, *offsetp);
18673 proto_tree_add_item(t, hf_x11_xinput_GetDeviceMotionEvents_device_id, tvb, *offsetp, 1, byte_order);
18674 *offsetp += 1;
18676 static void xinputGetDeviceMotionEvents_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18678 int f_length, length, sequence_number;
18679 int f_num_coords;
18680 int f_num_axes;
18681 int f_device_mode;
18683 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceMotionEvents");
18685 REPLY(reply);
18686 UNUSED(1);
18687 sequence_number = VALUE16(tvb, *offsetp);
18688 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18689 "sequencenumber: %d (xinput-GetDeviceMotionEvents)", sequence_number);
18690 *offsetp += 2;
18691 f_length = VALUE32(tvb, *offsetp);
18692 length = f_length * 4 + 32;
18693 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18694 *offsetp += 4;
18695 f_num_coords = VALUE32(tvb, *offsetp);
18696 proto_tree_add_item(t, hf_x11_xinput_GetDeviceMotionEvents_reply_num_coords, tvb, *offsetp, 4, byte_order);
18697 *offsetp += 4;
18698 f_num_axes = VALUE8(tvb, *offsetp);
18699 proto_tree_add_item(t, hf_x11_xinput_GetDeviceMotionEvents_reply_num_axes, tvb, *offsetp, 1, byte_order);
18700 *offsetp += 1;
18701 f_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GetDeviceMotionEvents_reply_device_mode, byte_order);
18702 UNUSED(18);
18705 static void xinputChangeKeyboardDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18707 int f_device_id;
18708 f_device_id = VALUE8(tvb, *offsetp);
18709 proto_tree_add_item(t, hf_x11_xinput_ChangeKeyboardDevice_device_id, tvb, *offsetp, 1, byte_order);
18710 *offsetp += 1;
18711 UNUSED(3);
18713 static void xinputChangeKeyboardDevice_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18715 int f_length, length, sequence_number;
18716 int f_status;
18718 col_append_fstr(pinfo->cinfo, COL_INFO, "-ChangeKeyboardDevice");
18720 REPLY(reply);
18721 UNUSED(1);
18722 sequence_number = VALUE16(tvb, *offsetp);
18723 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18724 "sequencenumber: %d (xinput-ChangeKeyboardDevice)", sequence_number);
18725 *offsetp += 2;
18726 f_length = VALUE32(tvb, *offsetp);
18727 length = f_length * 4 + 32;
18728 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18729 *offsetp += 4;
18730 f_status = field8(tvb, offsetp, t, hf_x11_xinput_ChangeKeyboardDevice_reply_status, byte_order);
18731 UNUSED(23);
18734 static void xinputChangePointerDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18736 int f_x_axis;
18737 int f_y_axis;
18738 int f_device_id;
18739 f_x_axis = VALUE8(tvb, *offsetp);
18740 proto_tree_add_item(t, hf_x11_xinput_ChangePointerDevice_x_axis, tvb, *offsetp, 1, byte_order);
18741 *offsetp += 1;
18742 f_y_axis = VALUE8(tvb, *offsetp);
18743 proto_tree_add_item(t, hf_x11_xinput_ChangePointerDevice_y_axis, tvb, *offsetp, 1, byte_order);
18744 *offsetp += 1;
18745 f_device_id = VALUE8(tvb, *offsetp);
18746 proto_tree_add_item(t, hf_x11_xinput_ChangePointerDevice_device_id, tvb, *offsetp, 1, byte_order);
18747 *offsetp += 1;
18748 UNUSED(1);
18750 static void xinputChangePointerDevice_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18752 int f_length, length, sequence_number;
18753 int f_status;
18755 col_append_fstr(pinfo->cinfo, COL_INFO, "-ChangePointerDevice");
18757 REPLY(reply);
18758 UNUSED(1);
18759 sequence_number = VALUE16(tvb, *offsetp);
18760 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18761 "sequencenumber: %d (xinput-ChangePointerDevice)", sequence_number);
18762 *offsetp += 2;
18763 f_length = VALUE32(tvb, *offsetp);
18764 length = f_length * 4 + 32;
18765 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18766 *offsetp += 4;
18767 f_status = field8(tvb, offsetp, t, hf_x11_xinput_ChangePointerDevice_reply_status, byte_order);
18768 UNUSED(23);
18771 static void xinputGrabDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18773 int f_grab_window;
18774 int f_time;
18775 int f_num_classes;
18776 int f_this_device_mode;
18777 int f_other_device_mode;
18778 int f_owner_events;
18779 int f_device_id;
18780 f_grab_window = VALUE32(tvb, *offsetp);
18781 proto_tree_add_item(t, hf_x11_xinput_GrabDevice_grab_window, tvb, *offsetp, 4, byte_order);
18782 *offsetp += 4;
18783 f_time = field32(tvb, offsetp, t, hf_x11_xinput_GrabDevice_time, byte_order);
18784 f_num_classes = VALUE16(tvb, *offsetp);
18785 proto_tree_add_item(t, hf_x11_xinput_GrabDevice_num_classes, tvb, *offsetp, 2, byte_order);
18786 *offsetp += 2;
18787 f_this_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDevice_this_device_mode, byte_order);
18788 f_other_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDevice_other_device_mode, byte_order);
18789 f_owner_events = VALUE8(tvb, *offsetp);
18790 proto_tree_add_item(t, hf_x11_xinput_GrabDevice_owner_events, tvb, *offsetp, 1, byte_order);
18791 *offsetp += 1;
18792 f_device_id = VALUE8(tvb, *offsetp);
18793 proto_tree_add_item(t, hf_x11_xinput_GrabDevice_device_id, tvb, *offsetp, 1, byte_order);
18794 *offsetp += 1;
18795 UNUSED(2);
18796 listOfCard32(tvb, offsetp, t, hf_x11_xinput_GrabDevice_classes, hf_x11_xinput_GrabDevice_classes_item, f_num_classes, byte_order);
18797 length -= f_num_classes * 4;
18799 static void xinputGrabDevice_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
18801 int f_length, length, sequence_number;
18802 int f_status;
18804 col_append_fstr(pinfo->cinfo, COL_INFO, "-GrabDevice");
18806 REPLY(reply);
18807 UNUSED(1);
18808 sequence_number = VALUE16(tvb, *offsetp);
18809 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
18810 "sequencenumber: %d (xinput-GrabDevice)", sequence_number);
18811 *offsetp += 2;
18812 f_length = VALUE32(tvb, *offsetp);
18813 length = f_length * 4 + 32;
18814 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
18815 *offsetp += 4;
18816 f_status = field8(tvb, offsetp, t, hf_x11_xinput_GrabDevice_reply_status, byte_order);
18817 UNUSED(23);
18820 static void xinputUngrabDevice(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18822 int f_time;
18823 int f_device_id;
18824 f_time = field32(tvb, offsetp, t, hf_x11_xinput_UngrabDevice_time, byte_order);
18825 f_device_id = VALUE8(tvb, *offsetp);
18826 proto_tree_add_item(t, hf_x11_xinput_UngrabDevice_device_id, tvb, *offsetp, 1, byte_order);
18827 *offsetp += 1;
18830 static void xinputGrabDeviceKey(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18832 int f_grab_window;
18833 int f_num_classes;
18834 int f_modifiers;
18835 int f_modifier_device;
18836 int f_grabbed_device;
18837 int f_key;
18838 int f_this_device_mode;
18839 int f_other_device_mode;
18840 int f_owner_events;
18841 f_grab_window = VALUE32(tvb, *offsetp);
18842 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_grab_window, tvb, *offsetp, 4, byte_order);
18843 *offsetp += 4;
18844 f_num_classes = VALUE16(tvb, *offsetp);
18845 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_num_classes, tvb, *offsetp, 2, byte_order);
18846 *offsetp += 2;
18847 f_modifiers = VALUE16(tvb, *offsetp);
18849 proto_item *ti = proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_modifiers, tvb, *offsetp, 2, byte_order);
18850 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
18851 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_Shift, tvb, *offsetp, 2, byte_order);
18852 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_Lock, tvb, *offsetp, 2, byte_order);
18853 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_Control, tvb, *offsetp, 2, byte_order);
18854 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_1, tvb, *offsetp, 2, byte_order);
18855 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_2, tvb, *offsetp, 2, byte_order);
18856 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_3, tvb, *offsetp, 2, byte_order);
18857 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_4, tvb, *offsetp, 2, byte_order);
18858 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_5, tvb, *offsetp, 2, byte_order);
18859 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceKey_modifiers_mask_Any, tvb, *offsetp, 2, byte_order);
18861 *offsetp += 2;
18862 f_modifier_device = VALUE8(tvb, *offsetp);
18863 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_modifier_device, tvb, *offsetp, 1, byte_order);
18864 *offsetp += 1;
18865 f_grabbed_device = VALUE8(tvb, *offsetp);
18866 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_grabbed_device, tvb, *offsetp, 1, byte_order);
18867 *offsetp += 1;
18868 f_key = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceKey_key, byte_order);
18869 f_this_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceKey_this_device_mode, byte_order);
18870 f_other_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceKey_other_device_mode, byte_order);
18871 f_owner_events = VALUE8(tvb, *offsetp);
18872 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceKey_owner_events, tvb, *offsetp, 1, byte_order);
18873 *offsetp += 1;
18874 UNUSED(2);
18875 listOfCard32(tvb, offsetp, t, hf_x11_xinput_GrabDeviceKey_classes, hf_x11_xinput_GrabDeviceKey_classes_item, f_num_classes, byte_order);
18876 length -= f_num_classes * 4;
18879 static void xinputUngrabDeviceKey(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18881 int f_grabWindow;
18882 int f_modifiers;
18883 int f_modifier_device;
18884 int f_key;
18885 int f_grabbed_device;
18886 f_grabWindow = VALUE32(tvb, *offsetp);
18887 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceKey_grabWindow, tvb, *offsetp, 4, byte_order);
18888 *offsetp += 4;
18889 f_modifiers = VALUE16(tvb, *offsetp);
18891 proto_item *ti = proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceKey_modifiers, tvb, *offsetp, 2, byte_order);
18892 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
18893 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Shift, tvb, *offsetp, 2, byte_order);
18894 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Lock, tvb, *offsetp, 2, byte_order);
18895 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Control, tvb, *offsetp, 2, byte_order);
18896 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_1, tvb, *offsetp, 2, byte_order);
18897 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_2, tvb, *offsetp, 2, byte_order);
18898 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_3, tvb, *offsetp, 2, byte_order);
18899 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_4, tvb, *offsetp, 2, byte_order);
18900 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_5, tvb, *offsetp, 2, byte_order);
18901 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceKey_modifiers_mask_Any, tvb, *offsetp, 2, byte_order);
18903 *offsetp += 2;
18904 f_modifier_device = VALUE8(tvb, *offsetp);
18905 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceKey_modifier_device, tvb, *offsetp, 1, byte_order);
18906 *offsetp += 1;
18907 f_key = field8(tvb, offsetp, t, hf_x11_xinput_UngrabDeviceKey_key, byte_order);
18908 f_grabbed_device = VALUE8(tvb, *offsetp);
18909 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceKey_grabbed_device, tvb, *offsetp, 1, byte_order);
18910 *offsetp += 1;
18913 static void xinputGrabDeviceButton(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18915 int f_grab_window;
18916 int f_grabbed_device;
18917 int f_modifier_device;
18918 int f_num_classes;
18919 int f_modifiers;
18920 int f_this_device_mode;
18921 int f_other_device_mode;
18922 int f_button;
18923 int f_owner_events;
18924 f_grab_window = VALUE32(tvb, *offsetp);
18925 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_grab_window, tvb, *offsetp, 4, byte_order);
18926 *offsetp += 4;
18927 f_grabbed_device = VALUE8(tvb, *offsetp);
18928 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_grabbed_device, tvb, *offsetp, 1, byte_order);
18929 *offsetp += 1;
18930 f_modifier_device = VALUE8(tvb, *offsetp);
18931 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_modifier_device, tvb, *offsetp, 1, byte_order);
18932 *offsetp += 1;
18933 f_num_classes = VALUE16(tvb, *offsetp);
18934 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_num_classes, tvb, *offsetp, 2, byte_order);
18935 *offsetp += 2;
18936 f_modifiers = VALUE16(tvb, *offsetp);
18938 proto_item *ti = proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_modifiers, tvb, *offsetp, 2, byte_order);
18939 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
18940 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_Shift, tvb, *offsetp, 2, byte_order);
18941 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_Lock, tvb, *offsetp, 2, byte_order);
18942 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_Control, tvb, *offsetp, 2, byte_order);
18943 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_1, tvb, *offsetp, 2, byte_order);
18944 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_2, tvb, *offsetp, 2, byte_order);
18945 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_3, tvb, *offsetp, 2, byte_order);
18946 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_4, tvb, *offsetp, 2, byte_order);
18947 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_5, tvb, *offsetp, 2, byte_order);
18948 proto_tree_add_item(bitmask_tree, hf_x11_xinput_GrabDeviceButton_modifiers_mask_Any, tvb, *offsetp, 2, byte_order);
18950 *offsetp += 2;
18951 f_this_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceButton_this_device_mode, byte_order);
18952 f_other_device_mode = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceButton_other_device_mode, byte_order);
18953 f_button = field8(tvb, offsetp, t, hf_x11_xinput_GrabDeviceButton_button, byte_order);
18954 f_owner_events = VALUE8(tvb, *offsetp);
18955 proto_tree_add_item(t, hf_x11_xinput_GrabDeviceButton_owner_events, tvb, *offsetp, 1, byte_order);
18956 *offsetp += 1;
18957 UNUSED(2);
18958 listOfCard32(tvb, offsetp, t, hf_x11_xinput_GrabDeviceButton_classes, hf_x11_xinput_GrabDeviceButton_classes_item, f_num_classes, byte_order);
18959 length -= f_num_classes * 4;
18962 static void xinputUngrabDeviceButton(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18964 int f_grab_window;
18965 int f_modifiers;
18966 int f_modifier_device;
18967 int f_button;
18968 int f_grabbed_device;
18969 f_grab_window = VALUE32(tvb, *offsetp);
18970 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceButton_grab_window, tvb, *offsetp, 4, byte_order);
18971 *offsetp += 4;
18972 f_modifiers = VALUE16(tvb, *offsetp);
18974 proto_item *ti = proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceButton_modifiers, tvb, *offsetp, 2, byte_order);
18975 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
18976 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Shift, tvb, *offsetp, 2, byte_order);
18977 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Lock, tvb, *offsetp, 2, byte_order);
18978 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Control, tvb, *offsetp, 2, byte_order);
18979 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_1, tvb, *offsetp, 2, byte_order);
18980 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_2, tvb, *offsetp, 2, byte_order);
18981 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_3, tvb, *offsetp, 2, byte_order);
18982 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_4, tvb, *offsetp, 2, byte_order);
18983 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_5, tvb, *offsetp, 2, byte_order);
18984 proto_tree_add_item(bitmask_tree, hf_x11_xinput_UngrabDeviceButton_modifiers_mask_Any, tvb, *offsetp, 2, byte_order);
18986 *offsetp += 2;
18987 f_modifier_device = VALUE8(tvb, *offsetp);
18988 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceButton_modifier_device, tvb, *offsetp, 1, byte_order);
18989 *offsetp += 1;
18990 f_button = field8(tvb, offsetp, t, hf_x11_xinput_UngrabDeviceButton_button, byte_order);
18991 f_grabbed_device = VALUE8(tvb, *offsetp);
18992 proto_tree_add_item(t, hf_x11_xinput_UngrabDeviceButton_grabbed_device, tvb, *offsetp, 1, byte_order);
18993 *offsetp += 1;
18996 static void xinputAllowDeviceEvents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
18998 int f_time;
18999 int f_mode;
19000 int f_device_id;
19001 f_time = field32(tvb, offsetp, t, hf_x11_xinput_AllowDeviceEvents_time, byte_order);
19002 f_mode = field8(tvb, offsetp, t, hf_x11_xinput_AllowDeviceEvents_mode, byte_order);
19003 f_device_id = VALUE8(tvb, *offsetp);
19004 proto_tree_add_item(t, hf_x11_xinput_AllowDeviceEvents_device_id, tvb, *offsetp, 1, byte_order);
19005 *offsetp += 1;
19008 static void xinputGetDeviceFocus(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19010 int f_device_id;
19011 f_device_id = VALUE8(tvb, *offsetp);
19012 proto_tree_add_item(t, hf_x11_xinput_GetDeviceFocus_device_id, tvb, *offsetp, 1, byte_order);
19013 *offsetp += 1;
19014 UNUSED(3);
19016 static void xinputGetDeviceFocus_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19018 int f_length, length, sequence_number;
19019 int f_focus;
19020 int f_time;
19021 int f_revert_to;
19023 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceFocus");
19025 REPLY(reply);
19026 UNUSED(1);
19027 sequence_number = VALUE16(tvb, *offsetp);
19028 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19029 "sequencenumber: %d (xinput-GetDeviceFocus)", sequence_number);
19030 *offsetp += 2;
19031 f_length = VALUE32(tvb, *offsetp);
19032 length = f_length * 4 + 32;
19033 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19034 *offsetp += 4;
19035 f_focus = field32(tvb, offsetp, t, hf_x11_xinput_GetDeviceFocus_reply_focus, byte_order);
19036 f_time = VALUE32(tvb, *offsetp);
19037 proto_tree_add_item(t, hf_x11_xinput_GetDeviceFocus_reply_time, tvb, *offsetp, 4, byte_order);
19038 *offsetp += 4;
19039 f_revert_to = field8(tvb, offsetp, t, hf_x11_xinput_GetDeviceFocus_reply_revert_to, byte_order);
19040 UNUSED(15);
19043 static void xinputSetDeviceFocus(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19045 int f_focus;
19046 int f_time;
19047 int f_revert_to;
19048 int f_device_id;
19049 f_focus = field32(tvb, offsetp, t, hf_x11_xinput_SetDeviceFocus_focus, byte_order);
19050 f_time = field32(tvb, offsetp, t, hf_x11_xinput_SetDeviceFocus_time, byte_order);
19051 f_revert_to = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceFocus_revert_to, byte_order);
19052 f_device_id = VALUE8(tvb, *offsetp);
19053 proto_tree_add_item(t, hf_x11_xinput_SetDeviceFocus_device_id, tvb, *offsetp, 1, byte_order);
19054 *offsetp += 1;
19057 static void xinputGetFeedbackControl(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19059 int f_device_id;
19060 f_device_id = VALUE8(tvb, *offsetp);
19061 proto_tree_add_item(t, hf_x11_xinput_GetFeedbackControl_device_id, tvb, *offsetp, 1, byte_order);
19062 *offsetp += 1;
19063 UNUSED(3);
19065 static void xinputGetFeedbackControl_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19067 int f_length, length, sequence_number;
19068 int f_num_feedback;
19070 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetFeedbackControl");
19072 REPLY(reply);
19073 UNUSED(1);
19074 sequence_number = VALUE16(tvb, *offsetp);
19075 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19076 "sequencenumber: %d (xinput-GetFeedbackControl)", sequence_number);
19077 *offsetp += 2;
19078 f_length = VALUE32(tvb, *offsetp);
19079 length = f_length * 4 + 32;
19080 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19081 *offsetp += 4;
19082 f_num_feedback = VALUE16(tvb, *offsetp);
19083 proto_tree_add_item(t, hf_x11_xinput_GetFeedbackControl_reply_num_feedback, tvb, *offsetp, 2, byte_order);
19084 *offsetp += 2;
19085 UNUSED(22);
19088 static void xinputGetDeviceKeyMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19090 int f_device_id;
19091 int f_first_keycode;
19092 int f_count;
19093 f_device_id = VALUE8(tvb, *offsetp);
19094 proto_tree_add_item(t, hf_x11_xinput_GetDeviceKeyMapping_device_id, tvb, *offsetp, 1, byte_order);
19095 *offsetp += 1;
19096 f_first_keycode = VALUE8(tvb, *offsetp);
19097 proto_tree_add_item(t, hf_x11_xinput_GetDeviceKeyMapping_first_keycode, tvb, *offsetp, 1, byte_order);
19098 *offsetp += 1;
19099 f_count = VALUE8(tvb, *offsetp);
19100 proto_tree_add_item(t, hf_x11_xinput_GetDeviceKeyMapping_count, tvb, *offsetp, 1, byte_order);
19101 *offsetp += 1;
19103 static void xinputGetDeviceKeyMapping_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19105 int f_length, length, sequence_number;
19106 int f_keysyms_per_keycode;
19108 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceKeyMapping");
19110 REPLY(reply);
19111 UNUSED(1);
19112 sequence_number = VALUE16(tvb, *offsetp);
19113 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19114 "sequencenumber: %d (xinput-GetDeviceKeyMapping)", sequence_number);
19115 *offsetp += 2;
19116 f_length = VALUE32(tvb, *offsetp);
19117 length = f_length * 4 + 32;
19118 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19119 *offsetp += 4;
19120 f_keysyms_per_keycode = VALUE8(tvb, *offsetp);
19121 proto_tree_add_item(t, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms_per_keycode, tvb, *offsetp, 1, byte_order);
19122 *offsetp += 1;
19123 UNUSED(23);
19124 listOfCard32(tvb, offsetp, t, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms, hf_x11_xinput_GetDeviceKeyMapping_reply_keysyms_item, f_length, byte_order);
19127 static void xinputChangeDeviceKeyMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19129 int f_device_id;
19130 int f_first_keycode;
19131 int f_keysyms_per_keycode;
19132 int f_keycode_count;
19133 f_device_id = VALUE8(tvb, *offsetp);
19134 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceKeyMapping_device_id, tvb, *offsetp, 1, byte_order);
19135 *offsetp += 1;
19136 f_first_keycode = VALUE8(tvb, *offsetp);
19137 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceKeyMapping_first_keycode, tvb, *offsetp, 1, byte_order);
19138 *offsetp += 1;
19139 f_keysyms_per_keycode = VALUE8(tvb, *offsetp);
19140 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms_per_keycode, tvb, *offsetp, 1, byte_order);
19141 *offsetp += 1;
19142 f_keycode_count = VALUE8(tvb, *offsetp);
19143 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceKeyMapping_keycode_count, tvb, *offsetp, 1, byte_order);
19144 *offsetp += 1;
19145 listOfCard32(tvb, offsetp, t, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms, hf_x11_xinput_ChangeDeviceKeyMapping_keysyms_item, (f_keycode_count * f_keysyms_per_keycode), byte_order);
19146 length -= (f_keycode_count * f_keysyms_per_keycode) * 4;
19149 static void xinputGetDeviceModifierMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19151 int f_device_id;
19152 f_device_id = VALUE8(tvb, *offsetp);
19153 proto_tree_add_item(t, hf_x11_xinput_GetDeviceModifierMapping_device_id, tvb, *offsetp, 1, byte_order);
19154 *offsetp += 1;
19155 UNUSED(3);
19157 static void xinputGetDeviceModifierMapping_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19159 int f_length, length, sequence_number;
19160 int f_keycodes_per_modifier;
19162 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceModifierMapping");
19164 REPLY(reply);
19165 UNUSED(1);
19166 sequence_number = VALUE16(tvb, *offsetp);
19167 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19168 "sequencenumber: %d (xinput-GetDeviceModifierMapping)", sequence_number);
19169 *offsetp += 2;
19170 f_length = VALUE32(tvb, *offsetp);
19171 length = f_length * 4 + 32;
19172 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19173 *offsetp += 4;
19174 f_keycodes_per_modifier = VALUE8(tvb, *offsetp);
19175 proto_tree_add_item(t, hf_x11_xinput_GetDeviceModifierMapping_reply_keycodes_per_modifier, tvb, *offsetp, 1, byte_order);
19176 *offsetp += 1;
19177 UNUSED(23);
19178 listOfByte(tvb, offsetp, t, hf_x11_xinput_GetDeviceModifierMapping_reply_keymaps, (f_keycodes_per_modifier * 8), byte_order);
19181 static void xinputSetDeviceModifierMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19183 int f_device_id;
19184 int f_keycodes_per_modifier;
19185 f_device_id = VALUE8(tvb, *offsetp);
19186 proto_tree_add_item(t, hf_x11_xinput_SetDeviceModifierMapping_device_id, tvb, *offsetp, 1, byte_order);
19187 *offsetp += 1;
19188 f_keycodes_per_modifier = VALUE8(tvb, *offsetp);
19189 proto_tree_add_item(t, hf_x11_xinput_SetDeviceModifierMapping_keycodes_per_modifier, tvb, *offsetp, 1, byte_order);
19190 *offsetp += 1;
19191 UNUSED(1);
19192 listOfByte(tvb, offsetp, t, hf_x11_xinput_SetDeviceModifierMapping_keymaps, (f_keycodes_per_modifier * 8), byte_order);
19193 length -= (f_keycodes_per_modifier * 8) * 1;
19195 static void xinputSetDeviceModifierMapping_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19197 int f_length, length, sequence_number;
19198 int f_status;
19200 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetDeviceModifierMapping");
19202 REPLY(reply);
19203 UNUSED(1);
19204 sequence_number = VALUE16(tvb, *offsetp);
19205 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19206 "sequencenumber: %d (xinput-SetDeviceModifierMapping)", sequence_number);
19207 *offsetp += 2;
19208 f_length = VALUE32(tvb, *offsetp);
19209 length = f_length * 4 + 32;
19210 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19211 *offsetp += 4;
19212 f_status = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceModifierMapping_reply_status, byte_order);
19213 UNUSED(23);
19216 static void xinputGetDeviceButtonMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19218 int f_device_id;
19219 f_device_id = VALUE8(tvb, *offsetp);
19220 proto_tree_add_item(t, hf_x11_xinput_GetDeviceButtonMapping_device_id, tvb, *offsetp, 1, byte_order);
19221 *offsetp += 1;
19222 UNUSED(3);
19224 static void xinputGetDeviceButtonMapping_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19226 int f_length, length, sequence_number;
19227 int f_map_size;
19229 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceButtonMapping");
19231 REPLY(reply);
19232 UNUSED(1);
19233 sequence_number = VALUE16(tvb, *offsetp);
19234 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19235 "sequencenumber: %d (xinput-GetDeviceButtonMapping)", sequence_number);
19236 *offsetp += 2;
19237 f_length = VALUE32(tvb, *offsetp);
19238 length = f_length * 4 + 32;
19239 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19240 *offsetp += 4;
19241 f_map_size = VALUE8(tvb, *offsetp);
19242 proto_tree_add_item(t, hf_x11_xinput_GetDeviceButtonMapping_reply_map_size, tvb, *offsetp, 1, byte_order);
19243 *offsetp += 1;
19244 UNUSED(23);
19245 listOfByte(tvb, offsetp, t, hf_x11_xinput_GetDeviceButtonMapping_reply_map, f_map_size, byte_order);
19248 static void xinputSetDeviceButtonMapping(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19250 int f_device_id;
19251 int f_map_size;
19252 f_device_id = VALUE8(tvb, *offsetp);
19253 proto_tree_add_item(t, hf_x11_xinput_SetDeviceButtonMapping_device_id, tvb, *offsetp, 1, byte_order);
19254 *offsetp += 1;
19255 f_map_size = VALUE8(tvb, *offsetp);
19256 proto_tree_add_item(t, hf_x11_xinput_SetDeviceButtonMapping_map_size, tvb, *offsetp, 1, byte_order);
19257 *offsetp += 1;
19258 UNUSED(2);
19259 listOfByte(tvb, offsetp, t, hf_x11_xinput_SetDeviceButtonMapping_map, f_map_size, byte_order);
19260 length -= f_map_size * 1;
19262 static void xinputSetDeviceButtonMapping_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19264 int f_length, length, sequence_number;
19265 int f_status;
19267 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetDeviceButtonMapping");
19269 REPLY(reply);
19270 UNUSED(1);
19271 sequence_number = VALUE16(tvb, *offsetp);
19272 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19273 "sequencenumber: %d (xinput-SetDeviceButtonMapping)", sequence_number);
19274 *offsetp += 2;
19275 f_length = VALUE32(tvb, *offsetp);
19276 length = f_length * 4 + 32;
19277 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19278 *offsetp += 4;
19279 f_status = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceButtonMapping_reply_status, byte_order);
19280 UNUSED(23);
19283 static void xinputQueryDeviceState(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19285 int f_device_id;
19286 f_device_id = VALUE8(tvb, *offsetp);
19287 proto_tree_add_item(t, hf_x11_xinput_QueryDeviceState_device_id, tvb, *offsetp, 1, byte_order);
19288 *offsetp += 1;
19289 UNUSED(3);
19291 static void xinputQueryDeviceState_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19293 int f_length, length, sequence_number;
19294 int f_num_classes;
19296 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryDeviceState");
19298 REPLY(reply);
19299 UNUSED(1);
19300 sequence_number = VALUE16(tvb, *offsetp);
19301 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19302 "sequencenumber: %d (xinput-QueryDeviceState)", sequence_number);
19303 *offsetp += 2;
19304 f_length = VALUE32(tvb, *offsetp);
19305 length = f_length * 4 + 32;
19306 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19307 *offsetp += 4;
19308 f_num_classes = VALUE8(tvb, *offsetp);
19309 proto_tree_add_item(t, hf_x11_xinput_QueryDeviceState_reply_num_classes, tvb, *offsetp, 1, byte_order);
19310 *offsetp += 1;
19311 UNUSED(23);
19314 static void xinputSendExtensionEvent(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19316 int f_destination;
19317 int f_device_id;
19318 int f_propagate;
19319 int f_num_classes;
19320 int f_num_events;
19321 f_destination = VALUE32(tvb, *offsetp);
19322 proto_tree_add_item(t, hf_x11_xinput_SendExtensionEvent_destination, tvb, *offsetp, 4, byte_order);
19323 *offsetp += 4;
19324 f_device_id = VALUE8(tvb, *offsetp);
19325 proto_tree_add_item(t, hf_x11_xinput_SendExtensionEvent_device_id, tvb, *offsetp, 1, byte_order);
19326 *offsetp += 1;
19327 f_propagate = VALUE8(tvb, *offsetp);
19328 proto_tree_add_item(t, hf_x11_xinput_SendExtensionEvent_propagate, tvb, *offsetp, 1, byte_order);
19329 *offsetp += 1;
19330 f_num_classes = VALUE16(tvb, *offsetp);
19331 proto_tree_add_item(t, hf_x11_xinput_SendExtensionEvent_num_classes, tvb, *offsetp, 2, byte_order);
19332 *offsetp += 2;
19333 f_num_events = VALUE8(tvb, *offsetp);
19334 proto_tree_add_item(t, hf_x11_xinput_SendExtensionEvent_num_events, tvb, *offsetp, 1, byte_order);
19335 *offsetp += 1;
19336 UNUSED(3);
19337 listOfByte(tvb, offsetp, t, hf_x11_xinput_SendExtensionEvent_events, (f_num_events * 32), byte_order);
19338 length -= (f_num_events * 32) * 1;
19339 listOfCard32(tvb, offsetp, t, hf_x11_xinput_SendExtensionEvent_classes, hf_x11_xinput_SendExtensionEvent_classes_item, f_num_classes, byte_order);
19340 length -= f_num_classes * 4;
19343 static void xinputDeviceBell(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19345 int f_device_id;
19346 int f_feedback_id;
19347 int f_feedback_class;
19348 int f_percent;
19349 f_device_id = VALUE8(tvb, *offsetp);
19350 proto_tree_add_item(t, hf_x11_xinput_DeviceBell_device_id, tvb, *offsetp, 1, byte_order);
19351 *offsetp += 1;
19352 f_feedback_id = VALUE8(tvb, *offsetp);
19353 proto_tree_add_item(t, hf_x11_xinput_DeviceBell_feedback_id, tvb, *offsetp, 1, byte_order);
19354 *offsetp += 1;
19355 f_feedback_class = VALUE8(tvb, *offsetp);
19356 proto_tree_add_item(t, hf_x11_xinput_DeviceBell_feedback_class, tvb, *offsetp, 1, byte_order);
19357 *offsetp += 1;
19358 f_percent = VALUE8(tvb, *offsetp);
19359 proto_tree_add_item(t, hf_x11_xinput_DeviceBell_percent, tvb, *offsetp, 1, byte_order);
19360 *offsetp += 1;
19363 static void xinputSetDeviceValuators(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19365 int f_device_id;
19366 int f_first_valuator;
19367 int f_num_valuators;
19368 f_device_id = VALUE8(tvb, *offsetp);
19369 proto_tree_add_item(t, hf_x11_xinput_SetDeviceValuators_device_id, tvb, *offsetp, 1, byte_order);
19370 *offsetp += 1;
19371 f_first_valuator = VALUE8(tvb, *offsetp);
19372 proto_tree_add_item(t, hf_x11_xinput_SetDeviceValuators_first_valuator, tvb, *offsetp, 1, byte_order);
19373 *offsetp += 1;
19374 f_num_valuators = VALUE8(tvb, *offsetp);
19375 proto_tree_add_item(t, hf_x11_xinput_SetDeviceValuators_num_valuators, tvb, *offsetp, 1, byte_order);
19376 *offsetp += 1;
19377 UNUSED(1);
19378 listOfInt32(tvb, offsetp, t, hf_x11_xinput_SetDeviceValuators_valuators, hf_x11_xinput_SetDeviceValuators_valuators_item, f_num_valuators, byte_order);
19379 length -= f_num_valuators * 4;
19381 static void xinputSetDeviceValuators_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19383 int f_length, length, sequence_number;
19384 int f_status;
19386 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetDeviceValuators");
19388 REPLY(reply);
19389 UNUSED(1);
19390 sequence_number = VALUE16(tvb, *offsetp);
19391 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19392 "sequencenumber: %d (xinput-SetDeviceValuators)", sequence_number);
19393 *offsetp += 2;
19394 f_length = VALUE32(tvb, *offsetp);
19395 length = f_length * 4 + 32;
19396 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19397 *offsetp += 4;
19398 f_status = field8(tvb, offsetp, t, hf_x11_xinput_SetDeviceValuators_reply_status, byte_order);
19399 UNUSED(23);
19402 static void xinputGetDeviceControl(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
19404 int f_control_id;
19405 int f_device_id;
19406 f_control_id = VALUE16(tvb, *offsetp);
19407 proto_tree_add_item(t, hf_x11_xinput_GetDeviceControl_control_id, tvb, *offsetp, 2, byte_order);
19408 *offsetp += 2;
19409 f_device_id = VALUE8(tvb, *offsetp);
19410 proto_tree_add_item(t, hf_x11_xinput_GetDeviceControl_device_id, tvb, *offsetp, 1, byte_order);
19411 *offsetp += 1;
19412 UNUSED(1);
19414 static void xinputGetDeviceControl_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19416 int f_length, length, sequence_number;
19417 int f_status;
19419 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceControl");
19421 REPLY(reply);
19422 UNUSED(1);
19423 sequence_number = VALUE16(tvb, *offsetp);
19424 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
19425 "sequencenumber: %d (xinput-GetDeviceControl)", sequence_number);
19426 *offsetp += 2;
19427 f_length = VALUE32(tvb, *offsetp);
19428 length = f_length * 4 + 32;
19429 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
19430 *offsetp += 4;
19431 f_status = field8(tvb, offsetp, t, hf_x11_xinput_GetDeviceControl_reply_status, byte_order);
19432 UNUSED(23);
19435 static void xinputDeviceValuator(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19437 int f_device_id;
19438 int f_device_state;
19439 int f_num_valuators;
19440 int f_first_valuator;
19441 f_device_id = VALUE8(tvb, *offsetp);
19442 proto_tree_add_item(t, hf_x11_xinput_DeviceValuator_device_id, tvb, *offsetp, 1, byte_order);
19443 *offsetp += 1;
19444 CARD16(event_sequencenumber);
19445 f_device_state = VALUE16(tvb, *offsetp);
19446 proto_tree_add_item(t, hf_x11_xinput_DeviceValuator_device_state, tvb, *offsetp, 2, byte_order);
19447 *offsetp += 2;
19448 f_num_valuators = VALUE8(tvb, *offsetp);
19449 proto_tree_add_item(t, hf_x11_xinput_DeviceValuator_num_valuators, tvb, *offsetp, 1, byte_order);
19450 *offsetp += 1;
19451 f_first_valuator = VALUE8(tvb, *offsetp);
19452 proto_tree_add_item(t, hf_x11_xinput_DeviceValuator_first_valuator, tvb, *offsetp, 1, byte_order);
19453 *offsetp += 1;
19454 listOfInt32(tvb, offsetp, t, hf_x11_xinput_DeviceValuator_valuators, hf_x11_xinput_DeviceValuator_valuators_item, 6, byte_order);
19457 static void xinputDeviceKeyPress(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19459 int f_detail;
19460 int f_time;
19461 int f_root;
19462 int f_event;
19463 int f_child;
19464 int f_root_x;
19465 int f_root_y;
19466 int f_event_x;
19467 int f_event_y;
19468 int f_state;
19469 int f_same_screen;
19470 int f_device_id;
19471 f_detail = VALUE8(tvb, *offsetp);
19472 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_detail, tvb, *offsetp, 1, ENC_NA);
19473 *offsetp += 1;
19474 CARD16(event_sequencenumber);
19475 f_time = VALUE32(tvb, *offsetp);
19476 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_time, tvb, *offsetp, 4, byte_order);
19477 *offsetp += 4;
19478 f_root = VALUE32(tvb, *offsetp);
19479 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_root, tvb, *offsetp, 4, byte_order);
19480 *offsetp += 4;
19481 f_event = VALUE32(tvb, *offsetp);
19482 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_event, tvb, *offsetp, 4, byte_order);
19483 *offsetp += 4;
19484 f_child = field32(tvb, offsetp, t, hf_x11_xinput_DeviceKeyPress_child, byte_order);
19485 f_root_x = VALUE16(tvb, *offsetp);
19486 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_root_x, tvb, *offsetp, 2, byte_order);
19487 *offsetp += 2;
19488 f_root_y = VALUE16(tvb, *offsetp);
19489 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_root_y, tvb, *offsetp, 2, byte_order);
19490 *offsetp += 2;
19491 f_event_x = VALUE16(tvb, *offsetp);
19492 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_event_x, tvb, *offsetp, 2, byte_order);
19493 *offsetp += 2;
19494 f_event_y = VALUE16(tvb, *offsetp);
19495 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_event_y, tvb, *offsetp, 2, byte_order);
19496 *offsetp += 2;
19497 f_state = VALUE16(tvb, *offsetp);
19498 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_state, tvb, *offsetp, 2, byte_order);
19499 *offsetp += 2;
19500 f_same_screen = VALUE8(tvb, *offsetp);
19501 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_same_screen, tvb, *offsetp, 1, byte_order);
19502 *offsetp += 1;
19503 f_device_id = VALUE8(tvb, *offsetp);
19504 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyPress_device_id, tvb, *offsetp, 1, byte_order);
19505 *offsetp += 1;
19508 static void xinputFocusIn(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19510 int f_detail;
19511 int f_time;
19512 int f_window;
19513 int f_mode;
19514 int f_device_id;
19515 f_detail = field8(tvb, offsetp, t, hf_x11_xinput_FocusIn_detail, byte_order);
19516 CARD16(event_sequencenumber);
19517 f_time = VALUE32(tvb, *offsetp);
19518 proto_tree_add_item(t, hf_x11_xinput_FocusIn_time, tvb, *offsetp, 4, byte_order);
19519 *offsetp += 4;
19520 f_window = VALUE32(tvb, *offsetp);
19521 proto_tree_add_item(t, hf_x11_xinput_FocusIn_window, tvb, *offsetp, 4, byte_order);
19522 *offsetp += 4;
19523 f_mode = field8(tvb, offsetp, t, hf_x11_xinput_FocusIn_mode, byte_order);
19524 f_device_id = VALUE8(tvb, *offsetp);
19525 proto_tree_add_item(t, hf_x11_xinput_FocusIn_device_id, tvb, *offsetp, 1, byte_order);
19526 *offsetp += 1;
19527 UNUSED(18);
19530 static void xinputDeviceStateNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19532 int f_device_id;
19533 int f_time;
19534 int f_num_keys;
19535 int f_num_buttons;
19536 int f_num_valuators;
19537 int f_classes_reported;
19538 f_device_id = VALUE8(tvb, *offsetp);
19539 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19540 *offsetp += 1;
19541 CARD16(event_sequencenumber);
19542 f_time = VALUE32(tvb, *offsetp);
19543 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_time, tvb, *offsetp, 4, byte_order);
19544 *offsetp += 4;
19545 f_num_keys = VALUE8(tvb, *offsetp);
19546 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_num_keys, tvb, *offsetp, 1, byte_order);
19547 *offsetp += 1;
19548 f_num_buttons = VALUE8(tvb, *offsetp);
19549 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_num_buttons, tvb, *offsetp, 1, byte_order);
19550 *offsetp += 1;
19551 f_num_valuators = VALUE8(tvb, *offsetp);
19552 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_num_valuators, tvb, *offsetp, 1, byte_order);
19553 *offsetp += 1;
19554 f_classes_reported = VALUE8(tvb, *offsetp);
19555 proto_tree_add_item(t, hf_x11_xinput_DeviceStateNotify_classes_reported, tvb, *offsetp, 1, byte_order);
19556 *offsetp += 1;
19557 listOfByte(tvb, offsetp, t, hf_x11_xinput_DeviceStateNotify_buttons, 4, byte_order);
19558 listOfByte(tvb, offsetp, t, hf_x11_xinput_DeviceStateNotify_keys, 4, byte_order);
19559 listOfCard32(tvb, offsetp, t, hf_x11_xinput_DeviceStateNotify_valuators, hf_x11_xinput_DeviceStateNotify_valuators_item, 3, byte_order);
19562 static void xinputDeviceMappingNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19564 int f_device_id;
19565 int f_request;
19566 int f_first_keycode;
19567 int f_count;
19568 int f_time;
19569 f_device_id = VALUE8(tvb, *offsetp);
19570 proto_tree_add_item(t, hf_x11_xinput_DeviceMappingNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19571 *offsetp += 1;
19572 CARD16(event_sequencenumber);
19573 f_request = VALUE8(tvb, *offsetp);
19574 proto_tree_add_item(t, hf_x11_xinput_DeviceMappingNotify_request, tvb, *offsetp, 1, byte_order);
19575 *offsetp += 1;
19576 f_first_keycode = VALUE8(tvb, *offsetp);
19577 proto_tree_add_item(t, hf_x11_xinput_DeviceMappingNotify_first_keycode, tvb, *offsetp, 1, byte_order);
19578 *offsetp += 1;
19579 f_count = VALUE8(tvb, *offsetp);
19580 proto_tree_add_item(t, hf_x11_xinput_DeviceMappingNotify_count, tvb, *offsetp, 1, byte_order);
19581 *offsetp += 1;
19582 UNUSED(1);
19583 f_time = VALUE32(tvb, *offsetp);
19584 proto_tree_add_item(t, hf_x11_xinput_DeviceMappingNotify_time, tvb, *offsetp, 4, byte_order);
19585 *offsetp += 4;
19586 UNUSED(20);
19589 static void xinputChangeDeviceNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19591 int f_device_id;
19592 int f_time;
19593 int f_request;
19594 f_device_id = VALUE8(tvb, *offsetp);
19595 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19596 *offsetp += 1;
19597 CARD16(event_sequencenumber);
19598 f_time = VALUE32(tvb, *offsetp);
19599 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceNotify_time, tvb, *offsetp, 4, byte_order);
19600 *offsetp += 4;
19601 f_request = VALUE8(tvb, *offsetp);
19602 proto_tree_add_item(t, hf_x11_xinput_ChangeDeviceNotify_request, tvb, *offsetp, 1, byte_order);
19603 *offsetp += 1;
19604 UNUSED(23);
19607 static void xinputDeviceKeyStateNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19609 int f_device_id;
19610 f_device_id = VALUE8(tvb, *offsetp);
19611 proto_tree_add_item(t, hf_x11_xinput_DeviceKeyStateNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19612 *offsetp += 1;
19613 CARD16(event_sequencenumber);
19614 listOfByte(tvb, offsetp, t, hf_x11_xinput_DeviceKeyStateNotify_keys, 28, byte_order);
19617 static void xinputDeviceButtonStateNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19619 int f_device_id;
19620 f_device_id = VALUE8(tvb, *offsetp);
19621 proto_tree_add_item(t, hf_x11_xinput_DeviceButtonStateNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19622 *offsetp += 1;
19623 CARD16(event_sequencenumber);
19624 listOfByte(tvb, offsetp, t, hf_x11_xinput_DeviceButtonStateNotify_buttons, 28, byte_order);
19627 static void xinputDevicePresenceNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
19629 int f_time;
19630 int f_devchange;
19631 int f_device_id;
19632 int f_control;
19633 UNUSED(1);
19634 CARD16(event_sequencenumber);
19635 f_time = VALUE32(tvb, *offsetp);
19636 proto_tree_add_item(t, hf_x11_xinput_DevicePresenceNotify_time, tvb, *offsetp, 4, byte_order);
19637 *offsetp += 4;
19638 f_devchange = VALUE8(tvb, *offsetp);
19639 proto_tree_add_item(t, hf_x11_xinput_DevicePresenceNotify_devchange, tvb, *offsetp, 1, ENC_NA);
19640 *offsetp += 1;
19641 f_device_id = VALUE8(tvb, *offsetp);
19642 proto_tree_add_item(t, hf_x11_xinput_DevicePresenceNotify_device_id, tvb, *offsetp, 1, ENC_NA);
19643 *offsetp += 1;
19644 f_control = VALUE16(tvb, *offsetp);
19645 proto_tree_add_item(t, hf_x11_xinput_DevicePresenceNotify_control, tvb, *offsetp, 2, byte_order);
19646 *offsetp += 2;
19647 UNUSED(20);
19649 static const value_string xinput_extension_minor[] = {
19650 { 1, "GetExtensionVersion" },
19651 { 2, "ListInputDevices" },
19652 { 3, "OpenDevice" },
19653 { 4, "CloseDevice" },
19654 { 5, "SetDeviceMode" },
19655 { 6, "SelectExtensionEvent" },
19656 { 7, "GetSelectedExtensionEvents" },
19657 { 8, "ChangeDeviceDontPropagateList" },
19658 { 9, "GetDeviceDontPropagateList" },
19659 { 10, "GetDeviceMotionEvents" },
19660 { 11, "ChangeKeyboardDevice" },
19661 { 12, "ChangePointerDevice" },
19662 { 13, "GrabDevice" },
19663 { 14, "UngrabDevice" },
19664 { 15, "GrabDeviceKey" },
19665 { 16, "UngrabDeviceKey" },
19666 { 17, "GrabDeviceButton" },
19667 { 18, "UngrabDeviceButton" },
19668 { 19, "AllowDeviceEvents" },
19669 { 20, "GetDeviceFocus" },
19670 { 21, "SetDeviceFocus" },
19671 { 22, "GetFeedbackControl" },
19672 { 24, "GetDeviceKeyMapping" },
19673 { 25, "ChangeDeviceKeyMapping" },
19674 { 26, "GetDeviceModifierMapping" },
19675 { 27, "SetDeviceModifierMapping" },
19676 { 28, "GetDeviceButtonMapping" },
19677 { 29, "SetDeviceButtonMapping" },
19678 { 30, "QueryDeviceState" },
19679 { 31, "SendExtensionEvent" },
19680 { 32, "DeviceBell" },
19681 { 33, "SetDeviceValuators" },
19682 { 34, "GetDeviceControl" },
19683 { 0, NULL }
19685 const x11_event_info xinput_events[] = {
19686 { "xinput-DeviceValuator", xinputDeviceValuator },
19687 { "xinput-DeviceKeyPress", xinputDeviceKeyPress },
19688 { "xinput-FocusIn", xinputFocusIn },
19689 { "xinput-DeviceStateNotify", xinputDeviceStateNotify },
19690 { "xinput-DeviceMappingNotify", xinputDeviceMappingNotify },
19691 { "xinput-ChangeDeviceNotify", xinputChangeDeviceNotify },
19692 { "xinput-DeviceKeyStateNotify", xinputDeviceKeyStateNotify },
19693 { "xinput-DeviceButtonStateNotify", xinputDeviceButtonStateNotify },
19694 { "xinput-DevicePresenceNotify", xinputDevicePresenceNotify },
19695 { NULL, NULL }
19697 static x11_reply_info xinput_replies[] = {
19698 { 1, xinputGetExtensionVersion_Reply },
19699 { 2, xinputListInputDevices_Reply },
19700 { 3, xinputOpenDevice_Reply },
19701 { 5, xinputSetDeviceMode_Reply },
19702 { 7, xinputGetSelectedExtensionEvents_Reply },
19703 { 9, xinputGetDeviceDontPropagateList_Reply },
19704 { 10, xinputGetDeviceMotionEvents_Reply },
19705 { 11, xinputChangeKeyboardDevice_Reply },
19706 { 12, xinputChangePointerDevice_Reply },
19707 { 13, xinputGrabDevice_Reply },
19708 { 20, xinputGetDeviceFocus_Reply },
19709 { 22, xinputGetFeedbackControl_Reply },
19710 { 24, xinputGetDeviceKeyMapping_Reply },
19711 { 26, xinputGetDeviceModifierMapping_Reply },
19712 { 27, xinputSetDeviceModifierMapping_Reply },
19713 { 28, xinputGetDeviceButtonMapping_Reply },
19714 { 29, xinputSetDeviceButtonMapping_Reply },
19715 { 30, xinputQueryDeviceState_Reply },
19716 { 33, xinputSetDeviceValuators_Reply },
19717 { 34, xinputGetDeviceControl_Reply },
19718 { 0, NULL }
19721 static void dispatch_xinput(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
19723 int minor, length;
19724 minor = CARD8(xinput_extension_minor);
19725 length = REQUEST_LENGTH();
19727 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
19728 val_to_str(minor, xinput_extension_minor,
19729 "<Unknown opcode %d>"));
19730 switch (minor) {
19731 case 1:
19732 xinputGetExtensionVersion(tvb, pinfo, offsetp, t, byte_order, length);
19733 break;
19734 case 2:
19735 xinputListInputDevices(tvb, pinfo, offsetp, t, byte_order, length);
19736 break;
19737 case 3:
19738 xinputOpenDevice(tvb, pinfo, offsetp, t, byte_order, length);
19739 break;
19740 case 4:
19741 xinputCloseDevice(tvb, pinfo, offsetp, t, byte_order, length);
19742 break;
19743 case 5:
19744 xinputSetDeviceMode(tvb, pinfo, offsetp, t, byte_order, length);
19745 break;
19746 case 6:
19747 xinputSelectExtensionEvent(tvb, pinfo, offsetp, t, byte_order, length);
19748 break;
19749 case 7:
19750 xinputGetSelectedExtensionEvents(tvb, pinfo, offsetp, t, byte_order, length);
19751 break;
19752 case 8:
19753 xinputChangeDeviceDontPropagateList(tvb, pinfo, offsetp, t, byte_order, length);
19754 break;
19755 case 9:
19756 xinputGetDeviceDontPropagateList(tvb, pinfo, offsetp, t, byte_order, length);
19757 break;
19758 case 10:
19759 xinputGetDeviceMotionEvents(tvb, pinfo, offsetp, t, byte_order, length);
19760 break;
19761 case 11:
19762 xinputChangeKeyboardDevice(tvb, pinfo, offsetp, t, byte_order, length);
19763 break;
19764 case 12:
19765 xinputChangePointerDevice(tvb, pinfo, offsetp, t, byte_order, length);
19766 break;
19767 case 13:
19768 xinputGrabDevice(tvb, pinfo, offsetp, t, byte_order, length);
19769 break;
19770 case 14:
19771 xinputUngrabDevice(tvb, pinfo, offsetp, t, byte_order, length);
19772 break;
19773 case 15:
19774 xinputGrabDeviceKey(tvb, pinfo, offsetp, t, byte_order, length);
19775 break;
19776 case 16:
19777 xinputUngrabDeviceKey(tvb, pinfo, offsetp, t, byte_order, length);
19778 break;
19779 case 17:
19780 xinputGrabDeviceButton(tvb, pinfo, offsetp, t, byte_order, length);
19781 break;
19782 case 18:
19783 xinputUngrabDeviceButton(tvb, pinfo, offsetp, t, byte_order, length);
19784 break;
19785 case 19:
19786 xinputAllowDeviceEvents(tvb, pinfo, offsetp, t, byte_order, length);
19787 break;
19788 case 20:
19789 xinputGetDeviceFocus(tvb, pinfo, offsetp, t, byte_order, length);
19790 break;
19791 case 21:
19792 xinputSetDeviceFocus(tvb, pinfo, offsetp, t, byte_order, length);
19793 break;
19794 case 22:
19795 xinputGetFeedbackControl(tvb, pinfo, offsetp, t, byte_order, length);
19796 break;
19797 case 24:
19798 xinputGetDeviceKeyMapping(tvb, pinfo, offsetp, t, byte_order, length);
19799 break;
19800 case 25:
19801 xinputChangeDeviceKeyMapping(tvb, pinfo, offsetp, t, byte_order, length);
19802 break;
19803 case 26:
19804 xinputGetDeviceModifierMapping(tvb, pinfo, offsetp, t, byte_order, length);
19805 break;
19806 case 27:
19807 xinputSetDeviceModifierMapping(tvb, pinfo, offsetp, t, byte_order, length);
19808 break;
19809 case 28:
19810 xinputGetDeviceButtonMapping(tvb, pinfo, offsetp, t, byte_order, length);
19811 break;
19812 case 29:
19813 xinputSetDeviceButtonMapping(tvb, pinfo, offsetp, t, byte_order, length);
19814 break;
19815 case 30:
19816 xinputQueryDeviceState(tvb, pinfo, offsetp, t, byte_order, length);
19817 break;
19818 case 31:
19819 xinputSendExtensionEvent(tvb, pinfo, offsetp, t, byte_order, length);
19820 break;
19821 case 32:
19822 xinputDeviceBell(tvb, pinfo, offsetp, t, byte_order, length);
19823 break;
19824 case 33:
19825 xinputSetDeviceValuators(tvb, pinfo, offsetp, t, byte_order, length);
19826 break;
19827 case 34:
19828 xinputGetDeviceControl(tvb, pinfo, offsetp, t, byte_order, length);
19829 break;
19830 /* No need for a default case here, since Unknown is printed above,
19831 and UNDECODED() is taken care of by dissect_x11_request */
19835 static void register_xinput(void)
19837 set_handler("XInputExtension", dispatch_xinput, xinput_errors, xinput_events, xinput_replies);
19840 static void struct_AXOption(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order, int count)
19842 int i;
19843 int base = *offsetp;
19844 for (i = 0; i < count; i++) {
19845 proto_item *item;
19846 proto_tree *t;
19847 int f_fbopt;
19848 int f_skopt;
19849 item = proto_tree_add_item(root, hf_x11_union_AXOption, tvb, base, 2, ENC_NA);
19850 t = proto_item_add_subtree(item, ett_x11_rectangle);
19852 *offsetp = base;
19853 f_fbopt = field16(tvb, offsetp, t, hf_x11_union_AXOption_fbopt, byte_order);
19854 *offsetp = base;
19855 f_skopt = field16(tvb, offsetp, t, hf_x11_union_AXOption_skopt, byte_order);
19856 base += 2;
19858 *offsetp = base;
19861 static void struct_IndicatorMap(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
19863 int i;
19864 for (i = 0; i < count; i++) {
19865 proto_item *item;
19866 proto_tree *t;
19867 int f_flags;
19868 int f_whichGroups;
19869 int f_groups;
19870 int f_whichMods;
19871 int f_mods;
19872 int f_realMods;
19873 int f_vmods;
19874 int f_ctrls;
19876 item = proto_tree_add_item(root, hf_x11_struct_IndicatorMap, tvb, *offsetp, 12, ENC_NA);
19877 t = proto_item_add_subtree(item, ett_x11_rectangle);
19878 f_flags = field8(tvb, offsetp, t, hf_x11_struct_IndicatorMap_flags, byte_order);
19879 f_whichGroups = field8(tvb, offsetp, t, hf_x11_struct_IndicatorMap_whichGroups, byte_order);
19880 f_groups = field8(tvb, offsetp, t, hf_x11_struct_IndicatorMap_groups, byte_order);
19881 f_whichMods = field8(tvb, offsetp, t, hf_x11_struct_IndicatorMap_whichMods, byte_order);
19882 f_mods = VALUE8(tvb, *offsetp);
19884 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_IndicatorMap_mods, tvb, *offsetp, 1, byte_order);
19885 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19886 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
19887 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
19888 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_Control, tvb, *offsetp, 1, byte_order);
19889 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_1, tvb, *offsetp, 1, byte_order);
19890 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_2, tvb, *offsetp, 1, byte_order);
19891 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_3, tvb, *offsetp, 1, byte_order);
19892 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_4, tvb, *offsetp, 1, byte_order);
19893 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_5, tvb, *offsetp, 1, byte_order);
19894 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_mods_mask_Any, tvb, *offsetp, 1, byte_order);
19896 *offsetp += 1;
19897 f_realMods = VALUE8(tvb, *offsetp);
19899 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_IndicatorMap_realMods, tvb, *offsetp, 1, byte_order);
19900 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19901 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
19902 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
19903 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
19904 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_1, tvb, *offsetp, 1, byte_order);
19905 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_2, tvb, *offsetp, 1, byte_order);
19906 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_3, tvb, *offsetp, 1, byte_order);
19907 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_4, tvb, *offsetp, 1, byte_order);
19908 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_5, tvb, *offsetp, 1, byte_order);
19909 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
19911 *offsetp += 1;
19912 f_vmods = VALUE16(tvb, *offsetp);
19914 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_IndicatorMap_vmods, tvb, *offsetp, 2, byte_order);
19915 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19916 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_0, tvb, *offsetp, 2, byte_order);
19917 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_1, tvb, *offsetp, 2, byte_order);
19918 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_2, tvb, *offsetp, 2, byte_order);
19919 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_3, tvb, *offsetp, 2, byte_order);
19920 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_4, tvb, *offsetp, 2, byte_order);
19921 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_5, tvb, *offsetp, 2, byte_order);
19922 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_6, tvb, *offsetp, 2, byte_order);
19923 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_7, tvb, *offsetp, 2, byte_order);
19924 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_8, tvb, *offsetp, 2, byte_order);
19925 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_9, tvb, *offsetp, 2, byte_order);
19926 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_10, tvb, *offsetp, 2, byte_order);
19927 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_11, tvb, *offsetp, 2, byte_order);
19928 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_12, tvb, *offsetp, 2, byte_order);
19929 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_13, tvb, *offsetp, 2, byte_order);
19930 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_14, tvb, *offsetp, 2, byte_order);
19931 proto_tree_add_item(bitmask_tree, hf_x11_struct_IndicatorMap_vmods_mask_15, tvb, *offsetp, 2, byte_order);
19933 *offsetp += 2;
19934 f_ctrls = field32(tvb, offsetp, t, hf_x11_struct_IndicatorMap_ctrls, byte_order);
19938 static void struct_ModDef(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
19940 int i;
19941 for (i = 0; i < count; i++) {
19942 proto_item *item;
19943 proto_tree *t;
19944 int f_mask;
19945 int f_realMods;
19946 int f_vmods;
19948 item = proto_tree_add_item(root, hf_x11_struct_ModDef, tvb, *offsetp, 4, ENC_NA);
19949 t = proto_item_add_subtree(item, ett_x11_rectangle);
19950 f_mask = VALUE8(tvb, *offsetp);
19952 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_ModDef_mask, tvb, *offsetp, 1, byte_order);
19953 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19954 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
19955 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
19956 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_Control, tvb, *offsetp, 1, byte_order);
19957 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_1, tvb, *offsetp, 1, byte_order);
19958 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_2, tvb, *offsetp, 1, byte_order);
19959 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_3, tvb, *offsetp, 1, byte_order);
19960 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_4, tvb, *offsetp, 1, byte_order);
19961 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_5, tvb, *offsetp, 1, byte_order);
19962 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_mask_mask_Any, tvb, *offsetp, 1, byte_order);
19964 *offsetp += 1;
19965 f_realMods = VALUE8(tvb, *offsetp);
19967 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_ModDef_realMods, tvb, *offsetp, 1, byte_order);
19968 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19969 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
19970 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
19971 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
19972 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_1, tvb, *offsetp, 1, byte_order);
19973 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_2, tvb, *offsetp, 1, byte_order);
19974 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_3, tvb, *offsetp, 1, byte_order);
19975 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_4, tvb, *offsetp, 1, byte_order);
19976 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_5, tvb, *offsetp, 1, byte_order);
19977 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
19979 *offsetp += 1;
19980 f_vmods = VALUE16(tvb, *offsetp);
19982 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_ModDef_vmods, tvb, *offsetp, 2, byte_order);
19983 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
19984 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_0, tvb, *offsetp, 2, byte_order);
19985 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_1, tvb, *offsetp, 2, byte_order);
19986 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_2, tvb, *offsetp, 2, byte_order);
19987 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_3, tvb, *offsetp, 2, byte_order);
19988 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_4, tvb, *offsetp, 2, byte_order);
19989 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_5, tvb, *offsetp, 2, byte_order);
19990 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_6, tvb, *offsetp, 2, byte_order);
19991 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_7, tvb, *offsetp, 2, byte_order);
19992 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_8, tvb, *offsetp, 2, byte_order);
19993 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_9, tvb, *offsetp, 2, byte_order);
19994 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_10, tvb, *offsetp, 2, byte_order);
19995 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_11, tvb, *offsetp, 2, byte_order);
19996 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_12, tvb, *offsetp, 2, byte_order);
19997 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_13, tvb, *offsetp, 2, byte_order);
19998 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_14, tvb, *offsetp, 2, byte_order);
19999 proto_tree_add_item(bitmask_tree, hf_x11_struct_ModDef_vmods_mask_15, tvb, *offsetp, 2, byte_order);
20001 *offsetp += 2;
20005 static void struct_KeyName(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20007 int i;
20008 for (i = 0; i < count; i++) {
20009 proto_item *item;
20010 proto_tree *t;
20012 item = proto_tree_add_item(root, hf_x11_struct_KeyName, tvb, *offsetp, 1, ENC_NA);
20013 t = proto_item_add_subtree(item, ett_x11_rectangle);
20014 listOfByte(tvb, offsetp, t, hf_x11_struct_KeyName_name, 4, byte_order);
20018 static void struct_KeyAlias(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20020 int i;
20021 for (i = 0; i < count; i++) {
20022 proto_item *item;
20023 proto_tree *t;
20025 item = proto_tree_add_item(root, hf_x11_struct_KeyAlias, tvb, *offsetp, 2, ENC_NA);
20026 t = proto_item_add_subtree(item, ett_x11_rectangle);
20027 listOfByte(tvb, offsetp, t, hf_x11_struct_KeyAlias_real, 4, byte_order);
20028 listOfByte(tvb, offsetp, t, hf_x11_struct_KeyAlias_alias, 4, byte_order);
20032 static int struct_size_CountedString16(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20034 int size = 0;
20035 int f_length;
20036 f_length = VALUE16(tvb, *offsetp + size + 0);
20037 size += f_length * 1;
20038 return size + 3;
20041 static void struct_CountedString16(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20043 int i;
20044 for (i = 0; i < count; i++) {
20045 proto_item *item;
20046 proto_tree *t;
20047 int f_length;
20049 item = proto_tree_add_item(root, hf_x11_struct_CountedString16, tvb, *offsetp, struct_size_CountedString16(tvb, offsetp, byte_order), ENC_NA);
20050 t = proto_item_add_subtree(item, ett_x11_rectangle);
20051 f_length = VALUE16(tvb, *offsetp);
20052 proto_tree_add_item(t, hf_x11_struct_CountedString16_length, tvb, *offsetp, 2, byte_order);
20053 *offsetp += 2;
20054 listOfByte(tvb, offsetp, t, hf_x11_struct_CountedString16_string, f_length, byte_order);
20055 UNUSED(1);
20059 static void struct_KTMapEntry(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20061 int i;
20062 for (i = 0; i < count; i++) {
20063 proto_item *item;
20064 proto_tree *t;
20065 int f_active;
20066 int f_level;
20067 int f_mods_mask;
20068 int f_mods_mods;
20069 int f_mods_vmods;
20071 item = proto_tree_add_item(root, hf_x11_struct_KTMapEntry, tvb, *offsetp, 8, ENC_NA);
20072 t = proto_item_add_subtree(item, ett_x11_rectangle);
20073 f_active = VALUE8(tvb, *offsetp);
20074 proto_tree_add_item(t, hf_x11_struct_KTMapEntry_active, tvb, *offsetp, 1, byte_order);
20075 *offsetp += 1;
20076 f_level = VALUE8(tvb, *offsetp);
20077 proto_tree_add_item(t, hf_x11_struct_KTMapEntry_level, tvb, *offsetp, 1, byte_order);
20078 *offsetp += 1;
20079 f_mods_mask = VALUE8(tvb, *offsetp);
20081 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KTMapEntry_mods_mask, tvb, *offsetp, 1, byte_order);
20082 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20083 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
20084 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
20085 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_Control, tvb, *offsetp, 1, byte_order);
20086 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_1, tvb, *offsetp, 1, byte_order);
20087 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_2, tvb, *offsetp, 1, byte_order);
20088 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_3, tvb, *offsetp, 1, byte_order);
20089 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_4, tvb, *offsetp, 1, byte_order);
20090 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_5, tvb, *offsetp, 1, byte_order);
20091 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mask_mask_Any, tvb, *offsetp, 1, byte_order);
20093 *offsetp += 1;
20094 f_mods_mods = VALUE8(tvb, *offsetp);
20096 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KTMapEntry_mods_mods, tvb, *offsetp, 1, byte_order);
20097 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20098 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
20099 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
20100 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_Control, tvb, *offsetp, 1, byte_order);
20101 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_1, tvb, *offsetp, 1, byte_order);
20102 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_2, tvb, *offsetp, 1, byte_order);
20103 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_3, tvb, *offsetp, 1, byte_order);
20104 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_4, tvb, *offsetp, 1, byte_order);
20105 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_5, tvb, *offsetp, 1, byte_order);
20106 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_mods_mask_Any, tvb, *offsetp, 1, byte_order);
20108 *offsetp += 1;
20109 f_mods_vmods = VALUE16(tvb, *offsetp);
20111 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KTMapEntry_mods_vmods, tvb, *offsetp, 2, byte_order);
20112 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20113 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_0, tvb, *offsetp, 2, byte_order);
20114 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_1, tvb, *offsetp, 2, byte_order);
20115 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_2, tvb, *offsetp, 2, byte_order);
20116 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_3, tvb, *offsetp, 2, byte_order);
20117 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_4, tvb, *offsetp, 2, byte_order);
20118 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_5, tvb, *offsetp, 2, byte_order);
20119 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_6, tvb, *offsetp, 2, byte_order);
20120 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_7, tvb, *offsetp, 2, byte_order);
20121 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_8, tvb, *offsetp, 2, byte_order);
20122 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_9, tvb, *offsetp, 2, byte_order);
20123 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_10, tvb, *offsetp, 2, byte_order);
20124 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_11, tvb, *offsetp, 2, byte_order);
20125 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_12, tvb, *offsetp, 2, byte_order);
20126 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_13, tvb, *offsetp, 2, byte_order);
20127 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_14, tvb, *offsetp, 2, byte_order);
20128 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTMapEntry_mods_vmods_mask_15, tvb, *offsetp, 2, byte_order);
20130 *offsetp += 2;
20131 UNUSED(2);
20135 static int struct_size_KeyType(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20137 int size = 0;
20138 int f_nMapEntries;
20139 int f_hasPreserve;
20140 f_nMapEntries = VALUE8(tvb, *offsetp + size + 5);
20141 f_hasPreserve = VALUE8(tvb, *offsetp + size + 6);
20142 size += f_nMapEntries * 8;
20143 size += (f_hasPreserve * f_nMapEntries) * 4;
20144 return size + 8;
20147 static void struct_KeyType(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20149 int i;
20150 for (i = 0; i < count; i++) {
20151 proto_item *item;
20152 proto_tree *t;
20153 int f_mods_mask;
20154 int f_mods_mods;
20155 int f_mods_vmods;
20156 int f_numLevels;
20157 int f_nMapEntries;
20158 int f_hasPreserve;
20160 item = proto_tree_add_item(root, hf_x11_struct_KeyType, tvb, *offsetp, struct_size_KeyType(tvb, offsetp, byte_order), ENC_NA);
20161 t = proto_item_add_subtree(item, ett_x11_rectangle);
20162 f_mods_mask = VALUE8(tvb, *offsetp);
20164 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KeyType_mods_mask, tvb, *offsetp, 1, byte_order);
20165 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20166 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
20167 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
20168 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_Control, tvb, *offsetp, 1, byte_order);
20169 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_1, tvb, *offsetp, 1, byte_order);
20170 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_2, tvb, *offsetp, 1, byte_order);
20171 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_3, tvb, *offsetp, 1, byte_order);
20172 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_4, tvb, *offsetp, 1, byte_order);
20173 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_5, tvb, *offsetp, 1, byte_order);
20174 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mask_mask_Any, tvb, *offsetp, 1, byte_order);
20176 *offsetp += 1;
20177 f_mods_mods = VALUE8(tvb, *offsetp);
20179 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KeyType_mods_mods, tvb, *offsetp, 1, byte_order);
20180 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20181 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
20182 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
20183 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_Control, tvb, *offsetp, 1, byte_order);
20184 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_1, tvb, *offsetp, 1, byte_order);
20185 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_2, tvb, *offsetp, 1, byte_order);
20186 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_3, tvb, *offsetp, 1, byte_order);
20187 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_4, tvb, *offsetp, 1, byte_order);
20188 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_5, tvb, *offsetp, 1, byte_order);
20189 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_mods_mask_Any, tvb, *offsetp, 1, byte_order);
20191 *offsetp += 1;
20192 f_mods_vmods = VALUE16(tvb, *offsetp);
20194 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KeyType_mods_vmods, tvb, *offsetp, 2, byte_order);
20195 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20196 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_0, tvb, *offsetp, 2, byte_order);
20197 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_1, tvb, *offsetp, 2, byte_order);
20198 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_2, tvb, *offsetp, 2, byte_order);
20199 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_3, tvb, *offsetp, 2, byte_order);
20200 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_4, tvb, *offsetp, 2, byte_order);
20201 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_5, tvb, *offsetp, 2, byte_order);
20202 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_6, tvb, *offsetp, 2, byte_order);
20203 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_7, tvb, *offsetp, 2, byte_order);
20204 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_8, tvb, *offsetp, 2, byte_order);
20205 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_9, tvb, *offsetp, 2, byte_order);
20206 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_10, tvb, *offsetp, 2, byte_order);
20207 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_11, tvb, *offsetp, 2, byte_order);
20208 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_12, tvb, *offsetp, 2, byte_order);
20209 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_13, tvb, *offsetp, 2, byte_order);
20210 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_14, tvb, *offsetp, 2, byte_order);
20211 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyType_mods_vmods_mask_15, tvb, *offsetp, 2, byte_order);
20213 *offsetp += 2;
20214 f_numLevels = VALUE8(tvb, *offsetp);
20215 proto_tree_add_item(t, hf_x11_struct_KeyType_numLevels, tvb, *offsetp, 1, byte_order);
20216 *offsetp += 1;
20217 f_nMapEntries = VALUE8(tvb, *offsetp);
20218 proto_tree_add_item(t, hf_x11_struct_KeyType_nMapEntries, tvb, *offsetp, 1, byte_order);
20219 *offsetp += 1;
20220 f_hasPreserve = VALUE8(tvb, *offsetp);
20221 proto_tree_add_item(t, hf_x11_struct_KeyType_hasPreserve, tvb, *offsetp, 1, byte_order);
20222 *offsetp += 1;
20223 UNUSED(1);
20224 struct_KTMapEntry(tvb, offsetp, t, byte_order, f_nMapEntries);
20225 struct_ModDef(tvb, offsetp, t, byte_order, (f_hasPreserve * f_nMapEntries));
20229 static int struct_size_KeySymMap(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20231 int size = 0;
20232 int f_nSyms;
20233 f_nSyms = VALUE16(tvb, *offsetp + size + 6);
20234 size += f_nSyms * 4;
20235 return size + 8;
20238 static void struct_KeySymMap(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20240 int i;
20241 for (i = 0; i < count; i++) {
20242 proto_item *item;
20243 proto_tree *t;
20244 int f_groupInfo;
20245 int f_width;
20246 int f_nSyms;
20248 item = proto_tree_add_item(root, hf_x11_struct_KeySymMap, tvb, *offsetp, struct_size_KeySymMap(tvb, offsetp, byte_order), ENC_NA);
20249 t = proto_item_add_subtree(item, ett_x11_rectangle);
20250 listOfByte(tvb, offsetp, t, hf_x11_struct_KeySymMap_kt_index, 4, byte_order);
20251 f_groupInfo = VALUE8(tvb, *offsetp);
20252 proto_tree_add_item(t, hf_x11_struct_KeySymMap_groupInfo, tvb, *offsetp, 1, byte_order);
20253 *offsetp += 1;
20254 f_width = VALUE8(tvb, *offsetp);
20255 proto_tree_add_item(t, hf_x11_struct_KeySymMap_width, tvb, *offsetp, 1, byte_order);
20256 *offsetp += 1;
20257 f_nSyms = VALUE16(tvb, *offsetp);
20258 proto_tree_add_item(t, hf_x11_struct_KeySymMap_nSyms, tvb, *offsetp, 2, byte_order);
20259 *offsetp += 2;
20260 listOfCard32(tvb, offsetp, t, hf_x11_struct_KeySymMap_syms, hf_x11_struct_KeySymMap_syms_item, f_nSyms, byte_order);
20264 static void struct_CommonBehavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20266 int i;
20267 for (i = 0; i < count; i++) {
20268 proto_item *item;
20269 proto_tree *t;
20270 int f_type;
20271 int f_data;
20273 item = proto_tree_add_item(root, hf_x11_struct_CommonBehavior, tvb, *offsetp, 2, ENC_NA);
20274 t = proto_item_add_subtree(item, ett_x11_rectangle);
20275 f_type = VALUE8(tvb, *offsetp);
20276 proto_tree_add_item(t, hf_x11_struct_CommonBehavior_type, tvb, *offsetp, 1, byte_order);
20277 *offsetp += 1;
20278 f_data = VALUE8(tvb, *offsetp);
20279 proto_tree_add_item(t, hf_x11_struct_CommonBehavior_data, tvb, *offsetp, 1, byte_order);
20280 *offsetp += 1;
20284 static void struct_DefaultBehavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20286 int i;
20287 for (i = 0; i < count; i++) {
20288 proto_item *item;
20289 proto_tree *t;
20290 int f_type;
20292 item = proto_tree_add_item(root, hf_x11_struct_DefaultBehavior, tvb, *offsetp, 2, ENC_NA);
20293 t = proto_item_add_subtree(item, ett_x11_rectangle);
20294 f_type = VALUE8(tvb, *offsetp);
20295 proto_tree_add_item(t, hf_x11_struct_DefaultBehavior_type, tvb, *offsetp, 1, byte_order);
20296 *offsetp += 1;
20297 UNUSED(1);
20301 static void struct_RadioGroupBehavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20303 int i;
20304 for (i = 0; i < count; i++) {
20305 proto_item *item;
20306 proto_tree *t;
20307 int f_type;
20308 int f_group;
20310 item = proto_tree_add_item(root, hf_x11_struct_RadioGroupBehavior, tvb, *offsetp, 2, ENC_NA);
20311 t = proto_item_add_subtree(item, ett_x11_rectangle);
20312 f_type = VALUE8(tvb, *offsetp);
20313 proto_tree_add_item(t, hf_x11_struct_RadioGroupBehavior_type, tvb, *offsetp, 1, byte_order);
20314 *offsetp += 1;
20315 f_group = VALUE8(tvb, *offsetp);
20316 proto_tree_add_item(t, hf_x11_struct_RadioGroupBehavior_group, tvb, *offsetp, 1, byte_order);
20317 *offsetp += 1;
20321 static void struct_Overlay1Behavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20323 int i;
20324 for (i = 0; i < count; i++) {
20325 proto_item *item;
20326 proto_tree *t;
20327 int f_type;
20328 int f_key;
20330 item = proto_tree_add_item(root, hf_x11_struct_Overlay1Behavior, tvb, *offsetp, 2, ENC_NA);
20331 t = proto_item_add_subtree(item, ett_x11_rectangle);
20332 f_type = VALUE8(tvb, *offsetp);
20333 proto_tree_add_item(t, hf_x11_struct_Overlay1Behavior_type, tvb, *offsetp, 1, byte_order);
20334 *offsetp += 1;
20335 f_key = VALUE8(tvb, *offsetp);
20336 proto_tree_add_item(t, hf_x11_struct_Overlay1Behavior_key, tvb, *offsetp, 1, byte_order);
20337 *offsetp += 1;
20341 static void struct_Overlay2Behavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20343 int i;
20344 for (i = 0; i < count; i++) {
20345 proto_item *item;
20346 proto_tree *t;
20347 int f_type;
20348 int f_key;
20350 item = proto_tree_add_item(root, hf_x11_struct_Overlay2Behavior, tvb, *offsetp, 2, ENC_NA);
20351 t = proto_item_add_subtree(item, ett_x11_rectangle);
20352 f_type = VALUE8(tvb, *offsetp);
20353 proto_tree_add_item(t, hf_x11_struct_Overlay2Behavior_type, tvb, *offsetp, 1, byte_order);
20354 *offsetp += 1;
20355 f_key = VALUE8(tvb, *offsetp);
20356 proto_tree_add_item(t, hf_x11_struct_Overlay2Behavior_key, tvb, *offsetp, 1, byte_order);
20357 *offsetp += 1;
20361 static void struct_Behavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order, int count)
20363 int i;
20364 int base = *offsetp;
20365 for (i = 0; i < count; i++) {
20366 proto_item *item;
20367 proto_tree *t;
20368 int f_type;
20369 item = proto_tree_add_item(root, hf_x11_union_Behavior, tvb, base, 2, ENC_NA);
20370 t = proto_item_add_subtree(item, ett_x11_rectangle);
20372 *offsetp = base;
20373 struct_CommonBehavior(tvb, offsetp, t, byte_order, 1);
20374 *offsetp = base;
20375 struct_DefaultBehavior(tvb, offsetp, t, byte_order, 1);
20376 *offsetp = base;
20377 struct_DefaultBehavior(tvb, offsetp, t, byte_order, 1);
20378 *offsetp = base;
20379 struct_RadioGroupBehavior(tvb, offsetp, t, byte_order, 1);
20380 *offsetp = base;
20381 struct_Overlay1Behavior(tvb, offsetp, t, byte_order, 1);
20382 *offsetp = base;
20383 struct_Overlay2Behavior(tvb, offsetp, t, byte_order, 1);
20384 *offsetp = base;
20385 struct_DefaultBehavior(tvb, offsetp, t, byte_order, 1);
20386 *offsetp = base;
20387 struct_RadioGroupBehavior(tvb, offsetp, t, byte_order, 1);
20388 *offsetp = base;
20389 struct_Overlay1Behavior(tvb, offsetp, t, byte_order, 1);
20390 *offsetp = base;
20391 struct_Overlay2Behavior(tvb, offsetp, t, byte_order, 1);
20392 *offsetp = base;
20393 f_type = VALUE8(tvb, *offsetp);
20394 proto_tree_add_item(t, hf_x11_union_Behavior_type, tvb, *offsetp, 1, byte_order);
20395 *offsetp += 1;
20396 base += 2;
20398 *offsetp = base;
20401 static void struct_SetBehavior(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20403 int i;
20404 for (i = 0; i < count; i++) {
20405 proto_item *item;
20406 proto_tree *t;
20407 int f_keycode;
20409 item = proto_tree_add_item(root, hf_x11_struct_SetBehavior, tvb, *offsetp, 4, ENC_NA);
20410 t = proto_item_add_subtree(item, ett_x11_rectangle);
20411 f_keycode = VALUE8(tvb, *offsetp);
20412 proto_tree_add_item(t, hf_x11_struct_SetBehavior_keycode, tvb, *offsetp, 1, byte_order);
20413 *offsetp += 1;
20414 struct_Behavior(tvb, offsetp, t, byte_order, 1);
20415 UNUSED(1);
20419 static void struct_SetExplicit(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20421 int i;
20422 for (i = 0; i < count; i++) {
20423 proto_item *item;
20424 proto_tree *t;
20425 int f_keycode;
20426 int f_explicit;
20428 item = proto_tree_add_item(root, hf_x11_struct_SetExplicit, tvb, *offsetp, 2, ENC_NA);
20429 t = proto_item_add_subtree(item, ett_x11_rectangle);
20430 f_keycode = VALUE8(tvb, *offsetp);
20431 proto_tree_add_item(t, hf_x11_struct_SetExplicit_keycode, tvb, *offsetp, 1, byte_order);
20432 *offsetp += 1;
20433 f_explicit = VALUE8(tvb, *offsetp);
20435 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SetExplicit_explicit, tvb, *offsetp, 1, byte_order);
20436 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20437 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_KeyType1, tvb, *offsetp, 1, byte_order);
20438 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_KeyType2, tvb, *offsetp, 1, byte_order);
20439 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_KeyType3, tvb, *offsetp, 1, byte_order);
20440 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_KeyType4, tvb, *offsetp, 1, byte_order);
20441 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_Interpret, tvb, *offsetp, 1, byte_order);
20442 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_AutoRepeat, tvb, *offsetp, 1, byte_order);
20443 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_Behavior, tvb, *offsetp, 1, byte_order);
20444 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetExplicit_explicit_mask_VModMap, tvb, *offsetp, 1, byte_order);
20446 *offsetp += 1;
20450 static void struct_KeyModMap(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20452 int i;
20453 for (i = 0; i < count; i++) {
20454 proto_item *item;
20455 proto_tree *t;
20456 int f_keycode;
20457 int f_mods;
20459 item = proto_tree_add_item(root, hf_x11_struct_KeyModMap, tvb, *offsetp, 2, ENC_NA);
20460 t = proto_item_add_subtree(item, ett_x11_rectangle);
20461 f_keycode = VALUE8(tvb, *offsetp);
20462 proto_tree_add_item(t, hf_x11_struct_KeyModMap_keycode, tvb, *offsetp, 1, byte_order);
20463 *offsetp += 1;
20464 f_mods = VALUE8(tvb, *offsetp);
20466 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KeyModMap_mods, tvb, *offsetp, 1, byte_order);
20467 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20468 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
20469 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
20470 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_Control, tvb, *offsetp, 1, byte_order);
20471 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_1, tvb, *offsetp, 1, byte_order);
20472 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_2, tvb, *offsetp, 1, byte_order);
20473 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_3, tvb, *offsetp, 1, byte_order);
20474 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_4, tvb, *offsetp, 1, byte_order);
20475 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_5, tvb, *offsetp, 1, byte_order);
20476 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyModMap_mods_mask_Any, tvb, *offsetp, 1, byte_order);
20478 *offsetp += 1;
20482 static void struct_KeyVModMap(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20484 int i;
20485 for (i = 0; i < count; i++) {
20486 proto_item *item;
20487 proto_tree *t;
20488 int f_keycode;
20489 int f_vmods;
20491 item = proto_tree_add_item(root, hf_x11_struct_KeyVModMap, tvb, *offsetp, 4, ENC_NA);
20492 t = proto_item_add_subtree(item, ett_x11_rectangle);
20493 f_keycode = VALUE8(tvb, *offsetp);
20494 proto_tree_add_item(t, hf_x11_struct_KeyVModMap_keycode, tvb, *offsetp, 1, byte_order);
20495 *offsetp += 1;
20496 UNUSED(1);
20497 f_vmods = VALUE16(tvb, *offsetp);
20499 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KeyVModMap_vmods, tvb, *offsetp, 2, byte_order);
20500 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20501 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_0, tvb, *offsetp, 2, byte_order);
20502 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_1, tvb, *offsetp, 2, byte_order);
20503 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_2, tvb, *offsetp, 2, byte_order);
20504 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_3, tvb, *offsetp, 2, byte_order);
20505 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_4, tvb, *offsetp, 2, byte_order);
20506 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_5, tvb, *offsetp, 2, byte_order);
20507 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_6, tvb, *offsetp, 2, byte_order);
20508 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_7, tvb, *offsetp, 2, byte_order);
20509 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_8, tvb, *offsetp, 2, byte_order);
20510 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_9, tvb, *offsetp, 2, byte_order);
20511 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_10, tvb, *offsetp, 2, byte_order);
20512 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_11, tvb, *offsetp, 2, byte_order);
20513 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_12, tvb, *offsetp, 2, byte_order);
20514 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_13, tvb, *offsetp, 2, byte_order);
20515 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_14, tvb, *offsetp, 2, byte_order);
20516 proto_tree_add_item(bitmask_tree, hf_x11_struct_KeyVModMap_vmods_mask_15, tvb, *offsetp, 2, byte_order);
20518 *offsetp += 2;
20522 static void struct_KTSetMapEntry(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20524 int i;
20525 for (i = 0; i < count; i++) {
20526 proto_item *item;
20527 proto_tree *t;
20528 int f_level;
20529 int f_realMods;
20530 int f_virtualMods;
20532 item = proto_tree_add_item(root, hf_x11_struct_KTSetMapEntry, tvb, *offsetp, 4, ENC_NA);
20533 t = proto_item_add_subtree(item, ett_x11_rectangle);
20534 f_level = VALUE8(tvb, *offsetp);
20535 proto_tree_add_item(t, hf_x11_struct_KTSetMapEntry_level, tvb, *offsetp, 1, byte_order);
20536 *offsetp += 1;
20537 f_realMods = VALUE8(tvb, *offsetp);
20539 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KTSetMapEntry_realMods, tvb, *offsetp, 1, byte_order);
20540 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20541 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
20542 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
20543 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
20544 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_1, tvb, *offsetp, 1, byte_order);
20545 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_2, tvb, *offsetp, 1, byte_order);
20546 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_3, tvb, *offsetp, 1, byte_order);
20547 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_4, tvb, *offsetp, 1, byte_order);
20548 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_5, tvb, *offsetp, 1, byte_order);
20549 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
20551 *offsetp += 1;
20552 f_virtualMods = VALUE16(tvb, *offsetp);
20554 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_KTSetMapEntry_virtualMods, tvb, *offsetp, 2, byte_order);
20555 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20556 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
20557 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
20558 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
20559 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
20560 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
20561 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
20562 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
20563 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
20564 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
20565 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
20566 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
20567 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
20568 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
20569 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
20570 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
20571 proto_tree_add_item(bitmask_tree, hf_x11_struct_KTSetMapEntry_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
20573 *offsetp += 2;
20577 static int struct_size_SetKeyType(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20579 int size = 0;
20580 int f_nMapEntries;
20581 int f_preserve;
20582 f_nMapEntries = VALUE8(tvb, *offsetp + size + 5);
20583 f_preserve = VALUE8(tvb, *offsetp + size + 6);
20584 size += f_nMapEntries * 4;
20585 size += (f_preserve * f_nMapEntries) * 4;
20586 return size + 8;
20589 static void struct_SetKeyType(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20591 int i;
20592 for (i = 0; i < count; i++) {
20593 proto_item *item;
20594 proto_tree *t;
20595 int f_mask;
20596 int f_realMods;
20597 int f_virtualMods;
20598 int f_numLevels;
20599 int f_nMapEntries;
20600 int f_preserve;
20602 item = proto_tree_add_item(root, hf_x11_struct_SetKeyType, tvb, *offsetp, struct_size_SetKeyType(tvb, offsetp, byte_order), ENC_NA);
20603 t = proto_item_add_subtree(item, ett_x11_rectangle);
20604 f_mask = VALUE8(tvb, *offsetp);
20606 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SetKeyType_mask, tvb, *offsetp, 1, byte_order);
20607 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20608 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
20609 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
20610 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_Control, tvb, *offsetp, 1, byte_order);
20611 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_1, tvb, *offsetp, 1, byte_order);
20612 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_2, tvb, *offsetp, 1, byte_order);
20613 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_3, tvb, *offsetp, 1, byte_order);
20614 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_4, tvb, *offsetp, 1, byte_order);
20615 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_5, tvb, *offsetp, 1, byte_order);
20616 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_mask_mask_Any, tvb, *offsetp, 1, byte_order);
20618 *offsetp += 1;
20619 f_realMods = VALUE8(tvb, *offsetp);
20621 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SetKeyType_realMods, tvb, *offsetp, 1, byte_order);
20622 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20623 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
20624 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
20625 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
20626 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_1, tvb, *offsetp, 1, byte_order);
20627 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_2, tvb, *offsetp, 1, byte_order);
20628 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_3, tvb, *offsetp, 1, byte_order);
20629 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_4, tvb, *offsetp, 1, byte_order);
20630 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_5, tvb, *offsetp, 1, byte_order);
20631 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
20633 *offsetp += 1;
20634 f_virtualMods = VALUE16(tvb, *offsetp);
20636 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SetKeyType_virtualMods, tvb, *offsetp, 2, byte_order);
20637 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
20638 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
20639 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
20640 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
20641 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
20642 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
20643 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
20644 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
20645 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
20646 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
20647 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
20648 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
20649 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
20650 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
20651 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
20652 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
20653 proto_tree_add_item(bitmask_tree, hf_x11_struct_SetKeyType_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
20655 *offsetp += 2;
20656 f_numLevels = VALUE8(tvb, *offsetp);
20657 proto_tree_add_item(t, hf_x11_struct_SetKeyType_numLevels, tvb, *offsetp, 1, byte_order);
20658 *offsetp += 1;
20659 f_nMapEntries = VALUE8(tvb, *offsetp);
20660 proto_tree_add_item(t, hf_x11_struct_SetKeyType_nMapEntries, tvb, *offsetp, 1, byte_order);
20661 *offsetp += 1;
20662 f_preserve = VALUE8(tvb, *offsetp);
20663 proto_tree_add_item(t, hf_x11_struct_SetKeyType_preserve, tvb, *offsetp, 1, byte_order);
20664 *offsetp += 1;
20665 UNUSED(1);
20666 struct_KTSetMapEntry(tvb, offsetp, t, byte_order, f_nMapEntries);
20667 struct_KTSetMapEntry(tvb, offsetp, t, byte_order, (f_preserve * f_nMapEntries));
20671 static int struct_size_Property(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20673 int size = 0;
20674 int f_valueLength;
20675 int f_nameLength;
20676 f_nameLength = VALUE16(tvb, *offsetp + size + 0);
20677 size += f_nameLength * 1;
20678 f_valueLength = VALUE16(tvb, *offsetp + size + 2);
20679 size += f_valueLength * 1;
20680 return size + 4;
20683 static void struct_Property(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20685 int i;
20686 for (i = 0; i < count; i++) {
20687 proto_item *item;
20688 proto_tree *t;
20689 int f_nameLength;
20690 int f_valueLength;
20692 item = proto_tree_add_item(root, hf_x11_struct_Property, tvb, *offsetp, struct_size_Property(tvb, offsetp, byte_order), ENC_NA);
20693 t = proto_item_add_subtree(item, ett_x11_rectangle);
20694 f_nameLength = VALUE16(tvb, *offsetp);
20695 proto_tree_add_item(t, hf_x11_struct_Property_nameLength, tvb, *offsetp, 2, byte_order);
20696 *offsetp += 2;
20697 listOfByte(tvb, offsetp, t, hf_x11_struct_Property_name, f_nameLength, byte_order);
20698 f_valueLength = VALUE16(tvb, *offsetp);
20699 proto_tree_add_item(t, hf_x11_struct_Property_valueLength, tvb, *offsetp, 2, byte_order);
20700 *offsetp += 2;
20701 listOfByte(tvb, offsetp, t, hf_x11_struct_Property_value, f_valueLength, byte_order);
20705 static int struct_size_Outline(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20707 int size = 0;
20708 int f_nPoints;
20709 f_nPoints = VALUE8(tvb, *offsetp + size + 0);
20710 size += f_nPoints * 4;
20711 return size + 4;
20714 static void struct_Outline(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20716 int i;
20717 for (i = 0; i < count; i++) {
20718 proto_item *item;
20719 proto_tree *t;
20720 int f_nPoints;
20721 int f_cornerRadius;
20723 item = proto_tree_add_item(root, hf_x11_struct_Outline, tvb, *offsetp, struct_size_Outline(tvb, offsetp, byte_order), ENC_NA);
20724 t = proto_item_add_subtree(item, ett_x11_rectangle);
20725 f_nPoints = VALUE8(tvb, *offsetp);
20726 proto_tree_add_item(t, hf_x11_struct_Outline_nPoints, tvb, *offsetp, 1, byte_order);
20727 *offsetp += 1;
20728 f_cornerRadius = VALUE8(tvb, *offsetp);
20729 proto_tree_add_item(t, hf_x11_struct_Outline_cornerRadius, tvb, *offsetp, 1, byte_order);
20730 *offsetp += 1;
20731 UNUSED(2);
20732 struct_POINT(tvb, offsetp, t, byte_order, f_nPoints);
20736 static int struct_size_Shape(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20738 int size = 0;
20739 int i, off;
20740 int f_nOutlines;
20741 f_nOutlines = VALUE8(tvb, *offsetp + size + 4);
20742 for (i = 0; i < f_nOutlines; i++) {
20743 off = (*offsetp) + size + 8;
20744 size += struct_size_Outline(tvb, &off, byte_order);
20746 return size + 8;
20749 static void struct_Shape(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20751 int i;
20752 for (i = 0; i < count; i++) {
20753 proto_item *item;
20754 proto_tree *t;
20755 int f_name;
20756 int f_nOutlines;
20757 int f_primaryNdx;
20758 int f_approxNdx;
20760 item = proto_tree_add_item(root, hf_x11_struct_Shape, tvb, *offsetp, struct_size_Shape(tvb, offsetp, byte_order), ENC_NA);
20761 t = proto_item_add_subtree(item, ett_x11_rectangle);
20762 f_name = VALUE32(tvb, *offsetp);
20763 proto_tree_add_item(t, hf_x11_struct_Shape_name, tvb, *offsetp, 4, byte_order);
20764 *offsetp += 4;
20765 f_nOutlines = VALUE8(tvb, *offsetp);
20766 proto_tree_add_item(t, hf_x11_struct_Shape_nOutlines, tvb, *offsetp, 1, byte_order);
20767 *offsetp += 1;
20768 f_primaryNdx = VALUE8(tvb, *offsetp);
20769 proto_tree_add_item(t, hf_x11_struct_Shape_primaryNdx, tvb, *offsetp, 1, byte_order);
20770 *offsetp += 1;
20771 f_approxNdx = VALUE8(tvb, *offsetp);
20772 proto_tree_add_item(t, hf_x11_struct_Shape_approxNdx, tvb, *offsetp, 1, byte_order);
20773 *offsetp += 1;
20774 UNUSED(1);
20775 struct_Outline(tvb, offsetp, t, byte_order, f_nOutlines);
20779 static void struct_Key(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20781 int i;
20782 for (i = 0; i < count; i++) {
20783 proto_item *item;
20784 proto_tree *t;
20785 int f_gap;
20786 int f_shapeNdx;
20787 int f_colorNdx;
20789 item = proto_tree_add_item(root, hf_x11_struct_Key, tvb, *offsetp, 5, ENC_NA);
20790 t = proto_item_add_subtree(item, ett_x11_rectangle);
20791 listOfByte(tvb, offsetp, t, hf_x11_struct_Key_name, 4, byte_order);
20792 f_gap = VALUE16(tvb, *offsetp);
20793 proto_tree_add_item(t, hf_x11_struct_Key_gap, tvb, *offsetp, 2, byte_order);
20794 *offsetp += 2;
20795 f_shapeNdx = VALUE8(tvb, *offsetp);
20796 proto_tree_add_item(t, hf_x11_struct_Key_shapeNdx, tvb, *offsetp, 1, byte_order);
20797 *offsetp += 1;
20798 f_colorNdx = VALUE8(tvb, *offsetp);
20799 proto_tree_add_item(t, hf_x11_struct_Key_colorNdx, tvb, *offsetp, 1, byte_order);
20800 *offsetp += 1;
20804 static void struct_OverlayKey(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20806 int i;
20807 for (i = 0; i < count; i++) {
20808 proto_item *item;
20809 proto_tree *t;
20811 item = proto_tree_add_item(root, hf_x11_struct_OverlayKey, tvb, *offsetp, 2, ENC_NA);
20812 t = proto_item_add_subtree(item, ett_x11_rectangle);
20813 listOfByte(tvb, offsetp, t, hf_x11_struct_OverlayKey_over, 4, byte_order);
20814 listOfByte(tvb, offsetp, t, hf_x11_struct_OverlayKey_under, 4, byte_order);
20818 static int struct_size_OverlayRow(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20820 int size = 0;
20821 int f_nKeys;
20822 f_nKeys = VALUE8(tvb, *offsetp + size + 1);
20823 size += f_nKeys * 2;
20824 return size + 4;
20827 static void struct_OverlayRow(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20829 int i;
20830 for (i = 0; i < count; i++) {
20831 proto_item *item;
20832 proto_tree *t;
20833 int f_rowUnder;
20834 int f_nKeys;
20836 item = proto_tree_add_item(root, hf_x11_struct_OverlayRow, tvb, *offsetp, struct_size_OverlayRow(tvb, offsetp, byte_order), ENC_NA);
20837 t = proto_item_add_subtree(item, ett_x11_rectangle);
20838 f_rowUnder = VALUE8(tvb, *offsetp);
20839 proto_tree_add_item(t, hf_x11_struct_OverlayRow_rowUnder, tvb, *offsetp, 1, byte_order);
20840 *offsetp += 1;
20841 f_nKeys = VALUE8(tvb, *offsetp);
20842 proto_tree_add_item(t, hf_x11_struct_OverlayRow_nKeys, tvb, *offsetp, 1, byte_order);
20843 *offsetp += 1;
20844 UNUSED(2);
20845 struct_OverlayKey(tvb, offsetp, t, byte_order, f_nKeys);
20849 static int struct_size_Overlay(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20851 int size = 0;
20852 int i, off;
20853 int f_nRows;
20854 f_nRows = VALUE8(tvb, *offsetp + size + 4);
20855 for (i = 0; i < f_nRows; i++) {
20856 off = (*offsetp) + size + 8;
20857 size += struct_size_OverlayRow(tvb, &off, byte_order);
20859 return size + 8;
20862 static void struct_Overlay(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20864 int i;
20865 for (i = 0; i < count; i++) {
20866 proto_item *item;
20867 proto_tree *t;
20868 int f_name;
20869 int f_nRows;
20871 item = proto_tree_add_item(root, hf_x11_struct_Overlay, tvb, *offsetp, struct_size_Overlay(tvb, offsetp, byte_order), ENC_NA);
20872 t = proto_item_add_subtree(item, ett_x11_rectangle);
20873 f_name = VALUE32(tvb, *offsetp);
20874 proto_tree_add_item(t, hf_x11_struct_Overlay_name, tvb, *offsetp, 4, byte_order);
20875 *offsetp += 4;
20876 f_nRows = VALUE8(tvb, *offsetp);
20877 proto_tree_add_item(t, hf_x11_struct_Overlay_nRows, tvb, *offsetp, 1, byte_order);
20878 *offsetp += 1;
20879 UNUSED(3);
20880 struct_OverlayRow(tvb, offsetp, t, byte_order, f_nRows);
20884 static int struct_size_Row(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
20886 int size = 0;
20887 int f_nKeys;
20888 f_nKeys = VALUE8(tvb, *offsetp + size + 4);
20889 size += f_nKeys * 5;
20890 return size + 8;
20893 static void struct_Row(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20895 int i;
20896 for (i = 0; i < count; i++) {
20897 proto_item *item;
20898 proto_tree *t;
20899 int f_top;
20900 int f_left;
20901 int f_nKeys;
20902 int f_vertical;
20904 item = proto_tree_add_item(root, hf_x11_struct_Row, tvb, *offsetp, struct_size_Row(tvb, offsetp, byte_order), ENC_NA);
20905 t = proto_item_add_subtree(item, ett_x11_rectangle);
20906 f_top = VALUE16(tvb, *offsetp);
20907 proto_tree_add_item(t, hf_x11_struct_Row_top, tvb, *offsetp, 2, byte_order);
20908 *offsetp += 2;
20909 f_left = VALUE16(tvb, *offsetp);
20910 proto_tree_add_item(t, hf_x11_struct_Row_left, tvb, *offsetp, 2, byte_order);
20911 *offsetp += 2;
20912 f_nKeys = VALUE8(tvb, *offsetp);
20913 proto_tree_add_item(t, hf_x11_struct_Row_nKeys, tvb, *offsetp, 1, byte_order);
20914 *offsetp += 1;
20915 f_vertical = VALUE8(tvb, *offsetp);
20916 proto_tree_add_item(t, hf_x11_struct_Row_vertical, tvb, *offsetp, 1, byte_order);
20917 *offsetp += 1;
20918 UNUSED(2);
20919 struct_Key(tvb, offsetp, t, byte_order, f_nKeys);
20923 static void struct_CommonDoodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20925 int i;
20926 for (i = 0; i < count; i++) {
20927 proto_item *item;
20928 proto_tree *t;
20929 int f_name;
20930 int f_type;
20931 int f_priority;
20932 int f_top;
20933 int f_left;
20934 int f_angle;
20936 item = proto_tree_add_item(root, hf_x11_struct_CommonDoodad, tvb, *offsetp, 12, ENC_NA);
20937 t = proto_item_add_subtree(item, ett_x11_rectangle);
20938 f_name = VALUE32(tvb, *offsetp);
20939 proto_tree_add_item(t, hf_x11_struct_CommonDoodad_name, tvb, *offsetp, 4, byte_order);
20940 *offsetp += 4;
20941 f_type = field8(tvb, offsetp, t, hf_x11_struct_CommonDoodad_type, byte_order);
20942 f_priority = VALUE8(tvb, *offsetp);
20943 proto_tree_add_item(t, hf_x11_struct_CommonDoodad_priority, tvb, *offsetp, 1, byte_order);
20944 *offsetp += 1;
20945 f_top = VALUE16(tvb, *offsetp);
20946 proto_tree_add_item(t, hf_x11_struct_CommonDoodad_top, tvb, *offsetp, 2, byte_order);
20947 *offsetp += 2;
20948 f_left = VALUE16(tvb, *offsetp);
20949 proto_tree_add_item(t, hf_x11_struct_CommonDoodad_left, tvb, *offsetp, 2, byte_order);
20950 *offsetp += 2;
20951 f_angle = VALUE16(tvb, *offsetp);
20952 proto_tree_add_item(t, hf_x11_struct_CommonDoodad_angle, tvb, *offsetp, 2, byte_order);
20953 *offsetp += 2;
20957 static void struct_ShapeDoodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
20959 int i;
20960 for (i = 0; i < count; i++) {
20961 proto_item *item;
20962 proto_tree *t;
20963 int f_name;
20964 int f_type;
20965 int f_priority;
20966 int f_top;
20967 int f_left;
20968 int f_angle;
20969 int f_colorNdx;
20970 int f_shapeNdx;
20972 item = proto_tree_add_item(root, hf_x11_struct_ShapeDoodad, tvb, *offsetp, 20, ENC_NA);
20973 t = proto_item_add_subtree(item, ett_x11_rectangle);
20974 f_name = VALUE32(tvb, *offsetp);
20975 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_name, tvb, *offsetp, 4, byte_order);
20976 *offsetp += 4;
20977 f_type = field8(tvb, offsetp, t, hf_x11_struct_ShapeDoodad_type, byte_order);
20978 f_priority = VALUE8(tvb, *offsetp);
20979 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_priority, tvb, *offsetp, 1, byte_order);
20980 *offsetp += 1;
20981 f_top = VALUE16(tvb, *offsetp);
20982 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_top, tvb, *offsetp, 2, byte_order);
20983 *offsetp += 2;
20984 f_left = VALUE16(tvb, *offsetp);
20985 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_left, tvb, *offsetp, 2, byte_order);
20986 *offsetp += 2;
20987 f_angle = VALUE16(tvb, *offsetp);
20988 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_angle, tvb, *offsetp, 2, byte_order);
20989 *offsetp += 2;
20990 f_colorNdx = VALUE8(tvb, *offsetp);
20991 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_colorNdx, tvb, *offsetp, 1, byte_order);
20992 *offsetp += 1;
20993 f_shapeNdx = VALUE8(tvb, *offsetp);
20994 proto_tree_add_item(t, hf_x11_struct_ShapeDoodad_shapeNdx, tvb, *offsetp, 1, byte_order);
20995 *offsetp += 1;
20996 UNUSED(6);
21000 static void struct_TextDoodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21002 int i;
21003 for (i = 0; i < count; i++) {
21004 proto_item *item;
21005 proto_tree *t;
21006 int f_name;
21007 int f_type;
21008 int f_priority;
21009 int f_top;
21010 int f_left;
21011 int f_angle;
21012 int f_width;
21013 int f_height;
21014 int f_colorNdx;
21016 item = proto_tree_add_item(root, hf_x11_struct_TextDoodad, tvb, *offsetp, 20, ENC_NA);
21017 t = proto_item_add_subtree(item, ett_x11_rectangle);
21018 f_name = VALUE32(tvb, *offsetp);
21019 proto_tree_add_item(t, hf_x11_struct_TextDoodad_name, tvb, *offsetp, 4, byte_order);
21020 *offsetp += 4;
21021 f_type = field8(tvb, offsetp, t, hf_x11_struct_TextDoodad_type, byte_order);
21022 f_priority = VALUE8(tvb, *offsetp);
21023 proto_tree_add_item(t, hf_x11_struct_TextDoodad_priority, tvb, *offsetp, 1, byte_order);
21024 *offsetp += 1;
21025 f_top = VALUE16(tvb, *offsetp);
21026 proto_tree_add_item(t, hf_x11_struct_TextDoodad_top, tvb, *offsetp, 2, byte_order);
21027 *offsetp += 2;
21028 f_left = VALUE16(tvb, *offsetp);
21029 proto_tree_add_item(t, hf_x11_struct_TextDoodad_left, tvb, *offsetp, 2, byte_order);
21030 *offsetp += 2;
21031 f_angle = VALUE16(tvb, *offsetp);
21032 proto_tree_add_item(t, hf_x11_struct_TextDoodad_angle, tvb, *offsetp, 2, byte_order);
21033 *offsetp += 2;
21034 f_width = VALUE16(tvb, *offsetp);
21035 proto_tree_add_item(t, hf_x11_struct_TextDoodad_width, tvb, *offsetp, 2, byte_order);
21036 *offsetp += 2;
21037 f_height = VALUE16(tvb, *offsetp);
21038 proto_tree_add_item(t, hf_x11_struct_TextDoodad_height, tvb, *offsetp, 2, byte_order);
21039 *offsetp += 2;
21040 f_colorNdx = VALUE8(tvb, *offsetp);
21041 proto_tree_add_item(t, hf_x11_struct_TextDoodad_colorNdx, tvb, *offsetp, 1, byte_order);
21042 *offsetp += 1;
21043 UNUSED(3);
21044 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
21045 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
21049 static void struct_IndicatorDoodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21051 int i;
21052 for (i = 0; i < count; i++) {
21053 proto_item *item;
21054 proto_tree *t;
21055 int f_name;
21056 int f_type;
21057 int f_priority;
21058 int f_top;
21059 int f_left;
21060 int f_angle;
21061 int f_shapeNdx;
21062 int f_onColorNdx;
21063 int f_offColorNdx;
21065 item = proto_tree_add_item(root, hf_x11_struct_IndicatorDoodad, tvb, *offsetp, 20, ENC_NA);
21066 t = proto_item_add_subtree(item, ett_x11_rectangle);
21067 f_name = VALUE32(tvb, *offsetp);
21068 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_name, tvb, *offsetp, 4, byte_order);
21069 *offsetp += 4;
21070 f_type = field8(tvb, offsetp, t, hf_x11_struct_IndicatorDoodad_type, byte_order);
21071 f_priority = VALUE8(tvb, *offsetp);
21072 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_priority, tvb, *offsetp, 1, byte_order);
21073 *offsetp += 1;
21074 f_top = VALUE16(tvb, *offsetp);
21075 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_top, tvb, *offsetp, 2, byte_order);
21076 *offsetp += 2;
21077 f_left = VALUE16(tvb, *offsetp);
21078 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_left, tvb, *offsetp, 2, byte_order);
21079 *offsetp += 2;
21080 f_angle = VALUE16(tvb, *offsetp);
21081 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_angle, tvb, *offsetp, 2, byte_order);
21082 *offsetp += 2;
21083 f_shapeNdx = VALUE8(tvb, *offsetp);
21084 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_shapeNdx, tvb, *offsetp, 1, byte_order);
21085 *offsetp += 1;
21086 f_onColorNdx = VALUE8(tvb, *offsetp);
21087 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_onColorNdx, tvb, *offsetp, 1, byte_order);
21088 *offsetp += 1;
21089 f_offColorNdx = VALUE8(tvb, *offsetp);
21090 proto_tree_add_item(t, hf_x11_struct_IndicatorDoodad_offColorNdx, tvb, *offsetp, 1, byte_order);
21091 *offsetp += 1;
21092 UNUSED(5);
21096 static void struct_LogoDoodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21098 int i;
21099 for (i = 0; i < count; i++) {
21100 proto_item *item;
21101 proto_tree *t;
21102 int f_name;
21103 int f_type;
21104 int f_priority;
21105 int f_top;
21106 int f_left;
21107 int f_angle;
21108 int f_colorNdx;
21109 int f_shapeNdx;
21111 item = proto_tree_add_item(root, hf_x11_struct_LogoDoodad, tvb, *offsetp, 20, ENC_NA);
21112 t = proto_item_add_subtree(item, ett_x11_rectangle);
21113 f_name = VALUE32(tvb, *offsetp);
21114 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_name, tvb, *offsetp, 4, byte_order);
21115 *offsetp += 4;
21116 f_type = field8(tvb, offsetp, t, hf_x11_struct_LogoDoodad_type, byte_order);
21117 f_priority = VALUE8(tvb, *offsetp);
21118 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_priority, tvb, *offsetp, 1, byte_order);
21119 *offsetp += 1;
21120 f_top = VALUE16(tvb, *offsetp);
21121 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_top, tvb, *offsetp, 2, byte_order);
21122 *offsetp += 2;
21123 f_left = VALUE16(tvb, *offsetp);
21124 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_left, tvb, *offsetp, 2, byte_order);
21125 *offsetp += 2;
21126 f_angle = VALUE16(tvb, *offsetp);
21127 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_angle, tvb, *offsetp, 2, byte_order);
21128 *offsetp += 2;
21129 f_colorNdx = VALUE8(tvb, *offsetp);
21130 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_colorNdx, tvb, *offsetp, 1, byte_order);
21131 *offsetp += 1;
21132 f_shapeNdx = VALUE8(tvb, *offsetp);
21133 proto_tree_add_item(t, hf_x11_struct_LogoDoodad_shapeNdx, tvb, *offsetp, 1, byte_order);
21134 *offsetp += 1;
21135 UNUSED(6);
21136 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
21140 static void struct_Doodad(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order, int count)
21142 int i;
21143 int base = *offsetp;
21144 for (i = 0; i < count; i++) {
21145 proto_item *item;
21146 proto_tree *t;
21147 item = proto_tree_add_item(root, hf_x11_union_Doodad, tvb, base, 20, ENC_NA);
21148 t = proto_item_add_subtree(item, ett_x11_rectangle);
21150 *offsetp = base;
21151 struct_CommonDoodad(tvb, offsetp, t, byte_order, 1);
21152 *offsetp = base;
21153 struct_ShapeDoodad(tvb, offsetp, t, byte_order, 1);
21154 *offsetp = base;
21155 struct_TextDoodad(tvb, offsetp, t, byte_order, 1);
21156 *offsetp = base;
21157 struct_IndicatorDoodad(tvb, offsetp, t, byte_order, 1);
21158 *offsetp = base;
21159 struct_LogoDoodad(tvb, offsetp, t, byte_order, 1);
21160 base += 20;
21162 *offsetp = base;
21165 static int struct_size_Section(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
21167 int size = 0;
21168 int i, off;
21169 int f_nOverlays;
21170 int f_nDoodads;
21171 int f_nRows;
21172 f_nRows = VALUE8(tvb, *offsetp + size + 15);
21173 f_nDoodads = VALUE8(tvb, *offsetp + size + 16);
21174 f_nOverlays = VALUE8(tvb, *offsetp + size + 17);
21175 for (i = 0; i < f_nRows; i++) {
21176 off = (*offsetp) + size + 20;
21177 size += struct_size_Row(tvb, &off, byte_order);
21179 size += f_nDoodads * 20;
21180 for (i = 0; i < f_nOverlays; i++) {
21181 off = (*offsetp) + size + 20;
21182 size += struct_size_Overlay(tvb, &off, byte_order);
21184 return size + 20;
21187 static void struct_Section(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21189 int i;
21190 for (i = 0; i < count; i++) {
21191 proto_item *item;
21192 proto_tree *t;
21193 int f_name;
21194 int f_top;
21195 int f_left;
21196 int f_width;
21197 int f_height;
21198 int f_angle;
21199 int f_priority;
21200 int f_nRows;
21201 int f_nDoodads;
21202 int f_nOverlays;
21204 item = proto_tree_add_item(root, hf_x11_struct_Section, tvb, *offsetp, struct_size_Section(tvb, offsetp, byte_order), ENC_NA);
21205 t = proto_item_add_subtree(item, ett_x11_rectangle);
21206 f_name = VALUE32(tvb, *offsetp);
21207 proto_tree_add_item(t, hf_x11_struct_Section_name, tvb, *offsetp, 4, byte_order);
21208 *offsetp += 4;
21209 f_top = VALUE16(tvb, *offsetp);
21210 proto_tree_add_item(t, hf_x11_struct_Section_top, tvb, *offsetp, 2, byte_order);
21211 *offsetp += 2;
21212 f_left = VALUE16(tvb, *offsetp);
21213 proto_tree_add_item(t, hf_x11_struct_Section_left, tvb, *offsetp, 2, byte_order);
21214 *offsetp += 2;
21215 f_width = VALUE16(tvb, *offsetp);
21216 proto_tree_add_item(t, hf_x11_struct_Section_width, tvb, *offsetp, 2, byte_order);
21217 *offsetp += 2;
21218 f_height = VALUE16(tvb, *offsetp);
21219 proto_tree_add_item(t, hf_x11_struct_Section_height, tvb, *offsetp, 2, byte_order);
21220 *offsetp += 2;
21221 f_angle = VALUE16(tvb, *offsetp);
21222 proto_tree_add_item(t, hf_x11_struct_Section_angle, tvb, *offsetp, 2, byte_order);
21223 *offsetp += 2;
21224 f_priority = VALUE8(tvb, *offsetp);
21225 proto_tree_add_item(t, hf_x11_struct_Section_priority, tvb, *offsetp, 1, byte_order);
21226 *offsetp += 1;
21227 f_nRows = VALUE8(tvb, *offsetp);
21228 proto_tree_add_item(t, hf_x11_struct_Section_nRows, tvb, *offsetp, 1, byte_order);
21229 *offsetp += 1;
21230 f_nDoodads = VALUE8(tvb, *offsetp);
21231 proto_tree_add_item(t, hf_x11_struct_Section_nDoodads, tvb, *offsetp, 1, byte_order);
21232 *offsetp += 1;
21233 f_nOverlays = VALUE8(tvb, *offsetp);
21234 proto_tree_add_item(t, hf_x11_struct_Section_nOverlays, tvb, *offsetp, 1, byte_order);
21235 *offsetp += 1;
21236 UNUSED(2);
21237 struct_Row(tvb, offsetp, t, byte_order, f_nRows);
21238 struct_Doodad(tvb, offsetp, t, byte_order, f_nDoodads);
21239 struct_Overlay(tvb, offsetp, t, byte_order, f_nOverlays);
21243 static int struct_size_Listing(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
21245 int size = 0;
21246 int f_length;
21247 f_length = VALUE16(tvb, *offsetp + size + 2);
21248 size += f_length * 1;
21249 return size + 4;
21252 static void struct_Listing(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21254 int i;
21255 for (i = 0; i < count; i++) {
21256 proto_item *item;
21257 proto_tree *t;
21258 int f_flags;
21259 int f_length;
21261 item = proto_tree_add_item(root, hf_x11_struct_Listing, tvb, *offsetp, struct_size_Listing(tvb, offsetp, byte_order), ENC_NA);
21262 t = proto_item_add_subtree(item, ett_x11_rectangle);
21263 f_flags = VALUE16(tvb, *offsetp);
21264 proto_tree_add_item(t, hf_x11_struct_Listing_flags, tvb, *offsetp, 2, byte_order);
21265 *offsetp += 2;
21266 f_length = VALUE16(tvb, *offsetp);
21267 proto_tree_add_item(t, hf_x11_struct_Listing_length, tvb, *offsetp, 2, byte_order);
21268 *offsetp += 2;
21269 listOfByte(tvb, offsetp, t, hf_x11_struct_Listing_string, f_length, byte_order);
21273 static int struct_size_DeviceLedInfo(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
21275 int size = 0;
21276 int f_mapsPresent;
21277 int f_namesPresent;
21278 f_namesPresent = VALUE32(tvb, *offsetp + size + 4);
21279 f_mapsPresent = VALUE32(tvb, *offsetp + size + 8);
21280 size += popcount(f_namesPresent) * 4;
21281 size += popcount(f_mapsPresent) * 12;
21282 return size + 20;
21285 static void struct_DeviceLedInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21287 int i;
21288 for (i = 0; i < count; i++) {
21289 proto_item *item;
21290 proto_tree *t;
21291 int f_ledClass;
21292 int f_ledID;
21293 int f_namesPresent;
21294 int f_mapsPresent;
21295 int f_physIndicators;
21296 int f_state;
21298 item = proto_tree_add_item(root, hf_x11_struct_DeviceLedInfo, tvb, *offsetp, struct_size_DeviceLedInfo(tvb, offsetp, byte_order), ENC_NA);
21299 t = proto_item_add_subtree(item, ett_x11_rectangle);
21300 f_ledClass = field16(tvb, offsetp, t, hf_x11_struct_DeviceLedInfo_ledClass, byte_order);
21301 f_ledID = field16(tvb, offsetp, t, hf_x11_struct_DeviceLedInfo_ledID, byte_order);
21302 f_namesPresent = VALUE32(tvb, *offsetp);
21303 proto_tree_add_item(t, hf_x11_struct_DeviceLedInfo_namesPresent, tvb, *offsetp, 4, byte_order);
21304 *offsetp += 4;
21305 f_mapsPresent = VALUE32(tvb, *offsetp);
21306 proto_tree_add_item(t, hf_x11_struct_DeviceLedInfo_mapsPresent, tvb, *offsetp, 4, byte_order);
21307 *offsetp += 4;
21308 f_physIndicators = VALUE32(tvb, *offsetp);
21309 proto_tree_add_item(t, hf_x11_struct_DeviceLedInfo_physIndicators, tvb, *offsetp, 4, byte_order);
21310 *offsetp += 4;
21311 f_state = VALUE32(tvb, *offsetp);
21312 proto_tree_add_item(t, hf_x11_struct_DeviceLedInfo_state, tvb, *offsetp, 4, byte_order);
21313 *offsetp += 4;
21314 listOfCard32(tvb, offsetp, t, hf_x11_struct_DeviceLedInfo_names, hf_x11_struct_DeviceLedInfo_names_item, popcount(f_namesPresent), byte_order);
21315 struct_IndicatorMap(tvb, offsetp, t, byte_order, popcount(f_mapsPresent));
21319 static void struct_SANoAction(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21321 int i;
21322 for (i = 0; i < count; i++) {
21323 proto_item *item;
21324 proto_tree *t;
21325 int f_type;
21327 item = proto_tree_add_item(root, hf_x11_struct_SANoAction, tvb, *offsetp, 8, ENC_NA);
21328 t = proto_item_add_subtree(item, ett_x11_rectangle);
21329 f_type = field8(tvb, offsetp, t, hf_x11_struct_SANoAction_type, byte_order);
21330 UNUSED(7);
21334 static void struct_SASetMods(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21336 int i;
21337 for (i = 0; i < count; i++) {
21338 proto_item *item;
21339 proto_tree *t;
21340 int f_type;
21341 int f_flags;
21342 int f_mask;
21343 int f_realMods;
21344 int f_vmodsHigh;
21345 int f_vmodsLow;
21347 item = proto_tree_add_item(root, hf_x11_struct_SASetMods, tvb, *offsetp, 8, ENC_NA);
21348 t = proto_item_add_subtree(item, ett_x11_rectangle);
21349 f_type = field8(tvb, offsetp, t, hf_x11_struct_SASetMods_type, byte_order);
21350 f_flags = VALUE8(tvb, *offsetp);
21352 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetMods_flags, tvb, *offsetp, 1, byte_order);
21353 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21354 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_flags_mask_ClearLocks, tvb, *offsetp, 1, byte_order);
21355 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_flags_mask_LatchToLock, tvb, *offsetp, 1, byte_order);
21356 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_flags_mask_GroupAbsolute, tvb, *offsetp, 1, byte_order);
21358 *offsetp += 1;
21359 f_mask = VALUE8(tvb, *offsetp);
21361 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetMods_mask, tvb, *offsetp, 1, byte_order);
21362 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21363 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
21364 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
21365 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_Control, tvb, *offsetp, 1, byte_order);
21366 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_1, tvb, *offsetp, 1, byte_order);
21367 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_2, tvb, *offsetp, 1, byte_order);
21368 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_3, tvb, *offsetp, 1, byte_order);
21369 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_4, tvb, *offsetp, 1, byte_order);
21370 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_5, tvb, *offsetp, 1, byte_order);
21371 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_mask_mask_Any, tvb, *offsetp, 1, byte_order);
21373 *offsetp += 1;
21374 f_realMods = VALUE8(tvb, *offsetp);
21376 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetMods_realMods, tvb, *offsetp, 1, byte_order);
21377 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21378 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
21379 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
21380 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
21381 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_1, tvb, *offsetp, 1, byte_order);
21382 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_2, tvb, *offsetp, 1, byte_order);
21383 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_3, tvb, *offsetp, 1, byte_order);
21384 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_4, tvb, *offsetp, 1, byte_order);
21385 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_5, tvb, *offsetp, 1, byte_order);
21386 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
21388 *offsetp += 1;
21389 f_vmodsHigh = VALUE8(tvb, *offsetp);
21391 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetMods_vmodsHigh, tvb, *offsetp, 1, byte_order);
21392 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21393 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_8, tvb, *offsetp, 1, byte_order);
21394 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_9, tvb, *offsetp, 1, byte_order);
21395 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_10, tvb, *offsetp, 1, byte_order);
21396 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_11, tvb, *offsetp, 1, byte_order);
21397 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_12, tvb, *offsetp, 1, byte_order);
21398 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_13, tvb, *offsetp, 1, byte_order);
21399 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_14, tvb, *offsetp, 1, byte_order);
21400 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsHigh_mask_15, tvb, *offsetp, 1, byte_order);
21402 *offsetp += 1;
21403 f_vmodsLow = VALUE8(tvb, *offsetp);
21405 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetMods_vmodsLow, tvb, *offsetp, 1, byte_order);
21406 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21407 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_0, tvb, *offsetp, 1, byte_order);
21408 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_1, tvb, *offsetp, 1, byte_order);
21409 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_2, tvb, *offsetp, 1, byte_order);
21410 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_3, tvb, *offsetp, 1, byte_order);
21411 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_4, tvb, *offsetp, 1, byte_order);
21412 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_5, tvb, *offsetp, 1, byte_order);
21413 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_6, tvb, *offsetp, 1, byte_order);
21414 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetMods_vmodsLow_mask_7, tvb, *offsetp, 1, byte_order);
21416 *offsetp += 1;
21417 UNUSED(2);
21421 static void struct_SASetGroup(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21423 int i;
21424 for (i = 0; i < count; i++) {
21425 proto_item *item;
21426 proto_tree *t;
21427 int f_type;
21428 int f_flags;
21429 int f_group;
21431 item = proto_tree_add_item(root, hf_x11_struct_SASetGroup, tvb, *offsetp, 8, ENC_NA);
21432 t = proto_item_add_subtree(item, ett_x11_rectangle);
21433 f_type = field8(tvb, offsetp, t, hf_x11_struct_SASetGroup_type, byte_order);
21434 f_flags = VALUE8(tvb, *offsetp);
21436 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetGroup_flags, tvb, *offsetp, 1, byte_order);
21437 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21438 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetGroup_flags_mask_ClearLocks, tvb, *offsetp, 1, byte_order);
21439 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetGroup_flags_mask_LatchToLock, tvb, *offsetp, 1, byte_order);
21440 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetGroup_flags_mask_GroupAbsolute, tvb, *offsetp, 1, byte_order);
21442 *offsetp += 1;
21443 f_group = VALUE8(tvb, *offsetp);
21444 proto_tree_add_item(t, hf_x11_struct_SASetGroup_group, tvb, *offsetp, 1, byte_order);
21445 *offsetp += 1;
21446 UNUSED(5);
21450 static void struct_SAMovePtr(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21452 int i;
21453 for (i = 0; i < count; i++) {
21454 proto_item *item;
21455 proto_tree *t;
21456 int f_type;
21457 int f_flags;
21458 int f_xHigh;
21459 int f_xLow;
21460 int f_yHigh;
21461 int f_yLow;
21463 item = proto_tree_add_item(root, hf_x11_struct_SAMovePtr, tvb, *offsetp, 8, ENC_NA);
21464 t = proto_item_add_subtree(item, ett_x11_rectangle);
21465 f_type = field8(tvb, offsetp, t, hf_x11_struct_SAMovePtr_type, byte_order);
21466 f_flags = VALUE8(tvb, *offsetp);
21468 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAMovePtr_flags, tvb, *offsetp, 1, byte_order);
21469 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21470 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAMovePtr_flags_mask_NoAcceleration, tvb, *offsetp, 1, byte_order);
21471 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAMovePtr_flags_mask_MoveAbsoluteX, tvb, *offsetp, 1, byte_order);
21472 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAMovePtr_flags_mask_MoveAbsoluteY, tvb, *offsetp, 1, byte_order);
21474 *offsetp += 1;
21475 f_xHigh = VALUE8(tvb, *offsetp);
21476 proto_tree_add_item(t, hf_x11_struct_SAMovePtr_xHigh, tvb, *offsetp, 1, byte_order);
21477 *offsetp += 1;
21478 f_xLow = VALUE8(tvb, *offsetp);
21479 proto_tree_add_item(t, hf_x11_struct_SAMovePtr_xLow, tvb, *offsetp, 1, byte_order);
21480 *offsetp += 1;
21481 f_yHigh = VALUE8(tvb, *offsetp);
21482 proto_tree_add_item(t, hf_x11_struct_SAMovePtr_yHigh, tvb, *offsetp, 1, byte_order);
21483 *offsetp += 1;
21484 f_yLow = VALUE8(tvb, *offsetp);
21485 proto_tree_add_item(t, hf_x11_struct_SAMovePtr_yLow, tvb, *offsetp, 1, byte_order);
21486 *offsetp += 1;
21487 UNUSED(2);
21491 static void struct_SAPtrBtn(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21493 int i;
21494 for (i = 0; i < count; i++) {
21495 proto_item *item;
21496 proto_tree *t;
21497 int f_type;
21498 int f_flags;
21499 int f_count;
21500 int f_button;
21502 item = proto_tree_add_item(root, hf_x11_struct_SAPtrBtn, tvb, *offsetp, 8, ENC_NA);
21503 t = proto_item_add_subtree(item, ett_x11_rectangle);
21504 f_type = field8(tvb, offsetp, t, hf_x11_struct_SAPtrBtn_type, byte_order);
21505 f_flags = VALUE8(tvb, *offsetp);
21506 proto_tree_add_item(t, hf_x11_struct_SAPtrBtn_flags, tvb, *offsetp, 1, byte_order);
21507 *offsetp += 1;
21508 f_count = VALUE8(tvb, *offsetp);
21509 proto_tree_add_item(t, hf_x11_struct_SAPtrBtn_count, tvb, *offsetp, 1, byte_order);
21510 *offsetp += 1;
21511 f_button = VALUE8(tvb, *offsetp);
21512 proto_tree_add_item(t, hf_x11_struct_SAPtrBtn_button, tvb, *offsetp, 1, byte_order);
21513 *offsetp += 1;
21514 UNUSED(4);
21518 static void struct_SALockPtrBtn(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21520 int i;
21521 for (i = 0; i < count; i++) {
21522 proto_item *item;
21523 proto_tree *t;
21524 int f_type;
21525 int f_flags;
21526 int f_button;
21528 item = proto_tree_add_item(root, hf_x11_struct_SALockPtrBtn, tvb, *offsetp, 8, ENC_NA);
21529 t = proto_item_add_subtree(item, ett_x11_rectangle);
21530 f_type = field8(tvb, offsetp, t, hf_x11_struct_SALockPtrBtn_type, byte_order);
21531 f_flags = VALUE8(tvb, *offsetp);
21532 proto_tree_add_item(t, hf_x11_struct_SALockPtrBtn_flags, tvb, *offsetp, 1, byte_order);
21533 *offsetp += 1;
21534 UNUSED(1);
21535 f_button = VALUE8(tvb, *offsetp);
21536 proto_tree_add_item(t, hf_x11_struct_SALockPtrBtn_button, tvb, *offsetp, 1, byte_order);
21537 *offsetp += 1;
21538 UNUSED(4);
21542 static void struct_SASetPtrDflt(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21544 int i;
21545 for (i = 0; i < count; i++) {
21546 proto_item *item;
21547 proto_tree *t;
21548 int f_type;
21549 int f_flags;
21550 int f_affect;
21551 int f_value;
21553 item = proto_tree_add_item(root, hf_x11_struct_SASetPtrDflt, tvb, *offsetp, 8, ENC_NA);
21554 t = proto_item_add_subtree(item, ett_x11_rectangle);
21555 f_type = field8(tvb, offsetp, t, hf_x11_struct_SASetPtrDflt_type, byte_order);
21556 f_flags = VALUE8(tvb, *offsetp);
21558 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetPtrDflt_flags, tvb, *offsetp, 1, byte_order);
21559 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21560 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetPtrDflt_flags_mask_AffectDfltButton, tvb, *offsetp, 1, byte_order);
21561 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetPtrDflt_flags_mask_DfltBtnAbsolute, tvb, *offsetp, 1, byte_order);
21563 *offsetp += 1;
21564 f_affect = VALUE8(tvb, *offsetp);
21566 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetPtrDflt_affect, tvb, *offsetp, 1, byte_order);
21567 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21568 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetPtrDflt_affect_mask_AffectDfltButton, tvb, *offsetp, 1, byte_order);
21569 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetPtrDflt_affect_mask_DfltBtnAbsolute, tvb, *offsetp, 1, byte_order);
21571 *offsetp += 1;
21572 f_value = VALUE8(tvb, *offsetp);
21573 proto_tree_add_item(t, hf_x11_struct_SASetPtrDflt_value, tvb, *offsetp, 1, byte_order);
21574 *offsetp += 1;
21575 UNUSED(4);
21579 static void struct_SAIsoLock(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21581 int i;
21582 for (i = 0; i < count; i++) {
21583 proto_item *item;
21584 proto_tree *t;
21585 int f_type;
21586 int f_flags;
21587 int f_mask;
21588 int f_realMods;
21589 int f_group;
21590 int f_affect;
21591 int f_vmodsHigh;
21592 int f_vmodsLow;
21594 item = proto_tree_add_item(root, hf_x11_struct_SAIsoLock, tvb, *offsetp, 8, ENC_NA);
21595 t = proto_item_add_subtree(item, ett_x11_rectangle);
21596 f_type = field8(tvb, offsetp, t, hf_x11_struct_SAIsoLock_type, byte_order);
21597 f_flags = VALUE8(tvb, *offsetp);
21599 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_flags, tvb, *offsetp, 1, byte_order);
21600 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21601 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_flags_mask_NoLock, tvb, *offsetp, 1, byte_order);
21602 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_flags_mask_NoUnlock, tvb, *offsetp, 1, byte_order);
21603 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_flags_mask_GroupAbsolute, tvb, *offsetp, 1, byte_order);
21604 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_flags_mask_ISODfltIsGroup, tvb, *offsetp, 1, byte_order);
21606 *offsetp += 1;
21607 f_mask = VALUE8(tvb, *offsetp);
21609 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_mask, tvb, *offsetp, 1, byte_order);
21610 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21611 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
21612 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
21613 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_Control, tvb, *offsetp, 1, byte_order);
21614 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_1, tvb, *offsetp, 1, byte_order);
21615 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_2, tvb, *offsetp, 1, byte_order);
21616 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_3, tvb, *offsetp, 1, byte_order);
21617 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_4, tvb, *offsetp, 1, byte_order);
21618 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_5, tvb, *offsetp, 1, byte_order);
21619 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_mask_mask_Any, tvb, *offsetp, 1, byte_order);
21621 *offsetp += 1;
21622 f_realMods = VALUE8(tvb, *offsetp);
21624 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_realMods, tvb, *offsetp, 1, byte_order);
21625 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21626 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
21627 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
21628 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
21629 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_1, tvb, *offsetp, 1, byte_order);
21630 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_2, tvb, *offsetp, 1, byte_order);
21631 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_3, tvb, *offsetp, 1, byte_order);
21632 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_4, tvb, *offsetp, 1, byte_order);
21633 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_5, tvb, *offsetp, 1, byte_order);
21634 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
21636 *offsetp += 1;
21637 f_group = VALUE8(tvb, *offsetp);
21638 proto_tree_add_item(t, hf_x11_struct_SAIsoLock_group, tvb, *offsetp, 1, byte_order);
21639 *offsetp += 1;
21640 f_affect = VALUE8(tvb, *offsetp);
21642 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_affect, tvb, *offsetp, 1, byte_order);
21643 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21644 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_affect_mask_Ctrls, tvb, *offsetp, 1, byte_order);
21645 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_affect_mask_Ptr, tvb, *offsetp, 1, byte_order);
21646 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_affect_mask_Group, tvb, *offsetp, 1, byte_order);
21647 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_affect_mask_Mods, tvb, *offsetp, 1, byte_order);
21649 *offsetp += 1;
21650 f_vmodsHigh = VALUE8(tvb, *offsetp);
21652 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_vmodsHigh, tvb, *offsetp, 1, byte_order);
21653 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21654 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_8, tvb, *offsetp, 1, byte_order);
21655 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_9, tvb, *offsetp, 1, byte_order);
21656 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_10, tvb, *offsetp, 1, byte_order);
21657 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_11, tvb, *offsetp, 1, byte_order);
21658 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_12, tvb, *offsetp, 1, byte_order);
21659 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_13, tvb, *offsetp, 1, byte_order);
21660 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_14, tvb, *offsetp, 1, byte_order);
21661 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsHigh_mask_15, tvb, *offsetp, 1, byte_order);
21663 *offsetp += 1;
21664 f_vmodsLow = VALUE8(tvb, *offsetp);
21666 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAIsoLock_vmodsLow, tvb, *offsetp, 1, byte_order);
21667 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21668 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_0, tvb, *offsetp, 1, byte_order);
21669 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_1, tvb, *offsetp, 1, byte_order);
21670 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_2, tvb, *offsetp, 1, byte_order);
21671 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_3, tvb, *offsetp, 1, byte_order);
21672 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_4, tvb, *offsetp, 1, byte_order);
21673 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_5, tvb, *offsetp, 1, byte_order);
21674 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_6, tvb, *offsetp, 1, byte_order);
21675 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAIsoLock_vmodsLow_mask_7, tvb, *offsetp, 1, byte_order);
21677 *offsetp += 1;
21681 static void struct_SATerminate(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21683 int i;
21684 for (i = 0; i < count; i++) {
21685 proto_item *item;
21686 proto_tree *t;
21687 int f_type;
21689 item = proto_tree_add_item(root, hf_x11_struct_SATerminate, tvb, *offsetp, 8, ENC_NA);
21690 t = proto_item_add_subtree(item, ett_x11_rectangle);
21691 f_type = field8(tvb, offsetp, t, hf_x11_struct_SATerminate_type, byte_order);
21692 UNUSED(7);
21696 static void struct_SASwitchScreen(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21698 int i;
21699 for (i = 0; i < count; i++) {
21700 proto_item *item;
21701 proto_tree *t;
21702 int f_type;
21703 int f_flags;
21704 int f_newScreen;
21706 item = proto_tree_add_item(root, hf_x11_struct_SASwitchScreen, tvb, *offsetp, 8, ENC_NA);
21707 t = proto_item_add_subtree(item, ett_x11_rectangle);
21708 f_type = field8(tvb, offsetp, t, hf_x11_struct_SASwitchScreen_type, byte_order);
21709 f_flags = VALUE8(tvb, *offsetp);
21710 proto_tree_add_item(t, hf_x11_struct_SASwitchScreen_flags, tvb, *offsetp, 1, byte_order);
21711 *offsetp += 1;
21712 f_newScreen = VALUE8(tvb, *offsetp);
21713 proto_tree_add_item(t, hf_x11_struct_SASwitchScreen_newScreen, tvb, *offsetp, 1, byte_order);
21714 *offsetp += 1;
21715 UNUSED(5);
21719 static void struct_SASetControls(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21721 int i;
21722 for (i = 0; i < count; i++) {
21723 proto_item *item;
21724 proto_tree *t;
21725 int f_type;
21726 int f_boolCtrlsHigh;
21727 int f_boolCtrlsLow;
21729 item = proto_tree_add_item(root, hf_x11_struct_SASetControls, tvb, *offsetp, 8, ENC_NA);
21730 t = proto_item_add_subtree(item, ett_x11_rectangle);
21731 f_type = field8(tvb, offsetp, t, hf_x11_struct_SASetControls_type, byte_order);
21732 UNUSED(3);
21733 f_boolCtrlsHigh = VALUE8(tvb, *offsetp);
21735 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetControls_boolCtrlsHigh, tvb, *offsetp, 1, byte_order);
21736 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21737 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsHigh_mask_AccessXFeedback, tvb, *offsetp, 1, byte_order);
21738 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsHigh_mask_AudibleBell, tvb, *offsetp, 1, byte_order);
21739 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsHigh_mask_Overlay1, tvb, *offsetp, 1, byte_order);
21740 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsHigh_mask_Overlay2, tvb, *offsetp, 1, byte_order);
21741 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsHigh_mask_IgnoreGroupLock, tvb, *offsetp, 1, byte_order);
21743 *offsetp += 1;
21744 f_boolCtrlsLow = VALUE8(tvb, *offsetp);
21746 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SASetControls_boolCtrlsLow, tvb, *offsetp, 1, byte_order);
21747 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21748 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_RepeatKeys, tvb, *offsetp, 1, byte_order);
21749 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_SlowKeys, tvb, *offsetp, 1, byte_order);
21750 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_BounceKeys, tvb, *offsetp, 1, byte_order);
21751 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_StickyKeys, tvb, *offsetp, 1, byte_order);
21752 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_MouseKeys, tvb, *offsetp, 1, byte_order);
21753 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_MouseKeysAccel, tvb, *offsetp, 1, byte_order);
21754 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_AccessXKeys, tvb, *offsetp, 1, byte_order);
21755 proto_tree_add_item(bitmask_tree, hf_x11_struct_SASetControls_boolCtrlsLow_mask_AccessXTimeout, tvb, *offsetp, 1, byte_order);
21757 *offsetp += 1;
21758 UNUSED(2);
21762 static void struct_SAActionMessage(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21764 int i;
21765 for (i = 0; i < count; i++) {
21766 proto_item *item;
21767 proto_tree *t;
21768 int f_type;
21769 int f_flags;
21771 item = proto_tree_add_item(root, hf_x11_struct_SAActionMessage, tvb, *offsetp, 3, ENC_NA);
21772 t = proto_item_add_subtree(item, ett_x11_rectangle);
21773 f_type = field8(tvb, offsetp, t, hf_x11_struct_SAActionMessage_type, byte_order);
21774 f_flags = VALUE8(tvb, *offsetp);
21776 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SAActionMessage_flags, tvb, *offsetp, 1, byte_order);
21777 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21778 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAActionMessage_flags_mask_OnPress, tvb, *offsetp, 1, byte_order);
21779 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAActionMessage_flags_mask_OnRelease, tvb, *offsetp, 1, byte_order);
21780 proto_tree_add_item(bitmask_tree, hf_x11_struct_SAActionMessage_flags_mask_GenKeyEvent, tvb, *offsetp, 1, byte_order);
21782 *offsetp += 1;
21783 listOfByte(tvb, offsetp, t, hf_x11_struct_SAActionMessage_message, 6, byte_order);
21787 static void struct_SARedirectKey(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21789 int i;
21790 for (i = 0; i < count; i++) {
21791 proto_item *item;
21792 proto_tree *t;
21793 int f_type;
21794 int f_newkey;
21795 int f_mask;
21796 int f_realModifiers;
21797 int f_vmodsMaskHigh;
21798 int f_vmodsMaskLow;
21799 int f_vmodsHigh;
21800 int f_vmodsLow;
21802 item = proto_tree_add_item(root, hf_x11_struct_SARedirectKey, tvb, *offsetp, 8, ENC_NA);
21803 t = proto_item_add_subtree(item, ett_x11_rectangle);
21804 f_type = field8(tvb, offsetp, t, hf_x11_struct_SARedirectKey_type, byte_order);
21805 f_newkey = VALUE8(tvb, *offsetp);
21806 proto_tree_add_item(t, hf_x11_struct_SARedirectKey_newkey, tvb, *offsetp, 1, byte_order);
21807 *offsetp += 1;
21808 f_mask = VALUE8(tvb, *offsetp);
21810 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_mask, tvb, *offsetp, 1, byte_order);
21811 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21812 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_Shift, tvb, *offsetp, 1, byte_order);
21813 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_Lock, tvb, *offsetp, 1, byte_order);
21814 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_Control, tvb, *offsetp, 1, byte_order);
21815 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_1, tvb, *offsetp, 1, byte_order);
21816 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_2, tvb, *offsetp, 1, byte_order);
21817 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_3, tvb, *offsetp, 1, byte_order);
21818 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_4, tvb, *offsetp, 1, byte_order);
21819 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_5, tvb, *offsetp, 1, byte_order);
21820 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_mask_mask_Any, tvb, *offsetp, 1, byte_order);
21822 *offsetp += 1;
21823 f_realModifiers = VALUE8(tvb, *offsetp);
21825 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_realModifiers, tvb, *offsetp, 1, byte_order);
21826 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21827 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_Shift, tvb, *offsetp, 1, byte_order);
21828 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_Lock, tvb, *offsetp, 1, byte_order);
21829 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_Control, tvb, *offsetp, 1, byte_order);
21830 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_1, tvb, *offsetp, 1, byte_order);
21831 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_2, tvb, *offsetp, 1, byte_order);
21832 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_3, tvb, *offsetp, 1, byte_order);
21833 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_4, tvb, *offsetp, 1, byte_order);
21834 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_5, tvb, *offsetp, 1, byte_order);
21835 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_realModifiers_mask_Any, tvb, *offsetp, 1, byte_order);
21837 *offsetp += 1;
21838 f_vmodsMaskHigh = VALUE8(tvb, *offsetp);
21840 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_vmodsMaskHigh, tvb, *offsetp, 1, byte_order);
21841 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21842 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_8, tvb, *offsetp, 1, byte_order);
21843 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_9, tvb, *offsetp, 1, byte_order);
21844 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_10, tvb, *offsetp, 1, byte_order);
21845 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_11, tvb, *offsetp, 1, byte_order);
21846 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_12, tvb, *offsetp, 1, byte_order);
21847 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_13, tvb, *offsetp, 1, byte_order);
21848 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_14, tvb, *offsetp, 1, byte_order);
21849 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskHigh_mask_15, tvb, *offsetp, 1, byte_order);
21851 *offsetp += 1;
21852 f_vmodsMaskLow = VALUE8(tvb, *offsetp);
21854 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_vmodsMaskLow, tvb, *offsetp, 1, byte_order);
21855 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21856 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_0, tvb, *offsetp, 1, byte_order);
21857 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_1, tvb, *offsetp, 1, byte_order);
21858 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_2, tvb, *offsetp, 1, byte_order);
21859 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_3, tvb, *offsetp, 1, byte_order);
21860 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_4, tvb, *offsetp, 1, byte_order);
21861 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_5, tvb, *offsetp, 1, byte_order);
21862 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_6, tvb, *offsetp, 1, byte_order);
21863 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsMaskLow_mask_7, tvb, *offsetp, 1, byte_order);
21865 *offsetp += 1;
21866 f_vmodsHigh = VALUE8(tvb, *offsetp);
21868 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_vmodsHigh, tvb, *offsetp, 1, byte_order);
21869 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21870 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_8, tvb, *offsetp, 1, byte_order);
21871 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_9, tvb, *offsetp, 1, byte_order);
21872 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_10, tvb, *offsetp, 1, byte_order);
21873 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_11, tvb, *offsetp, 1, byte_order);
21874 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_12, tvb, *offsetp, 1, byte_order);
21875 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_13, tvb, *offsetp, 1, byte_order);
21876 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_14, tvb, *offsetp, 1, byte_order);
21877 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsHigh_mask_15, tvb, *offsetp, 1, byte_order);
21879 *offsetp += 1;
21880 f_vmodsLow = VALUE8(tvb, *offsetp);
21882 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SARedirectKey_vmodsLow, tvb, *offsetp, 1, byte_order);
21883 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21884 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_0, tvb, *offsetp, 1, byte_order);
21885 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_1, tvb, *offsetp, 1, byte_order);
21886 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_2, tvb, *offsetp, 1, byte_order);
21887 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_3, tvb, *offsetp, 1, byte_order);
21888 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_4, tvb, *offsetp, 1, byte_order);
21889 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_5, tvb, *offsetp, 1, byte_order);
21890 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_6, tvb, *offsetp, 1, byte_order);
21891 proto_tree_add_item(bitmask_tree, hf_x11_struct_SARedirectKey_vmodsLow_mask_7, tvb, *offsetp, 1, byte_order);
21893 *offsetp += 1;
21897 static void struct_SADeviceBtn(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21899 int i;
21900 for (i = 0; i < count; i++) {
21901 proto_item *item;
21902 proto_tree *t;
21903 int f_type;
21904 int f_flags;
21905 int f_count;
21906 int f_button;
21907 int f_device;
21909 item = proto_tree_add_item(root, hf_x11_struct_SADeviceBtn, tvb, *offsetp, 8, ENC_NA);
21910 t = proto_item_add_subtree(item, ett_x11_rectangle);
21911 f_type = field8(tvb, offsetp, t, hf_x11_struct_SADeviceBtn_type, byte_order);
21912 f_flags = VALUE8(tvb, *offsetp);
21913 proto_tree_add_item(t, hf_x11_struct_SADeviceBtn_flags, tvb, *offsetp, 1, byte_order);
21914 *offsetp += 1;
21915 f_count = VALUE8(tvb, *offsetp);
21916 proto_tree_add_item(t, hf_x11_struct_SADeviceBtn_count, tvb, *offsetp, 1, byte_order);
21917 *offsetp += 1;
21918 f_button = VALUE8(tvb, *offsetp);
21919 proto_tree_add_item(t, hf_x11_struct_SADeviceBtn_button, tvb, *offsetp, 1, byte_order);
21920 *offsetp += 1;
21921 f_device = VALUE8(tvb, *offsetp);
21922 proto_tree_add_item(t, hf_x11_struct_SADeviceBtn_device, tvb, *offsetp, 1, byte_order);
21923 *offsetp += 1;
21924 UNUSED(3);
21928 static void struct_SALockDeviceBtn(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21930 int i;
21931 for (i = 0; i < count; i++) {
21932 proto_item *item;
21933 proto_tree *t;
21934 int f_type;
21935 int f_flags;
21936 int f_button;
21937 int f_device;
21939 item = proto_tree_add_item(root, hf_x11_struct_SALockDeviceBtn, tvb, *offsetp, 5, ENC_NA);
21940 t = proto_item_add_subtree(item, ett_x11_rectangle);
21941 f_type = field8(tvb, offsetp, t, hf_x11_struct_SALockDeviceBtn_type, byte_order);
21942 f_flags = VALUE8(tvb, *offsetp);
21944 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_SALockDeviceBtn_flags, tvb, *offsetp, 1, byte_order);
21945 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
21946 proto_tree_add_item(bitmask_tree, hf_x11_struct_SALockDeviceBtn_flags_mask_NoLock, tvb, *offsetp, 1, byte_order);
21947 proto_tree_add_item(bitmask_tree, hf_x11_struct_SALockDeviceBtn_flags_mask_NoUnlock, tvb, *offsetp, 1, byte_order);
21949 *offsetp += 1;
21950 UNUSED(1);
21951 f_button = VALUE8(tvb, *offsetp);
21952 proto_tree_add_item(t, hf_x11_struct_SALockDeviceBtn_button, tvb, *offsetp, 1, byte_order);
21953 *offsetp += 1;
21954 f_device = VALUE8(tvb, *offsetp);
21955 proto_tree_add_item(t, hf_x11_struct_SALockDeviceBtn_device, tvb, *offsetp, 1, byte_order);
21956 *offsetp += 1;
21960 static void struct_SADeviceValuator(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
21962 int i;
21963 for (i = 0; i < count; i++) {
21964 proto_item *item;
21965 proto_tree *t;
21966 int f_type;
21967 int f_device;
21968 int f_val1what;
21969 int f_val1index;
21970 int f_val1value;
21971 int f_val2what;
21972 int f_val2index;
21973 int f_val2value;
21975 item = proto_tree_add_item(root, hf_x11_struct_SADeviceValuator, tvb, *offsetp, 8, ENC_NA);
21976 t = proto_item_add_subtree(item, ett_x11_rectangle);
21977 f_type = field8(tvb, offsetp, t, hf_x11_struct_SADeviceValuator_type, byte_order);
21978 f_device = VALUE8(tvb, *offsetp);
21979 proto_tree_add_item(t, hf_x11_struct_SADeviceValuator_device, tvb, *offsetp, 1, byte_order);
21980 *offsetp += 1;
21981 f_val1what = field8(tvb, offsetp, t, hf_x11_struct_SADeviceValuator_val1what, byte_order);
21982 f_val1index = VALUE8(tvb, *offsetp);
21983 proto_tree_add_item(t, hf_x11_struct_SADeviceValuator_val1index, tvb, *offsetp, 1, byte_order);
21984 *offsetp += 1;
21985 f_val1value = VALUE8(tvb, *offsetp);
21986 proto_tree_add_item(t, hf_x11_struct_SADeviceValuator_val1value, tvb, *offsetp, 1, byte_order);
21987 *offsetp += 1;
21988 f_val2what = field8(tvb, offsetp, t, hf_x11_struct_SADeviceValuator_val2what, byte_order);
21989 f_val2index = VALUE8(tvb, *offsetp);
21990 proto_tree_add_item(t, hf_x11_struct_SADeviceValuator_val2index, tvb, *offsetp, 1, byte_order);
21991 *offsetp += 1;
21992 f_val2value = VALUE8(tvb, *offsetp);
21993 proto_tree_add_item(t, hf_x11_struct_SADeviceValuator_val2value, tvb, *offsetp, 1, byte_order);
21994 *offsetp += 1;
21998 static void struct_Action(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order, int count)
22000 int i;
22001 int base = *offsetp;
22002 for (i = 0; i < count; i++) {
22003 proto_item *item;
22004 proto_tree *t;
22005 int f_type;
22006 item = proto_tree_add_item(root, hf_x11_union_Action, tvb, base, 8, ENC_NA);
22007 t = proto_item_add_subtree(item, ett_x11_rectangle);
22009 *offsetp = base;
22010 struct_SANoAction(tvb, offsetp, t, byte_order, 1);
22011 *offsetp = base;
22012 struct_SASetMods(tvb, offsetp, t, byte_order, 1);
22013 *offsetp = base;
22014 struct_SASetMods(tvb, offsetp, t, byte_order, 1);
22015 *offsetp = base;
22016 struct_SASetMods(tvb, offsetp, t, byte_order, 1);
22017 *offsetp = base;
22018 struct_SASetGroup(tvb, offsetp, t, byte_order, 1);
22019 *offsetp = base;
22020 struct_SASetGroup(tvb, offsetp, t, byte_order, 1);
22021 *offsetp = base;
22022 struct_SASetGroup(tvb, offsetp, t, byte_order, 1);
22023 *offsetp = base;
22024 struct_SAMovePtr(tvb, offsetp, t, byte_order, 1);
22025 *offsetp = base;
22026 struct_SAPtrBtn(tvb, offsetp, t, byte_order, 1);
22027 *offsetp = base;
22028 struct_SALockPtrBtn(tvb, offsetp, t, byte_order, 1);
22029 *offsetp = base;
22030 struct_SASetPtrDflt(tvb, offsetp, t, byte_order, 1);
22031 *offsetp = base;
22032 struct_SAIsoLock(tvb, offsetp, t, byte_order, 1);
22033 *offsetp = base;
22034 struct_SATerminate(tvb, offsetp, t, byte_order, 1);
22035 *offsetp = base;
22036 struct_SASwitchScreen(tvb, offsetp, t, byte_order, 1);
22037 *offsetp = base;
22038 struct_SASetControls(tvb, offsetp, t, byte_order, 1);
22039 *offsetp = base;
22040 struct_SASetControls(tvb, offsetp, t, byte_order, 1);
22041 *offsetp = base;
22042 struct_SAActionMessage(tvb, offsetp, t, byte_order, 1);
22043 *offsetp = base;
22044 struct_SARedirectKey(tvb, offsetp, t, byte_order, 1);
22045 *offsetp = base;
22046 struct_SADeviceBtn(tvb, offsetp, t, byte_order, 1);
22047 *offsetp = base;
22048 struct_SALockDeviceBtn(tvb, offsetp, t, byte_order, 1);
22049 *offsetp = base;
22050 struct_SADeviceValuator(tvb, offsetp, t, byte_order, 1);
22051 *offsetp = base;
22052 f_type = field8(tvb, offsetp, t, hf_x11_union_Action_type, byte_order);
22053 base += 8;
22055 *offsetp = base;
22058 static void xkbUseExtension(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22060 int f_wantedMajor;
22061 int f_wantedMinor;
22062 f_wantedMajor = VALUE16(tvb, *offsetp);
22063 proto_tree_add_item(t, hf_x11_xkb_UseExtension_wantedMajor, tvb, *offsetp, 2, byte_order);
22064 *offsetp += 2;
22065 f_wantedMinor = VALUE16(tvb, *offsetp);
22066 proto_tree_add_item(t, hf_x11_xkb_UseExtension_wantedMinor, tvb, *offsetp, 2, byte_order);
22067 *offsetp += 2;
22069 static void xkbUseExtension_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
22071 int f_length, length, sequence_number;
22072 int f_supported;
22073 int f_serverMajor;
22074 int f_serverMinor;
22076 col_append_fstr(pinfo->cinfo, COL_INFO, "-UseExtension");
22078 REPLY(reply);
22079 f_supported = VALUE8(tvb, *offsetp);
22080 proto_tree_add_item(t, hf_x11_xkb_UseExtension_reply_supported, tvb, *offsetp, 1, byte_order);
22081 *offsetp += 1;
22082 sequence_number = VALUE16(tvb, *offsetp);
22083 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
22084 "sequencenumber: %d (xkb-UseExtension)", sequence_number);
22085 *offsetp += 2;
22086 f_length = VALUE32(tvb, *offsetp);
22087 length = f_length * 4 + 32;
22088 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
22089 *offsetp += 4;
22090 f_serverMajor = VALUE16(tvb, *offsetp);
22091 proto_tree_add_item(t, hf_x11_xkb_UseExtension_reply_serverMajor, tvb, *offsetp, 2, byte_order);
22092 *offsetp += 2;
22093 f_serverMinor = VALUE16(tvb, *offsetp);
22094 proto_tree_add_item(t, hf_x11_xkb_UseExtension_reply_serverMinor, tvb, *offsetp, 2, byte_order);
22095 *offsetp += 2;
22096 UNUSED(20);
22099 static void xkbSelectEvents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22101 int f_deviceSpec;
22102 int f_affectWhich;
22103 int f_clear;
22104 int f_selectAll;
22105 int f_affectMap;
22106 int f_map;
22107 f_deviceSpec = VALUE16(tvb, *offsetp);
22108 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_deviceSpec, tvb, *offsetp, 2, byte_order);
22109 *offsetp += 2;
22110 f_affectWhich = field16(tvb, offsetp, t, hf_x11_xkb_SelectEvents_affectWhich, byte_order);
22111 f_clear = field16(tvb, offsetp, t, hf_x11_xkb_SelectEvents_clear, byte_order);
22112 f_selectAll = field16(tvb, offsetp, t, hf_x11_xkb_SelectEvents_selectAll, byte_order);
22113 f_affectMap = field16(tvb, offsetp, t, hf_x11_xkb_SelectEvents_affectMap, byte_order);
22114 f_map = field16(tvb, offsetp, t, hf_x11_xkb_SelectEvents_map, byte_order);
22115 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 0)) != 0) {
22116 int f_affectNewKeyboard;
22117 int f_newKeyboardDetails;
22118 f_affectNewKeyboard = VALUE16(tvb, *offsetp);
22120 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard, tvb, *offsetp, 2, byte_order);
22121 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22122 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_Keycodes, tvb, *offsetp, 2, byte_order);
22123 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_Geometry, tvb, *offsetp, 2, byte_order);
22124 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_affectNewKeyboard_mask_DeviceID, tvb, *offsetp, 2, byte_order);
22126 *offsetp += 2;
22127 f_newKeyboardDetails = VALUE16(tvb, *offsetp);
22129 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails, tvb, *offsetp, 2, byte_order);
22130 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22131 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_Keycodes, tvb, *offsetp, 2, byte_order);
22132 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_Geometry, tvb, *offsetp, 2, byte_order);
22133 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NewKeyboardNotify_newKeyboardDetails_mask_DeviceID, tvb, *offsetp, 2, byte_order);
22135 *offsetp += 2;
22137 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 2)) != 0) {
22138 int f_affectState;
22139 int f_stateDetails;
22140 f_affectState = VALUE16(tvb, *offsetp);
22142 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_StateNotify_affectState, tvb, *offsetp, 2, byte_order);
22143 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22144 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierState, tvb, *offsetp, 2, byte_order);
22145 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierBase, tvb, *offsetp, 2, byte_order);
22146 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierLatch, tvb, *offsetp, 2, byte_order);
22147 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_ModifierLock, tvb, *offsetp, 2, byte_order);
22148 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupState, tvb, *offsetp, 2, byte_order);
22149 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupBase, tvb, *offsetp, 2, byte_order);
22150 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupLatch, tvb, *offsetp, 2, byte_order);
22151 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GroupLock, tvb, *offsetp, 2, byte_order);
22152 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatState, tvb, *offsetp, 2, byte_order);
22153 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_GrabMods, tvb, *offsetp, 2, byte_order);
22154 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatGrabMods, tvb, *offsetp, 2, byte_order);
22155 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_LookupMods, tvb, *offsetp, 2, byte_order);
22156 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_CompatLookupMods, tvb, *offsetp, 2, byte_order);
22157 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_affectState_mask_PointerButtons, tvb, *offsetp, 2, byte_order);
22159 *offsetp += 2;
22160 f_stateDetails = VALUE16(tvb, *offsetp);
22162 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_StateNotify_stateDetails, tvb, *offsetp, 2, byte_order);
22163 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22164 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierState, tvb, *offsetp, 2, byte_order);
22165 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierBase, tvb, *offsetp, 2, byte_order);
22166 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierLatch, tvb, *offsetp, 2, byte_order);
22167 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_ModifierLock, tvb, *offsetp, 2, byte_order);
22168 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupState, tvb, *offsetp, 2, byte_order);
22169 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupBase, tvb, *offsetp, 2, byte_order);
22170 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupLatch, tvb, *offsetp, 2, byte_order);
22171 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GroupLock, tvb, *offsetp, 2, byte_order);
22172 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatState, tvb, *offsetp, 2, byte_order);
22173 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_GrabMods, tvb, *offsetp, 2, byte_order);
22174 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatGrabMods, tvb, *offsetp, 2, byte_order);
22175 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_LookupMods, tvb, *offsetp, 2, byte_order);
22176 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_CompatLookupMods, tvb, *offsetp, 2, byte_order);
22177 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_StateNotify_stateDetails_mask_PointerButtons, tvb, *offsetp, 2, byte_order);
22179 *offsetp += 2;
22181 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 3)) != 0) {
22182 int f_affectCtrls;
22183 int f_ctrlDetails;
22184 f_affectCtrls = VALUE32(tvb, *offsetp);
22186 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls, tvb, *offsetp, 4, byte_order);
22187 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22188 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_GroupsWrap, tvb, *offsetp, 4, byte_order);
22189 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_InternalMods, tvb, *offsetp, 4, byte_order);
22190 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_IgnoreLockMods, tvb, *offsetp, 4, byte_order);
22191 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_PerKeyRepeat, tvb, *offsetp, 4, byte_order);
22192 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_affectCtrls_mask_ControlsEnabled, tvb, *offsetp, 4, byte_order);
22194 *offsetp += 4;
22195 f_ctrlDetails = VALUE32(tvb, *offsetp);
22197 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails, tvb, *offsetp, 4, byte_order);
22198 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22199 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_GroupsWrap, tvb, *offsetp, 4, byte_order);
22200 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_InternalMods, tvb, *offsetp, 4, byte_order);
22201 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_IgnoreLockMods, tvb, *offsetp, 4, byte_order);
22202 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_PerKeyRepeat, tvb, *offsetp, 4, byte_order);
22203 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ControlsNotify_ctrlDetails_mask_ControlsEnabled, tvb, *offsetp, 4, byte_order);
22205 *offsetp += 4;
22207 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 4)) != 0) {
22208 int f_affectIndicatorState;
22209 int f_indicatorStateDetails;
22210 f_affectIndicatorState = VALUE32(tvb, *offsetp);
22211 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_IndicatorStateNotify_affectIndicatorState, tvb, *offsetp, 4, byte_order);
22212 *offsetp += 4;
22213 f_indicatorStateDetails = VALUE32(tvb, *offsetp);
22214 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_IndicatorStateNotify_indicatorStateDetails, tvb, *offsetp, 4, byte_order);
22215 *offsetp += 4;
22217 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 5)) != 0) {
22218 int f_affectIndicatorMap;
22219 int f_indicatorMapDetails;
22220 f_affectIndicatorMap = VALUE32(tvb, *offsetp);
22221 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_IndicatorMapNotify_affectIndicatorMap, tvb, *offsetp, 4, byte_order);
22222 *offsetp += 4;
22223 f_indicatorMapDetails = VALUE32(tvb, *offsetp);
22224 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_IndicatorMapNotify_indicatorMapDetails, tvb, *offsetp, 4, byte_order);
22225 *offsetp += 4;
22227 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 6)) != 0) {
22228 int f_affectNames;
22229 int f_namesDetails;
22230 f_affectNames = VALUE16(tvb, *offsetp);
22232 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_NamesNotify_affectNames, tvb, *offsetp, 2, byte_order);
22233 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22234 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Keycodes, tvb, *offsetp, 2, byte_order);
22235 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Geometry, tvb, *offsetp, 2, byte_order);
22236 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Symbols, tvb, *offsetp, 2, byte_order);
22237 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_PhysSymbols, tvb, *offsetp, 2, byte_order);
22238 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Types, tvb, *offsetp, 2, byte_order);
22239 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_Compat, tvb, *offsetp, 2, byte_order);
22240 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyTypeNames, tvb, *offsetp, 2, byte_order);
22241 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KTLevelNames, tvb, *offsetp, 2, byte_order);
22242 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
22243 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyNames, tvb, *offsetp, 2, byte_order);
22244 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_KeyAliases, tvb, *offsetp, 2, byte_order);
22245 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_VirtualModNames, tvb, *offsetp, 2, byte_order);
22246 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_GroupNames, tvb, *offsetp, 2, byte_order);
22247 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_affectNames_mask_RGNames, tvb, *offsetp, 2, byte_order);
22249 *offsetp += 2;
22250 f_namesDetails = VALUE16(tvb, *offsetp);
22252 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails, tvb, *offsetp, 2, byte_order);
22253 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22254 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Keycodes, tvb, *offsetp, 2, byte_order);
22255 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Geometry, tvb, *offsetp, 2, byte_order);
22256 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Symbols, tvb, *offsetp, 2, byte_order);
22257 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_PhysSymbols, tvb, *offsetp, 2, byte_order);
22258 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Types, tvb, *offsetp, 2, byte_order);
22259 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_Compat, tvb, *offsetp, 2, byte_order);
22260 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyTypeNames, tvb, *offsetp, 2, byte_order);
22261 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KTLevelNames, tvb, *offsetp, 2, byte_order);
22262 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
22263 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyNames, tvb, *offsetp, 2, byte_order);
22264 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_KeyAliases, tvb, *offsetp, 2, byte_order);
22265 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_VirtualModNames, tvb, *offsetp, 2, byte_order);
22266 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_GroupNames, tvb, *offsetp, 2, byte_order);
22267 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_NamesNotify_namesDetails_mask_RGNames, tvb, *offsetp, 2, byte_order);
22269 *offsetp += 2;
22271 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 7)) != 0) {
22272 int f_affectCompat;
22273 int f_compatDetails;
22274 f_affectCompat = VALUE8(tvb, *offsetp);
22276 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat, tvb, *offsetp, 1, byte_order);
22277 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22278 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat_mask_SymInterp, tvb, *offsetp, 1, byte_order);
22279 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_CompatMapNotify_affectCompat_mask_GroupCompat, tvb, *offsetp, 1, byte_order);
22281 *offsetp += 1;
22282 f_compatDetails = VALUE8(tvb, *offsetp);
22284 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails, tvb, *offsetp, 1, byte_order);
22285 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22286 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails_mask_SymInterp, tvb, *offsetp, 1, byte_order);
22287 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_CompatMapNotify_compatDetails_mask_GroupCompat, tvb, *offsetp, 1, byte_order);
22289 *offsetp += 1;
22291 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 8)) != 0) {
22292 int f_affectBell;
22293 int f_bellDetails;
22294 f_affectBell = VALUE8(tvb, *offsetp);
22295 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_BellNotify_affectBell, tvb, *offsetp, 1, byte_order);
22296 *offsetp += 1;
22297 f_bellDetails = VALUE8(tvb, *offsetp);
22298 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_BellNotify_bellDetails, tvb, *offsetp, 1, byte_order);
22299 *offsetp += 1;
22301 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 9)) != 0) {
22302 int f_affectMsgDetails;
22303 int f_msgDetails;
22304 f_affectMsgDetails = VALUE8(tvb, *offsetp);
22305 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ActionMessage_affectMsgDetails, tvb, *offsetp, 1, byte_order);
22306 *offsetp += 1;
22307 f_msgDetails = VALUE8(tvb, *offsetp);
22308 proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ActionMessage_msgDetails, tvb, *offsetp, 1, byte_order);
22309 *offsetp += 1;
22311 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 10)) != 0) {
22312 int f_affectAccessX;
22313 int f_accessXDetails;
22314 f_affectAccessX = VALUE16(tvb, *offsetp);
22316 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX, tvb, *offsetp, 2, byte_order);
22317 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22318 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKPress, tvb, *offsetp, 2, byte_order);
22319 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKAccept, tvb, *offsetp, 2, byte_order);
22320 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKReject, tvb, *offsetp, 2, byte_order);
22321 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_SKRelease, tvb, *offsetp, 2, byte_order);
22322 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_BKAccept, tvb, *offsetp, 2, byte_order);
22323 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_BKReject, tvb, *offsetp, 2, byte_order);
22324 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_affectAccessX_mask_AXKWarning, tvb, *offsetp, 2, byte_order);
22326 *offsetp += 2;
22327 f_accessXDetails = VALUE16(tvb, *offsetp);
22329 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails, tvb, *offsetp, 2, byte_order);
22330 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22331 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKPress, tvb, *offsetp, 2, byte_order);
22332 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKAccept, tvb, *offsetp, 2, byte_order);
22333 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKReject, tvb, *offsetp, 2, byte_order);
22334 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_SKRelease, tvb, *offsetp, 2, byte_order);
22335 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_BKAccept, tvb, *offsetp, 2, byte_order);
22336 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_BKReject, tvb, *offsetp, 2, byte_order);
22337 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_AccessXNotify_accessXDetails_mask_AXKWarning, tvb, *offsetp, 2, byte_order);
22339 *offsetp += 2;
22341 if (((f_affectWhich & ((~f_clear) & (~f_selectAll))) & (1 << 11)) != 0) {
22342 int f_affectExtDev;
22343 int f_extdevDetails;
22344 f_affectExtDev = VALUE16(tvb, *offsetp);
22346 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev, tvb, *offsetp, 2, byte_order);
22347 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22348 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_Keyboards, tvb, *offsetp, 2, byte_order);
22349 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
22350 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
22351 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
22352 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_affectExtDev_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
22354 *offsetp += 2;
22355 f_extdevDetails = VALUE16(tvb, *offsetp);
22357 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails, tvb, *offsetp, 2, byte_order);
22358 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22359 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_Keyboards, tvb, *offsetp, 2, byte_order);
22360 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
22361 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
22362 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
22363 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SelectEvents_ExtensionDeviceNotify_extdevDetails_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
22365 *offsetp += 2;
22369 static void xkbBell(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22371 int f_deviceSpec;
22372 int f_bellClass;
22373 int f_bellID;
22374 int f_percent;
22375 int f_forceSound;
22376 int f_eventOnly;
22377 int f_pitch;
22378 int f_duration;
22379 int f_name;
22380 int f_window;
22381 f_deviceSpec = VALUE16(tvb, *offsetp);
22382 proto_tree_add_item(t, hf_x11_xkb_Bell_deviceSpec, tvb, *offsetp, 2, byte_order);
22383 *offsetp += 2;
22384 f_bellClass = VALUE16(tvb, *offsetp);
22385 proto_tree_add_item(t, hf_x11_xkb_Bell_bellClass, tvb, *offsetp, 2, byte_order);
22386 *offsetp += 2;
22387 f_bellID = VALUE16(tvb, *offsetp);
22388 proto_tree_add_item(t, hf_x11_xkb_Bell_bellID, tvb, *offsetp, 2, byte_order);
22389 *offsetp += 2;
22390 f_percent = VALUE8(tvb, *offsetp);
22391 proto_tree_add_item(t, hf_x11_xkb_Bell_percent, tvb, *offsetp, 1, byte_order);
22392 *offsetp += 1;
22393 f_forceSound = VALUE8(tvb, *offsetp);
22394 proto_tree_add_item(t, hf_x11_xkb_Bell_forceSound, tvb, *offsetp, 1, byte_order);
22395 *offsetp += 1;
22396 f_eventOnly = VALUE8(tvb, *offsetp);
22397 proto_tree_add_item(t, hf_x11_xkb_Bell_eventOnly, tvb, *offsetp, 1, byte_order);
22398 *offsetp += 1;
22399 UNUSED(1);
22400 f_pitch = VALUE16(tvb, *offsetp);
22401 proto_tree_add_item(t, hf_x11_xkb_Bell_pitch, tvb, *offsetp, 2, byte_order);
22402 *offsetp += 2;
22403 f_duration = VALUE16(tvb, *offsetp);
22404 proto_tree_add_item(t, hf_x11_xkb_Bell_duration, tvb, *offsetp, 2, byte_order);
22405 *offsetp += 2;
22406 UNUSED(2);
22407 f_name = VALUE32(tvb, *offsetp);
22408 proto_tree_add_item(t, hf_x11_xkb_Bell_name, tvb, *offsetp, 4, byte_order);
22409 *offsetp += 4;
22410 f_window = VALUE32(tvb, *offsetp);
22411 proto_tree_add_item(t, hf_x11_xkb_Bell_window, tvb, *offsetp, 4, byte_order);
22412 *offsetp += 4;
22415 static void xkbGetState(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22417 int f_deviceSpec;
22418 f_deviceSpec = VALUE16(tvb, *offsetp);
22419 proto_tree_add_item(t, hf_x11_xkb_GetState_deviceSpec, tvb, *offsetp, 2, byte_order);
22420 *offsetp += 2;
22421 UNUSED(2);
22423 static void xkbGetState_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
22425 int f_length, length, sequence_number;
22426 int f_deviceID;
22427 int f_mods;
22428 int f_baseMods;
22429 int f_latchedMods;
22430 int f_lockedMods;
22431 int f_group;
22432 int f_lockedGroup;
22433 int f_baseGroup;
22434 int f_latchedGroup;
22435 int f_compatState;
22436 int f_grabMods;
22437 int f_compatGrabMods;
22438 int f_lookupMods;
22439 int f_compatLookupMods;
22440 int f_ptrBtnState;
22442 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetState");
22444 REPLY(reply);
22445 f_deviceID = VALUE8(tvb, *offsetp);
22446 proto_tree_add_item(t, hf_x11_xkb_GetState_reply_deviceID, tvb, *offsetp, 1, byte_order);
22447 *offsetp += 1;
22448 sequence_number = VALUE16(tvb, *offsetp);
22449 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
22450 "sequencenumber: %d (xkb-GetState)", sequence_number);
22451 *offsetp += 2;
22452 f_length = VALUE32(tvb, *offsetp);
22453 length = f_length * 4 + 32;
22454 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
22455 *offsetp += 4;
22456 f_mods = VALUE8(tvb, *offsetp);
22458 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_mods, tvb, *offsetp, 1, byte_order);
22459 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22460 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
22461 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
22462 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_Control, tvb, *offsetp, 1, byte_order);
22463 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_1, tvb, *offsetp, 1, byte_order);
22464 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_2, tvb, *offsetp, 1, byte_order);
22465 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_3, tvb, *offsetp, 1, byte_order);
22466 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_4, tvb, *offsetp, 1, byte_order);
22467 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_5, tvb, *offsetp, 1, byte_order);
22468 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_mods_mask_Any, tvb, *offsetp, 1, byte_order);
22470 *offsetp += 1;
22471 f_baseMods = VALUE8(tvb, *offsetp);
22473 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_baseMods, tvb, *offsetp, 1, byte_order);
22474 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22475 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22476 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22477 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_Control, tvb, *offsetp, 1, byte_order);
22478 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_1, tvb, *offsetp, 1, byte_order);
22479 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_2, tvb, *offsetp, 1, byte_order);
22480 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_3, tvb, *offsetp, 1, byte_order);
22481 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_4, tvb, *offsetp, 1, byte_order);
22482 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_5, tvb, *offsetp, 1, byte_order);
22483 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_baseMods_mask_Any, tvb, *offsetp, 1, byte_order);
22485 *offsetp += 1;
22486 f_latchedMods = VALUE8(tvb, *offsetp);
22488 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_latchedMods, tvb, *offsetp, 1, byte_order);
22489 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22490 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22491 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22492 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_Control, tvb, *offsetp, 1, byte_order);
22493 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_1, tvb, *offsetp, 1, byte_order);
22494 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_2, tvb, *offsetp, 1, byte_order);
22495 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_3, tvb, *offsetp, 1, byte_order);
22496 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_4, tvb, *offsetp, 1, byte_order);
22497 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_5, tvb, *offsetp, 1, byte_order);
22498 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_latchedMods_mask_Any, tvb, *offsetp, 1, byte_order);
22500 *offsetp += 1;
22501 f_lockedMods = VALUE8(tvb, *offsetp);
22503 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_lockedMods, tvb, *offsetp, 1, byte_order);
22504 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22505 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22506 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22507 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_Control, tvb, *offsetp, 1, byte_order);
22508 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_1, tvb, *offsetp, 1, byte_order);
22509 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_2, tvb, *offsetp, 1, byte_order);
22510 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_3, tvb, *offsetp, 1, byte_order);
22511 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_4, tvb, *offsetp, 1, byte_order);
22512 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_5, tvb, *offsetp, 1, byte_order);
22513 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lockedMods_mask_Any, tvb, *offsetp, 1, byte_order);
22515 *offsetp += 1;
22516 f_group = field8(tvb, offsetp, t, hf_x11_xkb_GetState_reply_group, byte_order);
22517 f_lockedGroup = field8(tvb, offsetp, t, hf_x11_xkb_GetState_reply_lockedGroup, byte_order);
22518 f_baseGroup = VALUE16(tvb, *offsetp);
22519 proto_tree_add_item(t, hf_x11_xkb_GetState_reply_baseGroup, tvb, *offsetp, 2, byte_order);
22520 *offsetp += 2;
22521 f_latchedGroup = VALUE16(tvb, *offsetp);
22522 proto_tree_add_item(t, hf_x11_xkb_GetState_reply_latchedGroup, tvb, *offsetp, 2, byte_order);
22523 *offsetp += 2;
22524 f_compatState = VALUE8(tvb, *offsetp);
22526 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_compatState, tvb, *offsetp, 1, byte_order);
22527 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22528 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_Shift, tvb, *offsetp, 1, byte_order);
22529 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_Lock, tvb, *offsetp, 1, byte_order);
22530 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_Control, tvb, *offsetp, 1, byte_order);
22531 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_1, tvb, *offsetp, 1, byte_order);
22532 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_2, tvb, *offsetp, 1, byte_order);
22533 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_3, tvb, *offsetp, 1, byte_order);
22534 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_4, tvb, *offsetp, 1, byte_order);
22535 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_5, tvb, *offsetp, 1, byte_order);
22536 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatState_mask_Any, tvb, *offsetp, 1, byte_order);
22538 *offsetp += 1;
22539 f_grabMods = VALUE8(tvb, *offsetp);
22541 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_grabMods, tvb, *offsetp, 1, byte_order);
22542 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22543 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22544 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22545 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_Control, tvb, *offsetp, 1, byte_order);
22546 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_1, tvb, *offsetp, 1, byte_order);
22547 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_2, tvb, *offsetp, 1, byte_order);
22548 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_3, tvb, *offsetp, 1, byte_order);
22549 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_4, tvb, *offsetp, 1, byte_order);
22550 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_5, tvb, *offsetp, 1, byte_order);
22551 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_grabMods_mask_Any, tvb, *offsetp, 1, byte_order);
22553 *offsetp += 1;
22554 f_compatGrabMods = VALUE8(tvb, *offsetp);
22556 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_compatGrabMods, tvb, *offsetp, 1, byte_order);
22557 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22558 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22559 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22560 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_Control, tvb, *offsetp, 1, byte_order);
22561 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_1, tvb, *offsetp, 1, byte_order);
22562 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_2, tvb, *offsetp, 1, byte_order);
22563 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_3, tvb, *offsetp, 1, byte_order);
22564 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_4, tvb, *offsetp, 1, byte_order);
22565 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_5, tvb, *offsetp, 1, byte_order);
22566 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatGrabMods_mask_Any, tvb, *offsetp, 1, byte_order);
22568 *offsetp += 1;
22569 f_lookupMods = VALUE8(tvb, *offsetp);
22571 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_lookupMods, tvb, *offsetp, 1, byte_order);
22572 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22573 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22574 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22575 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_Control, tvb, *offsetp, 1, byte_order);
22576 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_1, tvb, *offsetp, 1, byte_order);
22577 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_2, tvb, *offsetp, 1, byte_order);
22578 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_3, tvb, *offsetp, 1, byte_order);
22579 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_4, tvb, *offsetp, 1, byte_order);
22580 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_5, tvb, *offsetp, 1, byte_order);
22581 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_lookupMods_mask_Any, tvb, *offsetp, 1, byte_order);
22583 *offsetp += 1;
22584 f_compatLookupMods = VALUE8(tvb, *offsetp);
22586 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_compatLookupMods, tvb, *offsetp, 1, byte_order);
22587 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22588 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22589 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22590 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_Control, tvb, *offsetp, 1, byte_order);
22591 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_1, tvb, *offsetp, 1, byte_order);
22592 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_2, tvb, *offsetp, 1, byte_order);
22593 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_3, tvb, *offsetp, 1, byte_order);
22594 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_4, tvb, *offsetp, 1, byte_order);
22595 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_5, tvb, *offsetp, 1, byte_order);
22596 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_compatLookupMods_mask_Any, tvb, *offsetp, 1, byte_order);
22598 *offsetp += 1;
22599 UNUSED(1);
22600 f_ptrBtnState = VALUE16(tvb, *offsetp);
22602 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetState_reply_ptrBtnState, tvb, *offsetp, 2, byte_order);
22603 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22604 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Shift, tvb, *offsetp, 2, byte_order);
22605 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Lock, tvb, *offsetp, 2, byte_order);
22606 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Control, tvb, *offsetp, 2, byte_order);
22607 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod1, tvb, *offsetp, 2, byte_order);
22608 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod2, tvb, *offsetp, 2, byte_order);
22609 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod3, tvb, *offsetp, 2, byte_order);
22610 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod4, tvb, *offsetp, 2, byte_order);
22611 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Mod5, tvb, *offsetp, 2, byte_order);
22612 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button1, tvb, *offsetp, 2, byte_order);
22613 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button2, tvb, *offsetp, 2, byte_order);
22614 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button3, tvb, *offsetp, 2, byte_order);
22615 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button4, tvb, *offsetp, 2, byte_order);
22616 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetState_reply_ptrBtnState_mask_Button5, tvb, *offsetp, 2, byte_order);
22618 *offsetp += 2;
22619 UNUSED(6);
22622 static void xkbLatchLockState(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22624 int f_deviceSpec;
22625 int f_affectModLocks;
22626 int f_modLocks;
22627 int f_lockGroup;
22628 int f_groupLock;
22629 int f_affectModLatches;
22630 int f_latchGroup;
22631 int f_groupLatch;
22632 f_deviceSpec = VALUE16(tvb, *offsetp);
22633 proto_tree_add_item(t, hf_x11_xkb_LatchLockState_deviceSpec, tvb, *offsetp, 2, byte_order);
22634 *offsetp += 2;
22635 f_affectModLocks = VALUE8(tvb, *offsetp);
22637 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_LatchLockState_affectModLocks, tvb, *offsetp, 1, byte_order);
22638 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22639 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_Shift, tvb, *offsetp, 1, byte_order);
22640 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_Lock, tvb, *offsetp, 1, byte_order);
22641 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_Control, tvb, *offsetp, 1, byte_order);
22642 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_1, tvb, *offsetp, 1, byte_order);
22643 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_2, tvb, *offsetp, 1, byte_order);
22644 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_3, tvb, *offsetp, 1, byte_order);
22645 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_4, tvb, *offsetp, 1, byte_order);
22646 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_5, tvb, *offsetp, 1, byte_order);
22647 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLocks_mask_Any, tvb, *offsetp, 1, byte_order);
22649 *offsetp += 1;
22650 f_modLocks = VALUE8(tvb, *offsetp);
22652 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_LatchLockState_modLocks, tvb, *offsetp, 1, byte_order);
22653 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22654 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_Shift, tvb, *offsetp, 1, byte_order);
22655 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_Lock, tvb, *offsetp, 1, byte_order);
22656 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_Control, tvb, *offsetp, 1, byte_order);
22657 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_1, tvb, *offsetp, 1, byte_order);
22658 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_2, tvb, *offsetp, 1, byte_order);
22659 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_3, tvb, *offsetp, 1, byte_order);
22660 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_4, tvb, *offsetp, 1, byte_order);
22661 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_5, tvb, *offsetp, 1, byte_order);
22662 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_modLocks_mask_Any, tvb, *offsetp, 1, byte_order);
22664 *offsetp += 1;
22665 f_lockGroup = VALUE8(tvb, *offsetp);
22666 proto_tree_add_item(t, hf_x11_xkb_LatchLockState_lockGroup, tvb, *offsetp, 1, byte_order);
22667 *offsetp += 1;
22668 f_groupLock = field8(tvb, offsetp, t, hf_x11_xkb_LatchLockState_groupLock, byte_order);
22669 f_affectModLatches = VALUE8(tvb, *offsetp);
22671 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_LatchLockState_affectModLatches, tvb, *offsetp, 1, byte_order);
22672 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22673 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_Shift, tvb, *offsetp, 1, byte_order);
22674 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_Lock, tvb, *offsetp, 1, byte_order);
22675 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_Control, tvb, *offsetp, 1, byte_order);
22676 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_1, tvb, *offsetp, 1, byte_order);
22677 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_2, tvb, *offsetp, 1, byte_order);
22678 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_3, tvb, *offsetp, 1, byte_order);
22679 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_4, tvb, *offsetp, 1, byte_order);
22680 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_5, tvb, *offsetp, 1, byte_order);
22681 proto_tree_add_item(bitmask_tree, hf_x11_xkb_LatchLockState_affectModLatches_mask_Any, tvb, *offsetp, 1, byte_order);
22683 *offsetp += 1;
22684 UNUSED(1);
22685 f_latchGroup = VALUE8(tvb, *offsetp);
22686 proto_tree_add_item(t, hf_x11_xkb_LatchLockState_latchGroup, tvb, *offsetp, 1, byte_order);
22687 *offsetp += 1;
22688 f_groupLatch = VALUE16(tvb, *offsetp);
22689 proto_tree_add_item(t, hf_x11_xkb_LatchLockState_groupLatch, tvb, *offsetp, 2, byte_order);
22690 *offsetp += 2;
22693 static void xkbGetControls(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22695 int f_deviceSpec;
22696 f_deviceSpec = VALUE16(tvb, *offsetp);
22697 proto_tree_add_item(t, hf_x11_xkb_GetControls_deviceSpec, tvb, *offsetp, 2, byte_order);
22698 *offsetp += 2;
22699 UNUSED(2);
22701 static void xkbGetControls_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
22703 int f_length, length, sequence_number;
22704 int f_deviceID;
22705 int f_mouseKeysDfltBtn;
22706 int f_numGroups;
22707 int f_groupsWrap;
22708 int f_internalModsMask;
22709 int f_ignoreLockModsMask;
22710 int f_internalModsRealMods;
22711 int f_ignoreLockModsRealMods;
22712 int f_internalModsVmods;
22713 int f_ignoreLockModsVmods;
22714 int f_repeatDelay;
22715 int f_repeatInterval;
22716 int f_slowKeysDelay;
22717 int f_debounceDelay;
22718 int f_mouseKeysDelay;
22719 int f_mouseKeysInterval;
22720 int f_mouseKeysTimeToMax;
22721 int f_mouseKeysMaxSpeed;
22722 int f_mouseKeysCurve;
22723 int f_accessXTimeout;
22724 int f_accessXTimeoutMask;
22725 int f_accessXTimeoutValues;
22726 int f_enabledControls;
22728 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetControls");
22730 REPLY(reply);
22731 f_deviceID = VALUE8(tvb, *offsetp);
22732 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_deviceID, tvb, *offsetp, 1, byte_order);
22733 *offsetp += 1;
22734 sequence_number = VALUE16(tvb, *offsetp);
22735 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
22736 "sequencenumber: %d (xkb-GetControls)", sequence_number);
22737 *offsetp += 2;
22738 f_length = VALUE32(tvb, *offsetp);
22739 length = f_length * 4 + 32;
22740 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
22741 *offsetp += 4;
22742 f_mouseKeysDfltBtn = VALUE8(tvb, *offsetp);
22743 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysDfltBtn, tvb, *offsetp, 1, byte_order);
22744 *offsetp += 1;
22745 f_numGroups = VALUE8(tvb, *offsetp);
22746 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_numGroups, tvb, *offsetp, 1, byte_order);
22747 *offsetp += 1;
22748 f_groupsWrap = VALUE8(tvb, *offsetp);
22749 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_groupsWrap, tvb, *offsetp, 1, byte_order);
22750 *offsetp += 1;
22751 f_internalModsMask = VALUE8(tvb, *offsetp);
22753 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_internalModsMask, tvb, *offsetp, 1, byte_order);
22754 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22755 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_Shift, tvb, *offsetp, 1, byte_order);
22756 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_Lock, tvb, *offsetp, 1, byte_order);
22757 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_Control, tvb, *offsetp, 1, byte_order);
22758 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_1, tvb, *offsetp, 1, byte_order);
22759 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_2, tvb, *offsetp, 1, byte_order);
22760 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_3, tvb, *offsetp, 1, byte_order);
22761 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_4, tvb, *offsetp, 1, byte_order);
22762 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_5, tvb, *offsetp, 1, byte_order);
22763 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsMask_mask_Any, tvb, *offsetp, 1, byte_order);
22765 *offsetp += 1;
22766 f_ignoreLockModsMask = VALUE8(tvb, *offsetp);
22768 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_ignoreLockModsMask, tvb, *offsetp, 1, byte_order);
22769 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22770 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Shift, tvb, *offsetp, 1, byte_order);
22771 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Lock, tvb, *offsetp, 1, byte_order);
22772 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Control, tvb, *offsetp, 1, byte_order);
22773 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_1, tvb, *offsetp, 1, byte_order);
22774 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_2, tvb, *offsetp, 1, byte_order);
22775 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_3, tvb, *offsetp, 1, byte_order);
22776 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_4, tvb, *offsetp, 1, byte_order);
22777 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_5, tvb, *offsetp, 1, byte_order);
22778 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsMask_mask_Any, tvb, *offsetp, 1, byte_order);
22780 *offsetp += 1;
22781 f_internalModsRealMods = VALUE8(tvb, *offsetp);
22783 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_internalModsRealMods, tvb, *offsetp, 1, byte_order);
22784 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22785 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22786 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22787 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22788 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22789 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22790 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22791 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22792 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22793 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22795 *offsetp += 1;
22796 f_ignoreLockModsRealMods = VALUE8(tvb, *offsetp);
22798 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods, tvb, *offsetp, 1, byte_order);
22799 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22800 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22801 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22802 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22803 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22804 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22805 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22806 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22807 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22808 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22810 *offsetp += 1;
22811 UNUSED(1);
22812 f_internalModsVmods = VALUE16(tvb, *offsetp);
22814 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_internalModsVmods, tvb, *offsetp, 2, byte_order);
22815 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22816 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_0, tvb, *offsetp, 2, byte_order);
22817 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_1, tvb, *offsetp, 2, byte_order);
22818 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_2, tvb, *offsetp, 2, byte_order);
22819 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_3, tvb, *offsetp, 2, byte_order);
22820 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_4, tvb, *offsetp, 2, byte_order);
22821 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_5, tvb, *offsetp, 2, byte_order);
22822 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_6, tvb, *offsetp, 2, byte_order);
22823 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_7, tvb, *offsetp, 2, byte_order);
22824 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_8, tvb, *offsetp, 2, byte_order);
22825 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_9, tvb, *offsetp, 2, byte_order);
22826 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_10, tvb, *offsetp, 2, byte_order);
22827 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_11, tvb, *offsetp, 2, byte_order);
22828 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_12, tvb, *offsetp, 2, byte_order);
22829 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_13, tvb, *offsetp, 2, byte_order);
22830 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_14, tvb, *offsetp, 2, byte_order);
22831 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_internalModsVmods_mask_15, tvb, *offsetp, 2, byte_order);
22833 *offsetp += 2;
22834 f_ignoreLockModsVmods = VALUE16(tvb, *offsetp);
22836 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods, tvb, *offsetp, 2, byte_order);
22837 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22838 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_0, tvb, *offsetp, 2, byte_order);
22839 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_1, tvb, *offsetp, 2, byte_order);
22840 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_2, tvb, *offsetp, 2, byte_order);
22841 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_3, tvb, *offsetp, 2, byte_order);
22842 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_4, tvb, *offsetp, 2, byte_order);
22843 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_5, tvb, *offsetp, 2, byte_order);
22844 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_6, tvb, *offsetp, 2, byte_order);
22845 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_7, tvb, *offsetp, 2, byte_order);
22846 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_8, tvb, *offsetp, 2, byte_order);
22847 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_9, tvb, *offsetp, 2, byte_order);
22848 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_10, tvb, *offsetp, 2, byte_order);
22849 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_11, tvb, *offsetp, 2, byte_order);
22850 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_12, tvb, *offsetp, 2, byte_order);
22851 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_13, tvb, *offsetp, 2, byte_order);
22852 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_14, tvb, *offsetp, 2, byte_order);
22853 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetControls_reply_ignoreLockModsVmods_mask_15, tvb, *offsetp, 2, byte_order);
22855 *offsetp += 2;
22856 f_repeatDelay = VALUE16(tvb, *offsetp);
22857 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_repeatDelay, tvb, *offsetp, 2, byte_order);
22858 *offsetp += 2;
22859 f_repeatInterval = VALUE16(tvb, *offsetp);
22860 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_repeatInterval, tvb, *offsetp, 2, byte_order);
22861 *offsetp += 2;
22862 f_slowKeysDelay = VALUE16(tvb, *offsetp);
22863 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_slowKeysDelay, tvb, *offsetp, 2, byte_order);
22864 *offsetp += 2;
22865 f_debounceDelay = VALUE16(tvb, *offsetp);
22866 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_debounceDelay, tvb, *offsetp, 2, byte_order);
22867 *offsetp += 2;
22868 f_mouseKeysDelay = VALUE16(tvb, *offsetp);
22869 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysDelay, tvb, *offsetp, 2, byte_order);
22870 *offsetp += 2;
22871 f_mouseKeysInterval = VALUE16(tvb, *offsetp);
22872 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysInterval, tvb, *offsetp, 2, byte_order);
22873 *offsetp += 2;
22874 f_mouseKeysTimeToMax = VALUE16(tvb, *offsetp);
22875 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysTimeToMax, tvb, *offsetp, 2, byte_order);
22876 *offsetp += 2;
22877 f_mouseKeysMaxSpeed = VALUE16(tvb, *offsetp);
22878 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysMaxSpeed, tvb, *offsetp, 2, byte_order);
22879 *offsetp += 2;
22880 f_mouseKeysCurve = VALUE16(tvb, *offsetp);
22881 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_mouseKeysCurve, tvb, *offsetp, 2, byte_order);
22882 *offsetp += 2;
22883 struct_AXOption(tvb, offsetp, t, byte_order, 1);
22884 f_accessXTimeout = VALUE16(tvb, *offsetp);
22885 proto_tree_add_item(t, hf_x11_xkb_GetControls_reply_accessXTimeout, tvb, *offsetp, 2, byte_order);
22886 *offsetp += 2;
22887 struct_AXOption(tvb, offsetp, t, byte_order, 1);
22888 struct_AXOption(tvb, offsetp, t, byte_order, 1);
22889 UNUSED(2);
22890 f_accessXTimeoutMask = field32(tvb, offsetp, t, hf_x11_xkb_GetControls_reply_accessXTimeoutMask, byte_order);
22891 f_accessXTimeoutValues = field32(tvb, offsetp, t, hf_x11_xkb_GetControls_reply_accessXTimeoutValues, byte_order);
22892 f_enabledControls = field32(tvb, offsetp, t, hf_x11_xkb_GetControls_reply_enabledControls, byte_order);
22893 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetControls_reply_perKeyRepeat, 32, byte_order);
22896 static void xkbSetControls(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
22898 int f_deviceSpec;
22899 int f_affectInternalRealMods;
22900 int f_internalRealMods;
22901 int f_affectIgnoreLockRealMods;
22902 int f_ignoreLockRealMods;
22903 int f_affectInternalVirtualMods;
22904 int f_internalVirtualMods;
22905 int f_affectIgnoreLockVirtualMods;
22906 int f_ignoreLockVirtualMods;
22907 int f_mouseKeysDfltBtn;
22908 int f_groupsWrap;
22909 int f_affectEnabledControls;
22910 int f_enabledControls;
22911 int f_changeControls;
22912 int f_repeatDelay;
22913 int f_repeatInterval;
22914 int f_slowKeysDelay;
22915 int f_debounceDelay;
22916 int f_mouseKeysDelay;
22917 int f_mouseKeysInterval;
22918 int f_mouseKeysTimeToMax;
22919 int f_mouseKeysMaxSpeed;
22920 int f_mouseKeysCurve;
22921 int f_accessXTimeout;
22922 int f_accessXTimeoutMask;
22923 int f_accessXTimeoutValues;
22924 f_deviceSpec = VALUE16(tvb, *offsetp);
22925 proto_tree_add_item(t, hf_x11_xkb_SetControls_deviceSpec, tvb, *offsetp, 2, byte_order);
22926 *offsetp += 2;
22927 f_affectInternalRealMods = VALUE8(tvb, *offsetp);
22929 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_affectInternalRealMods, tvb, *offsetp, 1, byte_order);
22930 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22931 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22932 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22933 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22934 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22935 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22936 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22937 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22938 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22939 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22941 *offsetp += 1;
22942 f_internalRealMods = VALUE8(tvb, *offsetp);
22944 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_internalRealMods, tvb, *offsetp, 1, byte_order);
22945 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22946 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22947 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22948 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22949 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22950 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22951 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22952 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22953 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22954 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22956 *offsetp += 1;
22957 f_affectIgnoreLockRealMods = VALUE8(tvb, *offsetp);
22959 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_affectIgnoreLockRealMods, tvb, *offsetp, 1, byte_order);
22960 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22961 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22962 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22963 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22964 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22965 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22966 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22967 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22968 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22969 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22971 *offsetp += 1;
22972 f_ignoreLockRealMods = VALUE8(tvb, *offsetp);
22974 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_ignoreLockRealMods, tvb, *offsetp, 1, byte_order);
22975 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22976 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Shift, tvb, *offsetp, 1, byte_order);
22977 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Lock, tvb, *offsetp, 1, byte_order);
22978 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Control, tvb, *offsetp, 1, byte_order);
22979 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_1, tvb, *offsetp, 1, byte_order);
22980 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_2, tvb, *offsetp, 1, byte_order);
22981 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_3, tvb, *offsetp, 1, byte_order);
22982 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_4, tvb, *offsetp, 1, byte_order);
22983 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_5, tvb, *offsetp, 1, byte_order);
22984 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockRealMods_mask_Any, tvb, *offsetp, 1, byte_order);
22986 *offsetp += 1;
22987 f_affectInternalVirtualMods = VALUE16(tvb, *offsetp);
22989 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_affectInternalVirtualMods, tvb, *offsetp, 2, byte_order);
22990 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
22991 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_0, tvb, *offsetp, 2, byte_order);
22992 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_1, tvb, *offsetp, 2, byte_order);
22993 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_2, tvb, *offsetp, 2, byte_order);
22994 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_3, tvb, *offsetp, 2, byte_order);
22995 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_4, tvb, *offsetp, 2, byte_order);
22996 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_5, tvb, *offsetp, 2, byte_order);
22997 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_6, tvb, *offsetp, 2, byte_order);
22998 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_7, tvb, *offsetp, 2, byte_order);
22999 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23000 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23001 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23002 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23003 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23004 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23005 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23006 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectInternalVirtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23008 *offsetp += 2;
23009 f_internalVirtualMods = VALUE16(tvb, *offsetp);
23011 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_internalVirtualMods, tvb, *offsetp, 2, byte_order);
23012 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23013 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23014 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23015 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23016 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23017 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23018 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23019 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23020 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23021 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23022 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23023 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23024 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23025 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23026 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23027 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23028 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_internalVirtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23030 *offsetp += 2;
23031 f_affectIgnoreLockVirtualMods = VALUE16(tvb, *offsetp);
23033 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods, tvb, *offsetp, 2, byte_order);
23034 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23035 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23036 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23037 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23038 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23039 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23040 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23041 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23042 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23043 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23044 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23045 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23046 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23047 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23048 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23049 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23050 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_affectIgnoreLockVirtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23052 *offsetp += 2;
23053 f_ignoreLockVirtualMods = VALUE16(tvb, *offsetp);
23055 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_ignoreLockVirtualMods, tvb, *offsetp, 2, byte_order);
23056 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23057 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23058 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23059 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23060 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23061 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23062 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23063 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23064 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23065 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23066 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23067 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23068 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23069 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23070 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23071 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23072 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_ignoreLockVirtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23074 *offsetp += 2;
23075 f_mouseKeysDfltBtn = VALUE8(tvb, *offsetp);
23076 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysDfltBtn, tvb, *offsetp, 1, byte_order);
23077 *offsetp += 1;
23078 f_groupsWrap = VALUE8(tvb, *offsetp);
23079 proto_tree_add_item(t, hf_x11_xkb_SetControls_groupsWrap, tvb, *offsetp, 1, byte_order);
23080 *offsetp += 1;
23081 struct_AXOption(tvb, offsetp, t, byte_order, 1);
23082 UNUSED(2);
23083 f_affectEnabledControls = field32(tvb, offsetp, t, hf_x11_xkb_SetControls_affectEnabledControls, byte_order);
23084 f_enabledControls = field32(tvb, offsetp, t, hf_x11_xkb_SetControls_enabledControls, byte_order);
23085 f_changeControls = VALUE32(tvb, *offsetp);
23087 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetControls_changeControls, tvb, *offsetp, 4, byte_order);
23088 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23089 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_changeControls_mask_GroupsWrap, tvb, *offsetp, 4, byte_order);
23090 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_changeControls_mask_InternalMods, tvb, *offsetp, 4, byte_order);
23091 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_changeControls_mask_IgnoreLockMods, tvb, *offsetp, 4, byte_order);
23092 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_changeControls_mask_PerKeyRepeat, tvb, *offsetp, 4, byte_order);
23093 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetControls_changeControls_mask_ControlsEnabled, tvb, *offsetp, 4, byte_order);
23095 *offsetp += 4;
23096 f_repeatDelay = VALUE16(tvb, *offsetp);
23097 proto_tree_add_item(t, hf_x11_xkb_SetControls_repeatDelay, tvb, *offsetp, 2, byte_order);
23098 *offsetp += 2;
23099 f_repeatInterval = VALUE16(tvb, *offsetp);
23100 proto_tree_add_item(t, hf_x11_xkb_SetControls_repeatInterval, tvb, *offsetp, 2, byte_order);
23101 *offsetp += 2;
23102 f_slowKeysDelay = VALUE16(tvb, *offsetp);
23103 proto_tree_add_item(t, hf_x11_xkb_SetControls_slowKeysDelay, tvb, *offsetp, 2, byte_order);
23104 *offsetp += 2;
23105 f_debounceDelay = VALUE16(tvb, *offsetp);
23106 proto_tree_add_item(t, hf_x11_xkb_SetControls_debounceDelay, tvb, *offsetp, 2, byte_order);
23107 *offsetp += 2;
23108 f_mouseKeysDelay = VALUE16(tvb, *offsetp);
23109 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysDelay, tvb, *offsetp, 2, byte_order);
23110 *offsetp += 2;
23111 f_mouseKeysInterval = VALUE16(tvb, *offsetp);
23112 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysInterval, tvb, *offsetp, 2, byte_order);
23113 *offsetp += 2;
23114 f_mouseKeysTimeToMax = VALUE16(tvb, *offsetp);
23115 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysTimeToMax, tvb, *offsetp, 2, byte_order);
23116 *offsetp += 2;
23117 f_mouseKeysMaxSpeed = VALUE16(tvb, *offsetp);
23118 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysMaxSpeed, tvb, *offsetp, 2, byte_order);
23119 *offsetp += 2;
23120 f_mouseKeysCurve = VALUE16(tvb, *offsetp);
23121 proto_tree_add_item(t, hf_x11_xkb_SetControls_mouseKeysCurve, tvb, *offsetp, 2, byte_order);
23122 *offsetp += 2;
23123 f_accessXTimeout = VALUE16(tvb, *offsetp);
23124 proto_tree_add_item(t, hf_x11_xkb_SetControls_accessXTimeout, tvb, *offsetp, 2, byte_order);
23125 *offsetp += 2;
23126 f_accessXTimeoutMask = field32(tvb, offsetp, t, hf_x11_xkb_SetControls_accessXTimeoutMask, byte_order);
23127 f_accessXTimeoutValues = field32(tvb, offsetp, t, hf_x11_xkb_SetControls_accessXTimeoutValues, byte_order);
23128 struct_AXOption(tvb, offsetp, t, byte_order, 1);
23129 struct_AXOption(tvb, offsetp, t, byte_order, 1);
23130 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetControls_perKeyRepeat, 32, byte_order);
23131 length -= 32 * 1;
23134 static void xkbGetMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23136 int f_deviceSpec;
23137 int f_full;
23138 int f_partial;
23139 int f_firstType;
23140 int f_nTypes;
23141 int f_firstKeySym;
23142 int f_nKeySyms;
23143 int f_firstKeyAction;
23144 int f_nKeyActions;
23145 int f_firstKeyBehavior;
23146 int f_nKeyBehaviors;
23147 int f_virtualMods;
23148 int f_firstKeyExplicit;
23149 int f_nKeyExplicit;
23150 int f_firstModMapKey;
23151 int f_nModMapKeys;
23152 int f_firstVModMapKey;
23153 int f_nVModMapKeys;
23154 f_deviceSpec = VALUE16(tvb, *offsetp);
23155 proto_tree_add_item(t, hf_x11_xkb_GetMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23156 *offsetp += 2;
23157 f_full = field16(tvb, offsetp, t, hf_x11_xkb_GetMap_full, byte_order);
23158 f_partial = field16(tvb, offsetp, t, hf_x11_xkb_GetMap_partial, byte_order);
23159 f_firstType = VALUE8(tvb, *offsetp);
23160 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstType, tvb, *offsetp, 1, byte_order);
23161 *offsetp += 1;
23162 f_nTypes = VALUE8(tvb, *offsetp);
23163 proto_tree_add_item(t, hf_x11_xkb_GetMap_nTypes, tvb, *offsetp, 1, byte_order);
23164 *offsetp += 1;
23165 f_firstKeySym = VALUE8(tvb, *offsetp);
23166 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstKeySym, tvb, *offsetp, 1, byte_order);
23167 *offsetp += 1;
23168 f_nKeySyms = VALUE8(tvb, *offsetp);
23169 proto_tree_add_item(t, hf_x11_xkb_GetMap_nKeySyms, tvb, *offsetp, 1, byte_order);
23170 *offsetp += 1;
23171 f_firstKeyAction = VALUE8(tvb, *offsetp);
23172 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstKeyAction, tvb, *offsetp, 1, byte_order);
23173 *offsetp += 1;
23174 f_nKeyActions = VALUE8(tvb, *offsetp);
23175 proto_tree_add_item(t, hf_x11_xkb_GetMap_nKeyActions, tvb, *offsetp, 1, byte_order);
23176 *offsetp += 1;
23177 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
23178 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
23179 *offsetp += 1;
23180 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
23181 proto_tree_add_item(t, hf_x11_xkb_GetMap_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
23182 *offsetp += 1;
23183 f_virtualMods = VALUE16(tvb, *offsetp);
23185 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetMap_virtualMods, tvb, *offsetp, 2, byte_order);
23186 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23187 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23188 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23189 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23190 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23191 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23192 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23193 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23194 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23195 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23196 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23197 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23198 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23199 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23200 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23201 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23202 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23204 *offsetp += 2;
23205 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
23206 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
23207 *offsetp += 1;
23208 f_nKeyExplicit = VALUE8(tvb, *offsetp);
23209 proto_tree_add_item(t, hf_x11_xkb_GetMap_nKeyExplicit, tvb, *offsetp, 1, byte_order);
23210 *offsetp += 1;
23211 f_firstModMapKey = VALUE8(tvb, *offsetp);
23212 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstModMapKey, tvb, *offsetp, 1, byte_order);
23213 *offsetp += 1;
23214 f_nModMapKeys = VALUE8(tvb, *offsetp);
23215 proto_tree_add_item(t, hf_x11_xkb_GetMap_nModMapKeys, tvb, *offsetp, 1, byte_order);
23216 *offsetp += 1;
23217 f_firstVModMapKey = VALUE8(tvb, *offsetp);
23218 proto_tree_add_item(t, hf_x11_xkb_GetMap_firstVModMapKey, tvb, *offsetp, 1, byte_order);
23219 *offsetp += 1;
23220 f_nVModMapKeys = VALUE8(tvb, *offsetp);
23221 proto_tree_add_item(t, hf_x11_xkb_GetMap_nVModMapKeys, tvb, *offsetp, 1, byte_order);
23222 *offsetp += 1;
23223 UNUSED(2);
23225 static void xkbGetMap_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
23227 int f_length, length, sequence_number;
23228 int f_deviceID;
23229 int f_minKeyCode;
23230 int f_maxKeyCode;
23231 int f_present;
23232 int f_firstType;
23233 int f_nTypes;
23234 int f_totalTypes;
23235 int f_firstKeySym;
23236 int f_totalSyms;
23237 int f_nKeySyms;
23238 int f_firstKeyAction;
23239 int f_totalActions;
23240 int f_nKeyActions;
23241 int f_firstKeyBehavior;
23242 int f_nKeyBehaviors;
23243 int f_totalKeyBehaviors;
23244 int f_firstKeyExplicit;
23245 int f_nKeyExplicit;
23246 int f_totalKeyExplicit;
23247 int f_firstModMapKey;
23248 int f_nModMapKeys;
23249 int f_totalModMapKeys;
23250 int f_firstVModMapKey;
23251 int f_nVModMapKeys;
23252 int f_totalVModMapKeys;
23253 int f_virtualMods;
23255 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetMap");
23257 REPLY(reply);
23258 f_deviceID = VALUE8(tvb, *offsetp);
23259 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_deviceID, tvb, *offsetp, 1, byte_order);
23260 *offsetp += 1;
23261 sequence_number = VALUE16(tvb, *offsetp);
23262 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
23263 "sequencenumber: %d (xkb-GetMap)", sequence_number);
23264 *offsetp += 2;
23265 f_length = VALUE32(tvb, *offsetp);
23266 length = f_length * 4 + 32;
23267 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
23268 *offsetp += 4;
23269 UNUSED(2);
23270 f_minKeyCode = VALUE8(tvb, *offsetp);
23271 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_minKeyCode, tvb, *offsetp, 1, byte_order);
23272 *offsetp += 1;
23273 f_maxKeyCode = VALUE8(tvb, *offsetp);
23274 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_maxKeyCode, tvb, *offsetp, 1, byte_order);
23275 *offsetp += 1;
23276 f_present = field16(tvb, offsetp, t, hf_x11_xkb_GetMap_reply_present, byte_order);
23277 f_firstType = VALUE8(tvb, *offsetp);
23278 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstType, tvb, *offsetp, 1, byte_order);
23279 *offsetp += 1;
23280 f_nTypes = VALUE8(tvb, *offsetp);
23281 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nTypes, tvb, *offsetp, 1, byte_order);
23282 *offsetp += 1;
23283 f_totalTypes = VALUE8(tvb, *offsetp);
23284 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalTypes, tvb, *offsetp, 1, byte_order);
23285 *offsetp += 1;
23286 f_firstKeySym = VALUE8(tvb, *offsetp);
23287 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstKeySym, tvb, *offsetp, 1, byte_order);
23288 *offsetp += 1;
23289 f_totalSyms = VALUE16(tvb, *offsetp);
23290 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalSyms, tvb, *offsetp, 2, byte_order);
23291 *offsetp += 2;
23292 f_nKeySyms = VALUE8(tvb, *offsetp);
23293 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nKeySyms, tvb, *offsetp, 1, byte_order);
23294 *offsetp += 1;
23295 f_firstKeyAction = VALUE8(tvb, *offsetp);
23296 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstKeyAction, tvb, *offsetp, 1, byte_order);
23297 *offsetp += 1;
23298 f_totalActions = VALUE16(tvb, *offsetp);
23299 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalActions, tvb, *offsetp, 2, byte_order);
23300 *offsetp += 2;
23301 f_nKeyActions = VALUE8(tvb, *offsetp);
23302 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nKeyActions, tvb, *offsetp, 1, byte_order);
23303 *offsetp += 1;
23304 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
23305 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
23306 *offsetp += 1;
23307 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
23308 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
23309 *offsetp += 1;
23310 f_totalKeyBehaviors = VALUE8(tvb, *offsetp);
23311 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalKeyBehaviors, tvb, *offsetp, 1, byte_order);
23312 *offsetp += 1;
23313 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
23314 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
23315 *offsetp += 1;
23316 f_nKeyExplicit = VALUE8(tvb, *offsetp);
23317 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nKeyExplicit, tvb, *offsetp, 1, byte_order);
23318 *offsetp += 1;
23319 f_totalKeyExplicit = VALUE8(tvb, *offsetp);
23320 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalKeyExplicit, tvb, *offsetp, 1, byte_order);
23321 *offsetp += 1;
23322 f_firstModMapKey = VALUE8(tvb, *offsetp);
23323 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstModMapKey, tvb, *offsetp, 1, byte_order);
23324 *offsetp += 1;
23325 f_nModMapKeys = VALUE8(tvb, *offsetp);
23326 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nModMapKeys, tvb, *offsetp, 1, byte_order);
23327 *offsetp += 1;
23328 f_totalModMapKeys = VALUE8(tvb, *offsetp);
23329 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalModMapKeys, tvb, *offsetp, 1, byte_order);
23330 *offsetp += 1;
23331 f_firstVModMapKey = VALUE8(tvb, *offsetp);
23332 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_firstVModMapKey, tvb, *offsetp, 1, byte_order);
23333 *offsetp += 1;
23334 f_nVModMapKeys = VALUE8(tvb, *offsetp);
23335 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_nVModMapKeys, tvb, *offsetp, 1, byte_order);
23336 *offsetp += 1;
23337 f_totalVModMapKeys = VALUE8(tvb, *offsetp);
23338 proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_totalVModMapKeys, tvb, *offsetp, 1, byte_order);
23339 *offsetp += 1;
23340 UNUSED(1);
23341 f_virtualMods = VALUE16(tvb, *offsetp);
23343 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetMap_reply_virtualMods, tvb, *offsetp, 2, byte_order);
23344 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23345 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23346 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23347 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23348 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23349 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23350 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23351 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23352 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23353 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23354 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23355 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23356 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23357 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23358 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23359 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23360 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetMap_reply_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23362 *offsetp += 2;
23363 if ((f_present & (1 << 0)) != 0) {
23364 struct_KeyType(tvb, offsetp, t, byte_order, f_nTypes);
23366 if ((f_present & (1 << 1)) != 0) {
23367 struct_KeySymMap(tvb, offsetp, t, byte_order, f_nKeySyms);
23369 if ((f_present & (1 << 4)) != 0) {
23370 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetMap_reply_KeyActions_acts_rtrn_count, f_nKeyActions, byte_order);
23371 struct_Action(tvb, offsetp, t, byte_order, f_totalActions);
23373 if ((f_present & (1 << 5)) != 0) {
23374 struct_SetBehavior(tvb, offsetp, t, byte_order, f_totalKeyBehaviors);
23376 if ((f_present & (1 << 6)) != 0) {
23377 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetMap_reply_VirtualMods_vmods_rtrn, f_nVModMapKeys, byte_order);
23379 if ((f_present & (1 << 3)) != 0) {
23380 struct_SetExplicit(tvb, offsetp, t, byte_order, f_totalKeyExplicit);
23382 if ((f_present & (1 << 2)) != 0) {
23383 struct_KeyModMap(tvb, offsetp, t, byte_order, f_totalModMapKeys);
23385 if ((f_present & (1 << 7)) != 0) {
23386 struct_KeyVModMap(tvb, offsetp, t, byte_order, f_totalVModMapKeys);
23390 static void xkbSetMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23392 int f_deviceSpec;
23393 int f_present;
23394 int f_flags;
23395 int f_minKeyCode;
23396 int f_maxKeyCode;
23397 int f_firstType;
23398 int f_nTypes;
23399 int f_firstKeySym;
23400 int f_nKeySyms;
23401 int f_totalSyms;
23402 int f_firstKeyAction;
23403 int f_nKeyActions;
23404 int f_totalActions;
23405 int f_firstKeyBehavior;
23406 int f_nKeyBehaviors;
23407 int f_totalKeyBehaviors;
23408 int f_firstKeyExplicit;
23409 int f_nKeyExplicit;
23410 int f_totalKeyExplicit;
23411 int f_firstModMapKey;
23412 int f_nModMapKeys;
23413 int f_totalModMapKeys;
23414 int f_firstVModMapKey;
23415 int f_nVModMapKeys;
23416 int f_totalVModMapKeys;
23417 int f_virtualMods;
23418 f_deviceSpec = VALUE16(tvb, *offsetp);
23419 proto_tree_add_item(t, hf_x11_xkb_SetMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23420 *offsetp += 2;
23421 f_present = field16(tvb, offsetp, t, hf_x11_xkb_SetMap_present, byte_order);
23422 f_flags = VALUE16(tvb, *offsetp);
23424 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetMap_flags, tvb, *offsetp, 2, byte_order);
23425 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23426 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_flags_mask_ResizeTypes, tvb, *offsetp, 2, byte_order);
23427 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_flags_mask_RecomputeActions, tvb, *offsetp, 2, byte_order);
23429 *offsetp += 2;
23430 f_minKeyCode = VALUE8(tvb, *offsetp);
23431 proto_tree_add_item(t, hf_x11_xkb_SetMap_minKeyCode, tvb, *offsetp, 1, byte_order);
23432 *offsetp += 1;
23433 f_maxKeyCode = VALUE8(tvb, *offsetp);
23434 proto_tree_add_item(t, hf_x11_xkb_SetMap_maxKeyCode, tvb, *offsetp, 1, byte_order);
23435 *offsetp += 1;
23436 f_firstType = VALUE8(tvb, *offsetp);
23437 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstType, tvb, *offsetp, 1, byte_order);
23438 *offsetp += 1;
23439 f_nTypes = VALUE8(tvb, *offsetp);
23440 proto_tree_add_item(t, hf_x11_xkb_SetMap_nTypes, tvb, *offsetp, 1, byte_order);
23441 *offsetp += 1;
23442 f_firstKeySym = VALUE8(tvb, *offsetp);
23443 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstKeySym, tvb, *offsetp, 1, byte_order);
23444 *offsetp += 1;
23445 f_nKeySyms = VALUE8(tvb, *offsetp);
23446 proto_tree_add_item(t, hf_x11_xkb_SetMap_nKeySyms, tvb, *offsetp, 1, byte_order);
23447 *offsetp += 1;
23448 f_totalSyms = VALUE16(tvb, *offsetp);
23449 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalSyms, tvb, *offsetp, 2, byte_order);
23450 *offsetp += 2;
23451 f_firstKeyAction = VALUE8(tvb, *offsetp);
23452 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstKeyAction, tvb, *offsetp, 1, byte_order);
23453 *offsetp += 1;
23454 f_nKeyActions = VALUE8(tvb, *offsetp);
23455 proto_tree_add_item(t, hf_x11_xkb_SetMap_nKeyActions, tvb, *offsetp, 1, byte_order);
23456 *offsetp += 1;
23457 f_totalActions = VALUE16(tvb, *offsetp);
23458 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalActions, tvb, *offsetp, 2, byte_order);
23459 *offsetp += 2;
23460 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
23461 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
23462 *offsetp += 1;
23463 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
23464 proto_tree_add_item(t, hf_x11_xkb_SetMap_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
23465 *offsetp += 1;
23466 f_totalKeyBehaviors = VALUE8(tvb, *offsetp);
23467 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalKeyBehaviors, tvb, *offsetp, 1, byte_order);
23468 *offsetp += 1;
23469 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
23470 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
23471 *offsetp += 1;
23472 f_nKeyExplicit = VALUE8(tvb, *offsetp);
23473 proto_tree_add_item(t, hf_x11_xkb_SetMap_nKeyExplicit, tvb, *offsetp, 1, byte_order);
23474 *offsetp += 1;
23475 f_totalKeyExplicit = VALUE8(tvb, *offsetp);
23476 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalKeyExplicit, tvb, *offsetp, 1, byte_order);
23477 *offsetp += 1;
23478 f_firstModMapKey = VALUE8(tvb, *offsetp);
23479 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstModMapKey, tvb, *offsetp, 1, byte_order);
23480 *offsetp += 1;
23481 f_nModMapKeys = VALUE8(tvb, *offsetp);
23482 proto_tree_add_item(t, hf_x11_xkb_SetMap_nModMapKeys, tvb, *offsetp, 1, byte_order);
23483 *offsetp += 1;
23484 f_totalModMapKeys = VALUE8(tvb, *offsetp);
23485 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalModMapKeys, tvb, *offsetp, 1, byte_order);
23486 *offsetp += 1;
23487 f_firstVModMapKey = VALUE8(tvb, *offsetp);
23488 proto_tree_add_item(t, hf_x11_xkb_SetMap_firstVModMapKey, tvb, *offsetp, 1, byte_order);
23489 *offsetp += 1;
23490 f_nVModMapKeys = VALUE8(tvb, *offsetp);
23491 proto_tree_add_item(t, hf_x11_xkb_SetMap_nVModMapKeys, tvb, *offsetp, 1, byte_order);
23492 *offsetp += 1;
23493 f_totalVModMapKeys = VALUE8(tvb, *offsetp);
23494 proto_tree_add_item(t, hf_x11_xkb_SetMap_totalVModMapKeys, tvb, *offsetp, 1, byte_order);
23495 *offsetp += 1;
23496 f_virtualMods = VALUE16(tvb, *offsetp);
23498 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetMap_virtualMods, tvb, *offsetp, 2, byte_order);
23499 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23500 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
23501 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
23502 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
23503 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
23504 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
23505 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
23506 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
23507 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
23508 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
23509 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
23510 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
23511 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
23512 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
23513 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
23514 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
23515 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetMap_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
23517 *offsetp += 2;
23518 if ((f_present & (1 << 0)) != 0) {
23519 struct_SetKeyType(tvb, offsetp, t, byte_order, f_nTypes);
23520 length -= f_nTypes * 0;
23522 if ((f_present & (1 << 1)) != 0) {
23523 struct_KeySymMap(tvb, offsetp, t, byte_order, f_nKeySyms);
23524 length -= f_nKeySyms * 0;
23526 if ((f_present & (1 << 4)) != 0) {
23527 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetMap_KeyActions_actionsCount, f_nKeyActions, byte_order);
23528 length -= f_nKeyActions * 1;
23529 struct_Action(tvb, offsetp, t, byte_order, f_totalActions);
23530 length -= f_totalActions * 8;
23532 if ((f_present & (1 << 5)) != 0) {
23533 struct_SetBehavior(tvb, offsetp, t, byte_order, f_totalKeyBehaviors);
23534 length -= f_totalKeyBehaviors * 4;
23536 if ((f_present & (1 << 6)) != 0) {
23537 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetMap_VirtualMods_vmods, f_nVModMapKeys, byte_order);
23538 length -= f_nVModMapKeys * 1;
23540 if ((f_present & (1 << 3)) != 0) {
23541 struct_SetExplicit(tvb, offsetp, t, byte_order, f_totalKeyExplicit);
23542 length -= f_totalKeyExplicit * 2;
23544 if ((f_present & (1 << 2)) != 0) {
23545 struct_KeyModMap(tvb, offsetp, t, byte_order, f_totalModMapKeys);
23546 length -= f_totalModMapKeys * 2;
23548 if ((f_present & (1 << 7)) != 0) {
23549 struct_KeyVModMap(tvb, offsetp, t, byte_order, f_totalVModMapKeys);
23550 length -= f_totalVModMapKeys * 4;
23554 static void xkbGetCompatMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23556 int f_deviceSpec;
23557 int f_groups;
23558 int f_getAllSI;
23559 int f_firstSI;
23560 int f_nSI;
23561 f_deviceSpec = VALUE16(tvb, *offsetp);
23562 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23563 *offsetp += 2;
23564 f_groups = VALUE8(tvb, *offsetp);
23566 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_groups, tvb, *offsetp, 1, byte_order);
23567 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23568 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_groups_mask_Group1, tvb, *offsetp, 1, byte_order);
23569 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_groups_mask_Group2, tvb, *offsetp, 1, byte_order);
23570 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_groups_mask_Group3, tvb, *offsetp, 1, byte_order);
23571 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_groups_mask_Group4, tvb, *offsetp, 1, byte_order);
23573 *offsetp += 1;
23574 f_getAllSI = VALUE8(tvb, *offsetp);
23575 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_getAllSI, tvb, *offsetp, 1, byte_order);
23576 *offsetp += 1;
23577 f_firstSI = VALUE16(tvb, *offsetp);
23578 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_firstSI, tvb, *offsetp, 2, byte_order);
23579 *offsetp += 2;
23580 f_nSI = VALUE16(tvb, *offsetp);
23581 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_nSI, tvb, *offsetp, 2, byte_order);
23582 *offsetp += 2;
23584 static void xkbGetCompatMap_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
23586 int f_length, length, sequence_number;
23587 int f_deviceID;
23588 int f_groupsRtrn;
23589 int f_firstSIRtrn;
23590 int f_nSIRtrn;
23591 int f_nTotalSI;
23593 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetCompatMap");
23595 REPLY(reply);
23596 f_deviceID = VALUE8(tvb, *offsetp);
23597 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_reply_deviceID, tvb, *offsetp, 1, byte_order);
23598 *offsetp += 1;
23599 sequence_number = VALUE16(tvb, *offsetp);
23600 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
23601 "sequencenumber: %d (xkb-GetCompatMap)", sequence_number);
23602 *offsetp += 2;
23603 f_length = VALUE32(tvb, *offsetp);
23604 length = f_length * 4 + 32;
23605 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
23606 *offsetp += 4;
23607 f_groupsRtrn = VALUE8(tvb, *offsetp);
23609 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_reply_groupsRtrn, tvb, *offsetp, 1, byte_order);
23610 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23611 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group1, tvb, *offsetp, 1, byte_order);
23612 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group2, tvb, *offsetp, 1, byte_order);
23613 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group3, tvb, *offsetp, 1, byte_order);
23614 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetCompatMap_reply_groupsRtrn_mask_Group4, tvb, *offsetp, 1, byte_order);
23616 *offsetp += 1;
23617 UNUSED(1);
23618 f_firstSIRtrn = VALUE16(tvb, *offsetp);
23619 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_reply_firstSIRtrn, tvb, *offsetp, 2, byte_order);
23620 *offsetp += 2;
23621 f_nSIRtrn = VALUE16(tvb, *offsetp);
23622 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_reply_nSIRtrn, tvb, *offsetp, 2, byte_order);
23623 *offsetp += 2;
23624 f_nTotalSI = VALUE16(tvb, *offsetp);
23625 proto_tree_add_item(t, hf_x11_xkb_GetCompatMap_reply_nTotalSI, tvb, *offsetp, 2, byte_order);
23626 *offsetp += 2;
23627 UNUSED(16);
23628 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetCompatMap_reply_si_rtrn, (16 * f_nSIRtrn), byte_order);
23629 struct_ModDef(tvb, offsetp, t, byte_order, popcount(f_groupsRtrn));
23632 static void xkbSetCompatMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23634 int f_deviceSpec;
23635 int f_recomputeActions;
23636 int f_truncateSI;
23637 int f_groups;
23638 int f_firstSI;
23639 int f_nSI;
23640 f_deviceSpec = VALUE16(tvb, *offsetp);
23641 proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23642 *offsetp += 2;
23643 UNUSED(1);
23644 f_recomputeActions = VALUE8(tvb, *offsetp);
23645 proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_recomputeActions, tvb, *offsetp, 1, byte_order);
23646 *offsetp += 1;
23647 f_truncateSI = VALUE8(tvb, *offsetp);
23648 proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_truncateSI, tvb, *offsetp, 1, byte_order);
23649 *offsetp += 1;
23650 f_groups = VALUE8(tvb, *offsetp);
23652 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_groups, tvb, *offsetp, 1, byte_order);
23653 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23654 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetCompatMap_groups_mask_Group1, tvb, *offsetp, 1, byte_order);
23655 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetCompatMap_groups_mask_Group2, tvb, *offsetp, 1, byte_order);
23656 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetCompatMap_groups_mask_Group3, tvb, *offsetp, 1, byte_order);
23657 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetCompatMap_groups_mask_Group4, tvb, *offsetp, 1, byte_order);
23659 *offsetp += 1;
23660 f_firstSI = VALUE16(tvb, *offsetp);
23661 proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_firstSI, tvb, *offsetp, 2, byte_order);
23662 *offsetp += 2;
23663 f_nSI = VALUE16(tvb, *offsetp);
23664 proto_tree_add_item(t, hf_x11_xkb_SetCompatMap_nSI, tvb, *offsetp, 2, byte_order);
23665 *offsetp += 2;
23666 UNUSED(2);
23667 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetCompatMap_si, (16 * f_nSI), byte_order);
23668 length -= (16 * f_nSI) * 1;
23669 struct_ModDef(tvb, offsetp, t, byte_order, popcount(f_groups));
23670 length -= popcount(f_groups) * 4;
23673 static void xkbGetIndicatorState(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23675 int f_deviceSpec;
23676 f_deviceSpec = VALUE16(tvb, *offsetp);
23677 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorState_deviceSpec, tvb, *offsetp, 2, byte_order);
23678 *offsetp += 2;
23679 UNUSED(2);
23681 static void xkbGetIndicatorState_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
23683 int f_length, length, sequence_number;
23684 int f_deviceID;
23685 int f_state;
23687 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetIndicatorState");
23689 REPLY(reply);
23690 f_deviceID = VALUE8(tvb, *offsetp);
23691 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorState_reply_deviceID, tvb, *offsetp, 1, byte_order);
23692 *offsetp += 1;
23693 sequence_number = VALUE16(tvb, *offsetp);
23694 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
23695 "sequencenumber: %d (xkb-GetIndicatorState)", sequence_number);
23696 *offsetp += 2;
23697 f_length = VALUE32(tvb, *offsetp);
23698 length = f_length * 4 + 32;
23699 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
23700 *offsetp += 4;
23701 f_state = VALUE32(tvb, *offsetp);
23702 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorState_reply_state, tvb, *offsetp, 4, byte_order);
23703 *offsetp += 4;
23704 UNUSED(20);
23707 static void xkbGetIndicatorMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23709 int f_deviceSpec;
23710 int f_which;
23711 f_deviceSpec = VALUE16(tvb, *offsetp);
23712 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23713 *offsetp += 2;
23714 UNUSED(2);
23715 f_which = VALUE32(tvb, *offsetp);
23716 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_which, tvb, *offsetp, 4, byte_order);
23717 *offsetp += 4;
23719 static void xkbGetIndicatorMap_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
23721 int f_length, length, sequence_number;
23722 int f_deviceID;
23723 int f_which;
23724 int f_realIndicators;
23725 int f_nIndicators;
23727 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetIndicatorMap");
23729 REPLY(reply);
23730 f_deviceID = VALUE8(tvb, *offsetp);
23731 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_reply_deviceID, tvb, *offsetp, 1, byte_order);
23732 *offsetp += 1;
23733 sequence_number = VALUE16(tvb, *offsetp);
23734 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
23735 "sequencenumber: %d (xkb-GetIndicatorMap)", sequence_number);
23736 *offsetp += 2;
23737 f_length = VALUE32(tvb, *offsetp);
23738 length = f_length * 4 + 32;
23739 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
23740 *offsetp += 4;
23741 f_which = VALUE32(tvb, *offsetp);
23742 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_reply_which, tvb, *offsetp, 4, byte_order);
23743 *offsetp += 4;
23744 f_realIndicators = VALUE32(tvb, *offsetp);
23745 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_reply_realIndicators, tvb, *offsetp, 4, byte_order);
23746 *offsetp += 4;
23747 f_nIndicators = VALUE8(tvb, *offsetp);
23748 proto_tree_add_item(t, hf_x11_xkb_GetIndicatorMap_reply_nIndicators, tvb, *offsetp, 1, byte_order);
23749 *offsetp += 1;
23750 UNUSED(15);
23751 struct_IndicatorMap(tvb, offsetp, t, byte_order, f_nIndicators);
23754 static void xkbSetIndicatorMap(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23756 int f_deviceSpec;
23757 int f_which;
23758 f_deviceSpec = VALUE16(tvb, *offsetp);
23759 proto_tree_add_item(t, hf_x11_xkb_SetIndicatorMap_deviceSpec, tvb, *offsetp, 2, byte_order);
23760 *offsetp += 2;
23761 UNUSED(2);
23762 f_which = VALUE32(tvb, *offsetp);
23763 proto_tree_add_item(t, hf_x11_xkb_SetIndicatorMap_which, tvb, *offsetp, 4, byte_order);
23764 *offsetp += 4;
23765 struct_IndicatorMap(tvb, offsetp, t, byte_order, popcount(f_which));
23766 length -= popcount(f_which) * 12;
23769 static void xkbGetNamedIndicator(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23771 int f_deviceSpec;
23772 int f_ledClass;
23773 int f_ledID;
23774 int f_indicator;
23775 f_deviceSpec = VALUE16(tvb, *offsetp);
23776 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_deviceSpec, tvb, *offsetp, 2, byte_order);
23777 *offsetp += 2;
23778 f_ledClass = field16(tvb, offsetp, t, hf_x11_xkb_GetNamedIndicator_ledClass, byte_order);
23779 f_ledID = field16(tvb, offsetp, t, hf_x11_xkb_GetNamedIndicator_ledID, byte_order);
23780 UNUSED(2);
23781 f_indicator = VALUE32(tvb, *offsetp);
23782 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_indicator, tvb, *offsetp, 4, byte_order);
23783 *offsetp += 4;
23785 static void xkbGetNamedIndicator_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
23787 int f_length, length, sequence_number;
23788 int f_deviceID;
23789 int f_indicator;
23790 int f_found;
23791 int f_on;
23792 int f_realIndicator;
23793 int f_ndx;
23794 int f_map_flags;
23795 int f_map_whichGroups;
23796 int f_map_groups;
23797 int f_map_whichMods;
23798 int f_map_mods;
23799 int f_map_realMods;
23800 int f_map_vmod;
23801 int f_map_ctrls;
23803 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetNamedIndicator");
23805 REPLY(reply);
23806 f_deviceID = VALUE8(tvb, *offsetp);
23807 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_deviceID, tvb, *offsetp, 1, byte_order);
23808 *offsetp += 1;
23809 sequence_number = VALUE16(tvb, *offsetp);
23810 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
23811 "sequencenumber: %d (xkb-GetNamedIndicator)", sequence_number);
23812 *offsetp += 2;
23813 f_length = VALUE32(tvb, *offsetp);
23814 length = f_length * 4 + 32;
23815 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
23816 *offsetp += 4;
23817 f_indicator = VALUE32(tvb, *offsetp);
23818 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_indicator, tvb, *offsetp, 4, byte_order);
23819 *offsetp += 4;
23820 f_found = VALUE8(tvb, *offsetp);
23821 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_found, tvb, *offsetp, 1, byte_order);
23822 *offsetp += 1;
23823 f_on = VALUE8(tvb, *offsetp);
23824 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_on, tvb, *offsetp, 1, byte_order);
23825 *offsetp += 1;
23826 f_realIndicator = VALUE8(tvb, *offsetp);
23827 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_realIndicator, tvb, *offsetp, 1, byte_order);
23828 *offsetp += 1;
23829 f_ndx = VALUE8(tvb, *offsetp);
23830 proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_ndx, tvb, *offsetp, 1, byte_order);
23831 *offsetp += 1;
23832 f_map_flags = VALUE8(tvb, *offsetp);
23834 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_flags, tvb, *offsetp, 1, byte_order);
23835 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23836 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_LEDDrivesKB, tvb, *offsetp, 1, byte_order);
23837 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_NoAutomatic, tvb, *offsetp, 1, byte_order);
23838 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_flags_mask_NoExplicit, tvb, *offsetp, 1, byte_order);
23840 *offsetp += 1;
23841 f_map_whichGroups = VALUE8(tvb, *offsetp);
23843 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups, tvb, *offsetp, 1, byte_order);
23844 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23845 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseBase, tvb, *offsetp, 1, byte_order);
23846 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseLatched, tvb, *offsetp, 1, byte_order);
23847 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseLocked, tvb, *offsetp, 1, byte_order);
23848 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseEffective, tvb, *offsetp, 1, byte_order);
23849 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichGroups_mask_UseCompat, tvb, *offsetp, 1, byte_order);
23851 *offsetp += 1;
23852 f_map_groups = VALUE8(tvb, *offsetp);
23854 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_groups, tvb, *offsetp, 1, byte_order);
23855 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23856 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_groups_mask_Any, tvb, *offsetp, 1, byte_order);
23858 *offsetp += 1;
23859 f_map_whichMods = VALUE8(tvb, *offsetp);
23861 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods, tvb, *offsetp, 1, byte_order);
23862 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23863 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseBase, tvb, *offsetp, 1, byte_order);
23864 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseLatched, tvb, *offsetp, 1, byte_order);
23865 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseLocked, tvb, *offsetp, 1, byte_order);
23866 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseEffective, tvb, *offsetp, 1, byte_order);
23867 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_whichMods_mask_UseCompat, tvb, *offsetp, 1, byte_order);
23869 *offsetp += 1;
23870 f_map_mods = VALUE8(tvb, *offsetp);
23872 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_mods, tvb, *offsetp, 1, byte_order);
23873 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23874 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
23875 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
23876 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Control, tvb, *offsetp, 1, byte_order);
23877 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_1, tvb, *offsetp, 1, byte_order);
23878 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_2, tvb, *offsetp, 1, byte_order);
23879 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_3, tvb, *offsetp, 1, byte_order);
23880 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_4, tvb, *offsetp, 1, byte_order);
23881 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_5, tvb, *offsetp, 1, byte_order);
23882 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_mods_mask_Any, tvb, *offsetp, 1, byte_order);
23884 *offsetp += 1;
23885 f_map_realMods = VALUE8(tvb, *offsetp);
23887 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_realMods, tvb, *offsetp, 1, byte_order);
23888 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23889 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
23890 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
23891 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
23892 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_1, tvb, *offsetp, 1, byte_order);
23893 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_2, tvb, *offsetp, 1, byte_order);
23894 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_3, tvb, *offsetp, 1, byte_order);
23895 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_4, tvb, *offsetp, 1, byte_order);
23896 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_5, tvb, *offsetp, 1, byte_order);
23897 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
23899 *offsetp += 1;
23900 f_map_vmod = VALUE16(tvb, *offsetp);
23902 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_vmod, tvb, *offsetp, 2, byte_order);
23903 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23904 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_0, tvb, *offsetp, 2, byte_order);
23905 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_1, tvb, *offsetp, 2, byte_order);
23906 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_2, tvb, *offsetp, 2, byte_order);
23907 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_3, tvb, *offsetp, 2, byte_order);
23908 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_4, tvb, *offsetp, 2, byte_order);
23909 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_5, tvb, *offsetp, 2, byte_order);
23910 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_6, tvb, *offsetp, 2, byte_order);
23911 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_7, tvb, *offsetp, 2, byte_order);
23912 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_8, tvb, *offsetp, 2, byte_order);
23913 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_9, tvb, *offsetp, 2, byte_order);
23914 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_10, tvb, *offsetp, 2, byte_order);
23915 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_11, tvb, *offsetp, 2, byte_order);
23916 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_12, tvb, *offsetp, 2, byte_order);
23917 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_13, tvb, *offsetp, 2, byte_order);
23918 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_14, tvb, *offsetp, 2, byte_order);
23919 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_vmod_mask_15, tvb, *offsetp, 2, byte_order);
23921 *offsetp += 2;
23922 f_map_ctrls = VALUE32(tvb, *offsetp);
23924 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls, tvb, *offsetp, 4, byte_order);
23925 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23926 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
23927 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
23928 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
23929 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
23930 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
23931 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
23932 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
23933 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
23934 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
23935 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
23936 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
23937 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
23938 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNamedIndicator_reply_map_ctrls_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
23940 *offsetp += 4;
23941 UNUSED(3);
23944 static void xkbSetNamedIndicator(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
23946 int f_deviceSpec;
23947 int f_ledClass;
23948 int f_ledID;
23949 int f_indicator;
23950 int f_setState;
23951 int f_on;
23952 int f_setMap;
23953 int f_createMap;
23954 int f_map_flags;
23955 int f_map_whichGroups;
23956 int f_map_groups;
23957 int f_map_whichMods;
23958 int f_map_realMods;
23959 int f_map_vmods;
23960 int f_map_ctrls;
23961 f_deviceSpec = VALUE16(tvb, *offsetp);
23962 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_deviceSpec, tvb, *offsetp, 2, byte_order);
23963 *offsetp += 2;
23964 f_ledClass = field16(tvb, offsetp, t, hf_x11_xkb_SetNamedIndicator_ledClass, byte_order);
23965 f_ledID = field16(tvb, offsetp, t, hf_x11_xkb_SetNamedIndicator_ledID, byte_order);
23966 UNUSED(2);
23967 f_indicator = VALUE32(tvb, *offsetp);
23968 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_indicator, tvb, *offsetp, 4, byte_order);
23969 *offsetp += 4;
23970 f_setState = VALUE8(tvb, *offsetp);
23971 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_setState, tvb, *offsetp, 1, byte_order);
23972 *offsetp += 1;
23973 f_on = VALUE8(tvb, *offsetp);
23974 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_on, tvb, *offsetp, 1, byte_order);
23975 *offsetp += 1;
23976 f_setMap = VALUE8(tvb, *offsetp);
23977 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_setMap, tvb, *offsetp, 1, byte_order);
23978 *offsetp += 1;
23979 f_createMap = VALUE8(tvb, *offsetp);
23980 proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_createMap, tvb, *offsetp, 1, byte_order);
23981 *offsetp += 1;
23982 UNUSED(1);
23983 f_map_flags = VALUE8(tvb, *offsetp);
23985 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_flags, tvb, *offsetp, 1, byte_order);
23986 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23987 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_flags_mask_LEDDrivesKB, tvb, *offsetp, 1, byte_order);
23988 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_flags_mask_NoAutomatic, tvb, *offsetp, 1, byte_order);
23989 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_flags_mask_NoExplicit, tvb, *offsetp, 1, byte_order);
23991 *offsetp += 1;
23992 f_map_whichGroups = VALUE8(tvb, *offsetp);
23994 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_whichGroups, tvb, *offsetp, 1, byte_order);
23995 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
23996 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseBase, tvb, *offsetp, 1, byte_order);
23997 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseLatched, tvb, *offsetp, 1, byte_order);
23998 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseLocked, tvb, *offsetp, 1, byte_order);
23999 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseEffective, tvb, *offsetp, 1, byte_order);
24000 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichGroups_mask_UseCompat, tvb, *offsetp, 1, byte_order);
24002 *offsetp += 1;
24003 f_map_groups = VALUE8(tvb, *offsetp);
24005 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_groups, tvb, *offsetp, 1, byte_order);
24006 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24007 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_groups_mask_Any, tvb, *offsetp, 1, byte_order);
24009 *offsetp += 1;
24010 f_map_whichMods = VALUE8(tvb, *offsetp);
24012 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_whichMods, tvb, *offsetp, 1, byte_order);
24013 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24014 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseBase, tvb, *offsetp, 1, byte_order);
24015 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseLatched, tvb, *offsetp, 1, byte_order);
24016 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseLocked, tvb, *offsetp, 1, byte_order);
24017 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseEffective, tvb, *offsetp, 1, byte_order);
24018 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_whichMods_mask_UseCompat, tvb, *offsetp, 1, byte_order);
24020 *offsetp += 1;
24021 f_map_realMods = VALUE8(tvb, *offsetp);
24023 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_realMods, tvb, *offsetp, 1, byte_order);
24024 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24025 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Shift, tvb, *offsetp, 1, byte_order);
24026 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Lock, tvb, *offsetp, 1, byte_order);
24027 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Control, tvb, *offsetp, 1, byte_order);
24028 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_1, tvb, *offsetp, 1, byte_order);
24029 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_2, tvb, *offsetp, 1, byte_order);
24030 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_3, tvb, *offsetp, 1, byte_order);
24031 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_4, tvb, *offsetp, 1, byte_order);
24032 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_5, tvb, *offsetp, 1, byte_order);
24033 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_realMods_mask_Any, tvb, *offsetp, 1, byte_order);
24035 *offsetp += 1;
24036 f_map_vmods = VALUE16(tvb, *offsetp);
24038 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_vmods, tvb, *offsetp, 2, byte_order);
24039 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24040 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_0, tvb, *offsetp, 2, byte_order);
24041 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_1, tvb, *offsetp, 2, byte_order);
24042 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_2, tvb, *offsetp, 2, byte_order);
24043 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_3, tvb, *offsetp, 2, byte_order);
24044 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_4, tvb, *offsetp, 2, byte_order);
24045 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_5, tvb, *offsetp, 2, byte_order);
24046 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_6, tvb, *offsetp, 2, byte_order);
24047 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_7, tvb, *offsetp, 2, byte_order);
24048 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_8, tvb, *offsetp, 2, byte_order);
24049 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_9, tvb, *offsetp, 2, byte_order);
24050 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_10, tvb, *offsetp, 2, byte_order);
24051 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_11, tvb, *offsetp, 2, byte_order);
24052 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_12, tvb, *offsetp, 2, byte_order);
24053 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_13, tvb, *offsetp, 2, byte_order);
24054 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_14, tvb, *offsetp, 2, byte_order);
24055 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_vmods_mask_15, tvb, *offsetp, 2, byte_order);
24057 *offsetp += 2;
24058 f_map_ctrls = VALUE32(tvb, *offsetp);
24060 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNamedIndicator_map_ctrls, tvb, *offsetp, 4, byte_order);
24061 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24062 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24063 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24064 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24065 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24066 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24067 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24068 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24069 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24070 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24071 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24072 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24073 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24074 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNamedIndicator_map_ctrls_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24076 *offsetp += 4;
24079 static void xkbGetNames(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24081 int f_deviceSpec;
24082 int f_which;
24083 f_deviceSpec = VALUE16(tvb, *offsetp);
24084 proto_tree_add_item(t, hf_x11_xkb_GetNames_deviceSpec, tvb, *offsetp, 2, byte_order);
24085 *offsetp += 2;
24086 UNUSED(2);
24087 f_which = VALUE32(tvb, *offsetp);
24089 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNames_which, tvb, *offsetp, 4, byte_order);
24090 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24091 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_Keycodes, tvb, *offsetp, 4, byte_order);
24092 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_Geometry, tvb, *offsetp, 4, byte_order);
24093 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_Symbols, tvb, *offsetp, 4, byte_order);
24094 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_PhysSymbols, tvb, *offsetp, 4, byte_order);
24095 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_Types, tvb, *offsetp, 4, byte_order);
24096 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_Compat, tvb, *offsetp, 4, byte_order);
24097 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_KeyTypeNames, tvb, *offsetp, 4, byte_order);
24098 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_KTLevelNames, tvb, *offsetp, 4, byte_order);
24099 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_IndicatorNames, tvb, *offsetp, 4, byte_order);
24100 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_KeyNames, tvb, *offsetp, 4, byte_order);
24101 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_KeyAliases, tvb, *offsetp, 4, byte_order);
24102 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_VirtualModNames, tvb, *offsetp, 4, byte_order);
24103 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_GroupNames, tvb, *offsetp, 4, byte_order);
24104 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_which_mask_RGNames, tvb, *offsetp, 4, byte_order);
24106 *offsetp += 4;
24108 static void xkbGetNames_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
24110 int f_length, length, sequence_number;
24111 int f_deviceID;
24112 int f_which;
24113 int f_minKeyCode;
24114 int f_maxKeyCode;
24115 int f_nTypes;
24116 int f_groupNames;
24117 int f_virtualMods;
24118 int f_firstKey;
24119 int f_nKeys;
24120 int f_indicators;
24121 int f_nRadioGroups;
24122 int f_nKeyAliases;
24123 int f_nKTLevels;
24125 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetNames");
24127 REPLY(reply);
24128 f_deviceID = VALUE8(tvb, *offsetp);
24129 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_deviceID, tvb, *offsetp, 1, byte_order);
24130 *offsetp += 1;
24131 sequence_number = VALUE16(tvb, *offsetp);
24132 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
24133 "sequencenumber: %d (xkb-GetNames)", sequence_number);
24134 *offsetp += 2;
24135 f_length = VALUE32(tvb, *offsetp);
24136 length = f_length * 4 + 32;
24137 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
24138 *offsetp += 4;
24139 f_which = VALUE32(tvb, *offsetp);
24141 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_which, tvb, *offsetp, 4, byte_order);
24142 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24143 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_Keycodes, tvb, *offsetp, 4, byte_order);
24144 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_Geometry, tvb, *offsetp, 4, byte_order);
24145 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_Symbols, tvb, *offsetp, 4, byte_order);
24146 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_PhysSymbols, tvb, *offsetp, 4, byte_order);
24147 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_Types, tvb, *offsetp, 4, byte_order);
24148 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_Compat, tvb, *offsetp, 4, byte_order);
24149 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_KeyTypeNames, tvb, *offsetp, 4, byte_order);
24150 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_KTLevelNames, tvb, *offsetp, 4, byte_order);
24151 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_IndicatorNames, tvb, *offsetp, 4, byte_order);
24152 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_KeyNames, tvb, *offsetp, 4, byte_order);
24153 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_KeyAliases, tvb, *offsetp, 4, byte_order);
24154 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_VirtualModNames, tvb, *offsetp, 4, byte_order);
24155 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_GroupNames, tvb, *offsetp, 4, byte_order);
24156 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_which_mask_RGNames, tvb, *offsetp, 4, byte_order);
24158 *offsetp += 4;
24159 f_minKeyCode = VALUE8(tvb, *offsetp);
24160 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_minKeyCode, tvb, *offsetp, 1, byte_order);
24161 *offsetp += 1;
24162 f_maxKeyCode = VALUE8(tvb, *offsetp);
24163 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_maxKeyCode, tvb, *offsetp, 1, byte_order);
24164 *offsetp += 1;
24165 f_nTypes = VALUE8(tvb, *offsetp);
24166 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_nTypes, tvb, *offsetp, 1, byte_order);
24167 *offsetp += 1;
24168 f_groupNames = VALUE8(tvb, *offsetp);
24170 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_groupNames, tvb, *offsetp, 1, byte_order);
24171 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24172 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_groupNames_mask_Group1, tvb, *offsetp, 1, byte_order);
24173 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_groupNames_mask_Group2, tvb, *offsetp, 1, byte_order);
24174 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_groupNames_mask_Group3, tvb, *offsetp, 1, byte_order);
24175 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_groupNames_mask_Group4, tvb, *offsetp, 1, byte_order);
24177 *offsetp += 1;
24178 f_virtualMods = VALUE16(tvb, *offsetp);
24180 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_virtualMods, tvb, *offsetp, 2, byte_order);
24181 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24182 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
24183 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
24184 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
24185 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
24186 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
24187 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
24188 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
24189 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
24190 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
24191 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
24192 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
24193 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
24194 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
24195 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
24196 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
24197 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetNames_reply_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
24199 *offsetp += 2;
24200 f_firstKey = VALUE8(tvb, *offsetp);
24201 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_firstKey, tvb, *offsetp, 1, byte_order);
24202 *offsetp += 1;
24203 f_nKeys = VALUE8(tvb, *offsetp);
24204 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_nKeys, tvb, *offsetp, 1, byte_order);
24205 *offsetp += 1;
24206 f_indicators = VALUE32(tvb, *offsetp);
24207 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_indicators, tvb, *offsetp, 4, byte_order);
24208 *offsetp += 4;
24209 f_nRadioGroups = VALUE8(tvb, *offsetp);
24210 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_nRadioGroups, tvb, *offsetp, 1, byte_order);
24211 *offsetp += 1;
24212 f_nKeyAliases = VALUE8(tvb, *offsetp);
24213 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_nKeyAliases, tvb, *offsetp, 1, byte_order);
24214 *offsetp += 1;
24215 f_nKTLevels = VALUE16(tvb, *offsetp);
24216 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_nKTLevels, tvb, *offsetp, 2, byte_order);
24217 *offsetp += 2;
24218 UNUSED(4);
24219 if ((f_which & (1 << 0)) != 0) {
24220 int f_keycodesName;
24221 f_keycodesName = VALUE32(tvb, *offsetp);
24222 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_Keycodes_keycodesName, tvb, *offsetp, 4, byte_order);
24223 *offsetp += 4;
24225 if ((f_which & (1 << 1)) != 0) {
24226 int f_geometryName;
24227 f_geometryName = VALUE32(tvb, *offsetp);
24228 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_Geometry_geometryName, tvb, *offsetp, 4, byte_order);
24229 *offsetp += 4;
24231 if ((f_which & (1 << 2)) != 0) {
24232 int f_symbolsName;
24233 f_symbolsName = VALUE32(tvb, *offsetp);
24234 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_Symbols_symbolsName, tvb, *offsetp, 4, byte_order);
24235 *offsetp += 4;
24237 if ((f_which & (1 << 3)) != 0) {
24238 int f_physSymbolsName;
24239 f_physSymbolsName = VALUE32(tvb, *offsetp);
24240 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_PhysSymbols_physSymbolsName, tvb, *offsetp, 4, byte_order);
24241 *offsetp += 4;
24243 if ((f_which & (1 << 4)) != 0) {
24244 int f_typesName;
24245 f_typesName = VALUE32(tvb, *offsetp);
24246 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_Types_typesName, tvb, *offsetp, 4, byte_order);
24247 *offsetp += 4;
24249 if ((f_which & (1 << 5)) != 0) {
24250 int f_compatName;
24251 f_compatName = VALUE32(tvb, *offsetp);
24252 proto_tree_add_item(t, hf_x11_xkb_GetNames_reply_Compat_compatName, tvb, *offsetp, 4, byte_order);
24253 *offsetp += 4;
24255 if ((f_which & (1 << 6)) != 0) {
24256 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_KeyTypeNames_typeNames, hf_x11_xkb_GetNames_reply_KeyTypeNames_typeNames_item, f_nTypes, byte_order);
24258 if ((f_which & (1 << 7)) != 0) {
24259 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_KTLevelNames_nLevelsPerType, f_nTypes, byte_order);
24260 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_KTLevelNames_ktLevelNames, hf_x11_xkb_GetNames_reply_KTLevelNames_ktLevelNames_item, (length - 56) / 4, byte_order);
24262 if ((f_which & (1 << 8)) != 0) {
24263 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_IndicatorNames_indicatorNames, hf_x11_xkb_GetNames_reply_IndicatorNames_indicatorNames_item, popcount(f_indicators), byte_order);
24265 if ((f_which & (1 << 11)) != 0) {
24266 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_VirtualModNames_virtualModNames, hf_x11_xkb_GetNames_reply_VirtualModNames_virtualModNames_item, popcount(f_virtualMods), byte_order);
24268 if ((f_which & (1 << 12)) != 0) {
24269 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_GroupNames_groups, hf_x11_xkb_GetNames_reply_GroupNames_groups_item, popcount(f_groupNames), byte_order);
24271 if ((f_which & (1 << 9)) != 0) {
24272 struct_KeyName(tvb, offsetp, t, byte_order, f_nKeys);
24274 if ((f_which & (1 << 10)) != 0) {
24275 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
24277 if ((f_which & (1 << 13)) != 0) {
24278 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetNames_reply_RGNames_radioGroupNames, hf_x11_xkb_GetNames_reply_RGNames_radioGroupNames_item, f_nRadioGroups, byte_order);
24282 static void xkbSetNames(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24284 int f_deviceSpec;
24285 int f_virtualMods;
24286 int f_which;
24287 int f_firstType;
24288 int f_nTypes;
24289 int f_firstKTLevelt;
24290 int f_nKTLevels;
24291 int f_indicators;
24292 int f_groupNames;
24293 int f_nRadioGroups;
24294 int f_firstKey;
24295 int f_nKeys;
24296 int f_nKeyAliases;
24297 int f_totalKTLevelNames;
24298 f_deviceSpec = VALUE16(tvb, *offsetp);
24299 proto_tree_add_item(t, hf_x11_xkb_SetNames_deviceSpec, tvb, *offsetp, 2, byte_order);
24300 *offsetp += 2;
24301 f_virtualMods = VALUE16(tvb, *offsetp);
24303 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNames_virtualMods, tvb, *offsetp, 2, byte_order);
24304 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24305 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
24306 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
24307 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
24308 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
24309 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
24310 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
24311 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
24312 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
24313 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
24314 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
24315 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
24316 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
24317 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
24318 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
24319 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
24320 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
24322 *offsetp += 2;
24323 f_which = VALUE32(tvb, *offsetp);
24325 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNames_which, tvb, *offsetp, 4, byte_order);
24326 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24327 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_Keycodes, tvb, *offsetp, 4, byte_order);
24328 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_Geometry, tvb, *offsetp, 4, byte_order);
24329 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_Symbols, tvb, *offsetp, 4, byte_order);
24330 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_PhysSymbols, tvb, *offsetp, 4, byte_order);
24331 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_Types, tvb, *offsetp, 4, byte_order);
24332 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_Compat, tvb, *offsetp, 4, byte_order);
24333 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_KeyTypeNames, tvb, *offsetp, 4, byte_order);
24334 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_KTLevelNames, tvb, *offsetp, 4, byte_order);
24335 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_IndicatorNames, tvb, *offsetp, 4, byte_order);
24336 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_KeyNames, tvb, *offsetp, 4, byte_order);
24337 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_KeyAliases, tvb, *offsetp, 4, byte_order);
24338 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_VirtualModNames, tvb, *offsetp, 4, byte_order);
24339 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_GroupNames, tvb, *offsetp, 4, byte_order);
24340 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_which_mask_RGNames, tvb, *offsetp, 4, byte_order);
24342 *offsetp += 4;
24343 f_firstType = VALUE8(tvb, *offsetp);
24344 proto_tree_add_item(t, hf_x11_xkb_SetNames_firstType, tvb, *offsetp, 1, byte_order);
24345 *offsetp += 1;
24346 f_nTypes = VALUE8(tvb, *offsetp);
24347 proto_tree_add_item(t, hf_x11_xkb_SetNames_nTypes, tvb, *offsetp, 1, byte_order);
24348 *offsetp += 1;
24349 f_firstKTLevelt = VALUE8(tvb, *offsetp);
24350 proto_tree_add_item(t, hf_x11_xkb_SetNames_firstKTLevelt, tvb, *offsetp, 1, byte_order);
24351 *offsetp += 1;
24352 f_nKTLevels = VALUE8(tvb, *offsetp);
24353 proto_tree_add_item(t, hf_x11_xkb_SetNames_nKTLevels, tvb, *offsetp, 1, byte_order);
24354 *offsetp += 1;
24355 f_indicators = VALUE32(tvb, *offsetp);
24356 proto_tree_add_item(t, hf_x11_xkb_SetNames_indicators, tvb, *offsetp, 4, byte_order);
24357 *offsetp += 4;
24358 f_groupNames = VALUE8(tvb, *offsetp);
24360 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetNames_groupNames, tvb, *offsetp, 1, byte_order);
24361 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24362 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_groupNames_mask_Group1, tvb, *offsetp, 1, byte_order);
24363 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_groupNames_mask_Group2, tvb, *offsetp, 1, byte_order);
24364 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_groupNames_mask_Group3, tvb, *offsetp, 1, byte_order);
24365 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetNames_groupNames_mask_Group4, tvb, *offsetp, 1, byte_order);
24367 *offsetp += 1;
24368 f_nRadioGroups = VALUE8(tvb, *offsetp);
24369 proto_tree_add_item(t, hf_x11_xkb_SetNames_nRadioGroups, tvb, *offsetp, 1, byte_order);
24370 *offsetp += 1;
24371 f_firstKey = VALUE8(tvb, *offsetp);
24372 proto_tree_add_item(t, hf_x11_xkb_SetNames_firstKey, tvb, *offsetp, 1, byte_order);
24373 *offsetp += 1;
24374 f_nKeys = VALUE8(tvb, *offsetp);
24375 proto_tree_add_item(t, hf_x11_xkb_SetNames_nKeys, tvb, *offsetp, 1, byte_order);
24376 *offsetp += 1;
24377 f_nKeyAliases = VALUE8(tvb, *offsetp);
24378 proto_tree_add_item(t, hf_x11_xkb_SetNames_nKeyAliases, tvb, *offsetp, 1, byte_order);
24379 *offsetp += 1;
24380 UNUSED(1);
24381 f_totalKTLevelNames = VALUE16(tvb, *offsetp);
24382 proto_tree_add_item(t, hf_x11_xkb_SetNames_totalKTLevelNames, tvb, *offsetp, 2, byte_order);
24383 *offsetp += 2;
24384 if ((f_which & (1 << 0)) != 0) {
24385 int f_keycodesName;
24386 f_keycodesName = VALUE32(tvb, *offsetp);
24387 proto_tree_add_item(t, hf_x11_xkb_SetNames_Keycodes_keycodesName, tvb, *offsetp, 4, byte_order);
24388 *offsetp += 4;
24390 if ((f_which & (1 << 1)) != 0) {
24391 int f_geometryName;
24392 f_geometryName = VALUE32(tvb, *offsetp);
24393 proto_tree_add_item(t, hf_x11_xkb_SetNames_Geometry_geometryName, tvb, *offsetp, 4, byte_order);
24394 *offsetp += 4;
24396 if ((f_which & (1 << 2)) != 0) {
24397 int f_symbolsName;
24398 f_symbolsName = VALUE32(tvb, *offsetp);
24399 proto_tree_add_item(t, hf_x11_xkb_SetNames_Symbols_symbolsName, tvb, *offsetp, 4, byte_order);
24400 *offsetp += 4;
24402 if ((f_which & (1 << 3)) != 0) {
24403 int f_physSymbolsName;
24404 f_physSymbolsName = VALUE32(tvb, *offsetp);
24405 proto_tree_add_item(t, hf_x11_xkb_SetNames_PhysSymbols_physSymbolsName, tvb, *offsetp, 4, byte_order);
24406 *offsetp += 4;
24408 if ((f_which & (1 << 4)) != 0) {
24409 int f_typesName;
24410 f_typesName = VALUE32(tvb, *offsetp);
24411 proto_tree_add_item(t, hf_x11_xkb_SetNames_Types_typesName, tvb, *offsetp, 4, byte_order);
24412 *offsetp += 4;
24414 if ((f_which & (1 << 5)) != 0) {
24415 int f_compatName;
24416 f_compatName = VALUE32(tvb, *offsetp);
24417 proto_tree_add_item(t, hf_x11_xkb_SetNames_Compat_compatName, tvb, *offsetp, 4, byte_order);
24418 *offsetp += 4;
24420 if ((f_which & (1 << 6)) != 0) {
24421 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_KeyTypeNames_typeNames, hf_x11_xkb_SetNames_KeyTypeNames_typeNames_item, f_nTypes, byte_order);
24422 length -= f_nTypes * 4;
24424 if ((f_which & (1 << 7)) != 0) {
24425 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetNames_KTLevelNames_nLevelsPerType, f_nKTLevels, byte_order);
24426 length -= f_nKTLevels * 1;
24427 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_KTLevelNames_ktLevelNames, hf_x11_xkb_SetNames_KTLevelNames_ktLevelNames_item, (length - 52) / 4, byte_order);
24428 length -= (length - 52) / 4 * 4;
24430 if ((f_which & (1 << 8)) != 0) {
24431 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_IndicatorNames_indicatorNames, hf_x11_xkb_SetNames_IndicatorNames_indicatorNames_item, popcount(f_indicators), byte_order);
24432 length -= popcount(f_indicators) * 4;
24434 if ((f_which & (1 << 11)) != 0) {
24435 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_VirtualModNames_virtualModNames, hf_x11_xkb_SetNames_VirtualModNames_virtualModNames_item, popcount(f_virtualMods), byte_order);
24436 length -= popcount(f_virtualMods) * 4;
24438 if ((f_which & (1 << 12)) != 0) {
24439 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_GroupNames_groups, hf_x11_xkb_SetNames_GroupNames_groups_item, popcount(f_groupNames), byte_order);
24440 length -= popcount(f_groupNames) * 4;
24442 if ((f_which & (1 << 9)) != 0) {
24443 struct_KeyName(tvb, offsetp, t, byte_order, f_nKeys);
24444 length -= f_nKeys * 1;
24446 if ((f_which & (1 << 10)) != 0) {
24447 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
24448 length -= f_nKeyAliases * 2;
24450 if ((f_which & (1 << 13)) != 0) {
24451 listOfCard32(tvb, offsetp, t, hf_x11_xkb_SetNames_RGNames_radioGroupNames, hf_x11_xkb_SetNames_RGNames_radioGroupNames_item, f_nRadioGroups, byte_order);
24452 length -= f_nRadioGroups * 4;
24456 static void xkbGetGeometry(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24458 int f_deviceSpec;
24459 int f_name;
24460 f_deviceSpec = VALUE16(tvb, *offsetp);
24461 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_deviceSpec, tvb, *offsetp, 2, byte_order);
24462 *offsetp += 2;
24463 UNUSED(2);
24464 f_name = VALUE32(tvb, *offsetp);
24465 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_name, tvb, *offsetp, 4, byte_order);
24466 *offsetp += 4;
24468 static void xkbGetGeometry_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
24470 int f_length, length, sequence_number;
24471 int f_deviceID;
24472 int f_name;
24473 int f_found;
24474 int f_widthMM;
24475 int f_heightMM;
24476 int f_nProperties;
24477 int f_nColors;
24478 int f_nShapes;
24479 int f_nSections;
24480 int f_nDoodads;
24481 int f_nKeyAliases;
24482 int f_baseColorNdx;
24483 int f_labelColorNdx;
24485 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetGeometry");
24487 REPLY(reply);
24488 f_deviceID = VALUE8(tvb, *offsetp);
24489 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_deviceID, tvb, *offsetp, 1, byte_order);
24490 *offsetp += 1;
24491 sequence_number = VALUE16(tvb, *offsetp);
24492 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
24493 "sequencenumber: %d (xkb-GetGeometry)", sequence_number);
24494 *offsetp += 2;
24495 f_length = VALUE32(tvb, *offsetp);
24496 length = f_length * 4 + 32;
24497 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
24498 *offsetp += 4;
24499 f_name = VALUE32(tvb, *offsetp);
24500 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_name, tvb, *offsetp, 4, byte_order);
24501 *offsetp += 4;
24502 f_found = VALUE8(tvb, *offsetp);
24503 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_found, tvb, *offsetp, 1, byte_order);
24504 *offsetp += 1;
24505 UNUSED(1);
24506 f_widthMM = VALUE16(tvb, *offsetp);
24507 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_widthMM, tvb, *offsetp, 2, byte_order);
24508 *offsetp += 2;
24509 f_heightMM = VALUE16(tvb, *offsetp);
24510 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_heightMM, tvb, *offsetp, 2, byte_order);
24511 *offsetp += 2;
24512 f_nProperties = VALUE16(tvb, *offsetp);
24513 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nProperties, tvb, *offsetp, 2, byte_order);
24514 *offsetp += 2;
24515 f_nColors = VALUE16(tvb, *offsetp);
24516 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nColors, tvb, *offsetp, 2, byte_order);
24517 *offsetp += 2;
24518 f_nShapes = VALUE16(tvb, *offsetp);
24519 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nShapes, tvb, *offsetp, 2, byte_order);
24520 *offsetp += 2;
24521 f_nSections = VALUE16(tvb, *offsetp);
24522 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nSections, tvb, *offsetp, 2, byte_order);
24523 *offsetp += 2;
24524 f_nDoodads = VALUE16(tvb, *offsetp);
24525 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nDoodads, tvb, *offsetp, 2, byte_order);
24526 *offsetp += 2;
24527 f_nKeyAliases = VALUE16(tvb, *offsetp);
24528 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_nKeyAliases, tvb, *offsetp, 2, byte_order);
24529 *offsetp += 2;
24530 f_baseColorNdx = VALUE8(tvb, *offsetp);
24531 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_baseColorNdx, tvb, *offsetp, 1, byte_order);
24532 *offsetp += 1;
24533 f_labelColorNdx = VALUE8(tvb, *offsetp);
24534 proto_tree_add_item(t, hf_x11_xkb_GetGeometry_reply_labelColorNdx, tvb, *offsetp, 1, byte_order);
24535 *offsetp += 1;
24536 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
24537 struct_Property(tvb, offsetp, t, byte_order, f_nProperties);
24538 struct_CountedString16(tvb, offsetp, t, byte_order, f_nColors);
24539 struct_Shape(tvb, offsetp, t, byte_order, f_nShapes);
24540 struct_Section(tvb, offsetp, t, byte_order, f_nSections);
24541 struct_Doodad(tvb, offsetp, t, byte_order, f_nDoodads);
24542 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
24545 static void xkbSetGeometry(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24547 int f_deviceSpec;
24548 int f_nShapes;
24549 int f_nSections;
24550 int f_name;
24551 int f_widthMM;
24552 int f_heightMM;
24553 int f_nProperties;
24554 int f_nColors;
24555 int f_nDoodads;
24556 int f_nKeyAliases;
24557 int f_baseColorNdx;
24558 int f_labelColorNdx;
24559 f_deviceSpec = VALUE16(tvb, *offsetp);
24560 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_deviceSpec, tvb, *offsetp, 2, byte_order);
24561 *offsetp += 2;
24562 f_nShapes = VALUE8(tvb, *offsetp);
24563 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nShapes, tvb, *offsetp, 1, byte_order);
24564 *offsetp += 1;
24565 f_nSections = VALUE8(tvb, *offsetp);
24566 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nSections, tvb, *offsetp, 1, byte_order);
24567 *offsetp += 1;
24568 f_name = VALUE32(tvb, *offsetp);
24569 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_name, tvb, *offsetp, 4, byte_order);
24570 *offsetp += 4;
24571 f_widthMM = VALUE16(tvb, *offsetp);
24572 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_widthMM, tvb, *offsetp, 2, byte_order);
24573 *offsetp += 2;
24574 f_heightMM = VALUE16(tvb, *offsetp);
24575 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_heightMM, tvb, *offsetp, 2, byte_order);
24576 *offsetp += 2;
24577 f_nProperties = VALUE16(tvb, *offsetp);
24578 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nProperties, tvb, *offsetp, 2, byte_order);
24579 *offsetp += 2;
24580 f_nColors = VALUE16(tvb, *offsetp);
24581 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nColors, tvb, *offsetp, 2, byte_order);
24582 *offsetp += 2;
24583 f_nDoodads = VALUE16(tvb, *offsetp);
24584 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nDoodads, tvb, *offsetp, 2, byte_order);
24585 *offsetp += 2;
24586 f_nKeyAliases = VALUE16(tvb, *offsetp);
24587 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_nKeyAliases, tvb, *offsetp, 2, byte_order);
24588 *offsetp += 2;
24589 f_baseColorNdx = VALUE8(tvb, *offsetp);
24590 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_baseColorNdx, tvb, *offsetp, 1, byte_order);
24591 *offsetp += 1;
24592 f_labelColorNdx = VALUE8(tvb, *offsetp);
24593 proto_tree_add_item(t, hf_x11_xkb_SetGeometry_labelColorNdx, tvb, *offsetp, 1, byte_order);
24594 *offsetp += 1;
24595 UNUSED(2);
24596 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
24597 struct_Property(tvb, offsetp, t, byte_order, f_nProperties);
24598 length -= f_nProperties * 0;
24599 struct_CountedString16(tvb, offsetp, t, byte_order, f_nColors);
24600 length -= f_nColors * 0;
24601 struct_Shape(tvb, offsetp, t, byte_order, f_nShapes);
24602 length -= f_nShapes * 0;
24603 struct_Section(tvb, offsetp, t, byte_order, f_nSections);
24604 length -= f_nSections * 0;
24605 struct_Doodad(tvb, offsetp, t, byte_order, f_nDoodads);
24606 length -= f_nDoodads * 20;
24607 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
24608 length -= f_nKeyAliases * 2;
24611 static void xkbPerClientFlags(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24613 int f_deviceSpec;
24614 int f_change;
24615 int f_value;
24616 int f_ctrlsToChange;
24617 int f_autoCtrls;
24618 int f_autoCtrlsValues;
24619 f_deviceSpec = VALUE16(tvb, *offsetp);
24620 proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_deviceSpec, tvb, *offsetp, 2, byte_order);
24621 *offsetp += 2;
24622 UNUSED(2);
24623 f_change = VALUE32(tvb, *offsetp);
24625 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_change, tvb, *offsetp, 4, byte_order);
24626 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24627 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_change_mask_DetectableAutoRepeat, tvb, *offsetp, 4, byte_order);
24628 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_change_mask_GrabsUseXKBState, tvb, *offsetp, 4, byte_order);
24629 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_change_mask_AutoResetControls, tvb, *offsetp, 4, byte_order);
24630 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_change_mask_LookupStateWhenGrabbed, tvb, *offsetp, 4, byte_order);
24631 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_change_mask_SendEventUsesXKBState, tvb, *offsetp, 4, byte_order);
24633 *offsetp += 4;
24634 f_value = VALUE32(tvb, *offsetp);
24636 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_value, tvb, *offsetp, 4, byte_order);
24637 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24638 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_value_mask_DetectableAutoRepeat, tvb, *offsetp, 4, byte_order);
24639 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_value_mask_GrabsUseXKBState, tvb, *offsetp, 4, byte_order);
24640 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_value_mask_AutoResetControls, tvb, *offsetp, 4, byte_order);
24641 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_value_mask_LookupStateWhenGrabbed, tvb, *offsetp, 4, byte_order);
24642 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_value_mask_SendEventUsesXKBState, tvb, *offsetp, 4, byte_order);
24644 *offsetp += 4;
24645 f_ctrlsToChange = VALUE32(tvb, *offsetp);
24647 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_ctrlsToChange, tvb, *offsetp, 4, byte_order);
24648 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24649 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24650 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24651 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24652 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24653 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24654 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24655 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24656 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24657 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24658 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24659 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24660 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24661 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_ctrlsToChange_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24663 *offsetp += 4;
24664 f_autoCtrls = VALUE32(tvb, *offsetp);
24666 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_autoCtrls, tvb, *offsetp, 4, byte_order);
24667 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24668 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24669 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24670 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24671 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24672 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24673 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24674 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24675 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24676 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24677 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24678 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24679 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24680 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrls_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24682 *offsetp += 4;
24683 f_autoCtrlsValues = VALUE32(tvb, *offsetp);
24685 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_autoCtrlsValues, tvb, *offsetp, 4, byte_order);
24686 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24687 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24688 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24689 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24690 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24691 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24692 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24693 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24694 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24695 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24696 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24697 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24698 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24699 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_autoCtrlsValues_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24701 *offsetp += 4;
24703 static void xkbPerClientFlags_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
24705 int f_length, length, sequence_number;
24706 int f_deviceID;
24707 int f_supported;
24708 int f_value;
24709 int f_autoCtrls;
24710 int f_autoCtrlsValues;
24712 col_append_fstr(pinfo->cinfo, COL_INFO, "-PerClientFlags");
24714 REPLY(reply);
24715 f_deviceID = VALUE8(tvb, *offsetp);
24716 proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_reply_deviceID, tvb, *offsetp, 1, byte_order);
24717 *offsetp += 1;
24718 sequence_number = VALUE16(tvb, *offsetp);
24719 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
24720 "sequencenumber: %d (xkb-PerClientFlags)", sequence_number);
24721 *offsetp += 2;
24722 f_length = VALUE32(tvb, *offsetp);
24723 length = f_length * 4 + 32;
24724 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
24725 *offsetp += 4;
24726 f_supported = VALUE32(tvb, *offsetp);
24728 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_reply_supported, tvb, *offsetp, 4, byte_order);
24729 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24730 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_supported_mask_DetectableAutoRepeat, tvb, *offsetp, 4, byte_order);
24731 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_supported_mask_GrabsUseXKBState, tvb, *offsetp, 4, byte_order);
24732 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_supported_mask_AutoResetControls, tvb, *offsetp, 4, byte_order);
24733 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_supported_mask_LookupStateWhenGrabbed, tvb, *offsetp, 4, byte_order);
24734 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_supported_mask_SendEventUsesXKBState, tvb, *offsetp, 4, byte_order);
24736 *offsetp += 4;
24737 f_value = VALUE32(tvb, *offsetp);
24739 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_reply_value, tvb, *offsetp, 4, byte_order);
24740 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24741 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_value_mask_DetectableAutoRepeat, tvb, *offsetp, 4, byte_order);
24742 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_value_mask_GrabsUseXKBState, tvb, *offsetp, 4, byte_order);
24743 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_value_mask_AutoResetControls, tvb, *offsetp, 4, byte_order);
24744 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_value_mask_LookupStateWhenGrabbed, tvb, *offsetp, 4, byte_order);
24745 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_value_mask_SendEventUsesXKBState, tvb, *offsetp, 4, byte_order);
24747 *offsetp += 4;
24748 f_autoCtrls = VALUE32(tvb, *offsetp);
24750 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_reply_autoCtrls, tvb, *offsetp, 4, byte_order);
24751 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24752 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24753 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24754 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24755 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24756 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24757 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24758 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24759 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24760 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24761 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24762 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24763 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24764 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrls_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24766 *offsetp += 4;
24767 f_autoCtrlsValues = VALUE32(tvb, *offsetp);
24769 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues, tvb, *offsetp, 4, byte_order);
24770 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24771 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
24772 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
24773 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
24774 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
24775 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
24776 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
24777 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
24778 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
24779 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
24780 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
24781 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
24782 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
24783 proto_tree_add_item(bitmask_tree, hf_x11_xkb_PerClientFlags_reply_autoCtrlsValues_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
24785 *offsetp += 4;
24786 UNUSED(8);
24789 static void xkbListComponents(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24791 int f_deviceSpec;
24792 int f_maxNames;
24793 int f_keymapsSpecLen;
24794 int f_keycodesSpecLen;
24795 int f_typesSpecLen;
24796 int f_compatMapSpecLen;
24797 int f_symbolsSpecLen;
24798 int f_geometrySpecLen;
24799 f_deviceSpec = VALUE16(tvb, *offsetp);
24800 proto_tree_add_item(t, hf_x11_xkb_ListComponents_deviceSpec, tvb, *offsetp, 2, byte_order);
24801 *offsetp += 2;
24802 f_maxNames = VALUE16(tvb, *offsetp);
24803 proto_tree_add_item(t, hf_x11_xkb_ListComponents_maxNames, tvb, *offsetp, 2, byte_order);
24804 *offsetp += 2;
24805 f_keymapsSpecLen = VALUE8(tvb, *offsetp);
24806 proto_tree_add_item(t, hf_x11_xkb_ListComponents_keymapsSpecLen, tvb, *offsetp, 1, byte_order);
24807 *offsetp += 1;
24808 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_keymapsSpec, f_keymapsSpecLen, byte_order);
24809 length -= f_keymapsSpecLen * 1;
24810 f_keycodesSpecLen = VALUE8(tvb, *offsetp);
24811 proto_tree_add_item(t, hf_x11_xkb_ListComponents_keycodesSpecLen, tvb, *offsetp, 1, byte_order);
24812 *offsetp += 1;
24813 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_keycodesSpec, f_keycodesSpecLen, byte_order);
24814 length -= f_keycodesSpecLen * 1;
24815 f_typesSpecLen = VALUE8(tvb, *offsetp);
24816 proto_tree_add_item(t, hf_x11_xkb_ListComponents_typesSpecLen, tvb, *offsetp, 1, byte_order);
24817 *offsetp += 1;
24818 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_typesSpec, f_typesSpecLen, byte_order);
24819 length -= f_typesSpecLen * 1;
24820 f_compatMapSpecLen = VALUE8(tvb, *offsetp);
24821 proto_tree_add_item(t, hf_x11_xkb_ListComponents_compatMapSpecLen, tvb, *offsetp, 1, byte_order);
24822 *offsetp += 1;
24823 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_compatMapSpec, f_compatMapSpecLen, byte_order);
24824 length -= f_compatMapSpecLen * 1;
24825 f_symbolsSpecLen = VALUE8(tvb, *offsetp);
24826 proto_tree_add_item(t, hf_x11_xkb_ListComponents_symbolsSpecLen, tvb, *offsetp, 1, byte_order);
24827 *offsetp += 1;
24828 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_symbolsSpec, f_symbolsSpecLen, byte_order);
24829 length -= f_symbolsSpecLen * 1;
24830 f_geometrySpecLen = VALUE8(tvb, *offsetp);
24831 proto_tree_add_item(t, hf_x11_xkb_ListComponents_geometrySpecLen, tvb, *offsetp, 1, byte_order);
24832 *offsetp += 1;
24833 listOfByte(tvb, offsetp, t, hf_x11_xkb_ListComponents_geometrySpec, f_geometrySpecLen, byte_order);
24834 length -= f_geometrySpecLen * 1;
24836 static void xkbListComponents_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
24838 int f_length, length, sequence_number;
24839 int f_deviceID;
24840 int f_nKeymaps;
24841 int f_nKeycodes;
24842 int f_nTypes;
24843 int f_nCompatMaps;
24844 int f_nSymbols;
24845 int f_nGeometries;
24846 int f_extra;
24848 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListComponents");
24850 REPLY(reply);
24851 f_deviceID = VALUE8(tvb, *offsetp);
24852 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_deviceID, tvb, *offsetp, 1, byte_order);
24853 *offsetp += 1;
24854 sequence_number = VALUE16(tvb, *offsetp);
24855 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
24856 "sequencenumber: %d (xkb-ListComponents)", sequence_number);
24857 *offsetp += 2;
24858 f_length = VALUE32(tvb, *offsetp);
24859 length = f_length * 4 + 32;
24860 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
24861 *offsetp += 4;
24862 f_nKeymaps = VALUE16(tvb, *offsetp);
24863 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nKeymaps, tvb, *offsetp, 2, byte_order);
24864 *offsetp += 2;
24865 f_nKeycodes = VALUE16(tvb, *offsetp);
24866 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nKeycodes, tvb, *offsetp, 2, byte_order);
24867 *offsetp += 2;
24868 f_nTypes = VALUE16(tvb, *offsetp);
24869 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nTypes, tvb, *offsetp, 2, byte_order);
24870 *offsetp += 2;
24871 f_nCompatMaps = VALUE16(tvb, *offsetp);
24872 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nCompatMaps, tvb, *offsetp, 2, byte_order);
24873 *offsetp += 2;
24874 f_nSymbols = VALUE16(tvb, *offsetp);
24875 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nSymbols, tvb, *offsetp, 2, byte_order);
24876 *offsetp += 2;
24877 f_nGeometries = VALUE16(tvb, *offsetp);
24878 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_nGeometries, tvb, *offsetp, 2, byte_order);
24879 *offsetp += 2;
24880 f_extra = VALUE16(tvb, *offsetp);
24881 proto_tree_add_item(t, hf_x11_xkb_ListComponents_reply_extra, tvb, *offsetp, 2, byte_order);
24882 *offsetp += 2;
24883 UNUSED(10);
24884 struct_Listing(tvb, offsetp, t, byte_order, f_nKeymaps);
24885 struct_Listing(tvb, offsetp, t, byte_order, f_nKeycodes);
24886 struct_Listing(tvb, offsetp, t, byte_order, f_nTypes);
24887 struct_Listing(tvb, offsetp, t, byte_order, f_nCompatMaps);
24888 struct_Listing(tvb, offsetp, t, byte_order, f_nSymbols);
24889 struct_Listing(tvb, offsetp, t, byte_order, f_nGeometries);
24892 static void xkbGetKbdByName(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
24894 int f_deviceSpec;
24895 int f_need;
24896 int f_want;
24897 int f_load;
24898 int f_keymapsSpecLen;
24899 int f_keycodesSpecLen;
24900 int f_typesSpecLen;
24901 int f_compatMapSpecLen;
24902 int f_symbolsSpecLen;
24903 int f_geometrySpecLen;
24904 f_deviceSpec = VALUE16(tvb, *offsetp);
24905 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_deviceSpec, tvb, *offsetp, 2, byte_order);
24906 *offsetp += 2;
24907 f_need = VALUE16(tvb, *offsetp);
24909 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_need, tvb, *offsetp, 2, byte_order);
24910 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24911 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_Types, tvb, *offsetp, 2, byte_order);
24912 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_CompatMap, tvb, *offsetp, 2, byte_order);
24913 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_ClientSymbols, tvb, *offsetp, 2, byte_order);
24914 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_ServerSymbols, tvb, *offsetp, 2, byte_order);
24915 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
24916 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_KeyNames, tvb, *offsetp, 2, byte_order);
24917 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_Geometry, tvb, *offsetp, 2, byte_order);
24918 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_need_mask_OtherNames, tvb, *offsetp, 2, byte_order);
24920 *offsetp += 2;
24921 f_want = VALUE16(tvb, *offsetp);
24923 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_want, tvb, *offsetp, 2, byte_order);
24924 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
24925 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_Types, tvb, *offsetp, 2, byte_order);
24926 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_CompatMap, tvb, *offsetp, 2, byte_order);
24927 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_ClientSymbols, tvb, *offsetp, 2, byte_order);
24928 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_ServerSymbols, tvb, *offsetp, 2, byte_order);
24929 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
24930 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_KeyNames, tvb, *offsetp, 2, byte_order);
24931 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_Geometry, tvb, *offsetp, 2, byte_order);
24932 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_want_mask_OtherNames, tvb, *offsetp, 2, byte_order);
24934 *offsetp += 2;
24935 f_load = VALUE8(tvb, *offsetp);
24936 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_load, tvb, *offsetp, 1, byte_order);
24937 *offsetp += 1;
24938 UNUSED(1);
24939 f_keymapsSpecLen = VALUE8(tvb, *offsetp);
24940 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_keymapsSpecLen, tvb, *offsetp, 1, byte_order);
24941 *offsetp += 1;
24942 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_keymapsSpec, f_keymapsSpecLen, byte_order);
24943 length -= f_keymapsSpecLen * 1;
24944 f_keycodesSpecLen = VALUE8(tvb, *offsetp);
24945 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_keycodesSpecLen, tvb, *offsetp, 1, byte_order);
24946 *offsetp += 1;
24947 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_keycodesSpec, f_keycodesSpecLen, byte_order);
24948 length -= f_keycodesSpecLen * 1;
24949 f_typesSpecLen = VALUE8(tvb, *offsetp);
24950 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_typesSpecLen, tvb, *offsetp, 1, byte_order);
24951 *offsetp += 1;
24952 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_typesSpec, f_typesSpecLen, byte_order);
24953 length -= f_typesSpecLen * 1;
24954 f_compatMapSpecLen = VALUE8(tvb, *offsetp);
24955 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_compatMapSpecLen, tvb, *offsetp, 1, byte_order);
24956 *offsetp += 1;
24957 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_compatMapSpec, f_compatMapSpecLen, byte_order);
24958 length -= f_compatMapSpecLen * 1;
24959 f_symbolsSpecLen = VALUE8(tvb, *offsetp);
24960 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_symbolsSpecLen, tvb, *offsetp, 1, byte_order);
24961 *offsetp += 1;
24962 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_symbolsSpec, f_symbolsSpecLen, byte_order);
24963 length -= f_symbolsSpecLen * 1;
24964 f_geometrySpecLen = VALUE8(tvb, *offsetp);
24965 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_geometrySpecLen, tvb, *offsetp, 1, byte_order);
24966 *offsetp += 1;
24967 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_geometrySpec, f_geometrySpecLen, byte_order);
24968 length -= f_geometrySpecLen * 1;
24970 static void xkbGetKbdByName_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
24972 int f_length, length, sequence_number;
24973 int f_deviceID;
24974 int f_minKeyCode;
24975 int f_maxKeyCode;
24976 int f_loaded;
24977 int f_newKeyboard;
24978 int f_found;
24979 int f_reported;
24981 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetKbdByName");
24983 REPLY(reply);
24984 f_deviceID = VALUE8(tvb, *offsetp);
24985 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_deviceID, tvb, *offsetp, 1, byte_order);
24986 *offsetp += 1;
24987 sequence_number = VALUE16(tvb, *offsetp);
24988 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
24989 "sequencenumber: %d (xkb-GetKbdByName)", sequence_number);
24990 *offsetp += 2;
24991 f_length = VALUE32(tvb, *offsetp);
24992 length = f_length * 4 + 32;
24993 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
24994 *offsetp += 4;
24995 f_minKeyCode = VALUE8(tvb, *offsetp);
24996 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_minKeyCode, tvb, *offsetp, 1, byte_order);
24997 *offsetp += 1;
24998 f_maxKeyCode = VALUE8(tvb, *offsetp);
24999 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_maxKeyCode, tvb, *offsetp, 1, byte_order);
25000 *offsetp += 1;
25001 f_loaded = VALUE8(tvb, *offsetp);
25002 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_loaded, tvb, *offsetp, 1, byte_order);
25003 *offsetp += 1;
25004 f_newKeyboard = VALUE8(tvb, *offsetp);
25005 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_newKeyboard, tvb, *offsetp, 1, byte_order);
25006 *offsetp += 1;
25007 f_found = VALUE16(tvb, *offsetp);
25009 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_found, tvb, *offsetp, 2, byte_order);
25010 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25011 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_Types, tvb, *offsetp, 2, byte_order);
25012 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_CompatMap, tvb, *offsetp, 2, byte_order);
25013 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_ClientSymbols, tvb, *offsetp, 2, byte_order);
25014 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_ServerSymbols, tvb, *offsetp, 2, byte_order);
25015 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
25016 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_KeyNames, tvb, *offsetp, 2, byte_order);
25017 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_Geometry, tvb, *offsetp, 2, byte_order);
25018 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_found_mask_OtherNames, tvb, *offsetp, 2, byte_order);
25020 *offsetp += 2;
25021 f_reported = VALUE16(tvb, *offsetp);
25023 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_reported, tvb, *offsetp, 2, byte_order);
25024 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25025 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_Types, tvb, *offsetp, 2, byte_order);
25026 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_CompatMap, tvb, *offsetp, 2, byte_order);
25027 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_ClientSymbols, tvb, *offsetp, 2, byte_order);
25028 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_ServerSymbols, tvb, *offsetp, 2, byte_order);
25029 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
25030 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_KeyNames, tvb, *offsetp, 2, byte_order);
25031 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_Geometry, tvb, *offsetp, 2, byte_order);
25032 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_reported_mask_OtherNames, tvb, *offsetp, 2, byte_order);
25034 *offsetp += 2;
25035 UNUSED(16);
25036 if ((f_reported & (1 << 0)) != 0) {
25037 int f_getmap_type;
25038 int f_typeDeviceID;
25039 int f_getmap_sequence;
25040 int f_getmap_length;
25041 int f_typeMinKeyCode;
25042 int f_typeMaxKeyCode;
25043 int f_present;
25044 int f_firstType;
25045 int f_nTypes;
25046 int f_totalTypes;
25047 int f_firstKeySym;
25048 int f_totalSyms;
25049 int f_nKeySyms;
25050 int f_firstKeyAction;
25051 int f_totalActions;
25052 int f_nKeyActions;
25053 int f_firstKeyBehavior;
25054 int f_nKeyBehaviors;
25055 int f_totalKeyBehaviors;
25056 int f_firstKeyExplicit;
25057 int f_nKeyExplicit;
25058 int f_totalKeyExplicit;
25059 int f_firstModMapKey;
25060 int f_nModMapKeys;
25061 int f_totalModMapKeys;
25062 int f_firstVModMapKey;
25063 int f_nVModMapKeys;
25064 int f_totalVModMapKeys;
25065 int f_virtualMods;
25066 f_getmap_type = VALUE8(tvb, *offsetp);
25067 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_getmap_type, tvb, *offsetp, 1, byte_order);
25068 *offsetp += 1;
25069 f_typeDeviceID = VALUE8(tvb, *offsetp);
25070 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_typeDeviceID, tvb, *offsetp, 1, byte_order);
25071 *offsetp += 1;
25072 f_getmap_sequence = VALUE16(tvb, *offsetp);
25073 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_getmap_sequence, tvb, *offsetp, 2, byte_order);
25074 *offsetp += 2;
25075 f_getmap_length = VALUE32(tvb, *offsetp);
25076 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_getmap_length, tvb, *offsetp, 4, byte_order);
25077 *offsetp += 4;
25078 UNUSED(2);
25079 f_typeMinKeyCode = VALUE8(tvb, *offsetp);
25080 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_typeMinKeyCode, tvb, *offsetp, 1, byte_order);
25081 *offsetp += 1;
25082 f_typeMaxKeyCode = VALUE8(tvb, *offsetp);
25083 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_typeMaxKeyCode, tvb, *offsetp, 1, byte_order);
25084 *offsetp += 1;
25085 f_present = field16(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_Types_present, byte_order);
25086 f_firstType = VALUE8(tvb, *offsetp);
25087 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstType, tvb, *offsetp, 1, byte_order);
25088 *offsetp += 1;
25089 f_nTypes = VALUE8(tvb, *offsetp);
25090 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nTypes, tvb, *offsetp, 1, byte_order);
25091 *offsetp += 1;
25092 f_totalTypes = VALUE8(tvb, *offsetp);
25093 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalTypes, tvb, *offsetp, 1, byte_order);
25094 *offsetp += 1;
25095 f_firstKeySym = VALUE8(tvb, *offsetp);
25096 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstKeySym, tvb, *offsetp, 1, byte_order);
25097 *offsetp += 1;
25098 f_totalSyms = VALUE16(tvb, *offsetp);
25099 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalSyms, tvb, *offsetp, 2, byte_order);
25100 *offsetp += 2;
25101 f_nKeySyms = VALUE8(tvb, *offsetp);
25102 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nKeySyms, tvb, *offsetp, 1, byte_order);
25103 *offsetp += 1;
25104 f_firstKeyAction = VALUE8(tvb, *offsetp);
25105 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyAction, tvb, *offsetp, 1, byte_order);
25106 *offsetp += 1;
25107 f_totalActions = VALUE16(tvb, *offsetp);
25108 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalActions, tvb, *offsetp, 2, byte_order);
25109 *offsetp += 2;
25110 f_nKeyActions = VALUE8(tvb, *offsetp);
25111 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nKeyActions, tvb, *offsetp, 1, byte_order);
25112 *offsetp += 1;
25113 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
25114 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
25115 *offsetp += 1;
25116 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
25117 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
25118 *offsetp += 1;
25119 f_totalKeyBehaviors = VALUE8(tvb, *offsetp);
25120 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalKeyBehaviors, tvb, *offsetp, 1, byte_order);
25121 *offsetp += 1;
25122 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
25123 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
25124 *offsetp += 1;
25125 f_nKeyExplicit = VALUE8(tvb, *offsetp);
25126 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nKeyExplicit, tvb, *offsetp, 1, byte_order);
25127 *offsetp += 1;
25128 f_totalKeyExplicit = VALUE8(tvb, *offsetp);
25129 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalKeyExplicit, tvb, *offsetp, 1, byte_order);
25130 *offsetp += 1;
25131 f_firstModMapKey = VALUE8(tvb, *offsetp);
25132 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstModMapKey, tvb, *offsetp, 1, byte_order);
25133 *offsetp += 1;
25134 f_nModMapKeys = VALUE8(tvb, *offsetp);
25135 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nModMapKeys, tvb, *offsetp, 1, byte_order);
25136 *offsetp += 1;
25137 f_totalModMapKeys = VALUE8(tvb, *offsetp);
25138 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalModMapKeys, tvb, *offsetp, 1, byte_order);
25139 *offsetp += 1;
25140 f_firstVModMapKey = VALUE8(tvb, *offsetp);
25141 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_firstVModMapKey, tvb, *offsetp, 1, byte_order);
25142 *offsetp += 1;
25143 f_nVModMapKeys = VALUE8(tvb, *offsetp);
25144 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_nVModMapKeys, tvb, *offsetp, 1, byte_order);
25145 *offsetp += 1;
25146 f_totalVModMapKeys = VALUE8(tvb, *offsetp);
25147 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_totalVModMapKeys, tvb, *offsetp, 1, byte_order);
25148 *offsetp += 1;
25149 UNUSED(1);
25150 f_virtualMods = VALUE16(tvb, *offsetp);
25152 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods, tvb, *offsetp, 2, byte_order);
25153 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25154 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
25155 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
25156 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
25157 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
25158 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
25159 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
25160 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
25161 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
25162 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
25163 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
25164 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
25165 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
25166 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
25167 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
25168 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
25169 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_Types_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
25171 *offsetp += 2;
25172 if ((f_present & (1 << 0)) != 0) {
25173 struct_KeyType(tvb, offsetp, t, byte_order, f_nTypes);
25175 if ((f_present & (1 << 1)) != 0) {
25176 struct_KeySymMap(tvb, offsetp, t, byte_order, f_nKeySyms);
25178 if ((f_present & (1 << 4)) != 0) {
25179 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_Types_KeyActions_acts_rtrn_count, f_nKeyActions, byte_order);
25180 struct_Action(tvb, offsetp, t, byte_order, f_totalActions);
25182 if ((f_present & (1 << 5)) != 0) {
25183 struct_SetBehavior(tvb, offsetp, t, byte_order, f_totalKeyBehaviors);
25185 if ((f_present & (1 << 6)) != 0) {
25186 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_Types_VirtualMods_vmods_rtrn, f_nVModMapKeys, byte_order);
25188 if ((f_present & (1 << 3)) != 0) {
25189 struct_SetExplicit(tvb, offsetp, t, byte_order, f_totalKeyExplicit);
25191 if ((f_present & (1 << 2)) != 0) {
25192 struct_KeyModMap(tvb, offsetp, t, byte_order, f_totalModMapKeys);
25194 if ((f_present & (1 << 7)) != 0) {
25195 struct_KeyVModMap(tvb, offsetp, t, byte_order, f_totalVModMapKeys);
25198 if ((f_reported & (1 << 1)) != 0) {
25199 int f_compatDeviceID;
25200 int f_groupsRtrn;
25201 int f_firstSIRtrn;
25202 int f_nSIRtrn;
25203 int f_nTotalSI;
25204 f_compatDeviceID = VALUE8(tvb, *offsetp);
25205 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_CompatMap_compatDeviceID, tvb, *offsetp, 1, byte_order);
25206 *offsetp += 1;
25207 f_groupsRtrn = VALUE8(tvb, *offsetp);
25209 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn, tvb, *offsetp, 1, byte_order);
25210 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25211 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group1, tvb, *offsetp, 1, byte_order);
25212 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group2, tvb, *offsetp, 1, byte_order);
25213 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group3, tvb, *offsetp, 1, byte_order);
25214 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_CompatMap_groupsRtrn_mask_Group4, tvb, *offsetp, 1, byte_order);
25216 *offsetp += 1;
25217 UNUSED(1);
25218 f_firstSIRtrn = VALUE16(tvb, *offsetp);
25219 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_CompatMap_firstSIRtrn, tvb, *offsetp, 2, byte_order);
25220 *offsetp += 2;
25221 f_nSIRtrn = VALUE16(tvb, *offsetp);
25222 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_CompatMap_nSIRtrn, tvb, *offsetp, 2, byte_order);
25223 *offsetp += 2;
25224 f_nTotalSI = VALUE16(tvb, *offsetp);
25225 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_CompatMap_nTotalSI, tvb, *offsetp, 2, byte_order);
25226 *offsetp += 2;
25227 UNUSED(16);
25228 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_CompatMap_si_rtrn, (16 * f_nSIRtrn), byte_order);
25229 struct_ModDef(tvb, offsetp, t, byte_order, popcount(f_groupsRtrn));
25231 if ((f_reported & (1 << 2)) != 0) {
25232 int f_clientDeviceID;
25233 int f_clientMinKeyCode;
25234 int f_clientMaxKeyCode;
25235 int f_present;
25236 int f_firstType;
25237 int f_nTypes;
25238 int f_totalTypes;
25239 int f_firstKeySym;
25240 int f_totalSyms;
25241 int f_nKeySyms;
25242 int f_firstKeyAction;
25243 int f_totalActions;
25244 int f_nKeyActions;
25245 int f_firstKeyBehavior;
25246 int f_nKeyBehaviors;
25247 int f_totalKeyBehaviors;
25248 int f_firstKeyExplicit;
25249 int f_nKeyExplicit;
25250 int f_totalKeyExplicit;
25251 int f_firstModMapKey;
25252 int f_nModMapKeys;
25253 int f_totalModMapKeys;
25254 int f_firstVModMapKey;
25255 int f_nVModMapKeys;
25256 int f_totalVModMapKeys;
25257 int f_virtualMods;
25258 f_clientDeviceID = VALUE8(tvb, *offsetp);
25259 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_clientDeviceID, tvb, *offsetp, 1, byte_order);
25260 *offsetp += 1;
25261 UNUSED(2);
25262 f_clientMinKeyCode = VALUE8(tvb, *offsetp);
25263 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_clientMinKeyCode, tvb, *offsetp, 1, byte_order);
25264 *offsetp += 1;
25265 f_clientMaxKeyCode = VALUE8(tvb, *offsetp);
25266 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_clientMaxKeyCode, tvb, *offsetp, 1, byte_order);
25267 *offsetp += 1;
25268 f_present = field16(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_present, byte_order);
25269 f_firstType = VALUE8(tvb, *offsetp);
25270 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstType, tvb, *offsetp, 1, byte_order);
25271 *offsetp += 1;
25272 f_nTypes = VALUE8(tvb, *offsetp);
25273 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nTypes, tvb, *offsetp, 1, byte_order);
25274 *offsetp += 1;
25275 f_totalTypes = VALUE8(tvb, *offsetp);
25276 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalTypes, tvb, *offsetp, 1, byte_order);
25277 *offsetp += 1;
25278 f_firstKeySym = VALUE8(tvb, *offsetp);
25279 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstKeySym, tvb, *offsetp, 1, byte_order);
25280 *offsetp += 1;
25281 f_totalSyms = VALUE16(tvb, *offsetp);
25282 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalSyms, tvb, *offsetp, 2, byte_order);
25283 *offsetp += 2;
25284 f_nKeySyms = VALUE8(tvb, *offsetp);
25285 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nKeySyms, tvb, *offsetp, 1, byte_order);
25286 *offsetp += 1;
25287 f_firstKeyAction = VALUE8(tvb, *offsetp);
25288 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstKeyAction, tvb, *offsetp, 1, byte_order);
25289 *offsetp += 1;
25290 f_totalActions = VALUE16(tvb, *offsetp);
25291 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalActions, tvb, *offsetp, 2, byte_order);
25292 *offsetp += 2;
25293 f_nKeyActions = VALUE8(tvb, *offsetp);
25294 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nKeyActions, tvb, *offsetp, 1, byte_order);
25295 *offsetp += 1;
25296 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
25297 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
25298 *offsetp += 1;
25299 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
25300 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
25301 *offsetp += 1;
25302 f_totalKeyBehaviors = VALUE8(tvb, *offsetp);
25303 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalKeyBehaviors, tvb, *offsetp, 1, byte_order);
25304 *offsetp += 1;
25305 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
25306 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
25307 *offsetp += 1;
25308 f_nKeyExplicit = VALUE8(tvb, *offsetp);
25309 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nKeyExplicit, tvb, *offsetp, 1, byte_order);
25310 *offsetp += 1;
25311 f_totalKeyExplicit = VALUE8(tvb, *offsetp);
25312 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalKeyExplicit, tvb, *offsetp, 1, byte_order);
25313 *offsetp += 1;
25314 f_firstModMapKey = VALUE8(tvb, *offsetp);
25315 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstModMapKey, tvb, *offsetp, 1, byte_order);
25316 *offsetp += 1;
25317 f_nModMapKeys = VALUE8(tvb, *offsetp);
25318 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nModMapKeys, tvb, *offsetp, 1, byte_order);
25319 *offsetp += 1;
25320 f_totalModMapKeys = VALUE8(tvb, *offsetp);
25321 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalModMapKeys, tvb, *offsetp, 1, byte_order);
25322 *offsetp += 1;
25323 f_firstVModMapKey = VALUE8(tvb, *offsetp);
25324 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_firstVModMapKey, tvb, *offsetp, 1, byte_order);
25325 *offsetp += 1;
25326 f_nVModMapKeys = VALUE8(tvb, *offsetp);
25327 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_nVModMapKeys, tvb, *offsetp, 1, byte_order);
25328 *offsetp += 1;
25329 f_totalVModMapKeys = VALUE8(tvb, *offsetp);
25330 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_totalVModMapKeys, tvb, *offsetp, 1, byte_order);
25331 *offsetp += 1;
25332 UNUSED(1);
25333 f_virtualMods = VALUE16(tvb, *offsetp);
25335 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods, tvb, *offsetp, 2, byte_order);
25336 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25337 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
25338 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
25339 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
25340 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
25341 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
25342 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
25343 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
25344 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
25345 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
25346 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
25347 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
25348 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
25349 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
25350 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
25351 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
25352 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
25354 *offsetp += 2;
25355 if ((f_present & (1 << 0)) != 0) {
25356 struct_KeyType(tvb, offsetp, t, byte_order, f_nTypes);
25358 if ((f_present & (1 << 1)) != 0) {
25359 struct_KeySymMap(tvb, offsetp, t, byte_order, f_nKeySyms);
25361 if ((f_present & (1 << 4)) != 0) {
25362 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_KeyActions_acts_rtrn_count, f_nKeyActions, byte_order);
25363 struct_Action(tvb, offsetp, t, byte_order, f_totalActions);
25365 if ((f_present & (1 << 5)) != 0) {
25366 struct_SetBehavior(tvb, offsetp, t, byte_order, f_totalKeyBehaviors);
25368 if ((f_present & (1 << 6)) != 0) {
25369 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ClientSymbols_VirtualMods_vmods_rtrn, f_nVModMapKeys, byte_order);
25371 if ((f_present & (1 << 3)) != 0) {
25372 struct_SetExplicit(tvb, offsetp, t, byte_order, f_totalKeyExplicit);
25374 if ((f_present & (1 << 2)) != 0) {
25375 struct_KeyModMap(tvb, offsetp, t, byte_order, f_totalModMapKeys);
25377 if ((f_present & (1 << 7)) != 0) {
25378 struct_KeyVModMap(tvb, offsetp, t, byte_order, f_totalVModMapKeys);
25381 if ((f_reported & (1 << 3)) != 0) {
25382 int f_serverDeviceID;
25383 int f_serverMinKeyCode;
25384 int f_serverMaxKeyCode;
25385 int f_present;
25386 int f_firstType;
25387 int f_nTypes;
25388 int f_totalTypes;
25389 int f_firstKeySym;
25390 int f_totalSyms;
25391 int f_nKeySyms;
25392 int f_firstKeyAction;
25393 int f_totalActions;
25394 int f_nKeyActions;
25395 int f_firstKeyBehavior;
25396 int f_nKeyBehaviors;
25397 int f_totalKeyBehaviors;
25398 int f_firstKeyExplicit;
25399 int f_nKeyExplicit;
25400 int f_totalKeyExplicit;
25401 int f_firstModMapKey;
25402 int f_nModMapKeys;
25403 int f_totalModMapKeys;
25404 int f_firstVModMapKey;
25405 int f_nVModMapKeys;
25406 int f_totalVModMapKeys;
25407 int f_virtualMods;
25408 f_serverDeviceID = VALUE8(tvb, *offsetp);
25409 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_serverDeviceID, tvb, *offsetp, 1, byte_order);
25410 *offsetp += 1;
25411 UNUSED(2);
25412 f_serverMinKeyCode = VALUE8(tvb, *offsetp);
25413 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_serverMinKeyCode, tvb, *offsetp, 1, byte_order);
25414 *offsetp += 1;
25415 f_serverMaxKeyCode = VALUE8(tvb, *offsetp);
25416 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_serverMaxKeyCode, tvb, *offsetp, 1, byte_order);
25417 *offsetp += 1;
25418 f_present = field16(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_present, byte_order);
25419 f_firstType = VALUE8(tvb, *offsetp);
25420 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstType, tvb, *offsetp, 1, byte_order);
25421 *offsetp += 1;
25422 f_nTypes = VALUE8(tvb, *offsetp);
25423 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nTypes, tvb, *offsetp, 1, byte_order);
25424 *offsetp += 1;
25425 f_totalTypes = VALUE8(tvb, *offsetp);
25426 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalTypes, tvb, *offsetp, 1, byte_order);
25427 *offsetp += 1;
25428 f_firstKeySym = VALUE8(tvb, *offsetp);
25429 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstKeySym, tvb, *offsetp, 1, byte_order);
25430 *offsetp += 1;
25431 f_totalSyms = VALUE16(tvb, *offsetp);
25432 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalSyms, tvb, *offsetp, 2, byte_order);
25433 *offsetp += 2;
25434 f_nKeySyms = VALUE8(tvb, *offsetp);
25435 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nKeySyms, tvb, *offsetp, 1, byte_order);
25436 *offsetp += 1;
25437 f_firstKeyAction = VALUE8(tvb, *offsetp);
25438 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstKeyAction, tvb, *offsetp, 1, byte_order);
25439 *offsetp += 1;
25440 f_totalActions = VALUE16(tvb, *offsetp);
25441 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalActions, tvb, *offsetp, 2, byte_order);
25442 *offsetp += 2;
25443 f_nKeyActions = VALUE8(tvb, *offsetp);
25444 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nKeyActions, tvb, *offsetp, 1, byte_order);
25445 *offsetp += 1;
25446 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
25447 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
25448 *offsetp += 1;
25449 f_nKeyBehaviors = VALUE8(tvb, *offsetp);
25450 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nKeyBehaviors, tvb, *offsetp, 1, byte_order);
25451 *offsetp += 1;
25452 f_totalKeyBehaviors = VALUE8(tvb, *offsetp);
25453 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalKeyBehaviors, tvb, *offsetp, 1, byte_order);
25454 *offsetp += 1;
25455 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
25456 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
25457 *offsetp += 1;
25458 f_nKeyExplicit = VALUE8(tvb, *offsetp);
25459 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nKeyExplicit, tvb, *offsetp, 1, byte_order);
25460 *offsetp += 1;
25461 f_totalKeyExplicit = VALUE8(tvb, *offsetp);
25462 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalKeyExplicit, tvb, *offsetp, 1, byte_order);
25463 *offsetp += 1;
25464 f_firstModMapKey = VALUE8(tvb, *offsetp);
25465 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstModMapKey, tvb, *offsetp, 1, byte_order);
25466 *offsetp += 1;
25467 f_nModMapKeys = VALUE8(tvb, *offsetp);
25468 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nModMapKeys, tvb, *offsetp, 1, byte_order);
25469 *offsetp += 1;
25470 f_totalModMapKeys = VALUE8(tvb, *offsetp);
25471 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalModMapKeys, tvb, *offsetp, 1, byte_order);
25472 *offsetp += 1;
25473 f_firstVModMapKey = VALUE8(tvb, *offsetp);
25474 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_firstVModMapKey, tvb, *offsetp, 1, byte_order);
25475 *offsetp += 1;
25476 f_nVModMapKeys = VALUE8(tvb, *offsetp);
25477 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_nVModMapKeys, tvb, *offsetp, 1, byte_order);
25478 *offsetp += 1;
25479 f_totalVModMapKeys = VALUE8(tvb, *offsetp);
25480 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_totalVModMapKeys, tvb, *offsetp, 1, byte_order);
25481 *offsetp += 1;
25482 UNUSED(1);
25483 f_virtualMods = VALUE16(tvb, *offsetp);
25485 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods, tvb, *offsetp, 2, byte_order);
25486 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25487 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
25488 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
25489 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
25490 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
25491 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
25492 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
25493 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
25494 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
25495 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
25496 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
25497 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
25498 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
25499 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
25500 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
25501 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
25502 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
25504 *offsetp += 2;
25505 if ((f_present & (1 << 0)) != 0) {
25506 struct_KeyType(tvb, offsetp, t, byte_order, f_nTypes);
25508 if ((f_present & (1 << 1)) != 0) {
25509 struct_KeySymMap(tvb, offsetp, t, byte_order, f_nKeySyms);
25511 if ((f_present & (1 << 4)) != 0) {
25512 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_KeyActions_acts_rtrn_count, f_nKeyActions, byte_order);
25513 struct_Action(tvb, offsetp, t, byte_order, f_totalActions);
25515 if ((f_present & (1 << 5)) != 0) {
25516 struct_SetBehavior(tvb, offsetp, t, byte_order, f_totalKeyBehaviors);
25518 if ((f_present & (1 << 6)) != 0) {
25519 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_ServerSymbols_VirtualMods_vmods_rtrn, f_nVModMapKeys, byte_order);
25521 if ((f_present & (1 << 3)) != 0) {
25522 struct_SetExplicit(tvb, offsetp, t, byte_order, f_totalKeyExplicit);
25524 if ((f_present & (1 << 2)) != 0) {
25525 struct_KeyModMap(tvb, offsetp, t, byte_order, f_totalModMapKeys);
25527 if ((f_present & (1 << 7)) != 0) {
25528 struct_KeyVModMap(tvb, offsetp, t, byte_order, f_totalVModMapKeys);
25531 if ((f_reported & (1 << 4)) != 0) {
25532 int f_indicatorDeviceID;
25533 int f_which;
25534 int f_realIndicators;
25535 int f_nIndicators;
25536 f_indicatorDeviceID = VALUE8(tvb, *offsetp);
25537 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_indicatorDeviceID, tvb, *offsetp, 1, byte_order);
25538 *offsetp += 1;
25539 f_which = VALUE32(tvb, *offsetp);
25540 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_which, tvb, *offsetp, 4, byte_order);
25541 *offsetp += 4;
25542 f_realIndicators = VALUE32(tvb, *offsetp);
25543 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_realIndicators, tvb, *offsetp, 4, byte_order);
25544 *offsetp += 4;
25545 f_nIndicators = VALUE8(tvb, *offsetp);
25546 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_IndicatorMaps_nIndicators, tvb, *offsetp, 1, byte_order);
25547 *offsetp += 1;
25548 UNUSED(15);
25549 struct_IndicatorMap(tvb, offsetp, t, byte_order, f_nIndicators);
25551 if ((f_reported & (1 << 5)) != 0) {
25552 int f_keyDeviceID;
25553 int f_which;
25554 int f_keyMinKeyCode;
25555 int f_keyMaxKeyCode;
25556 int f_nTypes;
25557 int f_groupNames;
25558 int f_virtualMods;
25559 int f_firstKey;
25560 int f_nKeys;
25561 int f_indicators;
25562 int f_nRadioGroups;
25563 int f_nKeyAliases;
25564 int f_nKTLevels;
25565 f_keyDeviceID = VALUE8(tvb, *offsetp);
25566 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyDeviceID, tvb, *offsetp, 1, byte_order);
25567 *offsetp += 1;
25568 f_which = VALUE32(tvb, *offsetp);
25570 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_which, tvb, *offsetp, 4, byte_order);
25571 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25572 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Keycodes, tvb, *offsetp, 4, byte_order);
25573 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Geometry, tvb, *offsetp, 4, byte_order);
25574 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Symbols, tvb, *offsetp, 4, byte_order);
25575 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_PhysSymbols, tvb, *offsetp, 4, byte_order);
25576 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Types, tvb, *offsetp, 4, byte_order);
25577 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_Compat, tvb, *offsetp, 4, byte_order);
25578 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyTypeNames, tvb, *offsetp, 4, byte_order);
25579 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KTLevelNames, tvb, *offsetp, 4, byte_order);
25580 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_IndicatorNames, tvb, *offsetp, 4, byte_order);
25581 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyNames, tvb, *offsetp, 4, byte_order);
25582 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_KeyAliases, tvb, *offsetp, 4, byte_order);
25583 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_VirtualModNames, tvb, *offsetp, 4, byte_order);
25584 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_GroupNames, tvb, *offsetp, 4, byte_order);
25585 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_which_mask_RGNames, tvb, *offsetp, 4, byte_order);
25587 *offsetp += 4;
25588 f_keyMinKeyCode = VALUE8(tvb, *offsetp);
25589 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyMinKeyCode, tvb, *offsetp, 1, byte_order);
25590 *offsetp += 1;
25591 f_keyMaxKeyCode = VALUE8(tvb, *offsetp);
25592 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_keyMaxKeyCode, tvb, *offsetp, 1, byte_order);
25593 *offsetp += 1;
25594 f_nTypes = VALUE8(tvb, *offsetp);
25595 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_nTypes, tvb, *offsetp, 1, byte_order);
25596 *offsetp += 1;
25597 f_groupNames = VALUE8(tvb, *offsetp);
25599 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames, tvb, *offsetp, 1, byte_order);
25600 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25601 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group1, tvb, *offsetp, 1, byte_order);
25602 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group2, tvb, *offsetp, 1, byte_order);
25603 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group3, tvb, *offsetp, 1, byte_order);
25604 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_groupNames_mask_Group4, tvb, *offsetp, 1, byte_order);
25606 *offsetp += 1;
25607 f_virtualMods = VALUE16(tvb, *offsetp);
25609 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods, tvb, *offsetp, 2, byte_order);
25610 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25611 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
25612 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
25613 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
25614 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
25615 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
25616 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
25617 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
25618 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
25619 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
25620 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
25621 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
25622 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
25623 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
25624 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
25625 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
25626 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_KeyNames_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
25628 *offsetp += 2;
25629 f_firstKey = VALUE8(tvb, *offsetp);
25630 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_firstKey, tvb, *offsetp, 1, byte_order);
25631 *offsetp += 1;
25632 f_nKeys = VALUE8(tvb, *offsetp);
25633 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKeys, tvb, *offsetp, 1, byte_order);
25634 *offsetp += 1;
25635 f_indicators = VALUE32(tvb, *offsetp);
25636 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_indicators, tvb, *offsetp, 4, byte_order);
25637 *offsetp += 4;
25638 f_nRadioGroups = VALUE8(tvb, *offsetp);
25639 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_nRadioGroups, tvb, *offsetp, 1, byte_order);
25640 *offsetp += 1;
25641 f_nKeyAliases = VALUE8(tvb, *offsetp);
25642 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKeyAliases, tvb, *offsetp, 1, byte_order);
25643 *offsetp += 1;
25644 f_nKTLevels = VALUE16(tvb, *offsetp);
25645 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_nKTLevels, tvb, *offsetp, 2, byte_order);
25646 *offsetp += 2;
25647 UNUSED(4);
25648 if ((f_which & (1 << 0)) != 0) {
25649 int f_keycodesName;
25650 f_keycodesName = VALUE32(tvb, *offsetp);
25651 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_Keycodes_keycodesName, tvb, *offsetp, 4, byte_order);
25652 *offsetp += 4;
25654 if ((f_which & (1 << 1)) != 0) {
25655 int f_geometryName;
25656 f_geometryName = VALUE32(tvb, *offsetp);
25657 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_Geometry_geometryName, tvb, *offsetp, 4, byte_order);
25658 *offsetp += 4;
25660 if ((f_which & (1 << 2)) != 0) {
25661 int f_symbolsName;
25662 f_symbolsName = VALUE32(tvb, *offsetp);
25663 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_Symbols_symbolsName, tvb, *offsetp, 4, byte_order);
25664 *offsetp += 4;
25666 if ((f_which & (1 << 3)) != 0) {
25667 int f_physSymbolsName;
25668 f_physSymbolsName = VALUE32(tvb, *offsetp);
25669 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_PhysSymbols_physSymbolsName, tvb, *offsetp, 4, byte_order);
25670 *offsetp += 4;
25672 if ((f_which & (1 << 4)) != 0) {
25673 int f_typesName;
25674 f_typesName = VALUE32(tvb, *offsetp);
25675 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_Types_typesName, tvb, *offsetp, 4, byte_order);
25676 *offsetp += 4;
25678 if ((f_which & (1 << 5)) != 0) {
25679 int f_compatName;
25680 f_compatName = VALUE32(tvb, *offsetp);
25681 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_KeyNames_Compat_compatName, tvb, *offsetp, 4, byte_order);
25682 *offsetp += 4;
25684 if ((f_which & (1 << 6)) != 0) {
25685 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);
25687 if ((f_which & (1 << 7)) != 0) {
25688 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_nLevelsPerType, f_nKTLevels, byte_order);
25689 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_ktLevelNames, hf_x11_xkb_GetKbdByName_reply_KeyNames_KTLevelNames_ktLevelNames_item, (length - 237) / 4, byte_order);
25691 if ((f_which & (1 << 8)) != 0) {
25692 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_KeyNames_IndicatorNames_indicatorNames, hf_x11_xkb_GetKbdByName_reply_KeyNames_IndicatorNames_indicatorNames_item, popcount(f_indicators), byte_order);
25694 if ((f_which & (1 << 11)) != 0) {
25695 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_KeyNames_VirtualModNames_virtualModNames, hf_x11_xkb_GetKbdByName_reply_KeyNames_VirtualModNames_virtualModNames_item, popcount(f_virtualMods), byte_order);
25697 if ((f_which & (1 << 12)) != 0) {
25698 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_KeyNames_GroupNames_groups, hf_x11_xkb_GetKbdByName_reply_KeyNames_GroupNames_groups_item, popcount(f_groupNames), byte_order);
25700 if ((f_which & (1 << 9)) != 0) {
25701 struct_KeyName(tvb, offsetp, t, byte_order, f_nKeys);
25703 if ((f_which & (1 << 10)) != 0) {
25704 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
25706 if ((f_which & (1 << 13)) != 0) {
25707 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);
25710 if ((f_reported & (1 << 7)) != 0) {
25711 int f_otherDeviceID;
25712 int f_which;
25713 int f_otherMinKeyCode;
25714 int f_otherMaxKeyCode;
25715 int f_nTypes;
25716 int f_groupNames;
25717 int f_virtualMods;
25718 int f_firstKey;
25719 int f_nKeys;
25720 int f_indicators;
25721 int f_nRadioGroups;
25722 int f_nKeyAliases;
25723 int f_nKTLevels;
25724 f_otherDeviceID = VALUE8(tvb, *offsetp);
25725 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_otherDeviceID, tvb, *offsetp, 1, byte_order);
25726 *offsetp += 1;
25727 f_which = VALUE32(tvb, *offsetp);
25729 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_which, tvb, *offsetp, 4, byte_order);
25730 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25731 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_Keycodes, tvb, *offsetp, 4, byte_order);
25732 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_Geometry, tvb, *offsetp, 4, byte_order);
25733 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_Symbols, tvb, *offsetp, 4, byte_order);
25734 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_PhysSymbols, tvb, *offsetp, 4, byte_order);
25735 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_Types, tvb, *offsetp, 4, byte_order);
25736 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_Compat, tvb, *offsetp, 4, byte_order);
25737 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_KeyTypeNames, tvb, *offsetp, 4, byte_order);
25738 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_KTLevelNames, tvb, *offsetp, 4, byte_order);
25739 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_IndicatorNames, tvb, *offsetp, 4, byte_order);
25740 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_KeyNames, tvb, *offsetp, 4, byte_order);
25741 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_KeyAliases, tvb, *offsetp, 4, byte_order);
25742 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_VirtualModNames, tvb, *offsetp, 4, byte_order);
25743 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_GroupNames, tvb, *offsetp, 4, byte_order);
25744 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_which_mask_RGNames, tvb, *offsetp, 4, byte_order);
25746 *offsetp += 4;
25747 f_otherMinKeyCode = VALUE8(tvb, *offsetp);
25748 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_otherMinKeyCode, tvb, *offsetp, 1, byte_order);
25749 *offsetp += 1;
25750 f_otherMaxKeyCode = VALUE8(tvb, *offsetp);
25751 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_otherMaxKeyCode, tvb, *offsetp, 1, byte_order);
25752 *offsetp += 1;
25753 f_nTypes = VALUE8(tvb, *offsetp);
25754 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_nTypes, tvb, *offsetp, 1, byte_order);
25755 *offsetp += 1;
25756 f_groupNames = VALUE8(tvb, *offsetp);
25758 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_groupNames, tvb, *offsetp, 1, byte_order);
25759 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25760 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_groupNames_mask_Group1, tvb, *offsetp, 1, byte_order);
25761 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_groupNames_mask_Group2, tvb, *offsetp, 1, byte_order);
25762 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_groupNames_mask_Group3, tvb, *offsetp, 1, byte_order);
25763 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_groupNames_mask_Group4, tvb, *offsetp, 1, byte_order);
25765 *offsetp += 1;
25766 f_virtualMods = VALUE16(tvb, *offsetp);
25768 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods, tvb, *offsetp, 2, byte_order);
25769 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25770 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
25771 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
25772 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
25773 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
25774 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
25775 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
25776 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
25777 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
25778 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
25779 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
25780 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
25781 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
25782 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
25783 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
25784 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
25785 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetKbdByName_reply_OtherNames_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
25787 *offsetp += 2;
25788 f_firstKey = VALUE8(tvb, *offsetp);
25789 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_firstKey, tvb, *offsetp, 1, byte_order);
25790 *offsetp += 1;
25791 f_nKeys = VALUE8(tvb, *offsetp);
25792 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_nKeys, tvb, *offsetp, 1, byte_order);
25793 *offsetp += 1;
25794 f_indicators = VALUE32(tvb, *offsetp);
25795 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_indicators, tvb, *offsetp, 4, byte_order);
25796 *offsetp += 4;
25797 f_nRadioGroups = VALUE8(tvb, *offsetp);
25798 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_nRadioGroups, tvb, *offsetp, 1, byte_order);
25799 *offsetp += 1;
25800 f_nKeyAliases = VALUE8(tvb, *offsetp);
25801 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_nKeyAliases, tvb, *offsetp, 1, byte_order);
25802 *offsetp += 1;
25803 f_nKTLevels = VALUE16(tvb, *offsetp);
25804 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_nKTLevels, tvb, *offsetp, 2, byte_order);
25805 *offsetp += 2;
25806 UNUSED(4);
25807 if ((f_which & (1 << 0)) != 0) {
25808 int f_keycodesName;
25809 f_keycodesName = VALUE32(tvb, *offsetp);
25810 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_Keycodes_keycodesName, tvb, *offsetp, 4, byte_order);
25811 *offsetp += 4;
25813 if ((f_which & (1 << 1)) != 0) {
25814 int f_geometryName;
25815 f_geometryName = VALUE32(tvb, *offsetp);
25816 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_Geometry_geometryName, tvb, *offsetp, 4, byte_order);
25817 *offsetp += 4;
25819 if ((f_which & (1 << 2)) != 0) {
25820 int f_symbolsName;
25821 f_symbolsName = VALUE32(tvb, *offsetp);
25822 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_Symbols_symbolsName, tvb, *offsetp, 4, byte_order);
25823 *offsetp += 4;
25825 if ((f_which & (1 << 3)) != 0) {
25826 int f_physSymbolsName;
25827 f_physSymbolsName = VALUE32(tvb, *offsetp);
25828 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_PhysSymbols_physSymbolsName, tvb, *offsetp, 4, byte_order);
25829 *offsetp += 4;
25831 if ((f_which & (1 << 4)) != 0) {
25832 int f_typesName;
25833 f_typesName = VALUE32(tvb, *offsetp);
25834 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_Types_typesName, tvb, *offsetp, 4, byte_order);
25835 *offsetp += 4;
25837 if ((f_which & (1 << 5)) != 0) {
25838 int f_compatName;
25839 f_compatName = VALUE32(tvb, *offsetp);
25840 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_OtherNames_Compat_compatName, tvb, *offsetp, 4, byte_order);
25841 *offsetp += 4;
25843 if ((f_which & (1 << 6)) != 0) {
25844 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_KeyTypeNames_typeNames, hf_x11_xkb_GetKbdByName_reply_OtherNames_KeyTypeNames_typeNames_item, f_nTypes, byte_order);
25846 if ((f_which & (1 << 7)) != 0) {
25847 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_KTLevelNames_nLevelsPerType, f_nKTLevels, byte_order);
25848 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_KTLevelNames_ktLevelNames, hf_x11_xkb_GetKbdByName_reply_OtherNames_KTLevelNames_ktLevelNames_item, (length - 286) / 4, byte_order);
25850 if ((f_which & (1 << 8)) != 0) {
25851 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_IndicatorNames_indicatorNames, hf_x11_xkb_GetKbdByName_reply_OtherNames_IndicatorNames_indicatorNames_item, popcount(f_indicators), byte_order);
25853 if ((f_which & (1 << 11)) != 0) {
25854 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_VirtualModNames_virtualModNames, hf_x11_xkb_GetKbdByName_reply_OtherNames_VirtualModNames_virtualModNames_item, popcount(f_virtualMods), byte_order);
25856 if ((f_which & (1 << 12)) != 0) {
25857 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_GroupNames_groups, hf_x11_xkb_GetKbdByName_reply_OtherNames_GroupNames_groups_item, popcount(f_groupNames), byte_order);
25859 if ((f_which & (1 << 9)) != 0) {
25860 struct_KeyName(tvb, offsetp, t, byte_order, f_nKeys);
25862 if ((f_which & (1 << 10)) != 0) {
25863 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
25865 if ((f_which & (1 << 13)) != 0) {
25866 listOfCard32(tvb, offsetp, t, hf_x11_xkb_GetKbdByName_reply_OtherNames_RGNames_radioGroupNames, hf_x11_xkb_GetKbdByName_reply_OtherNames_RGNames_radioGroupNames_item, f_nRadioGroups, byte_order);
25869 if ((f_reported & (1 << 6)) != 0) {
25870 int f_geometryDeviceID;
25871 int f_name;
25872 int f_geometryFound;
25873 int f_widthMM;
25874 int f_heightMM;
25875 int f_nProperties;
25876 int f_nColors;
25877 int f_nShapes;
25878 int f_nSections;
25879 int f_nDoodads;
25880 int f_nKeyAliases;
25881 int f_baseColorNdx;
25882 int f_labelColorNdx;
25883 f_geometryDeviceID = VALUE8(tvb, *offsetp);
25884 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_geometryDeviceID, tvb, *offsetp, 1, byte_order);
25885 *offsetp += 1;
25886 f_name = VALUE32(tvb, *offsetp);
25887 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_name, tvb, *offsetp, 4, byte_order);
25888 *offsetp += 4;
25889 f_geometryFound = VALUE8(tvb, *offsetp);
25890 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_geometryFound, tvb, *offsetp, 1, byte_order);
25891 *offsetp += 1;
25892 UNUSED(1);
25893 f_widthMM = VALUE16(tvb, *offsetp);
25894 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_widthMM, tvb, *offsetp, 2, byte_order);
25895 *offsetp += 2;
25896 f_heightMM = VALUE16(tvb, *offsetp);
25897 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_heightMM, tvb, *offsetp, 2, byte_order);
25898 *offsetp += 2;
25899 f_nProperties = VALUE16(tvb, *offsetp);
25900 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nProperties, tvb, *offsetp, 2, byte_order);
25901 *offsetp += 2;
25902 f_nColors = VALUE16(tvb, *offsetp);
25903 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nColors, tvb, *offsetp, 2, byte_order);
25904 *offsetp += 2;
25905 f_nShapes = VALUE16(tvb, *offsetp);
25906 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nShapes, tvb, *offsetp, 2, byte_order);
25907 *offsetp += 2;
25908 f_nSections = VALUE16(tvb, *offsetp);
25909 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nSections, tvb, *offsetp, 2, byte_order);
25910 *offsetp += 2;
25911 f_nDoodads = VALUE16(tvb, *offsetp);
25912 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nDoodads, tvb, *offsetp, 2, byte_order);
25913 *offsetp += 2;
25914 f_nKeyAliases = VALUE16(tvb, *offsetp);
25915 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_nKeyAliases, tvb, *offsetp, 2, byte_order);
25916 *offsetp += 2;
25917 f_baseColorNdx = VALUE8(tvb, *offsetp);
25918 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_baseColorNdx, tvb, *offsetp, 1, byte_order);
25919 *offsetp += 1;
25920 f_labelColorNdx = VALUE8(tvb, *offsetp);
25921 proto_tree_add_item(t, hf_x11_xkb_GetKbdByName_reply_Geometry_labelColorNdx, tvb, *offsetp, 1, byte_order);
25922 *offsetp += 1;
25923 struct_CountedString16(tvb, offsetp, t, byte_order, 1);
25924 struct_Property(tvb, offsetp, t, byte_order, f_nProperties);
25925 struct_CountedString16(tvb, offsetp, t, byte_order, f_nColors);
25926 struct_Shape(tvb, offsetp, t, byte_order, f_nShapes);
25927 struct_Section(tvb, offsetp, t, byte_order, f_nSections);
25928 struct_Doodad(tvb, offsetp, t, byte_order, f_nDoodads);
25929 struct_KeyAlias(tvb, offsetp, t, byte_order, f_nKeyAliases);
25933 static void xkbGetDeviceInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
25935 int f_deviceSpec;
25936 int f_wanted;
25937 int f_allButtons;
25938 int f_firstButton;
25939 int f_nButtons;
25940 int f_ledClass;
25941 int f_ledID;
25942 f_deviceSpec = VALUE16(tvb, *offsetp);
25943 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_deviceSpec, tvb, *offsetp, 2, byte_order);
25944 *offsetp += 2;
25945 f_wanted = VALUE16(tvb, *offsetp);
25947 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_wanted, tvb, *offsetp, 2, byte_order);
25948 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
25949 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_wanted_mask_Keyboards, tvb, *offsetp, 2, byte_order);
25950 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_wanted_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
25951 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
25952 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
25953 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_wanted_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
25955 *offsetp += 2;
25956 f_allButtons = VALUE8(tvb, *offsetp);
25957 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_allButtons, tvb, *offsetp, 1, byte_order);
25958 *offsetp += 1;
25959 f_firstButton = VALUE8(tvb, *offsetp);
25960 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_firstButton, tvb, *offsetp, 1, byte_order);
25961 *offsetp += 1;
25962 f_nButtons = VALUE8(tvb, *offsetp);
25963 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_nButtons, tvb, *offsetp, 1, byte_order);
25964 *offsetp += 1;
25965 UNUSED(1);
25966 f_ledClass = field16(tvb, offsetp, t, hf_x11_xkb_GetDeviceInfo_ledClass, byte_order);
25967 f_ledID = field16(tvb, offsetp, t, hf_x11_xkb_GetDeviceInfo_ledID, byte_order);
25969 static void xkbGetDeviceInfo_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
25971 int f_length, length, sequence_number;
25972 int f_deviceID;
25973 int f_present;
25974 int f_supported;
25975 int f_unsupported;
25976 int f_nDeviceLedFBs;
25977 int f_firstBtnWanted;
25978 int f_nBtnsWanted;
25979 int f_firstBtnRtrn;
25980 int f_nBtnsRtrn;
25981 int f_totalBtns;
25982 int f_hasOwnState;
25983 int f_dfltKbdFB;
25984 int f_dfltLedFB;
25985 int f_devType;
25986 int f_nameLen;
25988 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceInfo");
25990 REPLY(reply);
25991 f_deviceID = VALUE8(tvb, *offsetp);
25992 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_deviceID, tvb, *offsetp, 1, byte_order);
25993 *offsetp += 1;
25994 sequence_number = VALUE16(tvb, *offsetp);
25995 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
25996 "sequencenumber: %d (xkb-GetDeviceInfo)", sequence_number);
25997 *offsetp += 2;
25998 f_length = VALUE32(tvb, *offsetp);
25999 length = f_length * 4 + 32;
26000 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
26001 *offsetp += 4;
26002 f_present = VALUE16(tvb, *offsetp);
26004 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_present, tvb, *offsetp, 2, byte_order);
26005 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26006 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_present_mask_Keyboards, tvb, *offsetp, 2, byte_order);
26007 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_present_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
26008 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
26009 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
26010 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_present_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
26012 *offsetp += 2;
26013 f_supported = VALUE16(tvb, *offsetp);
26015 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_supported, tvb, *offsetp, 2, byte_order);
26016 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26017 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_supported_mask_Keyboards, tvb, *offsetp, 2, byte_order);
26018 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_supported_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
26019 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
26020 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
26021 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_supported_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
26023 *offsetp += 2;
26024 f_unsupported = VALUE16(tvb, *offsetp);
26026 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_unsupported, tvb, *offsetp, 2, byte_order);
26027 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26028 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_Keyboards, tvb, *offsetp, 2, byte_order);
26029 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
26030 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
26031 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
26032 proto_tree_add_item(bitmask_tree, hf_x11_xkb_GetDeviceInfo_reply_unsupported_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
26034 *offsetp += 2;
26035 f_nDeviceLedFBs = VALUE16(tvb, *offsetp);
26036 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_nDeviceLedFBs, tvb, *offsetp, 2, byte_order);
26037 *offsetp += 2;
26038 f_firstBtnWanted = VALUE8(tvb, *offsetp);
26039 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_firstBtnWanted, tvb, *offsetp, 1, byte_order);
26040 *offsetp += 1;
26041 f_nBtnsWanted = VALUE8(tvb, *offsetp);
26042 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_nBtnsWanted, tvb, *offsetp, 1, byte_order);
26043 *offsetp += 1;
26044 f_firstBtnRtrn = VALUE8(tvb, *offsetp);
26045 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_firstBtnRtrn, tvb, *offsetp, 1, byte_order);
26046 *offsetp += 1;
26047 f_nBtnsRtrn = VALUE8(tvb, *offsetp);
26048 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_nBtnsRtrn, tvb, *offsetp, 1, byte_order);
26049 *offsetp += 1;
26050 f_totalBtns = VALUE8(tvb, *offsetp);
26051 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_totalBtns, tvb, *offsetp, 1, byte_order);
26052 *offsetp += 1;
26053 f_hasOwnState = VALUE8(tvb, *offsetp);
26054 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_hasOwnState, tvb, *offsetp, 1, byte_order);
26055 *offsetp += 1;
26056 f_dfltKbdFB = field16(tvb, offsetp, t, hf_x11_xkb_GetDeviceInfo_reply_dfltKbdFB, byte_order);
26057 f_dfltLedFB = field16(tvb, offsetp, t, hf_x11_xkb_GetDeviceInfo_reply_dfltLedFB, byte_order);
26058 UNUSED(2);
26059 f_devType = VALUE32(tvb, *offsetp);
26060 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_devType, tvb, *offsetp, 4, byte_order);
26061 *offsetp += 4;
26062 f_nameLen = VALUE16(tvb, *offsetp);
26063 proto_tree_add_item(t, hf_x11_xkb_GetDeviceInfo_reply_nameLen, tvb, *offsetp, 2, byte_order);
26064 *offsetp += 2;
26065 listOfByte(tvb, offsetp, t, hf_x11_xkb_GetDeviceInfo_reply_name, f_nameLen, byte_order);
26066 struct_Action(tvb, offsetp, t, byte_order, f_nBtnsRtrn);
26067 struct_DeviceLedInfo(tvb, offsetp, t, byte_order, f_nDeviceLedFBs);
26070 static void xkbSetDeviceInfo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
26072 int f_deviceSpec;
26073 int f_firstBtn;
26074 int f_nBtns;
26075 int f_change;
26076 int f_nDeviceLedFBs;
26077 f_deviceSpec = VALUE16(tvb, *offsetp);
26078 proto_tree_add_item(t, hf_x11_xkb_SetDeviceInfo_deviceSpec, tvb, *offsetp, 2, byte_order);
26079 *offsetp += 2;
26080 f_firstBtn = VALUE8(tvb, *offsetp);
26081 proto_tree_add_item(t, hf_x11_xkb_SetDeviceInfo_firstBtn, tvb, *offsetp, 1, byte_order);
26082 *offsetp += 1;
26083 f_nBtns = VALUE8(tvb, *offsetp);
26084 proto_tree_add_item(t, hf_x11_xkb_SetDeviceInfo_nBtns, tvb, *offsetp, 1, byte_order);
26085 *offsetp += 1;
26086 f_change = VALUE16(tvb, *offsetp);
26088 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_SetDeviceInfo_change, tvb, *offsetp, 2, byte_order);
26089 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26090 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetDeviceInfo_change_mask_Keyboards, tvb, *offsetp, 2, byte_order);
26091 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetDeviceInfo_change_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
26092 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
26093 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
26094 proto_tree_add_item(bitmask_tree, hf_x11_xkb_SetDeviceInfo_change_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
26096 *offsetp += 2;
26097 f_nDeviceLedFBs = VALUE16(tvb, *offsetp);
26098 proto_tree_add_item(t, hf_x11_xkb_SetDeviceInfo_nDeviceLedFBs, tvb, *offsetp, 2, byte_order);
26099 *offsetp += 2;
26100 struct_Action(tvb, offsetp, t, byte_order, f_nBtns);
26101 length -= f_nBtns * 8;
26102 struct_DeviceLedInfo(tvb, offsetp, t, byte_order, f_nDeviceLedFBs);
26103 length -= f_nDeviceLedFBs * 0;
26106 static void xkbSetDebuggingFlags(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
26108 int f_msgLength;
26109 int f_affectFlags;
26110 int f_flags;
26111 int f_affectCtrls;
26112 int f_ctrls;
26113 f_msgLength = VALUE16(tvb, *offsetp);
26114 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_msgLength, tvb, *offsetp, 2, byte_order);
26115 *offsetp += 2;
26116 UNUSED(2);
26117 f_affectFlags = VALUE32(tvb, *offsetp);
26118 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_affectFlags, tvb, *offsetp, 4, byte_order);
26119 *offsetp += 4;
26120 f_flags = VALUE32(tvb, *offsetp);
26121 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_flags, tvb, *offsetp, 4, byte_order);
26122 *offsetp += 4;
26123 f_affectCtrls = VALUE32(tvb, *offsetp);
26124 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_affectCtrls, tvb, *offsetp, 4, byte_order);
26125 *offsetp += 4;
26126 f_ctrls = VALUE32(tvb, *offsetp);
26127 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_ctrls, tvb, *offsetp, 4, byte_order);
26128 *offsetp += 4;
26129 listOfByte(tvb, offsetp, t, hf_x11_xkb_SetDebuggingFlags_message, f_msgLength, byte_order);
26130 length -= f_msgLength * 1;
26132 static void xkbSetDebuggingFlags_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
26134 int f_length, length, sequence_number;
26135 int f_currentFlags;
26136 int f_currentCtrls;
26137 int f_supportedFlags;
26138 int f_supportedCtrls;
26140 col_append_fstr(pinfo->cinfo, COL_INFO, "-SetDebuggingFlags");
26142 REPLY(reply);
26143 UNUSED(1);
26144 sequence_number = VALUE16(tvb, *offsetp);
26145 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
26146 "sequencenumber: %d (xkb-SetDebuggingFlags)", sequence_number);
26147 *offsetp += 2;
26148 f_length = VALUE32(tvb, *offsetp);
26149 length = f_length * 4 + 32;
26150 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
26151 *offsetp += 4;
26152 f_currentFlags = VALUE32(tvb, *offsetp);
26153 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_reply_currentFlags, tvb, *offsetp, 4, byte_order);
26154 *offsetp += 4;
26155 f_currentCtrls = VALUE32(tvb, *offsetp);
26156 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_reply_currentCtrls, tvb, *offsetp, 4, byte_order);
26157 *offsetp += 4;
26158 f_supportedFlags = VALUE32(tvb, *offsetp);
26159 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_reply_supportedFlags, tvb, *offsetp, 4, byte_order);
26160 *offsetp += 4;
26161 f_supportedCtrls = VALUE32(tvb, *offsetp);
26162 proto_tree_add_item(t, hf_x11_xkb_SetDebuggingFlags_reply_supportedCtrls, tvb, *offsetp, 4, byte_order);
26163 *offsetp += 4;
26164 UNUSED(8);
26167 static void xkbNewKeyboardNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26169 int f_xkbType;
26170 int f_sequence;
26171 int f_time;
26172 int f_deviceID;
26173 int f_oldDeviceID;
26174 int f_minKeyCode;
26175 int f_maxKeyCode;
26176 int f_oldMinKeyCode;
26177 int f_oldMaxKeyCode;
26178 int f_requestMajor;
26179 int f_requestMinor;
26180 int f_changed;
26181 f_xkbType = VALUE8(tvb, *offsetp);
26182 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_xkbType, tvb, *offsetp, 1, byte_order);
26183 *offsetp += 1;
26184 CARD16(event_sequencenumber);
26185 f_sequence = VALUE16(tvb, *offsetp);
26186 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_sequence, tvb, *offsetp, 2, byte_order);
26187 *offsetp += 2;
26188 f_time = VALUE32(tvb, *offsetp);
26189 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_time, tvb, *offsetp, 4, byte_order);
26190 *offsetp += 4;
26191 f_deviceID = VALUE8(tvb, *offsetp);
26192 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_deviceID, tvb, *offsetp, 1, byte_order);
26193 *offsetp += 1;
26194 f_oldDeviceID = VALUE8(tvb, *offsetp);
26195 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_oldDeviceID, tvb, *offsetp, 1, byte_order);
26196 *offsetp += 1;
26197 f_minKeyCode = VALUE8(tvb, *offsetp);
26198 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_minKeyCode, tvb, *offsetp, 1, byte_order);
26199 *offsetp += 1;
26200 f_maxKeyCode = VALUE8(tvb, *offsetp);
26201 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_maxKeyCode, tvb, *offsetp, 1, byte_order);
26202 *offsetp += 1;
26203 f_oldMinKeyCode = VALUE8(tvb, *offsetp);
26204 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_oldMinKeyCode, tvb, *offsetp, 1, byte_order);
26205 *offsetp += 1;
26206 f_oldMaxKeyCode = VALUE8(tvb, *offsetp);
26207 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_oldMaxKeyCode, tvb, *offsetp, 1, byte_order);
26208 *offsetp += 1;
26209 f_requestMajor = VALUE8(tvb, *offsetp);
26210 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_requestMajor, tvb, *offsetp, 1, byte_order);
26211 *offsetp += 1;
26212 f_requestMinor = VALUE8(tvb, *offsetp);
26213 proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_requestMinor, tvb, *offsetp, 1, byte_order);
26214 *offsetp += 1;
26215 f_changed = VALUE16(tvb, *offsetp);
26217 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_NewKeyboardNotify_changed, tvb, *offsetp, 2, byte_order);
26218 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26219 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NewKeyboardNotify_changed_mask_Keycodes, tvb, *offsetp, 2, byte_order);
26220 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NewKeyboardNotify_changed_mask_Geometry, tvb, *offsetp, 2, byte_order);
26221 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NewKeyboardNotify_changed_mask_DeviceID, tvb, *offsetp, 2, byte_order);
26223 *offsetp += 2;
26224 UNUSED(14);
26227 static void xkbMapNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26229 int f_xkbType;
26230 int f_sequence;
26231 int f_time;
26232 int f_deviceID;
26233 int f_ptrBtnActions;
26234 int f_changed;
26235 int f_minKeyCode;
26236 int f_maxKeyCode;
26237 int f_firstType;
26238 int f_nTypes;
26239 int f_firstKeySym;
26240 int f_nKeySyms;
26241 int f_firstKeyAct;
26242 int f_nKeyActs;
26243 int f_firstKeyBehavior;
26244 int f_nKeyBehavior;
26245 int f_firstKeyExplicit;
26246 int f_nKeyExplicit;
26247 int f_firstModMapKey;
26248 int f_nModMapKeys;
26249 int f_firstVModMapKey;
26250 int f_nVModMapKeys;
26251 int f_virtualMods;
26252 f_xkbType = VALUE8(tvb, *offsetp);
26253 proto_tree_add_item(t, hf_x11_xkb_MapNotify_xkbType, tvb, *offsetp, 1, byte_order);
26254 *offsetp += 1;
26255 CARD16(event_sequencenumber);
26256 f_sequence = VALUE16(tvb, *offsetp);
26257 proto_tree_add_item(t, hf_x11_xkb_MapNotify_sequence, tvb, *offsetp, 2, byte_order);
26258 *offsetp += 2;
26259 f_time = VALUE32(tvb, *offsetp);
26260 proto_tree_add_item(t, hf_x11_xkb_MapNotify_time, tvb, *offsetp, 4, byte_order);
26261 *offsetp += 4;
26262 f_deviceID = VALUE8(tvb, *offsetp);
26263 proto_tree_add_item(t, hf_x11_xkb_MapNotify_deviceID, tvb, *offsetp, 1, byte_order);
26264 *offsetp += 1;
26265 f_ptrBtnActions = VALUE8(tvb, *offsetp);
26266 proto_tree_add_item(t, hf_x11_xkb_MapNotify_ptrBtnActions, tvb, *offsetp, 1, byte_order);
26267 *offsetp += 1;
26268 f_changed = VALUE16(tvb, *offsetp);
26270 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_MapNotify_changed, tvb, *offsetp, 2, byte_order);
26271 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26272 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_KeyTypes, tvb, *offsetp, 2, byte_order);
26273 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_KeySyms, tvb, *offsetp, 2, byte_order);
26274 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_ModifierMap, tvb, *offsetp, 2, byte_order);
26275 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_ExplicitComponents, tvb, *offsetp, 2, byte_order);
26276 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_KeyActions, tvb, *offsetp, 2, byte_order);
26277 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_KeyBehaviors, tvb, *offsetp, 2, byte_order);
26278 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_VirtualMods, tvb, *offsetp, 2, byte_order);
26279 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_changed_mask_VirtualModMap, tvb, *offsetp, 2, byte_order);
26281 *offsetp += 2;
26282 f_minKeyCode = VALUE8(tvb, *offsetp);
26283 proto_tree_add_item(t, hf_x11_xkb_MapNotify_minKeyCode, tvb, *offsetp, 1, byte_order);
26284 *offsetp += 1;
26285 f_maxKeyCode = VALUE8(tvb, *offsetp);
26286 proto_tree_add_item(t, hf_x11_xkb_MapNotify_maxKeyCode, tvb, *offsetp, 1, byte_order);
26287 *offsetp += 1;
26288 f_firstType = VALUE8(tvb, *offsetp);
26289 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstType, tvb, *offsetp, 1, byte_order);
26290 *offsetp += 1;
26291 f_nTypes = VALUE8(tvb, *offsetp);
26292 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nTypes, tvb, *offsetp, 1, byte_order);
26293 *offsetp += 1;
26294 f_firstKeySym = VALUE8(tvb, *offsetp);
26295 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstKeySym, tvb, *offsetp, 1, byte_order);
26296 *offsetp += 1;
26297 f_nKeySyms = VALUE8(tvb, *offsetp);
26298 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nKeySyms, tvb, *offsetp, 1, byte_order);
26299 *offsetp += 1;
26300 f_firstKeyAct = VALUE8(tvb, *offsetp);
26301 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstKeyAct, tvb, *offsetp, 1, byte_order);
26302 *offsetp += 1;
26303 f_nKeyActs = VALUE8(tvb, *offsetp);
26304 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nKeyActs, tvb, *offsetp, 1, byte_order);
26305 *offsetp += 1;
26306 f_firstKeyBehavior = VALUE8(tvb, *offsetp);
26307 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstKeyBehavior, tvb, *offsetp, 1, byte_order);
26308 *offsetp += 1;
26309 f_nKeyBehavior = VALUE8(tvb, *offsetp);
26310 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nKeyBehavior, tvb, *offsetp, 1, byte_order);
26311 *offsetp += 1;
26312 f_firstKeyExplicit = VALUE8(tvb, *offsetp);
26313 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstKeyExplicit, tvb, *offsetp, 1, byte_order);
26314 *offsetp += 1;
26315 f_nKeyExplicit = VALUE8(tvb, *offsetp);
26316 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nKeyExplicit, tvb, *offsetp, 1, byte_order);
26317 *offsetp += 1;
26318 f_firstModMapKey = VALUE8(tvb, *offsetp);
26319 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstModMapKey, tvb, *offsetp, 1, byte_order);
26320 *offsetp += 1;
26321 f_nModMapKeys = VALUE8(tvb, *offsetp);
26322 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nModMapKeys, tvb, *offsetp, 1, byte_order);
26323 *offsetp += 1;
26324 f_firstVModMapKey = VALUE8(tvb, *offsetp);
26325 proto_tree_add_item(t, hf_x11_xkb_MapNotify_firstVModMapKey, tvb, *offsetp, 1, byte_order);
26326 *offsetp += 1;
26327 f_nVModMapKeys = VALUE8(tvb, *offsetp);
26328 proto_tree_add_item(t, hf_x11_xkb_MapNotify_nVModMapKeys, tvb, *offsetp, 1, byte_order);
26329 *offsetp += 1;
26330 f_virtualMods = VALUE16(tvb, *offsetp);
26332 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_MapNotify_virtualMods, tvb, *offsetp, 2, byte_order);
26333 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26334 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_0, tvb, *offsetp, 2, byte_order);
26335 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_1, tvb, *offsetp, 2, byte_order);
26336 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_2, tvb, *offsetp, 2, byte_order);
26337 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_3, tvb, *offsetp, 2, byte_order);
26338 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_4, tvb, *offsetp, 2, byte_order);
26339 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_5, tvb, *offsetp, 2, byte_order);
26340 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_6, tvb, *offsetp, 2, byte_order);
26341 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_7, tvb, *offsetp, 2, byte_order);
26342 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_8, tvb, *offsetp, 2, byte_order);
26343 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_9, tvb, *offsetp, 2, byte_order);
26344 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_10, tvb, *offsetp, 2, byte_order);
26345 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_11, tvb, *offsetp, 2, byte_order);
26346 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_12, tvb, *offsetp, 2, byte_order);
26347 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_13, tvb, *offsetp, 2, byte_order);
26348 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_14, tvb, *offsetp, 2, byte_order);
26349 proto_tree_add_item(bitmask_tree, hf_x11_xkb_MapNotify_virtualMods_mask_15, tvb, *offsetp, 2, byte_order);
26351 *offsetp += 2;
26352 UNUSED(2);
26355 static void xkbStateNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26357 int f_xkbType;
26358 int f_sequence;
26359 int f_time;
26360 int f_deviceID;
26361 int f_mods;
26362 int f_baseMods;
26363 int f_latchedMods;
26364 int f_lockedMods;
26365 int f_group;
26366 int f_baseGroup;
26367 int f_latchedGroup;
26368 int f_lockedGroup;
26369 int f_compatState;
26370 int f_grabMods;
26371 int f_compatGrabMods;
26372 int f_lookupMods;
26373 int f_compatLoockupMods;
26374 int f_ptrBtnState;
26375 int f_changed;
26376 int f_keycode;
26377 int f_eventType;
26378 int f_requestMajor;
26379 int f_requestMinor;
26380 f_xkbType = VALUE8(tvb, *offsetp);
26381 proto_tree_add_item(t, hf_x11_xkb_StateNotify_xkbType, tvb, *offsetp, 1, byte_order);
26382 *offsetp += 1;
26383 CARD16(event_sequencenumber);
26384 f_sequence = VALUE16(tvb, *offsetp);
26385 proto_tree_add_item(t, hf_x11_xkb_StateNotify_sequence, tvb, *offsetp, 2, byte_order);
26386 *offsetp += 2;
26387 f_time = VALUE32(tvb, *offsetp);
26388 proto_tree_add_item(t, hf_x11_xkb_StateNotify_time, tvb, *offsetp, 4, byte_order);
26389 *offsetp += 4;
26390 f_deviceID = VALUE8(tvb, *offsetp);
26391 proto_tree_add_item(t, hf_x11_xkb_StateNotify_deviceID, tvb, *offsetp, 1, byte_order);
26392 *offsetp += 1;
26393 f_mods = VALUE8(tvb, *offsetp);
26395 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_mods, tvb, *offsetp, 1, byte_order);
26396 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26397 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
26398 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
26399 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_Control, tvb, *offsetp, 1, byte_order);
26400 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_1, tvb, *offsetp, 1, byte_order);
26401 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_2, tvb, *offsetp, 1, byte_order);
26402 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_3, tvb, *offsetp, 1, byte_order);
26403 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_4, tvb, *offsetp, 1, byte_order);
26404 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_5, tvb, *offsetp, 1, byte_order);
26405 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_mods_mask_Any, tvb, *offsetp, 1, byte_order);
26407 *offsetp += 1;
26408 f_baseMods = VALUE8(tvb, *offsetp);
26410 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_baseMods, tvb, *offsetp, 1, byte_order);
26411 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26412 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26413 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26414 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_Control, tvb, *offsetp, 1, byte_order);
26415 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_1, tvb, *offsetp, 1, byte_order);
26416 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_2, tvb, *offsetp, 1, byte_order);
26417 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_3, tvb, *offsetp, 1, byte_order);
26418 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_4, tvb, *offsetp, 1, byte_order);
26419 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_5, tvb, *offsetp, 1, byte_order);
26420 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_baseMods_mask_Any, tvb, *offsetp, 1, byte_order);
26422 *offsetp += 1;
26423 f_latchedMods = VALUE8(tvb, *offsetp);
26425 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_latchedMods, tvb, *offsetp, 1, byte_order);
26426 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26427 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26428 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26429 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_Control, tvb, *offsetp, 1, byte_order);
26430 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_1, tvb, *offsetp, 1, byte_order);
26431 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_2, tvb, *offsetp, 1, byte_order);
26432 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_3, tvb, *offsetp, 1, byte_order);
26433 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_4, tvb, *offsetp, 1, byte_order);
26434 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_5, tvb, *offsetp, 1, byte_order);
26435 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_latchedMods_mask_Any, tvb, *offsetp, 1, byte_order);
26437 *offsetp += 1;
26438 f_lockedMods = VALUE8(tvb, *offsetp);
26440 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_lockedMods, tvb, *offsetp, 1, byte_order);
26441 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26442 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26443 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26444 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_Control, tvb, *offsetp, 1, byte_order);
26445 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_1, tvb, *offsetp, 1, byte_order);
26446 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_2, tvb, *offsetp, 1, byte_order);
26447 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_3, tvb, *offsetp, 1, byte_order);
26448 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_4, tvb, *offsetp, 1, byte_order);
26449 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_5, tvb, *offsetp, 1, byte_order);
26450 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lockedMods_mask_Any, tvb, *offsetp, 1, byte_order);
26452 *offsetp += 1;
26453 f_group = field8(tvb, offsetp, t, hf_x11_xkb_StateNotify_group, byte_order);
26454 f_baseGroup = VALUE16(tvb, *offsetp);
26455 proto_tree_add_item(t, hf_x11_xkb_StateNotify_baseGroup, tvb, *offsetp, 2, byte_order);
26456 *offsetp += 2;
26457 f_latchedGroup = VALUE16(tvb, *offsetp);
26458 proto_tree_add_item(t, hf_x11_xkb_StateNotify_latchedGroup, tvb, *offsetp, 2, byte_order);
26459 *offsetp += 2;
26460 f_lockedGroup = field8(tvb, offsetp, t, hf_x11_xkb_StateNotify_lockedGroup, byte_order);
26461 f_compatState = VALUE8(tvb, *offsetp);
26463 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_compatState, tvb, *offsetp, 1, byte_order);
26464 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26465 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_Shift, tvb, *offsetp, 1, byte_order);
26466 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_Lock, tvb, *offsetp, 1, byte_order);
26467 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_Control, tvb, *offsetp, 1, byte_order);
26468 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_1, tvb, *offsetp, 1, byte_order);
26469 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_2, tvb, *offsetp, 1, byte_order);
26470 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_3, tvb, *offsetp, 1, byte_order);
26471 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_4, tvb, *offsetp, 1, byte_order);
26472 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_5, tvb, *offsetp, 1, byte_order);
26473 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatState_mask_Any, tvb, *offsetp, 1, byte_order);
26475 *offsetp += 1;
26476 f_grabMods = VALUE8(tvb, *offsetp);
26478 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_grabMods, tvb, *offsetp, 1, byte_order);
26479 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26480 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26481 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26482 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_Control, tvb, *offsetp, 1, byte_order);
26483 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_1, tvb, *offsetp, 1, byte_order);
26484 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_2, tvb, *offsetp, 1, byte_order);
26485 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_3, tvb, *offsetp, 1, byte_order);
26486 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_4, tvb, *offsetp, 1, byte_order);
26487 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_5, tvb, *offsetp, 1, byte_order);
26488 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_grabMods_mask_Any, tvb, *offsetp, 1, byte_order);
26490 *offsetp += 1;
26491 f_compatGrabMods = VALUE8(tvb, *offsetp);
26493 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_compatGrabMods, tvb, *offsetp, 1, byte_order);
26494 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26495 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26496 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26497 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_Control, tvb, *offsetp, 1, byte_order);
26498 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_1, tvb, *offsetp, 1, byte_order);
26499 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_2, tvb, *offsetp, 1, byte_order);
26500 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_3, tvb, *offsetp, 1, byte_order);
26501 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_4, tvb, *offsetp, 1, byte_order);
26502 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_5, tvb, *offsetp, 1, byte_order);
26503 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatGrabMods_mask_Any, tvb, *offsetp, 1, byte_order);
26505 *offsetp += 1;
26506 f_lookupMods = VALUE8(tvb, *offsetp);
26508 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_lookupMods, tvb, *offsetp, 1, byte_order);
26509 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26510 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26511 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26512 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_Control, tvb, *offsetp, 1, byte_order);
26513 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_1, tvb, *offsetp, 1, byte_order);
26514 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_2, tvb, *offsetp, 1, byte_order);
26515 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_3, tvb, *offsetp, 1, byte_order);
26516 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_4, tvb, *offsetp, 1, byte_order);
26517 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_5, tvb, *offsetp, 1, byte_order);
26518 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_lookupMods_mask_Any, tvb, *offsetp, 1, byte_order);
26520 *offsetp += 1;
26521 f_compatLoockupMods = VALUE8(tvb, *offsetp);
26523 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_compatLoockupMods, tvb, *offsetp, 1, byte_order);
26524 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26525 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_Shift, tvb, *offsetp, 1, byte_order);
26526 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_Lock, tvb, *offsetp, 1, byte_order);
26527 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_Control, tvb, *offsetp, 1, byte_order);
26528 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_1, tvb, *offsetp, 1, byte_order);
26529 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_2, tvb, *offsetp, 1, byte_order);
26530 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_3, tvb, *offsetp, 1, byte_order);
26531 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_4, tvb, *offsetp, 1, byte_order);
26532 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_5, tvb, *offsetp, 1, byte_order);
26533 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_compatLoockupMods_mask_Any, tvb, *offsetp, 1, byte_order);
26535 *offsetp += 1;
26536 f_ptrBtnState = VALUE16(tvb, *offsetp);
26538 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_ptrBtnState, tvb, *offsetp, 2, byte_order);
26539 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26540 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Shift, tvb, *offsetp, 2, byte_order);
26541 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Lock, tvb, *offsetp, 2, byte_order);
26542 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Control, tvb, *offsetp, 2, byte_order);
26543 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod1, tvb, *offsetp, 2, byte_order);
26544 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod2, tvb, *offsetp, 2, byte_order);
26545 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod3, tvb, *offsetp, 2, byte_order);
26546 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod4, tvb, *offsetp, 2, byte_order);
26547 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Mod5, tvb, *offsetp, 2, byte_order);
26548 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Button1, tvb, *offsetp, 2, byte_order);
26549 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Button2, tvb, *offsetp, 2, byte_order);
26550 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Button3, tvb, *offsetp, 2, byte_order);
26551 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Button4, tvb, *offsetp, 2, byte_order);
26552 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_ptrBtnState_mask_Button5, tvb, *offsetp, 2, byte_order);
26554 *offsetp += 2;
26555 f_changed = VALUE16(tvb, *offsetp);
26557 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_StateNotify_changed, tvb, *offsetp, 2, byte_order);
26558 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26559 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_ModifierState, tvb, *offsetp, 2, byte_order);
26560 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_ModifierBase, tvb, *offsetp, 2, byte_order);
26561 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_ModifierLatch, tvb, *offsetp, 2, byte_order);
26562 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_ModifierLock, tvb, *offsetp, 2, byte_order);
26563 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_GroupState, tvb, *offsetp, 2, byte_order);
26564 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_GroupBase, tvb, *offsetp, 2, byte_order);
26565 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_GroupLatch, tvb, *offsetp, 2, byte_order);
26566 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_GroupLock, tvb, *offsetp, 2, byte_order);
26567 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_CompatState, tvb, *offsetp, 2, byte_order);
26568 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_GrabMods, tvb, *offsetp, 2, byte_order);
26569 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_CompatGrabMods, tvb, *offsetp, 2, byte_order);
26570 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_LookupMods, tvb, *offsetp, 2, byte_order);
26571 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_CompatLookupMods, tvb, *offsetp, 2, byte_order);
26572 proto_tree_add_item(bitmask_tree, hf_x11_xkb_StateNotify_changed_mask_PointerButtons, tvb, *offsetp, 2, byte_order);
26574 *offsetp += 2;
26575 f_keycode = VALUE8(tvb, *offsetp);
26576 proto_tree_add_item(t, hf_x11_xkb_StateNotify_keycode, tvb, *offsetp, 1, byte_order);
26577 *offsetp += 1;
26578 f_eventType = VALUE8(tvb, *offsetp);
26579 proto_tree_add_item(t, hf_x11_xkb_StateNotify_eventType, tvb, *offsetp, 1, byte_order);
26580 *offsetp += 1;
26581 f_requestMajor = VALUE8(tvb, *offsetp);
26582 proto_tree_add_item(t, hf_x11_xkb_StateNotify_requestMajor, tvb, *offsetp, 1, byte_order);
26583 *offsetp += 1;
26584 f_requestMinor = VALUE8(tvb, *offsetp);
26585 proto_tree_add_item(t, hf_x11_xkb_StateNotify_requestMinor, tvb, *offsetp, 1, byte_order);
26586 *offsetp += 1;
26589 static void xkbControlsNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26591 int f_xkbType;
26592 int f_sequence;
26593 int f_time;
26594 int f_deviceID;
26595 int f_numGroups;
26596 int f_changedControls;
26597 int f_enabledControls;
26598 int f_enabledControlChanges;
26599 int f_keycode;
26600 int f_eventType;
26601 int f_requestMajor;
26602 int f_requestMinor;
26603 f_xkbType = VALUE8(tvb, *offsetp);
26604 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_xkbType, tvb, *offsetp, 1, byte_order);
26605 *offsetp += 1;
26606 CARD16(event_sequencenumber);
26607 f_sequence = VALUE16(tvb, *offsetp);
26608 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_sequence, tvb, *offsetp, 2, byte_order);
26609 *offsetp += 2;
26610 f_time = VALUE32(tvb, *offsetp);
26611 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_time, tvb, *offsetp, 4, byte_order);
26612 *offsetp += 4;
26613 f_deviceID = VALUE8(tvb, *offsetp);
26614 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_deviceID, tvb, *offsetp, 1, byte_order);
26615 *offsetp += 1;
26616 f_numGroups = VALUE8(tvb, *offsetp);
26617 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_numGroups, tvb, *offsetp, 1, byte_order);
26618 *offsetp += 1;
26619 UNUSED(2);
26620 f_changedControls = VALUE32(tvb, *offsetp);
26622 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_changedControls, tvb, *offsetp, 4, byte_order);
26623 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26624 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_changedControls_mask_GroupsWrap, tvb, *offsetp, 4, byte_order);
26625 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_changedControls_mask_InternalMods, tvb, *offsetp, 4, byte_order);
26626 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_changedControls_mask_IgnoreLockMods, tvb, *offsetp, 4, byte_order);
26627 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_changedControls_mask_PerKeyRepeat, tvb, *offsetp, 4, byte_order);
26628 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_changedControls_mask_ControlsEnabled, tvb, *offsetp, 4, byte_order);
26630 *offsetp += 4;
26631 f_enabledControls = VALUE32(tvb, *offsetp);
26633 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_enabledControls, tvb, *offsetp, 4, byte_order);
26634 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26635 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
26636 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
26637 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
26638 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
26639 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
26640 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
26641 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
26642 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
26643 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
26644 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
26645 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
26646 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
26647 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControls_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
26649 *offsetp += 4;
26650 f_enabledControlChanges = VALUE32(tvb, *offsetp);
26652 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_enabledControlChanges, tvb, *offsetp, 4, byte_order);
26653 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26654 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_RepeatKeys, tvb, *offsetp, 4, byte_order);
26655 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_SlowKeys, tvb, *offsetp, 4, byte_order);
26656 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_BounceKeys, tvb, *offsetp, 4, byte_order);
26657 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_StickyKeys, tvb, *offsetp, 4, byte_order);
26658 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_MouseKeys, tvb, *offsetp, 4, byte_order);
26659 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_MouseKeysAccel, tvb, *offsetp, 4, byte_order);
26660 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXKeys, tvb, *offsetp, 4, byte_order);
26661 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXTimeoutMask, tvb, *offsetp, 4, byte_order);
26662 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AccessXFeedbackMask, tvb, *offsetp, 4, byte_order);
26663 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_AudibleBellMask, tvb, *offsetp, 4, byte_order);
26664 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_Overlay1Mask, tvb, *offsetp, 4, byte_order);
26665 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_Overlay2Mask, tvb, *offsetp, 4, byte_order);
26666 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ControlsNotify_enabledControlChanges_mask_IgnoreGroupLockMask, tvb, *offsetp, 4, byte_order);
26668 *offsetp += 4;
26669 f_keycode = VALUE8(tvb, *offsetp);
26670 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_keycode, tvb, *offsetp, 1, byte_order);
26671 *offsetp += 1;
26672 f_eventType = VALUE8(tvb, *offsetp);
26673 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_eventType, tvb, *offsetp, 1, byte_order);
26674 *offsetp += 1;
26675 f_requestMajor = VALUE8(tvb, *offsetp);
26676 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_requestMajor, tvb, *offsetp, 1, byte_order);
26677 *offsetp += 1;
26678 f_requestMinor = VALUE8(tvb, *offsetp);
26679 proto_tree_add_item(t, hf_x11_xkb_ControlsNotify_requestMinor, tvb, *offsetp, 1, byte_order);
26680 *offsetp += 1;
26681 UNUSED(4);
26684 static void xkbIndicatorStateNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26686 int f_xkbType;
26687 int f_sequence;
26688 int f_time;
26689 int f_deviceID;
26690 int f_state;
26691 int f_stateChanged;
26692 f_xkbType = VALUE8(tvb, *offsetp);
26693 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_xkbType, tvb, *offsetp, 1, byte_order);
26694 *offsetp += 1;
26695 CARD16(event_sequencenumber);
26696 f_sequence = VALUE16(tvb, *offsetp);
26697 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_sequence, tvb, *offsetp, 2, byte_order);
26698 *offsetp += 2;
26699 f_time = VALUE32(tvb, *offsetp);
26700 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_time, tvb, *offsetp, 4, byte_order);
26701 *offsetp += 4;
26702 f_deviceID = VALUE8(tvb, *offsetp);
26703 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_deviceID, tvb, *offsetp, 1, byte_order);
26704 *offsetp += 1;
26705 UNUSED(3);
26706 f_state = VALUE32(tvb, *offsetp);
26707 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_state, tvb, *offsetp, 4, byte_order);
26708 *offsetp += 4;
26709 f_stateChanged = VALUE32(tvb, *offsetp);
26710 proto_tree_add_item(t, hf_x11_xkb_IndicatorStateNotify_stateChanged, tvb, *offsetp, 4, byte_order);
26711 *offsetp += 4;
26712 UNUSED(12);
26715 static void xkbIndicatorMapNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26717 int f_xkbType;
26718 int f_sequence;
26719 int f_time;
26720 int f_deviceID;
26721 int f_state;
26722 int f_mapChanged;
26723 f_xkbType = VALUE8(tvb, *offsetp);
26724 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_xkbType, tvb, *offsetp, 1, byte_order);
26725 *offsetp += 1;
26726 CARD16(event_sequencenumber);
26727 f_sequence = VALUE16(tvb, *offsetp);
26728 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_sequence, tvb, *offsetp, 2, byte_order);
26729 *offsetp += 2;
26730 f_time = VALUE32(tvb, *offsetp);
26731 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_time, tvb, *offsetp, 4, byte_order);
26732 *offsetp += 4;
26733 f_deviceID = VALUE8(tvb, *offsetp);
26734 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_deviceID, tvb, *offsetp, 1, byte_order);
26735 *offsetp += 1;
26736 UNUSED(3);
26737 f_state = VALUE32(tvb, *offsetp);
26738 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_state, tvb, *offsetp, 4, byte_order);
26739 *offsetp += 4;
26740 f_mapChanged = VALUE32(tvb, *offsetp);
26741 proto_tree_add_item(t, hf_x11_xkb_IndicatorMapNotify_mapChanged, tvb, *offsetp, 4, byte_order);
26742 *offsetp += 4;
26743 UNUSED(12);
26746 static void xkbNamesNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26748 int f_xkbType;
26749 int f_sequence;
26750 int f_time;
26751 int f_deviceID;
26752 int f_changed;
26753 int f_firstType;
26754 int f_nTypes;
26755 int f_firstLevelName;
26756 int f_nLevelNames;
26757 int f_nRadioGroups;
26758 int f_nKeyAliases;
26759 int f_changedGroupNames;
26760 int f_changedVirtualMods;
26761 int f_firstKey;
26762 int f_nKeys;
26763 int f_changedIndicators;
26764 f_xkbType = VALUE8(tvb, *offsetp);
26765 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_xkbType, tvb, *offsetp, 1, byte_order);
26766 *offsetp += 1;
26767 CARD16(event_sequencenumber);
26768 f_sequence = VALUE16(tvb, *offsetp);
26769 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_sequence, tvb, *offsetp, 2, byte_order);
26770 *offsetp += 2;
26771 f_time = VALUE32(tvb, *offsetp);
26772 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_time, tvb, *offsetp, 4, byte_order);
26773 *offsetp += 4;
26774 f_deviceID = VALUE8(tvb, *offsetp);
26775 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_deviceID, tvb, *offsetp, 1, byte_order);
26776 *offsetp += 1;
26777 UNUSED(1);
26778 f_changed = VALUE16(tvb, *offsetp);
26780 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_NamesNotify_changed, tvb, *offsetp, 2, byte_order);
26781 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26782 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_Keycodes, tvb, *offsetp, 2, byte_order);
26783 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_Geometry, tvb, *offsetp, 2, byte_order);
26784 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_Symbols, tvb, *offsetp, 2, byte_order);
26785 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_PhysSymbols, tvb, *offsetp, 2, byte_order);
26786 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_Types, tvb, *offsetp, 2, byte_order);
26787 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_Compat, tvb, *offsetp, 2, byte_order);
26788 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_KeyTypeNames, tvb, *offsetp, 2, byte_order);
26789 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_KTLevelNames, tvb, *offsetp, 2, byte_order);
26790 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
26791 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_KeyNames, tvb, *offsetp, 2, byte_order);
26792 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_KeyAliases, tvb, *offsetp, 2, byte_order);
26793 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_VirtualModNames, tvb, *offsetp, 2, byte_order);
26794 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_GroupNames, tvb, *offsetp, 2, byte_order);
26795 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changed_mask_RGNames, tvb, *offsetp, 2, byte_order);
26797 *offsetp += 2;
26798 f_firstType = VALUE8(tvb, *offsetp);
26799 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_firstType, tvb, *offsetp, 1, byte_order);
26800 *offsetp += 1;
26801 f_nTypes = VALUE8(tvb, *offsetp);
26802 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_nTypes, tvb, *offsetp, 1, byte_order);
26803 *offsetp += 1;
26804 f_firstLevelName = VALUE8(tvb, *offsetp);
26805 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_firstLevelName, tvb, *offsetp, 1, byte_order);
26806 *offsetp += 1;
26807 f_nLevelNames = VALUE8(tvb, *offsetp);
26808 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_nLevelNames, tvb, *offsetp, 1, byte_order);
26809 *offsetp += 1;
26810 UNUSED(1);
26811 f_nRadioGroups = VALUE8(tvb, *offsetp);
26812 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_nRadioGroups, tvb, *offsetp, 1, byte_order);
26813 *offsetp += 1;
26814 f_nKeyAliases = VALUE8(tvb, *offsetp);
26815 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_nKeyAliases, tvb, *offsetp, 1, byte_order);
26816 *offsetp += 1;
26817 f_changedGroupNames = VALUE8(tvb, *offsetp);
26819 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_NamesNotify_changedGroupNames, tvb, *offsetp, 1, byte_order);
26820 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26821 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group1, tvb, *offsetp, 1, byte_order);
26822 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group2, tvb, *offsetp, 1, byte_order);
26823 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group3, tvb, *offsetp, 1, byte_order);
26824 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedGroupNames_mask_Group4, tvb, *offsetp, 1, byte_order);
26826 *offsetp += 1;
26827 f_changedVirtualMods = VALUE16(tvb, *offsetp);
26829 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_NamesNotify_changedVirtualMods, tvb, *offsetp, 2, byte_order);
26830 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26831 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_0, tvb, *offsetp, 2, byte_order);
26832 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_1, tvb, *offsetp, 2, byte_order);
26833 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_2, tvb, *offsetp, 2, byte_order);
26834 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_3, tvb, *offsetp, 2, byte_order);
26835 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_4, tvb, *offsetp, 2, byte_order);
26836 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_5, tvb, *offsetp, 2, byte_order);
26837 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_6, tvb, *offsetp, 2, byte_order);
26838 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_7, tvb, *offsetp, 2, byte_order);
26839 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_8, tvb, *offsetp, 2, byte_order);
26840 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_9, tvb, *offsetp, 2, byte_order);
26841 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_10, tvb, *offsetp, 2, byte_order);
26842 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_11, tvb, *offsetp, 2, byte_order);
26843 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_12, tvb, *offsetp, 2, byte_order);
26844 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_13, tvb, *offsetp, 2, byte_order);
26845 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_14, tvb, *offsetp, 2, byte_order);
26846 proto_tree_add_item(bitmask_tree, hf_x11_xkb_NamesNotify_changedVirtualMods_mask_15, tvb, *offsetp, 2, byte_order);
26848 *offsetp += 2;
26849 f_firstKey = VALUE8(tvb, *offsetp);
26850 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_firstKey, tvb, *offsetp, 1, byte_order);
26851 *offsetp += 1;
26852 f_nKeys = VALUE8(tvb, *offsetp);
26853 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_nKeys, tvb, *offsetp, 1, byte_order);
26854 *offsetp += 1;
26855 f_changedIndicators = VALUE32(tvb, *offsetp);
26856 proto_tree_add_item(t, hf_x11_xkb_NamesNotify_changedIndicators, tvb, *offsetp, 4, byte_order);
26857 *offsetp += 4;
26858 UNUSED(4);
26861 static void xkbCompatMapNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26863 int f_xkbType;
26864 int f_sequence;
26865 int f_time;
26866 int f_deviceID;
26867 int f_changedGroups;
26868 int f_firstSI;
26869 int f_nSI;
26870 int f_nTotalSI;
26871 f_xkbType = VALUE8(tvb, *offsetp);
26872 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_xkbType, tvb, *offsetp, 1, byte_order);
26873 *offsetp += 1;
26874 CARD16(event_sequencenumber);
26875 f_sequence = VALUE16(tvb, *offsetp);
26876 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_sequence, tvb, *offsetp, 2, byte_order);
26877 *offsetp += 2;
26878 f_time = VALUE32(tvb, *offsetp);
26879 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_time, tvb, *offsetp, 4, byte_order);
26880 *offsetp += 4;
26881 f_deviceID = VALUE8(tvb, *offsetp);
26882 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_deviceID, tvb, *offsetp, 1, byte_order);
26883 *offsetp += 1;
26884 f_changedGroups = VALUE8(tvb, *offsetp);
26886 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_changedGroups, tvb, *offsetp, 1, byte_order);
26887 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26888 proto_tree_add_item(bitmask_tree, hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group1, tvb, *offsetp, 1, byte_order);
26889 proto_tree_add_item(bitmask_tree, hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group2, tvb, *offsetp, 1, byte_order);
26890 proto_tree_add_item(bitmask_tree, hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group3, tvb, *offsetp, 1, byte_order);
26891 proto_tree_add_item(bitmask_tree, hf_x11_xkb_CompatMapNotify_changedGroups_mask_Group4, tvb, *offsetp, 1, byte_order);
26893 *offsetp += 1;
26894 f_firstSI = VALUE16(tvb, *offsetp);
26895 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_firstSI, tvb, *offsetp, 2, byte_order);
26896 *offsetp += 2;
26897 f_nSI = VALUE16(tvb, *offsetp);
26898 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_nSI, tvb, *offsetp, 2, byte_order);
26899 *offsetp += 2;
26900 f_nTotalSI = VALUE16(tvb, *offsetp);
26901 proto_tree_add_item(t, hf_x11_xkb_CompatMapNotify_nTotalSI, tvb, *offsetp, 2, byte_order);
26902 *offsetp += 2;
26903 UNUSED(16);
26906 static void xkbBellNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26908 int f_xkbType;
26909 int f_sequence;
26910 int f_time;
26911 int f_deviceID;
26912 int f_bellClass;
26913 int f_bellID;
26914 int f_percent;
26915 int f_pitch;
26916 int f_duration;
26917 int f_name;
26918 int f_window;
26919 int f_eventOnly;
26920 f_xkbType = VALUE8(tvb, *offsetp);
26921 proto_tree_add_item(t, hf_x11_xkb_BellNotify_xkbType, tvb, *offsetp, 1, byte_order);
26922 *offsetp += 1;
26923 CARD16(event_sequencenumber);
26924 f_sequence = VALUE16(tvb, *offsetp);
26925 proto_tree_add_item(t, hf_x11_xkb_BellNotify_sequence, tvb, *offsetp, 2, byte_order);
26926 *offsetp += 2;
26927 f_time = VALUE32(tvb, *offsetp);
26928 proto_tree_add_item(t, hf_x11_xkb_BellNotify_time, tvb, *offsetp, 4, byte_order);
26929 *offsetp += 4;
26930 f_deviceID = VALUE8(tvb, *offsetp);
26931 proto_tree_add_item(t, hf_x11_xkb_BellNotify_deviceID, tvb, *offsetp, 1, byte_order);
26932 *offsetp += 1;
26933 f_bellClass = field8(tvb, offsetp, t, hf_x11_xkb_BellNotify_bellClass, byte_order);
26934 f_bellID = VALUE8(tvb, *offsetp);
26935 proto_tree_add_item(t, hf_x11_xkb_BellNotify_bellID, tvb, *offsetp, 1, byte_order);
26936 *offsetp += 1;
26937 f_percent = VALUE8(tvb, *offsetp);
26938 proto_tree_add_item(t, hf_x11_xkb_BellNotify_percent, tvb, *offsetp, 1, byte_order);
26939 *offsetp += 1;
26940 f_pitch = VALUE16(tvb, *offsetp);
26941 proto_tree_add_item(t, hf_x11_xkb_BellNotify_pitch, tvb, *offsetp, 2, byte_order);
26942 *offsetp += 2;
26943 f_duration = VALUE16(tvb, *offsetp);
26944 proto_tree_add_item(t, hf_x11_xkb_BellNotify_duration, tvb, *offsetp, 2, byte_order);
26945 *offsetp += 2;
26946 f_name = VALUE32(tvb, *offsetp);
26947 proto_tree_add_item(t, hf_x11_xkb_BellNotify_name, tvb, *offsetp, 4, byte_order);
26948 *offsetp += 4;
26949 f_window = VALUE32(tvb, *offsetp);
26950 proto_tree_add_item(t, hf_x11_xkb_BellNotify_window, tvb, *offsetp, 4, byte_order);
26951 *offsetp += 4;
26952 f_eventOnly = VALUE8(tvb, *offsetp);
26953 proto_tree_add_item(t, hf_x11_xkb_BellNotify_eventOnly, tvb, *offsetp, 1, byte_order);
26954 *offsetp += 1;
26955 UNUSED(7);
26958 static void xkbActionMessage(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
26960 int f_xkbType;
26961 int f_sequence;
26962 int f_time;
26963 int f_deviceID;
26964 int f_keycode;
26965 int f_press;
26966 int f_keyEventFollows;
26967 int f_mods;
26968 int f_group;
26969 f_xkbType = VALUE8(tvb, *offsetp);
26970 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_xkbType, tvb, *offsetp, 1, byte_order);
26971 *offsetp += 1;
26972 CARD16(event_sequencenumber);
26973 f_sequence = VALUE16(tvb, *offsetp);
26974 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_sequence, tvb, *offsetp, 2, byte_order);
26975 *offsetp += 2;
26976 f_time = VALUE32(tvb, *offsetp);
26977 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_time, tvb, *offsetp, 4, byte_order);
26978 *offsetp += 4;
26979 f_deviceID = VALUE8(tvb, *offsetp);
26980 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_deviceID, tvb, *offsetp, 1, byte_order);
26981 *offsetp += 1;
26982 f_keycode = VALUE8(tvb, *offsetp);
26983 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_keycode, tvb, *offsetp, 1, byte_order);
26984 *offsetp += 1;
26985 f_press = VALUE8(tvb, *offsetp);
26986 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_press, tvb, *offsetp, 1, byte_order);
26987 *offsetp += 1;
26988 f_keyEventFollows = VALUE8(tvb, *offsetp);
26989 proto_tree_add_item(t, hf_x11_xkb_ActionMessage_keyEventFollows, tvb, *offsetp, 1, byte_order);
26990 *offsetp += 1;
26991 f_mods = VALUE8(tvb, *offsetp);
26993 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ActionMessage_mods, tvb, *offsetp, 1, byte_order);
26994 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
26995 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_Shift, tvb, *offsetp, 1, byte_order);
26996 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_Lock, tvb, *offsetp, 1, byte_order);
26997 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_Control, tvb, *offsetp, 1, byte_order);
26998 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_1, tvb, *offsetp, 1, byte_order);
26999 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_2, tvb, *offsetp, 1, byte_order);
27000 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_3, tvb, *offsetp, 1, byte_order);
27001 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_4, tvb, *offsetp, 1, byte_order);
27002 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_5, tvb, *offsetp, 1, byte_order);
27003 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ActionMessage_mods_mask_Any, tvb, *offsetp, 1, byte_order);
27005 *offsetp += 1;
27006 f_group = field8(tvb, offsetp, t, hf_x11_xkb_ActionMessage_group, byte_order);
27007 listOfByte(tvb, offsetp, t, hf_x11_xkb_ActionMessage_message, 8, byte_order);
27008 UNUSED(10);
27011 static void xkbAccessXNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
27013 int f_xkbType;
27014 int f_sequence;
27015 int f_time;
27016 int f_deviceID;
27017 int f_keycode;
27018 int f_detailt;
27019 int f_slowKeysDelay;
27020 int f_debounceDelay;
27021 f_xkbType = VALUE8(tvb, *offsetp);
27022 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_xkbType, tvb, *offsetp, 1, byte_order);
27023 *offsetp += 1;
27024 CARD16(event_sequencenumber);
27025 f_sequence = VALUE16(tvb, *offsetp);
27026 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_sequence, tvb, *offsetp, 2, byte_order);
27027 *offsetp += 2;
27028 f_time = VALUE32(tvb, *offsetp);
27029 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_time, tvb, *offsetp, 4, byte_order);
27030 *offsetp += 4;
27031 f_deviceID = VALUE8(tvb, *offsetp);
27032 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_deviceID, tvb, *offsetp, 1, byte_order);
27033 *offsetp += 1;
27034 f_keycode = VALUE8(tvb, *offsetp);
27035 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_keycode, tvb, *offsetp, 1, byte_order);
27036 *offsetp += 1;
27037 f_detailt = VALUE16(tvb, *offsetp);
27039 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_detailt, tvb, *offsetp, 2, byte_order);
27040 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
27041 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_SKPress, tvb, *offsetp, 2, byte_order);
27042 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_SKAccept, tvb, *offsetp, 2, byte_order);
27043 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_SKReject, tvb, *offsetp, 2, byte_order);
27044 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_SKRelease, tvb, *offsetp, 2, byte_order);
27045 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_BKAccept, tvb, *offsetp, 2, byte_order);
27046 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_BKReject, tvb, *offsetp, 2, byte_order);
27047 proto_tree_add_item(bitmask_tree, hf_x11_xkb_AccessXNotify_detailt_mask_AXKWarning, tvb, *offsetp, 2, byte_order);
27049 *offsetp += 2;
27050 f_slowKeysDelay = VALUE16(tvb, *offsetp);
27051 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_slowKeysDelay, tvb, *offsetp, 2, byte_order);
27052 *offsetp += 2;
27053 f_debounceDelay = VALUE16(tvb, *offsetp);
27054 proto_tree_add_item(t, hf_x11_xkb_AccessXNotify_debounceDelay, tvb, *offsetp, 2, byte_order);
27055 *offsetp += 2;
27056 UNUSED(16);
27059 static void xkbExtensionDeviceNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
27061 int f_xkbType;
27062 int f_sequence;
27063 int f_time;
27064 int f_deviceID;
27065 int f_reason;
27066 int f_ledClass;
27067 int f_ledID;
27068 int f_ledsDefined;
27069 int f_ledState;
27070 int f_firstButton;
27071 int f_nButtons;
27072 int f_supported;
27073 int f_unsupported;
27074 f_xkbType = VALUE8(tvb, *offsetp);
27075 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_xkbType, tvb, *offsetp, 1, byte_order);
27076 *offsetp += 1;
27077 CARD16(event_sequencenumber);
27078 f_sequence = VALUE16(tvb, *offsetp);
27079 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_sequence, tvb, *offsetp, 2, byte_order);
27080 *offsetp += 2;
27081 f_time = VALUE32(tvb, *offsetp);
27082 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_time, tvb, *offsetp, 4, byte_order);
27083 *offsetp += 4;
27084 f_deviceID = VALUE8(tvb, *offsetp);
27085 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_deviceID, tvb, *offsetp, 1, byte_order);
27086 *offsetp += 1;
27087 UNUSED(1);
27088 f_reason = VALUE16(tvb, *offsetp);
27090 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_reason, tvb, *offsetp, 2, byte_order);
27091 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
27092 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_reason_mask_Keyboards, tvb, *offsetp, 2, byte_order);
27093 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_reason_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
27094 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
27095 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
27096 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_reason_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
27098 *offsetp += 2;
27099 f_ledClass = field16(tvb, offsetp, t, hf_x11_xkb_ExtensionDeviceNotify_ledClass, byte_order);
27100 f_ledID = VALUE8(tvb, *offsetp);
27101 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_ledID, tvb, *offsetp, 1, byte_order);
27102 *offsetp += 1;
27103 f_ledsDefined = VALUE32(tvb, *offsetp);
27104 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_ledsDefined, tvb, *offsetp, 4, byte_order);
27105 *offsetp += 4;
27106 f_ledState = VALUE32(tvb, *offsetp);
27107 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_ledState, tvb, *offsetp, 4, byte_order);
27108 *offsetp += 4;
27109 f_firstButton = VALUE8(tvb, *offsetp);
27110 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_firstButton, tvb, *offsetp, 1, byte_order);
27111 *offsetp += 1;
27112 f_nButtons = VALUE8(tvb, *offsetp);
27113 proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_nButtons, tvb, *offsetp, 1, byte_order);
27114 *offsetp += 1;
27115 f_supported = VALUE16(tvb, *offsetp);
27117 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_supported, tvb, *offsetp, 2, byte_order);
27118 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
27119 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_supported_mask_Keyboards, tvb, *offsetp, 2, byte_order);
27120 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_supported_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
27121 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
27122 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
27123 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_supported_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
27125 *offsetp += 2;
27126 f_unsupported = VALUE16(tvb, *offsetp);
27128 proto_item *ti = proto_tree_add_item(t, hf_x11_xkb_ExtensionDeviceNotify_unsupported, tvb, *offsetp, 2, byte_order);
27129 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
27130 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_Keyboards, tvb, *offsetp, 2, byte_order);
27131 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_ButtonActions, tvb, *offsetp, 2, byte_order);
27132 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorNames, tvb, *offsetp, 2, byte_order);
27133 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorMaps, tvb, *offsetp, 2, byte_order);
27134 proto_tree_add_item(bitmask_tree, hf_x11_xkb_ExtensionDeviceNotify_unsupported_mask_IndicatorState, tvb, *offsetp, 2, byte_order);
27136 *offsetp += 2;
27137 UNUSED(2);
27139 static const value_string xkb_extension_minor[] = {
27140 { 0, "UseExtension" },
27141 { 1, "SelectEvents" },
27142 { 3, "Bell" },
27143 { 4, "GetState" },
27144 { 5, "LatchLockState" },
27145 { 6, "GetControls" },
27146 { 7, "SetControls" },
27147 { 8, "GetMap" },
27148 { 9, "SetMap" },
27149 { 10, "GetCompatMap" },
27150 { 11, "SetCompatMap" },
27151 { 12, "GetIndicatorState" },
27152 { 13, "GetIndicatorMap" },
27153 { 14, "SetIndicatorMap" },
27154 { 15, "GetNamedIndicator" },
27155 { 16, "SetNamedIndicator" },
27156 { 17, "GetNames" },
27157 { 18, "SetNames" },
27158 { 19, "GetGeometry" },
27159 { 20, "SetGeometry" },
27160 { 21, "PerClientFlags" },
27161 { 22, "ListComponents" },
27162 { 23, "GetKbdByName" },
27163 { 24, "GetDeviceInfo" },
27164 { 25, "SetDeviceInfo" },
27165 { 101, "SetDebuggingFlags" },
27166 { 0, NULL }
27168 const x11_event_info xkb_events[] = {
27169 { "xkb-NewKeyboardNotify", xkbNewKeyboardNotify },
27170 { "xkb-MapNotify", xkbMapNotify },
27171 { "xkb-StateNotify", xkbStateNotify },
27172 { "xkb-ControlsNotify", xkbControlsNotify },
27173 { "xkb-IndicatorStateNotify", xkbIndicatorStateNotify },
27174 { "xkb-IndicatorMapNotify", xkbIndicatorMapNotify },
27175 { "xkb-NamesNotify", xkbNamesNotify },
27176 { "xkb-CompatMapNotify", xkbCompatMapNotify },
27177 { "xkb-BellNotify", xkbBellNotify },
27178 { "xkb-ActionMessage", xkbActionMessage },
27179 { "xkb-AccessXNotify", xkbAccessXNotify },
27180 { "xkb-ExtensionDeviceNotify", xkbExtensionDeviceNotify },
27181 { NULL, NULL }
27183 static x11_reply_info xkb_replies[] = {
27184 { 0, xkbUseExtension_Reply },
27185 { 4, xkbGetState_Reply },
27186 { 6, xkbGetControls_Reply },
27187 { 8, xkbGetMap_Reply },
27188 { 10, xkbGetCompatMap_Reply },
27189 { 12, xkbGetIndicatorState_Reply },
27190 { 13, xkbGetIndicatorMap_Reply },
27191 { 15, xkbGetNamedIndicator_Reply },
27192 { 17, xkbGetNames_Reply },
27193 { 19, xkbGetGeometry_Reply },
27194 { 21, xkbPerClientFlags_Reply },
27195 { 22, xkbListComponents_Reply },
27196 { 23, xkbGetKbdByName_Reply },
27197 { 24, xkbGetDeviceInfo_Reply },
27198 { 101, xkbSetDebuggingFlags_Reply },
27199 { 0, NULL }
27202 static void dispatch_xkb(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27204 int minor, length;
27205 minor = CARD8(xkb_extension_minor);
27206 length = REQUEST_LENGTH();
27208 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
27209 val_to_str(minor, xkb_extension_minor,
27210 "<Unknown opcode %d>"));
27211 switch (minor) {
27212 case 0:
27213 xkbUseExtension(tvb, pinfo, offsetp, t, byte_order, length);
27214 break;
27215 case 1:
27216 xkbSelectEvents(tvb, pinfo, offsetp, t, byte_order, length);
27217 break;
27218 case 3:
27219 xkbBell(tvb, pinfo, offsetp, t, byte_order, length);
27220 break;
27221 case 4:
27222 xkbGetState(tvb, pinfo, offsetp, t, byte_order, length);
27223 break;
27224 case 5:
27225 xkbLatchLockState(tvb, pinfo, offsetp, t, byte_order, length);
27226 break;
27227 case 6:
27228 xkbGetControls(tvb, pinfo, offsetp, t, byte_order, length);
27229 break;
27230 case 7:
27231 xkbSetControls(tvb, pinfo, offsetp, t, byte_order, length);
27232 break;
27233 case 8:
27234 xkbGetMap(tvb, pinfo, offsetp, t, byte_order, length);
27235 break;
27236 case 9:
27237 xkbSetMap(tvb, pinfo, offsetp, t, byte_order, length);
27238 break;
27239 case 10:
27240 xkbGetCompatMap(tvb, pinfo, offsetp, t, byte_order, length);
27241 break;
27242 case 11:
27243 xkbSetCompatMap(tvb, pinfo, offsetp, t, byte_order, length);
27244 break;
27245 case 12:
27246 xkbGetIndicatorState(tvb, pinfo, offsetp, t, byte_order, length);
27247 break;
27248 case 13:
27249 xkbGetIndicatorMap(tvb, pinfo, offsetp, t, byte_order, length);
27250 break;
27251 case 14:
27252 xkbSetIndicatorMap(tvb, pinfo, offsetp, t, byte_order, length);
27253 break;
27254 case 15:
27255 xkbGetNamedIndicator(tvb, pinfo, offsetp, t, byte_order, length);
27256 break;
27257 case 16:
27258 xkbSetNamedIndicator(tvb, pinfo, offsetp, t, byte_order, length);
27259 break;
27260 case 17:
27261 xkbGetNames(tvb, pinfo, offsetp, t, byte_order, length);
27262 break;
27263 case 18:
27264 xkbSetNames(tvb, pinfo, offsetp, t, byte_order, length);
27265 break;
27266 case 19:
27267 xkbGetGeometry(tvb, pinfo, offsetp, t, byte_order, length);
27268 break;
27269 case 20:
27270 xkbSetGeometry(tvb, pinfo, offsetp, t, byte_order, length);
27271 break;
27272 case 21:
27273 xkbPerClientFlags(tvb, pinfo, offsetp, t, byte_order, length);
27274 break;
27275 case 22:
27276 xkbListComponents(tvb, pinfo, offsetp, t, byte_order, length);
27277 break;
27278 case 23:
27279 xkbGetKbdByName(tvb, pinfo, offsetp, t, byte_order, length);
27280 break;
27281 case 24:
27282 xkbGetDeviceInfo(tvb, pinfo, offsetp, t, byte_order, length);
27283 break;
27284 case 25:
27285 xkbSetDeviceInfo(tvb, pinfo, offsetp, t, byte_order, length);
27286 break;
27287 case 101:
27288 xkbSetDebuggingFlags(tvb, pinfo, offsetp, t, byte_order, length);
27289 break;
27290 /* No need for a default case here, since Unknown is printed above,
27291 and UNDECODED() is taken care of by dissect_x11_request */
27295 static void register_xkb(void)
27297 set_handler("XKEYBOARD", dispatch_xkb, xkb_errors, xkb_events, xkb_replies);
27300 static int struct_size_PRINTER(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
27302 int size = 0;
27303 int f_nameLen;
27304 int f_descLen;
27305 f_nameLen = VALUE32(tvb, *offsetp + size + 0);
27306 size += f_nameLen * 1;
27307 f_descLen = VALUE32(tvb, *offsetp + size + 4);
27308 size += f_descLen * 1;
27309 return size + 8;
27312 static void struct_PRINTER(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
27314 int i;
27315 for (i = 0; i < count; i++) {
27316 proto_item *item;
27317 proto_tree *t;
27318 int f_nameLen;
27319 int f_descLen;
27321 item = proto_tree_add_item(root, hf_x11_struct_PRINTER, tvb, *offsetp, struct_size_PRINTER(tvb, offsetp, byte_order), ENC_NA);
27322 t = proto_item_add_subtree(item, ett_x11_rectangle);
27323 f_nameLen = VALUE32(tvb, *offsetp);
27324 proto_tree_add_item(t, hf_x11_struct_PRINTER_nameLen, tvb, *offsetp, 4, byte_order);
27325 *offsetp += 4;
27326 listOfByte(tvb, offsetp, t, hf_x11_struct_PRINTER_name, f_nameLen, byte_order);
27327 f_descLen = VALUE32(tvb, *offsetp);
27328 proto_tree_add_item(t, hf_x11_struct_PRINTER_descLen, tvb, *offsetp, 4, byte_order);
27329 *offsetp += 4;
27330 listOfByte(tvb, offsetp, t, hf_x11_struct_PRINTER_description, f_descLen, byte_order);
27334 static void xprintPrintQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
27337 static void xprintPrintQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27339 int f_length, length, sequence_number;
27340 int f_major_version;
27341 int f_minor_version;
27343 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintQueryVersion");
27345 REPLY(reply);
27346 UNUSED(1);
27347 sequence_number = VALUE16(tvb, *offsetp);
27348 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27349 "sequencenumber: %d (xprint-PrintQueryVersion)", sequence_number);
27350 *offsetp += 2;
27351 f_length = VALUE32(tvb, *offsetp);
27352 length = f_length * 4 + 32;
27353 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27354 *offsetp += 4;
27355 f_major_version = VALUE16(tvb, *offsetp);
27356 proto_tree_add_item(t, hf_x11_xprint_PrintQueryVersion_reply_major_version, tvb, *offsetp, 2, byte_order);
27357 *offsetp += 2;
27358 f_minor_version = VALUE16(tvb, *offsetp);
27359 proto_tree_add_item(t, hf_x11_xprint_PrintQueryVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
27360 *offsetp += 2;
27363 static void xprintPrintGetPrinterList(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27365 int f_printerNameLen;
27366 int f_localeLen;
27367 f_printerNameLen = VALUE32(tvb, *offsetp);
27368 proto_tree_add_item(t, hf_x11_xprint_PrintGetPrinterList_printerNameLen, tvb, *offsetp, 4, byte_order);
27369 *offsetp += 4;
27370 f_localeLen = VALUE32(tvb, *offsetp);
27371 proto_tree_add_item(t, hf_x11_xprint_PrintGetPrinterList_localeLen, tvb, *offsetp, 4, byte_order);
27372 *offsetp += 4;
27373 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintGetPrinterList_printer_name, f_printerNameLen, byte_order);
27374 length -= f_printerNameLen * 1;
27375 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintGetPrinterList_locale, f_localeLen, byte_order);
27376 length -= f_localeLen * 1;
27378 static void xprintPrintGetPrinterList_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27380 int f_length, length, sequence_number;
27381 int f_listCount;
27383 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetPrinterList");
27385 REPLY(reply);
27386 UNUSED(1);
27387 sequence_number = VALUE16(tvb, *offsetp);
27388 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27389 "sequencenumber: %d (xprint-PrintGetPrinterList)", sequence_number);
27390 *offsetp += 2;
27391 f_length = VALUE32(tvb, *offsetp);
27392 length = f_length * 4 + 32;
27393 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27394 *offsetp += 4;
27395 f_listCount = VALUE32(tvb, *offsetp);
27396 proto_tree_add_item(t, hf_x11_xprint_PrintGetPrinterList_reply_listCount, tvb, *offsetp, 4, byte_order);
27397 *offsetp += 4;
27398 UNUSED(20);
27399 struct_PRINTER(tvb, offsetp, t, byte_order, f_listCount);
27402 static void xprintPrintRehashPrinterList(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
27406 static void xprintCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27408 int f_context_id;
27409 int f_printerNameLen;
27410 int f_localeLen;
27411 f_context_id = VALUE32(tvb, *offsetp);
27412 proto_tree_add_item(t, hf_x11_xprint_CreateContext_context_id, tvb, *offsetp, 4, byte_order);
27413 *offsetp += 4;
27414 f_printerNameLen = VALUE32(tvb, *offsetp);
27415 proto_tree_add_item(t, hf_x11_xprint_CreateContext_printerNameLen, tvb, *offsetp, 4, byte_order);
27416 *offsetp += 4;
27417 f_localeLen = VALUE32(tvb, *offsetp);
27418 proto_tree_add_item(t, hf_x11_xprint_CreateContext_localeLen, tvb, *offsetp, 4, byte_order);
27419 *offsetp += 4;
27420 listOfByte(tvb, offsetp, t, hf_x11_xprint_CreateContext_printerName, f_printerNameLen, byte_order);
27421 length -= f_printerNameLen * 1;
27422 listOfByte(tvb, offsetp, t, hf_x11_xprint_CreateContext_locale, f_localeLen, byte_order);
27423 length -= f_localeLen * 1;
27426 static void xprintPrintSetContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27428 int f_context;
27429 f_context = VALUE32(tvb, *offsetp);
27430 proto_tree_add_item(t, hf_x11_xprint_PrintSetContext_context, tvb, *offsetp, 4, byte_order);
27431 *offsetp += 4;
27434 static void xprintPrintGetContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
27437 static void xprintPrintGetContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27439 int f_length, length, sequence_number;
27440 int f_context;
27442 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetContext");
27444 REPLY(reply);
27445 UNUSED(1);
27446 sequence_number = VALUE16(tvb, *offsetp);
27447 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27448 "sequencenumber: %d (xprint-PrintGetContext)", sequence_number);
27449 *offsetp += 2;
27450 f_length = VALUE32(tvb, *offsetp);
27451 length = f_length * 4 + 32;
27452 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27453 *offsetp += 4;
27454 f_context = VALUE32(tvb, *offsetp);
27455 proto_tree_add_item(t, hf_x11_xprint_PrintGetContext_reply_context, tvb, *offsetp, 4, byte_order);
27456 *offsetp += 4;
27459 static void xprintPrintDestroyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27461 int f_context;
27462 f_context = VALUE32(tvb, *offsetp);
27463 proto_tree_add_item(t, hf_x11_xprint_PrintDestroyContext_context, tvb, *offsetp, 4, byte_order);
27464 *offsetp += 4;
27467 static void xprintPrintGetScreenOfContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
27470 static void xprintPrintGetScreenOfContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27472 int f_length, length, sequence_number;
27473 int f_root;
27475 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetScreenOfContext");
27477 REPLY(reply);
27478 UNUSED(1);
27479 sequence_number = VALUE16(tvb, *offsetp);
27480 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27481 "sequencenumber: %d (xprint-PrintGetScreenOfContext)", sequence_number);
27482 *offsetp += 2;
27483 f_length = VALUE32(tvb, *offsetp);
27484 length = f_length * 4 + 32;
27485 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27486 *offsetp += 4;
27487 f_root = VALUE32(tvb, *offsetp);
27488 proto_tree_add_item(t, hf_x11_xprint_PrintGetScreenOfContext_reply_root, tvb, *offsetp, 4, byte_order);
27489 *offsetp += 4;
27492 static void xprintPrintStartJob(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27494 int f_output_mode;
27495 f_output_mode = VALUE8(tvb, *offsetp);
27496 proto_tree_add_item(t, hf_x11_xprint_PrintStartJob_output_mode, tvb, *offsetp, 1, byte_order);
27497 *offsetp += 1;
27500 static void xprintPrintEndJob(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27502 int f_cancel;
27503 f_cancel = VALUE8(tvb, *offsetp);
27504 proto_tree_add_item(t, hf_x11_xprint_PrintEndJob_cancel, tvb, *offsetp, 1, byte_order);
27505 *offsetp += 1;
27508 static void xprintPrintStartDoc(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27510 int f_driver_mode;
27511 f_driver_mode = VALUE8(tvb, *offsetp);
27512 proto_tree_add_item(t, hf_x11_xprint_PrintStartDoc_driver_mode, tvb, *offsetp, 1, byte_order);
27513 *offsetp += 1;
27516 static void xprintPrintEndDoc(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27518 int f_cancel;
27519 f_cancel = VALUE8(tvb, *offsetp);
27520 proto_tree_add_item(t, hf_x11_xprint_PrintEndDoc_cancel, tvb, *offsetp, 1, byte_order);
27521 *offsetp += 1;
27524 static void xprintPrintPutDocumentData(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27526 int f_drawable;
27527 int f_len_data;
27528 int f_len_fmt;
27529 int f_len_options;
27530 f_drawable = VALUE32(tvb, *offsetp);
27531 proto_tree_add_item(t, hf_x11_xprint_PrintPutDocumentData_drawable, tvb, *offsetp, 4, byte_order);
27532 *offsetp += 4;
27533 f_len_data = VALUE32(tvb, *offsetp);
27534 proto_tree_add_item(t, hf_x11_xprint_PrintPutDocumentData_len_data, tvb, *offsetp, 4, byte_order);
27535 *offsetp += 4;
27536 f_len_fmt = VALUE16(tvb, *offsetp);
27537 proto_tree_add_item(t, hf_x11_xprint_PrintPutDocumentData_len_fmt, tvb, *offsetp, 2, byte_order);
27538 *offsetp += 2;
27539 f_len_options = VALUE16(tvb, *offsetp);
27540 proto_tree_add_item(t, hf_x11_xprint_PrintPutDocumentData_len_options, tvb, *offsetp, 2, byte_order);
27541 *offsetp += 2;
27542 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintPutDocumentData_data, f_len_data, byte_order);
27543 length -= f_len_data * 1;
27544 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintPutDocumentData_doc_format, (length - 16) / 1, byte_order);
27545 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintPutDocumentData_options, (length - 16) / 1, byte_order);
27548 static void xprintPrintGetDocumentData(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27550 int f_context;
27551 int f_max_bytes;
27552 f_context = VALUE32(tvb, *offsetp);
27553 proto_tree_add_item(t, hf_x11_xprint_PrintGetDocumentData_context, tvb, *offsetp, 4, byte_order);
27554 *offsetp += 4;
27555 f_max_bytes = VALUE32(tvb, *offsetp);
27556 proto_tree_add_item(t, hf_x11_xprint_PrintGetDocumentData_max_bytes, tvb, *offsetp, 4, byte_order);
27557 *offsetp += 4;
27559 static void xprintPrintGetDocumentData_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27561 int f_length, length, sequence_number;
27562 int f_status_code;
27563 int f_finished_flag;
27564 int f_dataLen;
27566 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetDocumentData");
27568 REPLY(reply);
27569 UNUSED(1);
27570 sequence_number = VALUE16(tvb, *offsetp);
27571 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27572 "sequencenumber: %d (xprint-PrintGetDocumentData)", sequence_number);
27573 *offsetp += 2;
27574 f_length = VALUE32(tvb, *offsetp);
27575 length = f_length * 4 + 32;
27576 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27577 *offsetp += 4;
27578 f_status_code = VALUE32(tvb, *offsetp);
27579 proto_tree_add_item(t, hf_x11_xprint_PrintGetDocumentData_reply_status_code, tvb, *offsetp, 4, byte_order);
27580 *offsetp += 4;
27581 f_finished_flag = VALUE32(tvb, *offsetp);
27582 proto_tree_add_item(t, hf_x11_xprint_PrintGetDocumentData_reply_finished_flag, tvb, *offsetp, 4, byte_order);
27583 *offsetp += 4;
27584 f_dataLen = VALUE32(tvb, *offsetp);
27585 proto_tree_add_item(t, hf_x11_xprint_PrintGetDocumentData_reply_dataLen, tvb, *offsetp, 4, byte_order);
27586 *offsetp += 4;
27587 UNUSED(12);
27588 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintGetDocumentData_reply_data, f_dataLen, byte_order);
27591 static void xprintPrintStartPage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27593 int f_window;
27594 f_window = VALUE32(tvb, *offsetp);
27595 proto_tree_add_item(t, hf_x11_xprint_PrintStartPage_window, tvb, *offsetp, 4, byte_order);
27596 *offsetp += 4;
27599 static void xprintPrintEndPage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27601 int f_cancel;
27602 f_cancel = VALUE8(tvb, *offsetp);
27603 proto_tree_add_item(t, hf_x11_xprint_PrintEndPage_cancel, tvb, *offsetp, 1, byte_order);
27604 *offsetp += 1;
27605 UNUSED(3);
27608 static void xprintPrintSelectInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27610 int f_context;
27611 f_context = VALUE32(tvb, *offsetp);
27612 proto_tree_add_item(t, hf_x11_xprint_PrintSelectInput_context, tvb, *offsetp, 4, byte_order);
27613 *offsetp += 4;
27616 static void xprintPrintInputSelected(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27618 int f_context;
27619 f_context = VALUE32(tvb, *offsetp);
27620 proto_tree_add_item(t, hf_x11_xprint_PrintInputSelected_context, tvb, *offsetp, 4, byte_order);
27621 *offsetp += 4;
27623 static void xprintPrintInputSelected_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27625 int f_length, length, sequence_number;
27627 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintInputSelected");
27629 REPLY(reply);
27630 UNUSED(1);
27631 sequence_number = VALUE16(tvb, *offsetp);
27632 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27633 "sequencenumber: %d (xprint-PrintInputSelected)", sequence_number);
27634 *offsetp += 2;
27635 f_length = VALUE32(tvb, *offsetp);
27636 length = f_length * 4 + 32;
27637 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27638 *offsetp += 4;
27641 static void xprintPrintGetAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27643 int f_context;
27644 int f_pool;
27645 f_context = VALUE32(tvb, *offsetp);
27646 proto_tree_add_item(t, hf_x11_xprint_PrintGetAttributes_context, tvb, *offsetp, 4, byte_order);
27647 *offsetp += 4;
27648 f_pool = VALUE8(tvb, *offsetp);
27649 proto_tree_add_item(t, hf_x11_xprint_PrintGetAttributes_pool, tvb, *offsetp, 1, byte_order);
27650 *offsetp += 1;
27651 UNUSED(3);
27653 static void xprintPrintGetAttributes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27655 int f_length, length, sequence_number;
27656 int f_stringLen;
27657 int f_attributes;
27659 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetAttributes");
27661 REPLY(reply);
27662 UNUSED(1);
27663 sequence_number = VALUE16(tvb, *offsetp);
27664 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27665 "sequencenumber: %d (xprint-PrintGetAttributes)", sequence_number);
27666 *offsetp += 2;
27667 f_length = VALUE32(tvb, *offsetp);
27668 length = f_length * 4 + 32;
27669 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27670 *offsetp += 4;
27671 f_stringLen = VALUE32(tvb, *offsetp);
27672 proto_tree_add_item(t, hf_x11_xprint_PrintGetAttributes_reply_stringLen, tvb, *offsetp, 4, byte_order);
27673 *offsetp += 4;
27674 UNUSED(20);
27675 f_attributes = VALUE8(tvb, *offsetp);
27676 proto_tree_add_item(t, hf_x11_xprint_PrintGetAttributes_reply_attributes, tvb, *offsetp, 1, ENC_ASCII|ENC_NA);
27677 *offsetp += 1;
27680 static void xprintPrintGetOneAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27682 int f_context;
27683 int f_nameLen;
27684 int f_pool;
27685 f_context = VALUE32(tvb, *offsetp);
27686 proto_tree_add_item(t, hf_x11_xprint_PrintGetOneAttributes_context, tvb, *offsetp, 4, byte_order);
27687 *offsetp += 4;
27688 f_nameLen = VALUE32(tvb, *offsetp);
27689 proto_tree_add_item(t, hf_x11_xprint_PrintGetOneAttributes_nameLen, tvb, *offsetp, 4, byte_order);
27690 *offsetp += 4;
27691 f_pool = VALUE8(tvb, *offsetp);
27692 proto_tree_add_item(t, hf_x11_xprint_PrintGetOneAttributes_pool, tvb, *offsetp, 1, byte_order);
27693 *offsetp += 1;
27694 UNUSED(3);
27695 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintGetOneAttributes_name, f_nameLen, byte_order);
27696 length -= f_nameLen * 1;
27698 static void xprintPrintGetOneAttributes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27700 int f_length, length, sequence_number;
27701 int f_valueLen;
27703 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetOneAttributes");
27705 REPLY(reply);
27706 UNUSED(1);
27707 sequence_number = VALUE16(tvb, *offsetp);
27708 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27709 "sequencenumber: %d (xprint-PrintGetOneAttributes)", sequence_number);
27710 *offsetp += 2;
27711 f_length = VALUE32(tvb, *offsetp);
27712 length = f_length * 4 + 32;
27713 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27714 *offsetp += 4;
27715 f_valueLen = VALUE32(tvb, *offsetp);
27716 proto_tree_add_item(t, hf_x11_xprint_PrintGetOneAttributes_reply_valueLen, tvb, *offsetp, 4, byte_order);
27717 *offsetp += 4;
27718 UNUSED(20);
27719 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintGetOneAttributes_reply_value, f_valueLen, byte_order);
27722 static void xprintPrintSetAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27724 int f_context;
27725 int f_stringLen;
27726 int f_pool;
27727 int f_rule;
27728 f_context = VALUE32(tvb, *offsetp);
27729 proto_tree_add_item(t, hf_x11_xprint_PrintSetAttributes_context, tvb, *offsetp, 4, byte_order);
27730 *offsetp += 4;
27731 f_stringLen = VALUE32(tvb, *offsetp);
27732 proto_tree_add_item(t, hf_x11_xprint_PrintSetAttributes_stringLen, tvb, *offsetp, 4, byte_order);
27733 *offsetp += 4;
27734 f_pool = VALUE8(tvb, *offsetp);
27735 proto_tree_add_item(t, hf_x11_xprint_PrintSetAttributes_pool, tvb, *offsetp, 1, byte_order);
27736 *offsetp += 1;
27737 f_rule = VALUE8(tvb, *offsetp);
27738 proto_tree_add_item(t, hf_x11_xprint_PrintSetAttributes_rule, tvb, *offsetp, 1, byte_order);
27739 *offsetp += 1;
27740 UNUSED(2);
27741 listOfByte(tvb, offsetp, t, hf_x11_xprint_PrintSetAttributes_attributes, (length - 16) / 1, byte_order);
27744 static void xprintPrintGetPageDimensions(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27746 int f_context;
27747 f_context = VALUE32(tvb, *offsetp);
27748 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_context, tvb, *offsetp, 4, byte_order);
27749 *offsetp += 4;
27751 static void xprintPrintGetPageDimensions_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27753 int f_length, length, sequence_number;
27754 int f_width;
27755 int f_height;
27756 int f_offset_x;
27757 int f_offset_y;
27758 int f_reproducible_width;
27759 int f_reproducible_height;
27761 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetPageDimensions");
27763 REPLY(reply);
27764 UNUSED(1);
27765 sequence_number = VALUE16(tvb, *offsetp);
27766 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27767 "sequencenumber: %d (xprint-PrintGetPageDimensions)", sequence_number);
27768 *offsetp += 2;
27769 f_length = VALUE32(tvb, *offsetp);
27770 length = f_length * 4 + 32;
27771 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27772 *offsetp += 4;
27773 f_width = VALUE16(tvb, *offsetp);
27774 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_width, tvb, *offsetp, 2, byte_order);
27775 *offsetp += 2;
27776 f_height = VALUE16(tvb, *offsetp);
27777 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_height, tvb, *offsetp, 2, byte_order);
27778 *offsetp += 2;
27779 f_offset_x = VALUE16(tvb, *offsetp);
27780 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_offset_x, tvb, *offsetp, 2, byte_order);
27781 *offsetp += 2;
27782 f_offset_y = VALUE16(tvb, *offsetp);
27783 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_offset_y, tvb, *offsetp, 2, byte_order);
27784 *offsetp += 2;
27785 f_reproducible_width = VALUE16(tvb, *offsetp);
27786 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_reproducible_width, tvb, *offsetp, 2, byte_order);
27787 *offsetp += 2;
27788 f_reproducible_height = VALUE16(tvb, *offsetp);
27789 proto_tree_add_item(t, hf_x11_xprint_PrintGetPageDimensions_reply_reproducible_height, tvb, *offsetp, 2, byte_order);
27790 *offsetp += 2;
27793 static void xprintPrintQueryScreens(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
27796 static void xprintPrintQueryScreens_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27798 int f_length, length, sequence_number;
27799 int f_listCount;
27801 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintQueryScreens");
27803 REPLY(reply);
27804 UNUSED(1);
27805 sequence_number = VALUE16(tvb, *offsetp);
27806 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27807 "sequencenumber: %d (xprint-PrintQueryScreens)", sequence_number);
27808 *offsetp += 2;
27809 f_length = VALUE32(tvb, *offsetp);
27810 length = f_length * 4 + 32;
27811 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27812 *offsetp += 4;
27813 f_listCount = VALUE32(tvb, *offsetp);
27814 proto_tree_add_item(t, hf_x11_xprint_PrintQueryScreens_reply_listCount, tvb, *offsetp, 4, byte_order);
27815 *offsetp += 4;
27816 UNUSED(20);
27817 listOfCard32(tvb, offsetp, t, hf_x11_xprint_PrintQueryScreens_reply_roots, hf_x11_xprint_PrintQueryScreens_reply_roots_item, f_listCount, byte_order);
27820 static void xprintPrintSetImageResolution(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27822 int f_context;
27823 int f_image_resolution;
27824 f_context = VALUE32(tvb, *offsetp);
27825 proto_tree_add_item(t, hf_x11_xprint_PrintSetImageResolution_context, tvb, *offsetp, 4, byte_order);
27826 *offsetp += 4;
27827 f_image_resolution = VALUE16(tvb, *offsetp);
27828 proto_tree_add_item(t, hf_x11_xprint_PrintSetImageResolution_image_resolution, tvb, *offsetp, 2, byte_order);
27829 *offsetp += 2;
27831 static void xprintPrintSetImageResolution_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27833 int f_length, length, sequence_number;
27834 int f_status;
27835 int f_previous_resolutions;
27837 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintSetImageResolution");
27839 REPLY(reply);
27840 f_status = VALUE8(tvb, *offsetp);
27841 proto_tree_add_item(t, hf_x11_xprint_PrintSetImageResolution_reply_status, tvb, *offsetp, 1, byte_order);
27842 *offsetp += 1;
27843 sequence_number = VALUE16(tvb, *offsetp);
27844 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27845 "sequencenumber: %d (xprint-PrintSetImageResolution)", sequence_number);
27846 *offsetp += 2;
27847 f_length = VALUE32(tvb, *offsetp);
27848 length = f_length * 4 + 32;
27849 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27850 *offsetp += 4;
27851 f_previous_resolutions = VALUE16(tvb, *offsetp);
27852 proto_tree_add_item(t, hf_x11_xprint_PrintSetImageResolution_reply_previous_resolutions, tvb, *offsetp, 2, byte_order);
27853 *offsetp += 2;
27856 static void xprintPrintGetImageResolution(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
27858 int f_context;
27859 f_context = VALUE32(tvb, *offsetp);
27860 proto_tree_add_item(t, hf_x11_xprint_PrintGetImageResolution_context, tvb, *offsetp, 4, byte_order);
27861 *offsetp += 4;
27863 static void xprintPrintGetImageResolution_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27865 int f_length, length, sequence_number;
27866 int f_image_resolution;
27868 col_append_fstr(pinfo->cinfo, COL_INFO, "-PrintGetImageResolution");
27870 REPLY(reply);
27871 UNUSED(1);
27872 sequence_number = VALUE16(tvb, *offsetp);
27873 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
27874 "sequencenumber: %d (xprint-PrintGetImageResolution)", sequence_number);
27875 *offsetp += 2;
27876 f_length = VALUE32(tvb, *offsetp);
27877 length = f_length * 4 + 32;
27878 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
27879 *offsetp += 4;
27880 f_image_resolution = VALUE16(tvb, *offsetp);
27881 proto_tree_add_item(t, hf_x11_xprint_PrintGetImageResolution_reply_image_resolution, tvb, *offsetp, 2, byte_order);
27882 *offsetp += 2;
27885 static void xprintNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
27887 int f_detail;
27888 int f_context;
27889 int f_cancel;
27890 f_detail = VALUE8(tvb, *offsetp);
27891 proto_tree_add_item(t, hf_x11_xprint_Notify_detail, tvb, *offsetp, 1, byte_order);
27892 *offsetp += 1;
27893 CARD16(event_sequencenumber);
27894 f_context = VALUE32(tvb, *offsetp);
27895 proto_tree_add_item(t, hf_x11_xprint_Notify_context, tvb, *offsetp, 4, byte_order);
27896 *offsetp += 4;
27897 f_cancel = VALUE8(tvb, *offsetp);
27898 proto_tree_add_item(t, hf_x11_xprint_Notify_cancel, tvb, *offsetp, 1, byte_order);
27899 *offsetp += 1;
27902 static void xprintAttributNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
27904 int f_detail;
27905 int f_context;
27906 f_detail = VALUE8(tvb, *offsetp);
27907 proto_tree_add_item(t, hf_x11_xprint_AttributNotify_detail, tvb, *offsetp, 1, byte_order);
27908 *offsetp += 1;
27909 CARD16(event_sequencenumber);
27910 f_context = VALUE32(tvb, *offsetp);
27911 proto_tree_add_item(t, hf_x11_xprint_AttributNotify_context, tvb, *offsetp, 4, byte_order);
27912 *offsetp += 4;
27914 static const value_string xprint_extension_minor[] = {
27915 { 0, "PrintQueryVersion" },
27916 { 1, "PrintGetPrinterList" },
27917 { 2, "CreateContext" },
27918 { 3, "PrintSetContext" },
27919 { 4, "PrintGetContext" },
27920 { 5, "PrintDestroyContext" },
27921 { 6, "PrintGetScreenOfContext" },
27922 { 7, "PrintStartJob" },
27923 { 8, "PrintEndJob" },
27924 { 9, "PrintStartDoc" },
27925 { 10, "PrintEndDoc" },
27926 { 11, "PrintPutDocumentData" },
27927 { 12, "PrintGetDocumentData" },
27928 { 13, "PrintStartPage" },
27929 { 14, "PrintEndPage" },
27930 { 15, "PrintSelectInput" },
27931 { 16, "PrintInputSelected" },
27932 { 17, "PrintGetAttributes" },
27933 { 18, "PrintSetAttributes" },
27934 { 19, "PrintGetOneAttributes" },
27935 { 20, "PrintRehashPrinterList" },
27936 { 21, "PrintGetPageDimensions" },
27937 { 22, "PrintQueryScreens" },
27938 { 23, "PrintSetImageResolution" },
27939 { 24, "PrintGetImageResolution" },
27940 { 0, NULL }
27942 const x11_event_info xprint_events[] = {
27943 { "xprint-Notify", xprintNotify },
27944 { "xprint-AttributNotify", xprintAttributNotify },
27945 { NULL, NULL }
27947 static x11_reply_info xprint_replies[] = {
27948 { 0, xprintPrintQueryVersion_Reply },
27949 { 1, xprintPrintGetPrinterList_Reply },
27950 { 4, xprintPrintGetContext_Reply },
27951 { 6, xprintPrintGetScreenOfContext_Reply },
27952 { 12, xprintPrintGetDocumentData_Reply },
27953 { 16, xprintPrintInputSelected_Reply },
27954 { 17, xprintPrintGetAttributes_Reply },
27955 { 19, xprintPrintGetOneAttributes_Reply },
27956 { 21, xprintPrintGetPageDimensions_Reply },
27957 { 22, xprintPrintQueryScreens_Reply },
27958 { 23, xprintPrintSetImageResolution_Reply },
27959 { 24, xprintPrintGetImageResolution_Reply },
27960 { 0, NULL }
27963 static void dispatch_xprint(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
27965 int minor, length;
27966 minor = CARD8(xprint_extension_minor);
27967 length = REQUEST_LENGTH();
27969 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
27970 val_to_str(minor, xprint_extension_minor,
27971 "<Unknown opcode %d>"));
27972 switch (minor) {
27973 case 0:
27974 xprintPrintQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
27975 break;
27976 case 1:
27977 xprintPrintGetPrinterList(tvb, pinfo, offsetp, t, byte_order, length);
27978 break;
27979 case 2:
27980 xprintCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
27981 break;
27982 case 3:
27983 xprintPrintSetContext(tvb, pinfo, offsetp, t, byte_order, length);
27984 break;
27985 case 4:
27986 xprintPrintGetContext(tvb, pinfo, offsetp, t, byte_order, length);
27987 break;
27988 case 5:
27989 xprintPrintDestroyContext(tvb, pinfo, offsetp, t, byte_order, length);
27990 break;
27991 case 6:
27992 xprintPrintGetScreenOfContext(tvb, pinfo, offsetp, t, byte_order, length);
27993 break;
27994 case 7:
27995 xprintPrintStartJob(tvb, pinfo, offsetp, t, byte_order, length);
27996 break;
27997 case 8:
27998 xprintPrintEndJob(tvb, pinfo, offsetp, t, byte_order, length);
27999 break;
28000 case 9:
28001 xprintPrintStartDoc(tvb, pinfo, offsetp, t, byte_order, length);
28002 break;
28003 case 10:
28004 xprintPrintEndDoc(tvb, pinfo, offsetp, t, byte_order, length);
28005 break;
28006 case 11:
28007 xprintPrintPutDocumentData(tvb, pinfo, offsetp, t, byte_order, length);
28008 break;
28009 case 12:
28010 xprintPrintGetDocumentData(tvb, pinfo, offsetp, t, byte_order, length);
28011 break;
28012 case 13:
28013 xprintPrintStartPage(tvb, pinfo, offsetp, t, byte_order, length);
28014 break;
28015 case 14:
28016 xprintPrintEndPage(tvb, pinfo, offsetp, t, byte_order, length);
28017 break;
28018 case 15:
28019 xprintPrintSelectInput(tvb, pinfo, offsetp, t, byte_order, length);
28020 break;
28021 case 16:
28022 xprintPrintInputSelected(tvb, pinfo, offsetp, t, byte_order, length);
28023 break;
28024 case 17:
28025 xprintPrintGetAttributes(tvb, pinfo, offsetp, t, byte_order, length);
28026 break;
28027 case 18:
28028 xprintPrintSetAttributes(tvb, pinfo, offsetp, t, byte_order, length);
28029 break;
28030 case 19:
28031 xprintPrintGetOneAttributes(tvb, pinfo, offsetp, t, byte_order, length);
28032 break;
28033 case 20:
28034 xprintPrintRehashPrinterList(tvb, pinfo, offsetp, t, byte_order, length);
28035 break;
28036 case 21:
28037 xprintPrintGetPageDimensions(tvb, pinfo, offsetp, t, byte_order, length);
28038 break;
28039 case 22:
28040 xprintPrintQueryScreens(tvb, pinfo, offsetp, t, byte_order, length);
28041 break;
28042 case 23:
28043 xprintPrintSetImageResolution(tvb, pinfo, offsetp, t, byte_order, length);
28044 break;
28045 case 24:
28046 xprintPrintGetImageResolution(tvb, pinfo, offsetp, t, byte_order, length);
28047 break;
28048 /* No need for a default case here, since Unknown is printed above,
28049 and UNDECODED() is taken care of by dissect_x11_request */
28053 static void register_xprint(void)
28055 set_handler("XpExtension", dispatch_xprint, xprint_errors, xprint_events, xprint_replies);
28058 static void xselinuxQueryVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28060 int f_client_major;
28061 int f_client_minor;
28062 f_client_major = VALUE8(tvb, *offsetp);
28063 proto_tree_add_item(t, hf_x11_xselinux_QueryVersion_client_major, tvb, *offsetp, 1, byte_order);
28064 *offsetp += 1;
28065 f_client_minor = VALUE8(tvb, *offsetp);
28066 proto_tree_add_item(t, hf_x11_xselinux_QueryVersion_client_minor, tvb, *offsetp, 1, byte_order);
28067 *offsetp += 1;
28069 static void xselinuxQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28071 int f_length, length, sequence_number;
28072 int f_server_major;
28073 int f_server_minor;
28075 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
28077 REPLY(reply);
28078 UNUSED(1);
28079 sequence_number = VALUE16(tvb, *offsetp);
28080 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28081 "sequencenumber: %d (xselinux-QueryVersion)", sequence_number);
28082 *offsetp += 2;
28083 f_length = VALUE32(tvb, *offsetp);
28084 length = f_length * 4 + 32;
28085 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28086 *offsetp += 4;
28087 f_server_major = VALUE16(tvb, *offsetp);
28088 proto_tree_add_item(t, hf_x11_xselinux_QueryVersion_reply_server_major, tvb, *offsetp, 2, byte_order);
28089 *offsetp += 2;
28090 f_server_minor = VALUE16(tvb, *offsetp);
28091 proto_tree_add_item(t, hf_x11_xselinux_QueryVersion_reply_server_minor, tvb, *offsetp, 2, byte_order);
28092 *offsetp += 2;
28095 static void xselinuxSetDeviceCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28097 int f_context_len;
28098 f_context_len = VALUE32(tvb, *offsetp);
28099 proto_tree_add_item(t, hf_x11_xselinux_SetDeviceCreateContext_context_len, tvb, *offsetp, 4, byte_order);
28100 *offsetp += 4;
28101 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetDeviceCreateContext_context, f_context_len, byte_order);
28102 length -= f_context_len * 1;
28105 static void xselinuxGetDeviceCreateContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28108 static void xselinuxGetDeviceCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28110 int f_length, length, sequence_number;
28111 int f_context_len;
28113 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceCreateContext");
28115 REPLY(reply);
28116 UNUSED(1);
28117 sequence_number = VALUE16(tvb, *offsetp);
28118 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28119 "sequencenumber: %d (xselinux-GetDeviceCreateContext)", sequence_number);
28120 *offsetp += 2;
28121 f_length = VALUE32(tvb, *offsetp);
28122 length = f_length * 4 + 32;
28123 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28124 *offsetp += 4;
28125 f_context_len = VALUE32(tvb, *offsetp);
28126 proto_tree_add_item(t, hf_x11_xselinux_GetDeviceCreateContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28127 *offsetp += 4;
28128 UNUSED(20);
28129 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetDeviceCreateContext_reply_context, f_context_len, byte_order);
28132 static void xselinuxSetDeviceContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28134 int f_device;
28135 int f_context_len;
28136 f_device = VALUE32(tvb, *offsetp);
28137 proto_tree_add_item(t, hf_x11_xselinux_SetDeviceContext_device, tvb, *offsetp, 4, byte_order);
28138 *offsetp += 4;
28139 f_context_len = VALUE32(tvb, *offsetp);
28140 proto_tree_add_item(t, hf_x11_xselinux_SetDeviceContext_context_len, tvb, *offsetp, 4, byte_order);
28141 *offsetp += 4;
28142 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetDeviceContext_context, f_context_len, byte_order);
28143 length -= f_context_len * 1;
28146 static void xselinuxGetDeviceContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28148 int f_device;
28149 f_device = VALUE32(tvb, *offsetp);
28150 proto_tree_add_item(t, hf_x11_xselinux_GetDeviceContext_device, tvb, *offsetp, 4, byte_order);
28151 *offsetp += 4;
28153 static void xselinuxGetDeviceContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28155 int f_length, length, sequence_number;
28156 int f_context_len;
28158 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetDeviceContext");
28160 REPLY(reply);
28161 UNUSED(1);
28162 sequence_number = VALUE16(tvb, *offsetp);
28163 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28164 "sequencenumber: %d (xselinux-GetDeviceContext)", sequence_number);
28165 *offsetp += 2;
28166 f_length = VALUE32(tvb, *offsetp);
28167 length = f_length * 4 + 32;
28168 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28169 *offsetp += 4;
28170 f_context_len = VALUE32(tvb, *offsetp);
28171 proto_tree_add_item(t, hf_x11_xselinux_GetDeviceContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28172 *offsetp += 4;
28173 UNUSED(20);
28174 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetDeviceContext_reply_context, f_context_len, byte_order);
28177 static void xselinuxSetWindowCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28179 int f_context_len;
28180 f_context_len = VALUE32(tvb, *offsetp);
28181 proto_tree_add_item(t, hf_x11_xselinux_SetWindowCreateContext_context_len, tvb, *offsetp, 4, byte_order);
28182 *offsetp += 4;
28183 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetWindowCreateContext_context, f_context_len, byte_order);
28184 length -= f_context_len * 1;
28187 static void xselinuxGetWindowCreateContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28190 static void xselinuxGetWindowCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28192 int f_length, length, sequence_number;
28193 int f_context_len;
28195 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetWindowCreateContext");
28197 REPLY(reply);
28198 UNUSED(1);
28199 sequence_number = VALUE16(tvb, *offsetp);
28200 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28201 "sequencenumber: %d (xselinux-GetWindowCreateContext)", sequence_number);
28202 *offsetp += 2;
28203 f_length = VALUE32(tvb, *offsetp);
28204 length = f_length * 4 + 32;
28205 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28206 *offsetp += 4;
28207 f_context_len = VALUE32(tvb, *offsetp);
28208 proto_tree_add_item(t, hf_x11_xselinux_GetWindowCreateContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28209 *offsetp += 4;
28210 UNUSED(20);
28211 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetWindowCreateContext_reply_context, f_context_len, byte_order);
28214 static void xselinuxGetWindowContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28216 int f_window;
28217 f_window = VALUE32(tvb, *offsetp);
28218 proto_tree_add_item(t, hf_x11_xselinux_GetWindowContext_window, tvb, *offsetp, 4, byte_order);
28219 *offsetp += 4;
28221 static void xselinuxGetWindowContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28223 int f_length, length, sequence_number;
28224 int f_context_len;
28226 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetWindowContext");
28228 REPLY(reply);
28229 UNUSED(1);
28230 sequence_number = VALUE16(tvb, *offsetp);
28231 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28232 "sequencenumber: %d (xselinux-GetWindowContext)", sequence_number);
28233 *offsetp += 2;
28234 f_length = VALUE32(tvb, *offsetp);
28235 length = f_length * 4 + 32;
28236 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28237 *offsetp += 4;
28238 f_context_len = VALUE32(tvb, *offsetp);
28239 proto_tree_add_item(t, hf_x11_xselinux_GetWindowContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28240 *offsetp += 4;
28241 UNUSED(20);
28242 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetWindowContext_reply_context, f_context_len, byte_order);
28245 static int struct_size_ListItem(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
28247 int size = 0;
28248 int f_object_context_len;
28249 int f_data_context_len;
28250 f_object_context_len = VALUE32(tvb, *offsetp + size + 4);
28251 f_data_context_len = VALUE32(tvb, *offsetp + size + 8);
28252 size += f_object_context_len * 1;
28253 size += f_data_context_len * 1;
28254 return size + 12;
28257 static void struct_ListItem(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
28259 int i;
28260 for (i = 0; i < count; i++) {
28261 proto_item *item;
28262 proto_tree *t;
28263 int f_name;
28264 int f_object_context_len;
28265 int f_data_context_len;
28267 item = proto_tree_add_item(root, hf_x11_struct_ListItem, tvb, *offsetp, struct_size_ListItem(tvb, offsetp, byte_order), ENC_NA);
28268 t = proto_item_add_subtree(item, ett_x11_rectangle);
28269 f_name = VALUE32(tvb, *offsetp);
28270 proto_tree_add_item(t, hf_x11_struct_ListItem_name, tvb, *offsetp, 4, byte_order);
28271 *offsetp += 4;
28272 f_object_context_len = VALUE32(tvb, *offsetp);
28273 proto_tree_add_item(t, hf_x11_struct_ListItem_object_context_len, tvb, *offsetp, 4, byte_order);
28274 *offsetp += 4;
28275 f_data_context_len = VALUE32(tvb, *offsetp);
28276 proto_tree_add_item(t, hf_x11_struct_ListItem_data_context_len, tvb, *offsetp, 4, byte_order);
28277 *offsetp += 4;
28278 listOfByte(tvb, offsetp, t, hf_x11_struct_ListItem_object_context, f_object_context_len, byte_order);
28279 listOfByte(tvb, offsetp, t, hf_x11_struct_ListItem_data_context, f_data_context_len, byte_order);
28283 static void xselinuxSetPropertyCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28285 int f_context_len;
28286 f_context_len = VALUE32(tvb, *offsetp);
28287 proto_tree_add_item(t, hf_x11_xselinux_SetPropertyCreateContext_context_len, tvb, *offsetp, 4, byte_order);
28288 *offsetp += 4;
28289 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetPropertyCreateContext_context, f_context_len, byte_order);
28290 length -= f_context_len * 1;
28293 static void xselinuxGetPropertyCreateContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28296 static void xselinuxGetPropertyCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28298 int f_length, length, sequence_number;
28299 int f_context_len;
28301 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPropertyCreateContext");
28303 REPLY(reply);
28304 UNUSED(1);
28305 sequence_number = VALUE16(tvb, *offsetp);
28306 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28307 "sequencenumber: %d (xselinux-GetPropertyCreateContext)", sequence_number);
28308 *offsetp += 2;
28309 f_length = VALUE32(tvb, *offsetp);
28310 length = f_length * 4 + 32;
28311 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28312 *offsetp += 4;
28313 f_context_len = VALUE32(tvb, *offsetp);
28314 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyCreateContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28315 *offsetp += 4;
28316 UNUSED(20);
28317 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetPropertyCreateContext_reply_context, f_context_len, byte_order);
28320 static void xselinuxSetPropertyUseContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28322 int f_context_len;
28323 f_context_len = VALUE32(tvb, *offsetp);
28324 proto_tree_add_item(t, hf_x11_xselinux_SetPropertyUseContext_context_len, tvb, *offsetp, 4, byte_order);
28325 *offsetp += 4;
28326 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetPropertyUseContext_context, f_context_len, byte_order);
28327 length -= f_context_len * 1;
28330 static void xselinuxGetPropertyUseContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28333 static void xselinuxGetPropertyUseContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28335 int f_length, length, sequence_number;
28336 int f_context_len;
28338 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPropertyUseContext");
28340 REPLY(reply);
28341 UNUSED(1);
28342 sequence_number = VALUE16(tvb, *offsetp);
28343 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28344 "sequencenumber: %d (xselinux-GetPropertyUseContext)", sequence_number);
28345 *offsetp += 2;
28346 f_length = VALUE32(tvb, *offsetp);
28347 length = f_length * 4 + 32;
28348 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28349 *offsetp += 4;
28350 f_context_len = VALUE32(tvb, *offsetp);
28351 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyUseContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28352 *offsetp += 4;
28353 UNUSED(20);
28354 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetPropertyUseContext_reply_context, f_context_len, byte_order);
28357 static void xselinuxGetPropertyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28359 int f_window;
28360 int f_property;
28361 f_window = VALUE32(tvb, *offsetp);
28362 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyContext_window, tvb, *offsetp, 4, byte_order);
28363 *offsetp += 4;
28364 f_property = VALUE32(tvb, *offsetp);
28365 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyContext_property, tvb, *offsetp, 4, byte_order);
28366 *offsetp += 4;
28368 static void xselinuxGetPropertyContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28370 int f_length, length, sequence_number;
28371 int f_context_len;
28373 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPropertyContext");
28375 REPLY(reply);
28376 UNUSED(1);
28377 sequence_number = VALUE16(tvb, *offsetp);
28378 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28379 "sequencenumber: %d (xselinux-GetPropertyContext)", sequence_number);
28380 *offsetp += 2;
28381 f_length = VALUE32(tvb, *offsetp);
28382 length = f_length * 4 + 32;
28383 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28384 *offsetp += 4;
28385 f_context_len = VALUE32(tvb, *offsetp);
28386 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28387 *offsetp += 4;
28388 UNUSED(20);
28389 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetPropertyContext_reply_context, f_context_len, byte_order);
28392 static void xselinuxGetPropertyDataContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28394 int f_window;
28395 int f_property;
28396 f_window = VALUE32(tvb, *offsetp);
28397 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyDataContext_window, tvb, *offsetp, 4, byte_order);
28398 *offsetp += 4;
28399 f_property = VALUE32(tvb, *offsetp);
28400 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyDataContext_property, tvb, *offsetp, 4, byte_order);
28401 *offsetp += 4;
28403 static void xselinuxGetPropertyDataContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28405 int f_length, length, sequence_number;
28406 int f_context_len;
28408 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPropertyDataContext");
28410 REPLY(reply);
28411 UNUSED(1);
28412 sequence_number = VALUE16(tvb, *offsetp);
28413 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28414 "sequencenumber: %d (xselinux-GetPropertyDataContext)", sequence_number);
28415 *offsetp += 2;
28416 f_length = VALUE32(tvb, *offsetp);
28417 length = f_length * 4 + 32;
28418 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28419 *offsetp += 4;
28420 f_context_len = VALUE32(tvb, *offsetp);
28421 proto_tree_add_item(t, hf_x11_xselinux_GetPropertyDataContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28422 *offsetp += 4;
28423 UNUSED(20);
28424 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetPropertyDataContext_reply_context, f_context_len, byte_order);
28427 static void xselinuxListProperties(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28429 int f_window;
28430 f_window = VALUE32(tvb, *offsetp);
28431 proto_tree_add_item(t, hf_x11_xselinux_ListProperties_window, tvb, *offsetp, 4, byte_order);
28432 *offsetp += 4;
28434 static void xselinuxListProperties_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28436 int f_length, length, sequence_number;
28437 int f_properties_len;
28439 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListProperties");
28441 REPLY(reply);
28442 UNUSED(1);
28443 sequence_number = VALUE16(tvb, *offsetp);
28444 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28445 "sequencenumber: %d (xselinux-ListProperties)", sequence_number);
28446 *offsetp += 2;
28447 f_length = VALUE32(tvb, *offsetp);
28448 length = f_length * 4 + 32;
28449 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28450 *offsetp += 4;
28451 f_properties_len = VALUE32(tvb, *offsetp);
28452 proto_tree_add_item(t, hf_x11_xselinux_ListProperties_reply_properties_len, tvb, *offsetp, 4, byte_order);
28453 *offsetp += 4;
28454 UNUSED(20);
28455 struct_ListItem(tvb, offsetp, t, byte_order, f_properties_len);
28458 static void xselinuxSetSelectionCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28460 int f_context_len;
28461 f_context_len = VALUE32(tvb, *offsetp);
28462 proto_tree_add_item(t, hf_x11_xselinux_SetSelectionCreateContext_context_len, tvb, *offsetp, 4, byte_order);
28463 *offsetp += 4;
28464 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetSelectionCreateContext_context, f_context_len, byte_order);
28465 length -= f_context_len * 1;
28468 static void xselinuxGetSelectionCreateContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28471 static void xselinuxGetSelectionCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28473 int f_length, length, sequence_number;
28474 int f_context_len;
28476 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSelectionCreateContext");
28478 REPLY(reply);
28479 UNUSED(1);
28480 sequence_number = VALUE16(tvb, *offsetp);
28481 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28482 "sequencenumber: %d (xselinux-GetSelectionCreateContext)", sequence_number);
28483 *offsetp += 2;
28484 f_length = VALUE32(tvb, *offsetp);
28485 length = f_length * 4 + 32;
28486 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28487 *offsetp += 4;
28488 f_context_len = VALUE32(tvb, *offsetp);
28489 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionCreateContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28490 *offsetp += 4;
28491 UNUSED(20);
28492 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetSelectionCreateContext_reply_context, f_context_len, byte_order);
28495 static void xselinuxSetSelectionUseContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28497 int f_context_len;
28498 f_context_len = VALUE32(tvb, *offsetp);
28499 proto_tree_add_item(t, hf_x11_xselinux_SetSelectionUseContext_context_len, tvb, *offsetp, 4, byte_order);
28500 *offsetp += 4;
28501 listOfByte(tvb, offsetp, t, hf_x11_xselinux_SetSelectionUseContext_context, f_context_len, byte_order);
28502 length -= f_context_len * 1;
28505 static void xselinuxGetSelectionUseContext(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28508 static void xselinuxGetSelectionUseContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28510 int f_length, length, sequence_number;
28511 int f_context_len;
28513 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSelectionUseContext");
28515 REPLY(reply);
28516 UNUSED(1);
28517 sequence_number = VALUE16(tvb, *offsetp);
28518 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28519 "sequencenumber: %d (xselinux-GetSelectionUseContext)", sequence_number);
28520 *offsetp += 2;
28521 f_length = VALUE32(tvb, *offsetp);
28522 length = f_length * 4 + 32;
28523 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28524 *offsetp += 4;
28525 f_context_len = VALUE32(tvb, *offsetp);
28526 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionUseContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28527 *offsetp += 4;
28528 UNUSED(20);
28529 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetSelectionUseContext_reply_context, f_context_len, byte_order);
28532 static void xselinuxGetSelectionContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28534 int f_selection;
28535 f_selection = VALUE32(tvb, *offsetp);
28536 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionContext_selection, tvb, *offsetp, 4, byte_order);
28537 *offsetp += 4;
28539 static void xselinuxGetSelectionContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28541 int f_length, length, sequence_number;
28542 int f_context_len;
28544 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSelectionContext");
28546 REPLY(reply);
28547 UNUSED(1);
28548 sequence_number = VALUE16(tvb, *offsetp);
28549 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28550 "sequencenumber: %d (xselinux-GetSelectionContext)", sequence_number);
28551 *offsetp += 2;
28552 f_length = VALUE32(tvb, *offsetp);
28553 length = f_length * 4 + 32;
28554 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28555 *offsetp += 4;
28556 f_context_len = VALUE32(tvb, *offsetp);
28557 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28558 *offsetp += 4;
28559 UNUSED(20);
28560 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetSelectionContext_reply_context, f_context_len, byte_order);
28563 static void xselinuxGetSelectionDataContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28565 int f_selection;
28566 f_selection = VALUE32(tvb, *offsetp);
28567 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionDataContext_selection, tvb, *offsetp, 4, byte_order);
28568 *offsetp += 4;
28570 static void xselinuxGetSelectionDataContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28572 int f_length, length, sequence_number;
28573 int f_context_len;
28575 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetSelectionDataContext");
28577 REPLY(reply);
28578 UNUSED(1);
28579 sequence_number = VALUE16(tvb, *offsetp);
28580 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28581 "sequencenumber: %d (xselinux-GetSelectionDataContext)", sequence_number);
28582 *offsetp += 2;
28583 f_length = VALUE32(tvb, *offsetp);
28584 length = f_length * 4 + 32;
28585 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28586 *offsetp += 4;
28587 f_context_len = VALUE32(tvb, *offsetp);
28588 proto_tree_add_item(t, hf_x11_xselinux_GetSelectionDataContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28589 *offsetp += 4;
28590 UNUSED(20);
28591 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetSelectionDataContext_reply_context, f_context_len, byte_order);
28594 static void xselinuxListSelections(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
28597 static void xselinuxListSelections_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28599 int f_length, length, sequence_number;
28600 int f_selections_len;
28602 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListSelections");
28604 REPLY(reply);
28605 UNUSED(1);
28606 sequence_number = VALUE16(tvb, *offsetp);
28607 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28608 "sequencenumber: %d (xselinux-ListSelections)", sequence_number);
28609 *offsetp += 2;
28610 f_length = VALUE32(tvb, *offsetp);
28611 length = f_length * 4 + 32;
28612 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28613 *offsetp += 4;
28614 f_selections_len = VALUE32(tvb, *offsetp);
28615 proto_tree_add_item(t, hf_x11_xselinux_ListSelections_reply_selections_len, tvb, *offsetp, 4, byte_order);
28616 *offsetp += 4;
28617 UNUSED(20);
28618 struct_ListItem(tvb, offsetp, t, byte_order, f_selections_len);
28621 static void xselinuxGetClientContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28623 int f_resource;
28624 f_resource = VALUE32(tvb, *offsetp);
28625 proto_tree_add_item(t, hf_x11_xselinux_GetClientContext_resource, tvb, *offsetp, 4, byte_order);
28626 *offsetp += 4;
28628 static void xselinuxGetClientContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28630 int f_length, length, sequence_number;
28631 int f_context_len;
28633 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetClientContext");
28635 REPLY(reply);
28636 UNUSED(1);
28637 sequence_number = VALUE16(tvb, *offsetp);
28638 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28639 "sequencenumber: %d (xselinux-GetClientContext)", sequence_number);
28640 *offsetp += 2;
28641 f_length = VALUE32(tvb, *offsetp);
28642 length = f_length * 4 + 32;
28643 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28644 *offsetp += 4;
28645 f_context_len = VALUE32(tvb, *offsetp);
28646 proto_tree_add_item(t, hf_x11_xselinux_GetClientContext_reply_context_len, tvb, *offsetp, 4, byte_order);
28647 *offsetp += 4;
28648 UNUSED(20);
28649 listOfByte(tvb, offsetp, t, hf_x11_xselinux_GetClientContext_reply_context, f_context_len, byte_order);
28651 static const value_string xselinux_extension_minor[] = {
28652 { 0, "QueryVersion" },
28653 { 1, "SetDeviceCreateContext" },
28654 { 2, "GetDeviceCreateContext" },
28655 { 3, "SetDeviceContext" },
28656 { 4, "GetDeviceContext" },
28657 { 5, "SetWindowCreateContext" },
28658 { 6, "GetWindowCreateContext" },
28659 { 7, "GetWindowContext" },
28660 { 8, "SetPropertyCreateContext" },
28661 { 9, "GetPropertyCreateContext" },
28662 { 10, "SetPropertyUseContext" },
28663 { 11, "GetPropertyUseContext" },
28664 { 12, "GetPropertyContext" },
28665 { 13, "GetPropertyDataContext" },
28666 { 14, "ListProperties" },
28667 { 15, "SetSelectionCreateContext" },
28668 { 16, "GetSelectionCreateContext" },
28669 { 17, "SetSelectionUseContext" },
28670 { 18, "GetSelectionUseContext" },
28671 { 19, "GetSelectionContext" },
28672 { 20, "GetSelectionDataContext" },
28673 { 21, "ListSelections" },
28674 { 22, "GetClientContext" },
28675 { 0, NULL }
28677 const x11_event_info xselinux_events[] = {
28678 { NULL, NULL }
28680 static x11_reply_info xselinux_replies[] = {
28681 { 0, xselinuxQueryVersion_Reply },
28682 { 2, xselinuxGetDeviceCreateContext_Reply },
28683 { 4, xselinuxGetDeviceContext_Reply },
28684 { 6, xselinuxGetWindowCreateContext_Reply },
28685 { 7, xselinuxGetWindowContext_Reply },
28686 { 9, xselinuxGetPropertyCreateContext_Reply },
28687 { 11, xselinuxGetPropertyUseContext_Reply },
28688 { 12, xselinuxGetPropertyContext_Reply },
28689 { 13, xselinuxGetPropertyDataContext_Reply },
28690 { 14, xselinuxListProperties_Reply },
28691 { 16, xselinuxGetSelectionCreateContext_Reply },
28692 { 18, xselinuxGetSelectionUseContext_Reply },
28693 { 19, xselinuxGetSelectionContext_Reply },
28694 { 20, xselinuxGetSelectionDataContext_Reply },
28695 { 21, xselinuxListSelections_Reply },
28696 { 22, xselinuxGetClientContext_Reply },
28697 { 0, NULL }
28700 static void dispatch_xselinux(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28702 int minor, length;
28703 minor = CARD8(xselinux_extension_minor);
28704 length = REQUEST_LENGTH();
28706 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
28707 val_to_str(minor, xselinux_extension_minor,
28708 "<Unknown opcode %d>"));
28709 switch (minor) {
28710 case 0:
28711 xselinuxQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
28712 break;
28713 case 1:
28714 xselinuxSetDeviceCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28715 break;
28716 case 2:
28717 xselinuxGetDeviceCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28718 break;
28719 case 3:
28720 xselinuxSetDeviceContext(tvb, pinfo, offsetp, t, byte_order, length);
28721 break;
28722 case 4:
28723 xselinuxGetDeviceContext(tvb, pinfo, offsetp, t, byte_order, length);
28724 break;
28725 case 5:
28726 xselinuxSetWindowCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28727 break;
28728 case 6:
28729 xselinuxGetWindowCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28730 break;
28731 case 7:
28732 xselinuxGetWindowContext(tvb, pinfo, offsetp, t, byte_order, length);
28733 break;
28734 case 8:
28735 xselinuxSetPropertyCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28736 break;
28737 case 9:
28738 xselinuxGetPropertyCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28739 break;
28740 case 10:
28741 xselinuxSetPropertyUseContext(tvb, pinfo, offsetp, t, byte_order, length);
28742 break;
28743 case 11:
28744 xselinuxGetPropertyUseContext(tvb, pinfo, offsetp, t, byte_order, length);
28745 break;
28746 case 12:
28747 xselinuxGetPropertyContext(tvb, pinfo, offsetp, t, byte_order, length);
28748 break;
28749 case 13:
28750 xselinuxGetPropertyDataContext(tvb, pinfo, offsetp, t, byte_order, length);
28751 break;
28752 case 14:
28753 xselinuxListProperties(tvb, pinfo, offsetp, t, byte_order, length);
28754 break;
28755 case 15:
28756 xselinuxSetSelectionCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28757 break;
28758 case 16:
28759 xselinuxGetSelectionCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
28760 break;
28761 case 17:
28762 xselinuxSetSelectionUseContext(tvb, pinfo, offsetp, t, byte_order, length);
28763 break;
28764 case 18:
28765 xselinuxGetSelectionUseContext(tvb, pinfo, offsetp, t, byte_order, length);
28766 break;
28767 case 19:
28768 xselinuxGetSelectionContext(tvb, pinfo, offsetp, t, byte_order, length);
28769 break;
28770 case 20:
28771 xselinuxGetSelectionDataContext(tvb, pinfo, offsetp, t, byte_order, length);
28772 break;
28773 case 21:
28774 xselinuxListSelections(tvb, pinfo, offsetp, t, byte_order, length);
28775 break;
28776 case 22:
28777 xselinuxGetClientContext(tvb, pinfo, offsetp, t, byte_order, length);
28778 break;
28779 /* No need for a default case here, since Unknown is printed above,
28780 and UNDECODED() is taken care of by dissect_x11_request */
28784 static void register_xselinux(void)
28786 set_handler("SELinux", dispatch_xselinux, xselinux_errors, xselinux_events, xselinux_replies);
28789 static void xtestGetVersion(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28791 int f_major_version;
28792 int f_minor_version;
28793 f_major_version = VALUE8(tvb, *offsetp);
28794 proto_tree_add_item(t, hf_x11_xtest_GetVersion_major_version, tvb, *offsetp, 1, byte_order);
28795 *offsetp += 1;
28796 UNUSED(1);
28797 f_minor_version = VALUE16(tvb, *offsetp);
28798 proto_tree_add_item(t, hf_x11_xtest_GetVersion_minor_version, tvb, *offsetp, 2, byte_order);
28799 *offsetp += 2;
28801 static void xtestGetVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28803 int f_length, length, sequence_number;
28804 int f_major_version;
28805 int f_minor_version;
28807 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetVersion");
28809 REPLY(reply);
28810 f_major_version = VALUE8(tvb, *offsetp);
28811 proto_tree_add_item(t, hf_x11_xtest_GetVersion_reply_major_version, tvb, *offsetp, 1, byte_order);
28812 *offsetp += 1;
28813 sequence_number = VALUE16(tvb, *offsetp);
28814 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28815 "sequencenumber: %d (xtest-GetVersion)", sequence_number);
28816 *offsetp += 2;
28817 f_length = VALUE32(tvb, *offsetp);
28818 length = f_length * 4 + 32;
28819 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28820 *offsetp += 4;
28821 f_minor_version = VALUE16(tvb, *offsetp);
28822 proto_tree_add_item(t, hf_x11_xtest_GetVersion_reply_minor_version, tvb, *offsetp, 2, byte_order);
28823 *offsetp += 2;
28826 static void xtestCompareCursor(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28828 int f_window;
28829 int f_cursor;
28830 f_window = VALUE32(tvb, *offsetp);
28831 proto_tree_add_item(t, hf_x11_xtest_CompareCursor_window, tvb, *offsetp, 4, byte_order);
28832 *offsetp += 4;
28833 f_cursor = VALUE32(tvb, *offsetp);
28834 proto_tree_add_item(t, hf_x11_xtest_CompareCursor_cursor, tvb, *offsetp, 4, byte_order);
28835 *offsetp += 4;
28837 static void xtestCompareCursor_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28839 int f_length, length, sequence_number;
28840 int f_same;
28842 col_append_fstr(pinfo->cinfo, COL_INFO, "-CompareCursor");
28844 REPLY(reply);
28845 f_same = VALUE8(tvb, *offsetp);
28846 proto_tree_add_item(t, hf_x11_xtest_CompareCursor_reply_same, tvb, *offsetp, 1, byte_order);
28847 *offsetp += 1;
28848 sequence_number = VALUE16(tvb, *offsetp);
28849 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
28850 "sequencenumber: %d (xtest-CompareCursor)", sequence_number);
28851 *offsetp += 2;
28852 f_length = VALUE32(tvb, *offsetp);
28853 length = f_length * 4 + 32;
28854 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
28855 *offsetp += 4;
28858 static void xtestFakeInput(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28860 int f_type;
28861 int f_detail;
28862 int f_time;
28863 int f_root;
28864 int f_rootX;
28865 int f_rootY;
28866 int f_deviceid;
28867 f_type = VALUE8(tvb, *offsetp);
28868 proto_tree_add_item(t, hf_x11_xtest_FakeInput_type, tvb, *offsetp, 1, ENC_NA);
28869 *offsetp += 1;
28870 f_detail = VALUE8(tvb, *offsetp);
28871 proto_tree_add_item(t, hf_x11_xtest_FakeInput_detail, tvb, *offsetp, 1, ENC_NA);
28872 *offsetp += 1;
28873 UNUSED(2);
28874 f_time = VALUE32(tvb, *offsetp);
28875 proto_tree_add_item(t, hf_x11_xtest_FakeInput_time, tvb, *offsetp, 4, byte_order);
28876 *offsetp += 4;
28877 f_root = VALUE32(tvb, *offsetp);
28878 proto_tree_add_item(t, hf_x11_xtest_FakeInput_root, tvb, *offsetp, 4, byte_order);
28879 *offsetp += 4;
28880 UNUSED(8);
28881 f_rootX = VALUE16(tvb, *offsetp);
28882 proto_tree_add_item(t, hf_x11_xtest_FakeInput_rootX, tvb, *offsetp, 2, byte_order);
28883 *offsetp += 2;
28884 f_rootY = VALUE16(tvb, *offsetp);
28885 proto_tree_add_item(t, hf_x11_xtest_FakeInput_rootY, tvb, *offsetp, 2, byte_order);
28886 *offsetp += 2;
28887 UNUSED(7);
28888 f_deviceid = VALUE8(tvb, *offsetp);
28889 proto_tree_add_item(t, hf_x11_xtest_FakeInput_deviceid, tvb, *offsetp, 1, byte_order);
28890 *offsetp += 1;
28893 static void xtestGrabControl(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
28895 int f_impervious;
28896 f_impervious = VALUE8(tvb, *offsetp);
28897 proto_tree_add_item(t, hf_x11_xtest_GrabControl_impervious, tvb, *offsetp, 1, byte_order);
28898 *offsetp += 1;
28899 UNUSED(3);
28901 static const value_string xtest_extension_minor[] = {
28902 { 0, "GetVersion" },
28903 { 1, "CompareCursor" },
28904 { 2, "FakeInput" },
28905 { 3, "GrabControl" },
28906 { 0, NULL }
28908 const x11_event_info xtest_events[] = {
28909 { NULL, NULL }
28911 static x11_reply_info xtest_replies[] = {
28912 { 0, xtestGetVersion_Reply },
28913 { 1, xtestCompareCursor_Reply },
28914 { 0, NULL }
28917 static void dispatch_xtest(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
28919 int minor, length;
28920 minor = CARD8(xtest_extension_minor);
28921 length = REQUEST_LENGTH();
28923 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
28924 val_to_str(minor, xtest_extension_minor,
28925 "<Unknown opcode %d>"));
28926 switch (minor) {
28927 case 0:
28928 xtestGetVersion(tvb, pinfo, offsetp, t, byte_order, length);
28929 break;
28930 case 1:
28931 xtestCompareCursor(tvb, pinfo, offsetp, t, byte_order, length);
28932 break;
28933 case 2:
28934 xtestFakeInput(tvb, pinfo, offsetp, t, byte_order, length);
28935 break;
28936 case 3:
28937 xtestGrabControl(tvb, pinfo, offsetp, t, byte_order, length);
28938 break;
28939 /* No need for a default case here, since Unknown is printed above,
28940 and UNDECODED() is taken care of by dissect_x11_request */
28944 static void register_xtest(void)
28946 set_handler("XTEST", dispatch_xtest, xtest_errors, xtest_events, xtest_replies);
28949 static void struct_Rational(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
28951 int i;
28952 for (i = 0; i < count; i++) {
28953 proto_item *item;
28954 proto_tree *t;
28955 int f_numerator;
28956 int f_denominator;
28958 item = proto_tree_add_item(root, hf_x11_struct_Rational, tvb, *offsetp, 8, ENC_NA);
28959 t = proto_item_add_subtree(item, ett_x11_rectangle);
28960 f_numerator = VALUE32(tvb, *offsetp);
28961 proto_tree_add_item(t, hf_x11_struct_Rational_numerator, tvb, *offsetp, 4, byte_order);
28962 *offsetp += 4;
28963 f_denominator = VALUE32(tvb, *offsetp);
28964 proto_tree_add_item(t, hf_x11_struct_Rational_denominator, tvb, *offsetp, 4, byte_order);
28965 *offsetp += 4;
28969 static void struct_Format(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
28971 int i;
28972 for (i = 0; i < count; i++) {
28973 proto_item *item;
28974 proto_tree *t;
28975 int f_visual;
28976 int f_depth;
28978 item = proto_tree_add_item(root, hf_x11_struct_Format, tvb, *offsetp, 8, ENC_NA);
28979 t = proto_item_add_subtree(item, ett_x11_rectangle);
28980 f_visual = VALUE32(tvb, *offsetp);
28981 proto_tree_add_item(t, hf_x11_struct_Format_visual, tvb, *offsetp, 4, byte_order);
28982 *offsetp += 4;
28983 f_depth = VALUE8(tvb, *offsetp);
28984 proto_tree_add_item(t, hf_x11_struct_Format_depth, tvb, *offsetp, 1, byte_order);
28985 *offsetp += 1;
28986 UNUSED(3);
28990 static int struct_size_AdaptorInfo(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
28992 int size = 0;
28993 int f_name_size;
28994 int f_num_formats;
28995 f_name_size = VALUE16(tvb, *offsetp + size + 4);
28996 f_num_formats = VALUE16(tvb, *offsetp + size + 8);
28997 size += f_name_size * 1;
28998 size += f_num_formats * 8;
28999 return size + 12;
29002 static void struct_AdaptorInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
29004 int i;
29005 for (i = 0; i < count; i++) {
29006 proto_item *item;
29007 proto_tree *t;
29008 int f_base_id;
29009 int f_name_size;
29010 int f_num_ports;
29011 int f_num_formats;
29012 int f_type;
29014 item = proto_tree_add_item(root, hf_x11_struct_AdaptorInfo, tvb, *offsetp, struct_size_AdaptorInfo(tvb, offsetp, byte_order), ENC_NA);
29015 t = proto_item_add_subtree(item, ett_x11_rectangle);
29016 f_base_id = VALUE32(tvb, *offsetp);
29017 proto_tree_add_item(t, hf_x11_struct_AdaptorInfo_base_id, tvb, *offsetp, 4, byte_order);
29018 *offsetp += 4;
29019 f_name_size = VALUE16(tvb, *offsetp);
29020 proto_tree_add_item(t, hf_x11_struct_AdaptorInfo_name_size, tvb, *offsetp, 2, byte_order);
29021 *offsetp += 2;
29022 f_num_ports = VALUE16(tvb, *offsetp);
29023 proto_tree_add_item(t, hf_x11_struct_AdaptorInfo_num_ports, tvb, *offsetp, 2, byte_order);
29024 *offsetp += 2;
29025 f_num_formats = VALUE16(tvb, *offsetp);
29026 proto_tree_add_item(t, hf_x11_struct_AdaptorInfo_num_formats, tvb, *offsetp, 2, byte_order);
29027 *offsetp += 2;
29028 f_type = VALUE8(tvb, *offsetp);
29030 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_AdaptorInfo_type, tvb, *offsetp, 1, byte_order);
29031 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
29032 proto_tree_add_item(bitmask_tree, hf_x11_struct_AdaptorInfo_type_mask_InputMask, tvb, *offsetp, 1, byte_order);
29033 proto_tree_add_item(bitmask_tree, hf_x11_struct_AdaptorInfo_type_mask_OutputMask, tvb, *offsetp, 1, byte_order);
29034 proto_tree_add_item(bitmask_tree, hf_x11_struct_AdaptorInfo_type_mask_VideoMask, tvb, *offsetp, 1, byte_order);
29035 proto_tree_add_item(bitmask_tree, hf_x11_struct_AdaptorInfo_type_mask_StillMask, tvb, *offsetp, 1, byte_order);
29036 proto_tree_add_item(bitmask_tree, hf_x11_struct_AdaptorInfo_type_mask_ImageMask, tvb, *offsetp, 1, byte_order);
29038 *offsetp += 1;
29039 UNUSED(1);
29040 listOfByte(tvb, offsetp, t, hf_x11_struct_AdaptorInfo_name, f_name_size, byte_order);
29041 struct_Format(tvb, offsetp, t, byte_order, f_num_formats);
29045 static int struct_size_EncodingInfo(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
29047 int size = 0;
29048 int f_name_size;
29049 f_name_size = VALUE16(tvb, *offsetp + size + 4);
29050 size += f_name_size * 1;
29051 return size + 20;
29054 static void struct_EncodingInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
29056 int i;
29057 for (i = 0; i < count; i++) {
29058 proto_item *item;
29059 proto_tree *t;
29060 int f_encoding;
29061 int f_name_size;
29062 int f_width;
29063 int f_height;
29065 item = proto_tree_add_item(root, hf_x11_struct_EncodingInfo, tvb, *offsetp, struct_size_EncodingInfo(tvb, offsetp, byte_order), ENC_NA);
29066 t = proto_item_add_subtree(item, ett_x11_rectangle);
29067 f_encoding = VALUE32(tvb, *offsetp);
29068 proto_tree_add_item(t, hf_x11_struct_EncodingInfo_encoding, tvb, *offsetp, 4, byte_order);
29069 *offsetp += 4;
29070 f_name_size = VALUE16(tvb, *offsetp);
29071 proto_tree_add_item(t, hf_x11_struct_EncodingInfo_name_size, tvb, *offsetp, 2, byte_order);
29072 *offsetp += 2;
29073 f_width = VALUE16(tvb, *offsetp);
29074 proto_tree_add_item(t, hf_x11_struct_EncodingInfo_width, tvb, *offsetp, 2, byte_order);
29075 *offsetp += 2;
29076 f_height = VALUE16(tvb, *offsetp);
29077 proto_tree_add_item(t, hf_x11_struct_EncodingInfo_height, tvb, *offsetp, 2, byte_order);
29078 *offsetp += 2;
29079 UNUSED(2);
29080 struct_Rational(tvb, offsetp, t, byte_order, 1);
29081 listOfByte(tvb, offsetp, t, hf_x11_struct_EncodingInfo_name, f_name_size, byte_order);
29085 static int struct_size_AttributeInfo(tvbuff_t *tvb, int *offsetp, guint byte_order _U_)
29087 int size = 0;
29088 int f_size;
29089 f_size = VALUE32(tvb, *offsetp + size + 12);
29090 size += f_size * 1;
29091 return size + 16;
29094 static void struct_AttributeInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
29096 int i;
29097 for (i = 0; i < count; i++) {
29098 proto_item *item;
29099 proto_tree *t;
29100 int f_flags;
29101 int f_min;
29102 int f_max;
29103 int f_size;
29105 item = proto_tree_add_item(root, hf_x11_struct_AttributeInfo, tvb, *offsetp, struct_size_AttributeInfo(tvb, offsetp, byte_order), ENC_NA);
29106 t = proto_item_add_subtree(item, ett_x11_rectangle);
29107 f_flags = VALUE32(tvb, *offsetp);
29109 proto_item *ti = proto_tree_add_item(t, hf_x11_struct_AttributeInfo_flags, tvb, *offsetp, 4, byte_order);
29110 proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);
29111 proto_tree_add_item(bitmask_tree, hf_x11_struct_AttributeInfo_flags_mask_Gettable, tvb, *offsetp, 4, byte_order);
29112 proto_tree_add_item(bitmask_tree, hf_x11_struct_AttributeInfo_flags_mask_Settable, tvb, *offsetp, 4, byte_order);
29114 *offsetp += 4;
29115 f_min = VALUE32(tvb, *offsetp);
29116 proto_tree_add_item(t, hf_x11_struct_AttributeInfo_min, tvb, *offsetp, 4, byte_order);
29117 *offsetp += 4;
29118 f_max = VALUE32(tvb, *offsetp);
29119 proto_tree_add_item(t, hf_x11_struct_AttributeInfo_max, tvb, *offsetp, 4, byte_order);
29120 *offsetp += 4;
29121 f_size = VALUE32(tvb, *offsetp);
29122 proto_tree_add_item(t, hf_x11_struct_AttributeInfo_size, tvb, *offsetp, 4, byte_order);
29123 *offsetp += 4;
29124 listOfByte(tvb, offsetp, t, hf_x11_struct_AttributeInfo_name, f_size, byte_order);
29128 static void struct_ImageFormatInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
29130 int i;
29131 for (i = 0; i < count; i++) {
29132 proto_item *item;
29133 proto_tree *t;
29134 int f_id;
29135 int f_type;
29136 int f_byte_order;
29137 int f_bpp;
29138 int f_num_planes;
29139 int f_depth;
29140 int f_red_mask;
29141 int f_green_mask;
29142 int f_blue_mask;
29143 int f_format;
29144 int f_y_sample_bits;
29145 int f_u_sample_bits;
29146 int f_v_sample_bits;
29147 int f_vhorz_y_period;
29148 int f_vhorz_u_period;
29149 int f_vhorz_v_period;
29150 int f_vvert_y_period;
29151 int f_vvert_u_period;
29152 int f_vvert_v_period;
29153 int f_vscanline_order;
29155 item = proto_tree_add_item(root, hf_x11_struct_ImageFormatInfo, tvb, *offsetp, 82, ENC_NA);
29156 t = proto_item_add_subtree(item, ett_x11_rectangle);
29157 f_id = VALUE32(tvb, *offsetp);
29158 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_id, tvb, *offsetp, 4, byte_order);
29159 *offsetp += 4;
29160 f_type = field8(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_type, byte_order);
29161 f_byte_order = field8(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_byte_order, byte_order);
29162 UNUSED(2);
29163 listOfByte(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_guid, 16, byte_order);
29164 f_bpp = VALUE8(tvb, *offsetp);
29165 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_bpp, tvb, *offsetp, 1, byte_order);
29166 *offsetp += 1;
29167 f_num_planes = VALUE8(tvb, *offsetp);
29168 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_num_planes, tvb, *offsetp, 1, byte_order);
29169 *offsetp += 1;
29170 UNUSED(2);
29171 f_depth = VALUE8(tvb, *offsetp);
29172 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_depth, tvb, *offsetp, 1, byte_order);
29173 *offsetp += 1;
29174 UNUSED(3);
29175 f_red_mask = VALUE32(tvb, *offsetp);
29176 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_red_mask, tvb, *offsetp, 4, byte_order);
29177 *offsetp += 4;
29178 f_green_mask = VALUE32(tvb, *offsetp);
29179 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_green_mask, tvb, *offsetp, 4, byte_order);
29180 *offsetp += 4;
29181 f_blue_mask = VALUE32(tvb, *offsetp);
29182 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_blue_mask, tvb, *offsetp, 4, byte_order);
29183 *offsetp += 4;
29184 f_format = field8(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_format, byte_order);
29185 UNUSED(3);
29186 f_y_sample_bits = VALUE32(tvb, *offsetp);
29187 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_y_sample_bits, tvb, *offsetp, 4, byte_order);
29188 *offsetp += 4;
29189 f_u_sample_bits = VALUE32(tvb, *offsetp);
29190 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_u_sample_bits, tvb, *offsetp, 4, byte_order);
29191 *offsetp += 4;
29192 f_v_sample_bits = VALUE32(tvb, *offsetp);
29193 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_v_sample_bits, tvb, *offsetp, 4, byte_order);
29194 *offsetp += 4;
29195 f_vhorz_y_period = VALUE32(tvb, *offsetp);
29196 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vhorz_y_period, tvb, *offsetp, 4, byte_order);
29197 *offsetp += 4;
29198 f_vhorz_u_period = VALUE32(tvb, *offsetp);
29199 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vhorz_u_period, tvb, *offsetp, 4, byte_order);
29200 *offsetp += 4;
29201 f_vhorz_v_period = VALUE32(tvb, *offsetp);
29202 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vhorz_v_period, tvb, *offsetp, 4, byte_order);
29203 *offsetp += 4;
29204 f_vvert_y_period = VALUE32(tvb, *offsetp);
29205 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vvert_y_period, tvb, *offsetp, 4, byte_order);
29206 *offsetp += 4;
29207 f_vvert_u_period = VALUE32(tvb, *offsetp);
29208 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vvert_u_period, tvb, *offsetp, 4, byte_order);
29209 *offsetp += 4;
29210 f_vvert_v_period = VALUE32(tvb, *offsetp);
29211 proto_tree_add_item(t, hf_x11_struct_ImageFormatInfo_vvert_v_period, tvb, *offsetp, 4, byte_order);
29212 *offsetp += 4;
29213 listOfByte(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_vcomp_order, 32, byte_order);
29214 f_vscanline_order = field8(tvb, offsetp, t, hf_x11_struct_ImageFormatInfo_vscanline_order, byte_order);
29215 UNUSED(11);
29219 static void xvVideoNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
29221 int f_reason;
29222 int f_time;
29223 int f_drawable;
29224 int f_port;
29225 f_reason = field8(tvb, offsetp, t, hf_x11_xv_VideoNotify_reason, byte_order);
29226 CARD16(event_sequencenumber);
29227 f_time = VALUE32(tvb, *offsetp);
29228 proto_tree_add_item(t, hf_x11_xv_VideoNotify_time, tvb, *offsetp, 4, byte_order);
29229 *offsetp += 4;
29230 f_drawable = VALUE32(tvb, *offsetp);
29231 proto_tree_add_item(t, hf_x11_xv_VideoNotify_drawable, tvb, *offsetp, 4, byte_order);
29232 *offsetp += 4;
29233 f_port = VALUE32(tvb, *offsetp);
29234 proto_tree_add_item(t, hf_x11_xv_VideoNotify_port, tvb, *offsetp, 4, byte_order);
29235 *offsetp += 4;
29238 static void xvPortNotify(tvbuff_t *tvb, int *offsetp, proto_tree *t, guint byte_order)
29240 int f_time;
29241 int f_port;
29242 int f_attribute;
29243 int f_value;
29244 UNUSED(1);
29245 CARD16(event_sequencenumber);
29246 f_time = VALUE32(tvb, *offsetp);
29247 proto_tree_add_item(t, hf_x11_xv_PortNotify_time, tvb, *offsetp, 4, byte_order);
29248 *offsetp += 4;
29249 f_port = VALUE32(tvb, *offsetp);
29250 proto_tree_add_item(t, hf_x11_xv_PortNotify_port, tvb, *offsetp, 4, byte_order);
29251 *offsetp += 4;
29252 f_attribute = VALUE32(tvb, *offsetp);
29253 proto_tree_add_item(t, hf_x11_xv_PortNotify_attribute, tvb, *offsetp, 4, byte_order);
29254 *offsetp += 4;
29255 f_value = VALUE32(tvb, *offsetp);
29256 proto_tree_add_item(t, hf_x11_xv_PortNotify_value, tvb, *offsetp, 4, byte_order);
29257 *offsetp += 4;
29260 static void xvQueryExtension(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
29263 static void xvQueryExtension_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29265 int f_length, length, sequence_number;
29266 int f_major;
29267 int f_minor;
29269 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryExtension");
29271 REPLY(reply);
29272 UNUSED(1);
29273 sequence_number = VALUE16(tvb, *offsetp);
29274 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29275 "sequencenumber: %d (xv-QueryExtension)", sequence_number);
29276 *offsetp += 2;
29277 f_length = VALUE32(tvb, *offsetp);
29278 length = f_length * 4 + 32;
29279 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29280 *offsetp += 4;
29281 f_major = VALUE16(tvb, *offsetp);
29282 proto_tree_add_item(t, hf_x11_xv_QueryExtension_reply_major, tvb, *offsetp, 2, byte_order);
29283 *offsetp += 2;
29284 f_minor = VALUE16(tvb, *offsetp);
29285 proto_tree_add_item(t, hf_x11_xv_QueryExtension_reply_minor, tvb, *offsetp, 2, byte_order);
29286 *offsetp += 2;
29289 static void xvQueryAdaptors(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29291 int f_window;
29292 f_window = VALUE32(tvb, *offsetp);
29293 proto_tree_add_item(t, hf_x11_xv_QueryAdaptors_window, tvb, *offsetp, 4, byte_order);
29294 *offsetp += 4;
29296 static void xvQueryAdaptors_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29298 int f_length, length, sequence_number;
29299 int f_num_adaptors;
29301 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryAdaptors");
29303 REPLY(reply);
29304 UNUSED(1);
29305 sequence_number = VALUE16(tvb, *offsetp);
29306 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29307 "sequencenumber: %d (xv-QueryAdaptors)", sequence_number);
29308 *offsetp += 2;
29309 f_length = VALUE32(tvb, *offsetp);
29310 length = f_length * 4 + 32;
29311 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29312 *offsetp += 4;
29313 f_num_adaptors = VALUE16(tvb, *offsetp);
29314 proto_tree_add_item(t, hf_x11_xv_QueryAdaptors_reply_num_adaptors, tvb, *offsetp, 2, byte_order);
29315 *offsetp += 2;
29316 UNUSED(22);
29317 struct_AdaptorInfo(tvb, offsetp, t, byte_order, f_num_adaptors);
29320 static void xvQueryEncodings(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29322 int f_port;
29323 f_port = VALUE32(tvb, *offsetp);
29324 proto_tree_add_item(t, hf_x11_xv_QueryEncodings_port, tvb, *offsetp, 4, byte_order);
29325 *offsetp += 4;
29327 static void xvQueryEncodings_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29329 int f_length, length, sequence_number;
29330 int f_num_encodings;
29332 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryEncodings");
29334 REPLY(reply);
29335 UNUSED(1);
29336 sequence_number = VALUE16(tvb, *offsetp);
29337 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29338 "sequencenumber: %d (xv-QueryEncodings)", sequence_number);
29339 *offsetp += 2;
29340 f_length = VALUE32(tvb, *offsetp);
29341 length = f_length * 4 + 32;
29342 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29343 *offsetp += 4;
29344 f_num_encodings = VALUE16(tvb, *offsetp);
29345 proto_tree_add_item(t, hf_x11_xv_QueryEncodings_reply_num_encodings, tvb, *offsetp, 2, byte_order);
29346 *offsetp += 2;
29347 UNUSED(22);
29348 struct_EncodingInfo(tvb, offsetp, t, byte_order, f_num_encodings);
29351 static void xvGrabPort(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29353 int f_port;
29354 int f_time;
29355 f_port = VALUE32(tvb, *offsetp);
29356 proto_tree_add_item(t, hf_x11_xv_GrabPort_port, tvb, *offsetp, 4, byte_order);
29357 *offsetp += 4;
29358 f_time = field32(tvb, offsetp, t, hf_x11_xv_GrabPort_time, byte_order);
29360 static void xvGrabPort_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29362 int f_length, length, sequence_number;
29363 int f_result;
29365 col_append_fstr(pinfo->cinfo, COL_INFO, "-GrabPort");
29367 REPLY(reply);
29368 f_result = field8(tvb, offsetp, t, hf_x11_xv_GrabPort_reply_result, byte_order);
29369 sequence_number = VALUE16(tvb, *offsetp);
29370 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29371 "sequencenumber: %d (xv-GrabPort)", sequence_number);
29372 *offsetp += 2;
29373 f_length = VALUE32(tvb, *offsetp);
29374 length = f_length * 4 + 32;
29375 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29376 *offsetp += 4;
29379 static void xvUngrabPort(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29381 int f_port;
29382 int f_time;
29383 f_port = VALUE32(tvb, *offsetp);
29384 proto_tree_add_item(t, hf_x11_xv_UngrabPort_port, tvb, *offsetp, 4, byte_order);
29385 *offsetp += 4;
29386 f_time = field32(tvb, offsetp, t, hf_x11_xv_UngrabPort_time, byte_order);
29389 static void xvPutVideo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29391 int f_port;
29392 int f_drawable;
29393 int f_gc;
29394 int f_vid_x;
29395 int f_vid_y;
29396 int f_vid_w;
29397 int f_vid_h;
29398 int f_drw_x;
29399 int f_drw_y;
29400 int f_drw_w;
29401 int f_drw_h;
29402 f_port = VALUE32(tvb, *offsetp);
29403 proto_tree_add_item(t, hf_x11_xv_PutVideo_port, tvb, *offsetp, 4, byte_order);
29404 *offsetp += 4;
29405 f_drawable = VALUE32(tvb, *offsetp);
29406 proto_tree_add_item(t, hf_x11_xv_PutVideo_drawable, tvb, *offsetp, 4, byte_order);
29407 *offsetp += 4;
29408 f_gc = VALUE32(tvb, *offsetp);
29409 proto_tree_add_item(t, hf_x11_xv_PutVideo_gc, tvb, *offsetp, 4, byte_order);
29410 *offsetp += 4;
29411 f_vid_x = VALUE16(tvb, *offsetp);
29412 proto_tree_add_item(t, hf_x11_xv_PutVideo_vid_x, tvb, *offsetp, 2, byte_order);
29413 *offsetp += 2;
29414 f_vid_y = VALUE16(tvb, *offsetp);
29415 proto_tree_add_item(t, hf_x11_xv_PutVideo_vid_y, tvb, *offsetp, 2, byte_order);
29416 *offsetp += 2;
29417 f_vid_w = VALUE16(tvb, *offsetp);
29418 proto_tree_add_item(t, hf_x11_xv_PutVideo_vid_w, tvb, *offsetp, 2, byte_order);
29419 *offsetp += 2;
29420 f_vid_h = VALUE16(tvb, *offsetp);
29421 proto_tree_add_item(t, hf_x11_xv_PutVideo_vid_h, tvb, *offsetp, 2, byte_order);
29422 *offsetp += 2;
29423 f_drw_x = VALUE16(tvb, *offsetp);
29424 proto_tree_add_item(t, hf_x11_xv_PutVideo_drw_x, tvb, *offsetp, 2, byte_order);
29425 *offsetp += 2;
29426 f_drw_y = VALUE16(tvb, *offsetp);
29427 proto_tree_add_item(t, hf_x11_xv_PutVideo_drw_y, tvb, *offsetp, 2, byte_order);
29428 *offsetp += 2;
29429 f_drw_w = VALUE16(tvb, *offsetp);
29430 proto_tree_add_item(t, hf_x11_xv_PutVideo_drw_w, tvb, *offsetp, 2, byte_order);
29431 *offsetp += 2;
29432 f_drw_h = VALUE16(tvb, *offsetp);
29433 proto_tree_add_item(t, hf_x11_xv_PutVideo_drw_h, tvb, *offsetp, 2, byte_order);
29434 *offsetp += 2;
29437 static void xvPutStill(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29439 int f_port;
29440 int f_drawable;
29441 int f_gc;
29442 int f_vid_x;
29443 int f_vid_y;
29444 int f_vid_w;
29445 int f_vid_h;
29446 int f_drw_x;
29447 int f_drw_y;
29448 int f_drw_w;
29449 int f_drw_h;
29450 f_port = VALUE32(tvb, *offsetp);
29451 proto_tree_add_item(t, hf_x11_xv_PutStill_port, tvb, *offsetp, 4, byte_order);
29452 *offsetp += 4;
29453 f_drawable = VALUE32(tvb, *offsetp);
29454 proto_tree_add_item(t, hf_x11_xv_PutStill_drawable, tvb, *offsetp, 4, byte_order);
29455 *offsetp += 4;
29456 f_gc = VALUE32(tvb, *offsetp);
29457 proto_tree_add_item(t, hf_x11_xv_PutStill_gc, tvb, *offsetp, 4, byte_order);
29458 *offsetp += 4;
29459 f_vid_x = VALUE16(tvb, *offsetp);
29460 proto_tree_add_item(t, hf_x11_xv_PutStill_vid_x, tvb, *offsetp, 2, byte_order);
29461 *offsetp += 2;
29462 f_vid_y = VALUE16(tvb, *offsetp);
29463 proto_tree_add_item(t, hf_x11_xv_PutStill_vid_y, tvb, *offsetp, 2, byte_order);
29464 *offsetp += 2;
29465 f_vid_w = VALUE16(tvb, *offsetp);
29466 proto_tree_add_item(t, hf_x11_xv_PutStill_vid_w, tvb, *offsetp, 2, byte_order);
29467 *offsetp += 2;
29468 f_vid_h = VALUE16(tvb, *offsetp);
29469 proto_tree_add_item(t, hf_x11_xv_PutStill_vid_h, tvb, *offsetp, 2, byte_order);
29470 *offsetp += 2;
29471 f_drw_x = VALUE16(tvb, *offsetp);
29472 proto_tree_add_item(t, hf_x11_xv_PutStill_drw_x, tvb, *offsetp, 2, byte_order);
29473 *offsetp += 2;
29474 f_drw_y = VALUE16(tvb, *offsetp);
29475 proto_tree_add_item(t, hf_x11_xv_PutStill_drw_y, tvb, *offsetp, 2, byte_order);
29476 *offsetp += 2;
29477 f_drw_w = VALUE16(tvb, *offsetp);
29478 proto_tree_add_item(t, hf_x11_xv_PutStill_drw_w, tvb, *offsetp, 2, byte_order);
29479 *offsetp += 2;
29480 f_drw_h = VALUE16(tvb, *offsetp);
29481 proto_tree_add_item(t, hf_x11_xv_PutStill_drw_h, tvb, *offsetp, 2, byte_order);
29482 *offsetp += 2;
29485 static void xvGetVideo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29487 int f_port;
29488 int f_drawable;
29489 int f_gc;
29490 int f_vid_x;
29491 int f_vid_y;
29492 int f_vid_w;
29493 int f_vid_h;
29494 int f_drw_x;
29495 int f_drw_y;
29496 int f_drw_w;
29497 int f_drw_h;
29498 f_port = VALUE32(tvb, *offsetp);
29499 proto_tree_add_item(t, hf_x11_xv_GetVideo_port, tvb, *offsetp, 4, byte_order);
29500 *offsetp += 4;
29501 f_drawable = VALUE32(tvb, *offsetp);
29502 proto_tree_add_item(t, hf_x11_xv_GetVideo_drawable, tvb, *offsetp, 4, byte_order);
29503 *offsetp += 4;
29504 f_gc = VALUE32(tvb, *offsetp);
29505 proto_tree_add_item(t, hf_x11_xv_GetVideo_gc, tvb, *offsetp, 4, byte_order);
29506 *offsetp += 4;
29507 f_vid_x = VALUE16(tvb, *offsetp);
29508 proto_tree_add_item(t, hf_x11_xv_GetVideo_vid_x, tvb, *offsetp, 2, byte_order);
29509 *offsetp += 2;
29510 f_vid_y = VALUE16(tvb, *offsetp);
29511 proto_tree_add_item(t, hf_x11_xv_GetVideo_vid_y, tvb, *offsetp, 2, byte_order);
29512 *offsetp += 2;
29513 f_vid_w = VALUE16(tvb, *offsetp);
29514 proto_tree_add_item(t, hf_x11_xv_GetVideo_vid_w, tvb, *offsetp, 2, byte_order);
29515 *offsetp += 2;
29516 f_vid_h = VALUE16(tvb, *offsetp);
29517 proto_tree_add_item(t, hf_x11_xv_GetVideo_vid_h, tvb, *offsetp, 2, byte_order);
29518 *offsetp += 2;
29519 f_drw_x = VALUE16(tvb, *offsetp);
29520 proto_tree_add_item(t, hf_x11_xv_GetVideo_drw_x, tvb, *offsetp, 2, byte_order);
29521 *offsetp += 2;
29522 f_drw_y = VALUE16(tvb, *offsetp);
29523 proto_tree_add_item(t, hf_x11_xv_GetVideo_drw_y, tvb, *offsetp, 2, byte_order);
29524 *offsetp += 2;
29525 f_drw_w = VALUE16(tvb, *offsetp);
29526 proto_tree_add_item(t, hf_x11_xv_GetVideo_drw_w, tvb, *offsetp, 2, byte_order);
29527 *offsetp += 2;
29528 f_drw_h = VALUE16(tvb, *offsetp);
29529 proto_tree_add_item(t, hf_x11_xv_GetVideo_drw_h, tvb, *offsetp, 2, byte_order);
29530 *offsetp += 2;
29533 static void xvGetStill(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29535 int f_port;
29536 int f_drawable;
29537 int f_gc;
29538 int f_vid_x;
29539 int f_vid_y;
29540 int f_vid_w;
29541 int f_vid_h;
29542 int f_drw_x;
29543 int f_drw_y;
29544 int f_drw_w;
29545 int f_drw_h;
29546 f_port = VALUE32(tvb, *offsetp);
29547 proto_tree_add_item(t, hf_x11_xv_GetStill_port, tvb, *offsetp, 4, byte_order);
29548 *offsetp += 4;
29549 f_drawable = VALUE32(tvb, *offsetp);
29550 proto_tree_add_item(t, hf_x11_xv_GetStill_drawable, tvb, *offsetp, 4, byte_order);
29551 *offsetp += 4;
29552 f_gc = VALUE32(tvb, *offsetp);
29553 proto_tree_add_item(t, hf_x11_xv_GetStill_gc, tvb, *offsetp, 4, byte_order);
29554 *offsetp += 4;
29555 f_vid_x = VALUE16(tvb, *offsetp);
29556 proto_tree_add_item(t, hf_x11_xv_GetStill_vid_x, tvb, *offsetp, 2, byte_order);
29557 *offsetp += 2;
29558 f_vid_y = VALUE16(tvb, *offsetp);
29559 proto_tree_add_item(t, hf_x11_xv_GetStill_vid_y, tvb, *offsetp, 2, byte_order);
29560 *offsetp += 2;
29561 f_vid_w = VALUE16(tvb, *offsetp);
29562 proto_tree_add_item(t, hf_x11_xv_GetStill_vid_w, tvb, *offsetp, 2, byte_order);
29563 *offsetp += 2;
29564 f_vid_h = VALUE16(tvb, *offsetp);
29565 proto_tree_add_item(t, hf_x11_xv_GetStill_vid_h, tvb, *offsetp, 2, byte_order);
29566 *offsetp += 2;
29567 f_drw_x = VALUE16(tvb, *offsetp);
29568 proto_tree_add_item(t, hf_x11_xv_GetStill_drw_x, tvb, *offsetp, 2, byte_order);
29569 *offsetp += 2;
29570 f_drw_y = VALUE16(tvb, *offsetp);
29571 proto_tree_add_item(t, hf_x11_xv_GetStill_drw_y, tvb, *offsetp, 2, byte_order);
29572 *offsetp += 2;
29573 f_drw_w = VALUE16(tvb, *offsetp);
29574 proto_tree_add_item(t, hf_x11_xv_GetStill_drw_w, tvb, *offsetp, 2, byte_order);
29575 *offsetp += 2;
29576 f_drw_h = VALUE16(tvb, *offsetp);
29577 proto_tree_add_item(t, hf_x11_xv_GetStill_drw_h, tvb, *offsetp, 2, byte_order);
29578 *offsetp += 2;
29581 static void xvStopVideo(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29583 int f_port;
29584 int f_drawable;
29585 f_port = VALUE32(tvb, *offsetp);
29586 proto_tree_add_item(t, hf_x11_xv_StopVideo_port, tvb, *offsetp, 4, byte_order);
29587 *offsetp += 4;
29588 f_drawable = VALUE32(tvb, *offsetp);
29589 proto_tree_add_item(t, hf_x11_xv_StopVideo_drawable, tvb, *offsetp, 4, byte_order);
29590 *offsetp += 4;
29593 static void xvSelectVideoNotify(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29595 int f_drawable;
29596 int f_onoff;
29597 f_drawable = VALUE32(tvb, *offsetp);
29598 proto_tree_add_item(t, hf_x11_xv_SelectVideoNotify_drawable, tvb, *offsetp, 4, byte_order);
29599 *offsetp += 4;
29600 f_onoff = VALUE8(tvb, *offsetp);
29601 proto_tree_add_item(t, hf_x11_xv_SelectVideoNotify_onoff, tvb, *offsetp, 1, byte_order);
29602 *offsetp += 1;
29603 UNUSED(3);
29606 static void xvSelectPortNotify(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29608 int f_port;
29609 int f_onoff;
29610 f_port = VALUE32(tvb, *offsetp);
29611 proto_tree_add_item(t, hf_x11_xv_SelectPortNotify_port, tvb, *offsetp, 4, byte_order);
29612 *offsetp += 4;
29613 f_onoff = VALUE8(tvb, *offsetp);
29614 proto_tree_add_item(t, hf_x11_xv_SelectPortNotify_onoff, tvb, *offsetp, 1, byte_order);
29615 *offsetp += 1;
29616 UNUSED(3);
29619 static void xvQueryBestSize(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29621 int f_port;
29622 int f_vid_w;
29623 int f_vid_h;
29624 int f_drw_w;
29625 int f_drw_h;
29626 int f_motion;
29627 f_port = VALUE32(tvb, *offsetp);
29628 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_port, tvb, *offsetp, 4, byte_order);
29629 *offsetp += 4;
29630 f_vid_w = VALUE16(tvb, *offsetp);
29631 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_vid_w, tvb, *offsetp, 2, byte_order);
29632 *offsetp += 2;
29633 f_vid_h = VALUE16(tvb, *offsetp);
29634 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_vid_h, tvb, *offsetp, 2, byte_order);
29635 *offsetp += 2;
29636 f_drw_w = VALUE16(tvb, *offsetp);
29637 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_drw_w, tvb, *offsetp, 2, byte_order);
29638 *offsetp += 2;
29639 f_drw_h = VALUE16(tvb, *offsetp);
29640 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_drw_h, tvb, *offsetp, 2, byte_order);
29641 *offsetp += 2;
29642 f_motion = VALUE8(tvb, *offsetp);
29643 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_motion, tvb, *offsetp, 1, byte_order);
29644 *offsetp += 1;
29645 UNUSED(3);
29647 static void xvQueryBestSize_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29649 int f_length, length, sequence_number;
29650 int f_actual_width;
29651 int f_actual_height;
29653 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryBestSize");
29655 REPLY(reply);
29656 UNUSED(1);
29657 sequence_number = VALUE16(tvb, *offsetp);
29658 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29659 "sequencenumber: %d (xv-QueryBestSize)", sequence_number);
29660 *offsetp += 2;
29661 f_length = VALUE32(tvb, *offsetp);
29662 length = f_length * 4 + 32;
29663 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29664 *offsetp += 4;
29665 f_actual_width = VALUE16(tvb, *offsetp);
29666 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_reply_actual_width, tvb, *offsetp, 2, byte_order);
29667 *offsetp += 2;
29668 f_actual_height = VALUE16(tvb, *offsetp);
29669 proto_tree_add_item(t, hf_x11_xv_QueryBestSize_reply_actual_height, tvb, *offsetp, 2, byte_order);
29670 *offsetp += 2;
29673 static void xvSetPortAttribute(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29675 int f_port;
29676 int f_attribute;
29677 int f_value;
29678 f_port = VALUE32(tvb, *offsetp);
29679 proto_tree_add_item(t, hf_x11_xv_SetPortAttribute_port, tvb, *offsetp, 4, byte_order);
29680 *offsetp += 4;
29681 f_attribute = VALUE32(tvb, *offsetp);
29682 proto_tree_add_item(t, hf_x11_xv_SetPortAttribute_attribute, tvb, *offsetp, 4, byte_order);
29683 *offsetp += 4;
29684 f_value = VALUE32(tvb, *offsetp);
29685 proto_tree_add_item(t, hf_x11_xv_SetPortAttribute_value, tvb, *offsetp, 4, byte_order);
29686 *offsetp += 4;
29689 static void xvGetPortAttribute(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29691 int f_port;
29692 int f_attribute;
29693 f_port = VALUE32(tvb, *offsetp);
29694 proto_tree_add_item(t, hf_x11_xv_GetPortAttribute_port, tvb, *offsetp, 4, byte_order);
29695 *offsetp += 4;
29696 f_attribute = VALUE32(tvb, *offsetp);
29697 proto_tree_add_item(t, hf_x11_xv_GetPortAttribute_attribute, tvb, *offsetp, 4, byte_order);
29698 *offsetp += 4;
29700 static void xvGetPortAttribute_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29702 int f_length, length, sequence_number;
29703 int f_value;
29705 col_append_fstr(pinfo->cinfo, COL_INFO, "-GetPortAttribute");
29707 REPLY(reply);
29708 UNUSED(1);
29709 sequence_number = VALUE16(tvb, *offsetp);
29710 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29711 "sequencenumber: %d (xv-GetPortAttribute)", sequence_number);
29712 *offsetp += 2;
29713 f_length = VALUE32(tvb, *offsetp);
29714 length = f_length * 4 + 32;
29715 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29716 *offsetp += 4;
29717 f_value = VALUE32(tvb, *offsetp);
29718 proto_tree_add_item(t, hf_x11_xv_GetPortAttribute_reply_value, tvb, *offsetp, 4, byte_order);
29719 *offsetp += 4;
29722 static void xvQueryPortAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29724 int f_port;
29725 f_port = VALUE32(tvb, *offsetp);
29726 proto_tree_add_item(t, hf_x11_xv_QueryPortAttributes_port, tvb, *offsetp, 4, byte_order);
29727 *offsetp += 4;
29729 static void xvQueryPortAttributes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29731 int f_length, length, sequence_number;
29732 int f_num_attributes;
29733 int f_text_size;
29735 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryPortAttributes");
29737 REPLY(reply);
29738 UNUSED(1);
29739 sequence_number = VALUE16(tvb, *offsetp);
29740 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29741 "sequencenumber: %d (xv-QueryPortAttributes)", sequence_number);
29742 *offsetp += 2;
29743 f_length = VALUE32(tvb, *offsetp);
29744 length = f_length * 4 + 32;
29745 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29746 *offsetp += 4;
29747 f_num_attributes = VALUE32(tvb, *offsetp);
29748 proto_tree_add_item(t, hf_x11_xv_QueryPortAttributes_reply_num_attributes, tvb, *offsetp, 4, byte_order);
29749 *offsetp += 4;
29750 f_text_size = VALUE32(tvb, *offsetp);
29751 proto_tree_add_item(t, hf_x11_xv_QueryPortAttributes_reply_text_size, tvb, *offsetp, 4, byte_order);
29752 *offsetp += 4;
29753 UNUSED(16);
29754 struct_AttributeInfo(tvb, offsetp, t, byte_order, f_num_attributes);
29757 static void xvListImageFormats(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29759 int f_port;
29760 f_port = VALUE32(tvb, *offsetp);
29761 proto_tree_add_item(t, hf_x11_xv_ListImageFormats_port, tvb, *offsetp, 4, byte_order);
29762 *offsetp += 4;
29764 static void xvListImageFormats_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29766 int f_length, length, sequence_number;
29767 int f_num_formats;
29769 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListImageFormats");
29771 REPLY(reply);
29772 UNUSED(1);
29773 sequence_number = VALUE16(tvb, *offsetp);
29774 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29775 "sequencenumber: %d (xv-ListImageFormats)", sequence_number);
29776 *offsetp += 2;
29777 f_length = VALUE32(tvb, *offsetp);
29778 length = f_length * 4 + 32;
29779 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29780 *offsetp += 4;
29781 f_num_formats = VALUE32(tvb, *offsetp);
29782 proto_tree_add_item(t, hf_x11_xv_ListImageFormats_reply_num_formats, tvb, *offsetp, 4, byte_order);
29783 *offsetp += 4;
29784 UNUSED(20);
29785 struct_ImageFormatInfo(tvb, offsetp, t, byte_order, f_num_formats);
29788 static void xvQueryImageAttributes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29790 int f_port;
29791 int f_id;
29792 int f_width;
29793 int f_height;
29794 f_port = VALUE32(tvb, *offsetp);
29795 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_port, tvb, *offsetp, 4, byte_order);
29796 *offsetp += 4;
29797 f_id = VALUE32(tvb, *offsetp);
29798 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_id, tvb, *offsetp, 4, byte_order);
29799 *offsetp += 4;
29800 f_width = VALUE16(tvb, *offsetp);
29801 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_width, tvb, *offsetp, 2, byte_order);
29802 *offsetp += 2;
29803 f_height = VALUE16(tvb, *offsetp);
29804 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_height, tvb, *offsetp, 2, byte_order);
29805 *offsetp += 2;
29807 static void xvQueryImageAttributes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
29809 int f_length, length, sequence_number;
29810 int f_num_planes;
29811 int f_data_size;
29812 int f_width;
29813 int f_height;
29815 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryImageAttributes");
29817 REPLY(reply);
29818 UNUSED(1);
29819 sequence_number = VALUE16(tvb, *offsetp);
29820 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
29821 "sequencenumber: %d (xv-QueryImageAttributes)", sequence_number);
29822 *offsetp += 2;
29823 f_length = VALUE32(tvb, *offsetp);
29824 length = f_length * 4 + 32;
29825 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
29826 *offsetp += 4;
29827 f_num_planes = VALUE32(tvb, *offsetp);
29828 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_reply_num_planes, tvb, *offsetp, 4, byte_order);
29829 *offsetp += 4;
29830 f_data_size = VALUE32(tvb, *offsetp);
29831 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_reply_data_size, tvb, *offsetp, 4, byte_order);
29832 *offsetp += 4;
29833 f_width = VALUE16(tvb, *offsetp);
29834 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_reply_width, tvb, *offsetp, 2, byte_order);
29835 *offsetp += 2;
29836 f_height = VALUE16(tvb, *offsetp);
29837 proto_tree_add_item(t, hf_x11_xv_QueryImageAttributes_reply_height, tvb, *offsetp, 2, byte_order);
29838 *offsetp += 2;
29839 UNUSED(12);
29840 listOfCard32(tvb, offsetp, t, hf_x11_xv_QueryImageAttributes_reply_pitches, hf_x11_xv_QueryImageAttributes_reply_pitches_item, f_num_planes, byte_order);
29841 listOfCard32(tvb, offsetp, t, hf_x11_xv_QueryImageAttributes_reply_offsets, hf_x11_xv_QueryImageAttributes_reply_offsets_item, f_num_planes, byte_order);
29844 static void xvPutImage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29846 int f_port;
29847 int f_drawable;
29848 int f_gc;
29849 int f_id;
29850 int f_src_x;
29851 int f_src_y;
29852 int f_src_w;
29853 int f_src_h;
29854 int f_drw_x;
29855 int f_drw_y;
29856 int f_drw_w;
29857 int f_drw_h;
29858 int f_width;
29859 int f_height;
29860 f_port = VALUE32(tvb, *offsetp);
29861 proto_tree_add_item(t, hf_x11_xv_PutImage_port, tvb, *offsetp, 4, byte_order);
29862 *offsetp += 4;
29863 f_drawable = VALUE32(tvb, *offsetp);
29864 proto_tree_add_item(t, hf_x11_xv_PutImage_drawable, tvb, *offsetp, 4, byte_order);
29865 *offsetp += 4;
29866 f_gc = VALUE32(tvb, *offsetp);
29867 proto_tree_add_item(t, hf_x11_xv_PutImage_gc, tvb, *offsetp, 4, byte_order);
29868 *offsetp += 4;
29869 f_id = VALUE32(tvb, *offsetp);
29870 proto_tree_add_item(t, hf_x11_xv_PutImage_id, tvb, *offsetp, 4, byte_order);
29871 *offsetp += 4;
29872 f_src_x = VALUE16(tvb, *offsetp);
29873 proto_tree_add_item(t, hf_x11_xv_PutImage_src_x, tvb, *offsetp, 2, byte_order);
29874 *offsetp += 2;
29875 f_src_y = VALUE16(tvb, *offsetp);
29876 proto_tree_add_item(t, hf_x11_xv_PutImage_src_y, tvb, *offsetp, 2, byte_order);
29877 *offsetp += 2;
29878 f_src_w = VALUE16(tvb, *offsetp);
29879 proto_tree_add_item(t, hf_x11_xv_PutImage_src_w, tvb, *offsetp, 2, byte_order);
29880 *offsetp += 2;
29881 f_src_h = VALUE16(tvb, *offsetp);
29882 proto_tree_add_item(t, hf_x11_xv_PutImage_src_h, tvb, *offsetp, 2, byte_order);
29883 *offsetp += 2;
29884 f_drw_x = VALUE16(tvb, *offsetp);
29885 proto_tree_add_item(t, hf_x11_xv_PutImage_drw_x, tvb, *offsetp, 2, byte_order);
29886 *offsetp += 2;
29887 f_drw_y = VALUE16(tvb, *offsetp);
29888 proto_tree_add_item(t, hf_x11_xv_PutImage_drw_y, tvb, *offsetp, 2, byte_order);
29889 *offsetp += 2;
29890 f_drw_w = VALUE16(tvb, *offsetp);
29891 proto_tree_add_item(t, hf_x11_xv_PutImage_drw_w, tvb, *offsetp, 2, byte_order);
29892 *offsetp += 2;
29893 f_drw_h = VALUE16(tvb, *offsetp);
29894 proto_tree_add_item(t, hf_x11_xv_PutImage_drw_h, tvb, *offsetp, 2, byte_order);
29895 *offsetp += 2;
29896 f_width = VALUE16(tvb, *offsetp);
29897 proto_tree_add_item(t, hf_x11_xv_PutImage_width, tvb, *offsetp, 2, byte_order);
29898 *offsetp += 2;
29899 f_height = VALUE16(tvb, *offsetp);
29900 proto_tree_add_item(t, hf_x11_xv_PutImage_height, tvb, *offsetp, 2, byte_order);
29901 *offsetp += 2;
29902 listOfByte(tvb, offsetp, t, hf_x11_xv_PutImage_data, (length - 40) / 1, byte_order);
29905 static void xvShmPutImage(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
29907 int f_port;
29908 int f_drawable;
29909 int f_gc;
29910 int f_shmseg;
29911 int f_id;
29912 int f_offset;
29913 int f_src_x;
29914 int f_src_y;
29915 int f_src_w;
29916 int f_src_h;
29917 int f_drw_x;
29918 int f_drw_y;
29919 int f_drw_w;
29920 int f_drw_h;
29921 int f_width;
29922 int f_height;
29923 int f_send_event;
29924 f_port = VALUE32(tvb, *offsetp);
29925 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_port, tvb, *offsetp, 4, byte_order);
29926 *offsetp += 4;
29927 f_drawable = VALUE32(tvb, *offsetp);
29928 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_drawable, tvb, *offsetp, 4, byte_order);
29929 *offsetp += 4;
29930 f_gc = VALUE32(tvb, *offsetp);
29931 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_gc, tvb, *offsetp, 4, byte_order);
29932 *offsetp += 4;
29933 f_shmseg = VALUE32(tvb, *offsetp);
29934 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_shmseg, tvb, *offsetp, 4, byte_order);
29935 *offsetp += 4;
29936 f_id = VALUE32(tvb, *offsetp);
29937 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_id, tvb, *offsetp, 4, byte_order);
29938 *offsetp += 4;
29939 f_offset = VALUE32(tvb, *offsetp);
29940 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_offset, tvb, *offsetp, 4, byte_order);
29941 *offsetp += 4;
29942 f_src_x = VALUE16(tvb, *offsetp);
29943 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_src_x, tvb, *offsetp, 2, byte_order);
29944 *offsetp += 2;
29945 f_src_y = VALUE16(tvb, *offsetp);
29946 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_src_y, tvb, *offsetp, 2, byte_order);
29947 *offsetp += 2;
29948 f_src_w = VALUE16(tvb, *offsetp);
29949 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_src_w, tvb, *offsetp, 2, byte_order);
29950 *offsetp += 2;
29951 f_src_h = VALUE16(tvb, *offsetp);
29952 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_src_h, tvb, *offsetp, 2, byte_order);
29953 *offsetp += 2;
29954 f_drw_x = VALUE16(tvb, *offsetp);
29955 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_drw_x, tvb, *offsetp, 2, byte_order);
29956 *offsetp += 2;
29957 f_drw_y = VALUE16(tvb, *offsetp);
29958 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_drw_y, tvb, *offsetp, 2, byte_order);
29959 *offsetp += 2;
29960 f_drw_w = VALUE16(tvb, *offsetp);
29961 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_drw_w, tvb, *offsetp, 2, byte_order);
29962 *offsetp += 2;
29963 f_drw_h = VALUE16(tvb, *offsetp);
29964 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_drw_h, tvb, *offsetp, 2, byte_order);
29965 *offsetp += 2;
29966 f_width = VALUE16(tvb, *offsetp);
29967 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_width, tvb, *offsetp, 2, byte_order);
29968 *offsetp += 2;
29969 f_height = VALUE16(tvb, *offsetp);
29970 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_height, tvb, *offsetp, 2, byte_order);
29971 *offsetp += 2;
29972 f_send_event = VALUE8(tvb, *offsetp);
29973 proto_tree_add_item(t, hf_x11_xv_ShmPutImage_send_event, tvb, *offsetp, 1, byte_order);
29974 *offsetp += 1;
29975 UNUSED(3);
29977 static const value_string xv_extension_minor[] = {
29978 { 0, "QueryExtension" },
29979 { 1, "QueryAdaptors" },
29980 { 2, "QueryEncodings" },
29981 { 3, "GrabPort" },
29982 { 4, "UngrabPort" },
29983 { 5, "PutVideo" },
29984 { 6, "PutStill" },
29985 { 7, "GetVideo" },
29986 { 8, "GetStill" },
29987 { 9, "StopVideo" },
29988 { 10, "SelectVideoNotify" },
29989 { 11, "SelectPortNotify" },
29990 { 12, "QueryBestSize" },
29991 { 13, "SetPortAttribute" },
29992 { 14, "GetPortAttribute" },
29993 { 15, "QueryPortAttributes" },
29994 { 16, "ListImageFormats" },
29995 { 17, "QueryImageAttributes" },
29996 { 18, "PutImage" },
29997 { 19, "ShmPutImage" },
29998 { 0, NULL }
30000 const x11_event_info xv_events[] = {
30001 { "xv-VideoNotify", xvVideoNotify },
30002 { "xv-PortNotify", xvPortNotify },
30003 { NULL, NULL }
30005 static x11_reply_info xv_replies[] = {
30006 { 0, xvQueryExtension_Reply },
30007 { 1, xvQueryAdaptors_Reply },
30008 { 2, xvQueryEncodings_Reply },
30009 { 3, xvGrabPort_Reply },
30010 { 12, xvQueryBestSize_Reply },
30011 { 14, xvGetPortAttribute_Reply },
30012 { 15, xvQueryPortAttributes_Reply },
30013 { 16, xvListImageFormats_Reply },
30014 { 17, xvQueryImageAttributes_Reply },
30015 { 0, NULL }
30018 static void dispatch_xv(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30020 int minor, length;
30021 minor = CARD8(xv_extension_minor);
30022 length = REQUEST_LENGTH();
30024 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
30025 val_to_str(minor, xv_extension_minor,
30026 "<Unknown opcode %d>"));
30027 switch (minor) {
30028 case 0:
30029 xvQueryExtension(tvb, pinfo, offsetp, t, byte_order, length);
30030 break;
30031 case 1:
30032 xvQueryAdaptors(tvb, pinfo, offsetp, t, byte_order, length);
30033 break;
30034 case 2:
30035 xvQueryEncodings(tvb, pinfo, offsetp, t, byte_order, length);
30036 break;
30037 case 3:
30038 xvGrabPort(tvb, pinfo, offsetp, t, byte_order, length);
30039 break;
30040 case 4:
30041 xvUngrabPort(tvb, pinfo, offsetp, t, byte_order, length);
30042 break;
30043 case 5:
30044 xvPutVideo(tvb, pinfo, offsetp, t, byte_order, length);
30045 break;
30046 case 6:
30047 xvPutStill(tvb, pinfo, offsetp, t, byte_order, length);
30048 break;
30049 case 7:
30050 xvGetVideo(tvb, pinfo, offsetp, t, byte_order, length);
30051 break;
30052 case 8:
30053 xvGetStill(tvb, pinfo, offsetp, t, byte_order, length);
30054 break;
30055 case 9:
30056 xvStopVideo(tvb, pinfo, offsetp, t, byte_order, length);
30057 break;
30058 case 10:
30059 xvSelectVideoNotify(tvb, pinfo, offsetp, t, byte_order, length);
30060 break;
30061 case 11:
30062 xvSelectPortNotify(tvb, pinfo, offsetp, t, byte_order, length);
30063 break;
30064 case 12:
30065 xvQueryBestSize(tvb, pinfo, offsetp, t, byte_order, length);
30066 break;
30067 case 13:
30068 xvSetPortAttribute(tvb, pinfo, offsetp, t, byte_order, length);
30069 break;
30070 case 14:
30071 xvGetPortAttribute(tvb, pinfo, offsetp, t, byte_order, length);
30072 break;
30073 case 15:
30074 xvQueryPortAttributes(tvb, pinfo, offsetp, t, byte_order, length);
30075 break;
30076 case 16:
30077 xvListImageFormats(tvb, pinfo, offsetp, t, byte_order, length);
30078 break;
30079 case 17:
30080 xvQueryImageAttributes(tvb, pinfo, offsetp, t, byte_order, length);
30081 break;
30082 case 18:
30083 xvPutImage(tvb, pinfo, offsetp, t, byte_order, length);
30084 break;
30085 case 19:
30086 xvShmPutImage(tvb, pinfo, offsetp, t, byte_order, length);
30087 break;
30088 /* No need for a default case here, since Unknown is printed above,
30089 and UNDECODED() is taken care of by dissect_x11_request */
30093 static void register_xv(void)
30095 set_handler("XVideo", dispatch_xv, xv_errors, xv_events, xv_replies);
30098 static void struct_SurfaceInfo(tvbuff_t *tvb, int *offsetp, proto_tree *root, guint byte_order _U_, int count)
30100 int i;
30101 for (i = 0; i < count; i++) {
30102 proto_item *item;
30103 proto_tree *t;
30104 int f_id;
30105 int f_chroma_format;
30106 int f_pad0;
30107 int f_max_width;
30108 int f_max_height;
30109 int f_subpicture_max_width;
30110 int f_subpicture_max_height;
30111 int f_mc_type;
30112 int f_flags;
30114 item = proto_tree_add_item(root, hf_x11_struct_SurfaceInfo, tvb, *offsetp, 24, ENC_NA);
30115 t = proto_item_add_subtree(item, ett_x11_rectangle);
30116 f_id = VALUE32(tvb, *offsetp);
30117 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_id, tvb, *offsetp, 4, byte_order);
30118 *offsetp += 4;
30119 f_chroma_format = VALUE16(tvb, *offsetp);
30120 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_chroma_format, tvb, *offsetp, 2, byte_order);
30121 *offsetp += 2;
30122 f_pad0 = VALUE16(tvb, *offsetp);
30123 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_pad0, tvb, *offsetp, 2, byte_order);
30124 *offsetp += 2;
30125 f_max_width = VALUE16(tvb, *offsetp);
30126 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_max_width, tvb, *offsetp, 2, byte_order);
30127 *offsetp += 2;
30128 f_max_height = VALUE16(tvb, *offsetp);
30129 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_max_height, tvb, *offsetp, 2, byte_order);
30130 *offsetp += 2;
30131 f_subpicture_max_width = VALUE16(tvb, *offsetp);
30132 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_subpicture_max_width, tvb, *offsetp, 2, byte_order);
30133 *offsetp += 2;
30134 f_subpicture_max_height = VALUE16(tvb, *offsetp);
30135 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_subpicture_max_height, tvb, *offsetp, 2, byte_order);
30136 *offsetp += 2;
30137 f_mc_type = VALUE32(tvb, *offsetp);
30138 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_mc_type, tvb, *offsetp, 4, byte_order);
30139 *offsetp += 4;
30140 f_flags = VALUE32(tvb, *offsetp);
30141 proto_tree_add_item(t, hf_x11_struct_SurfaceInfo_flags, tvb, *offsetp, 4, byte_order);
30142 *offsetp += 4;
30146 static void xvmcQueryVersion(tvbuff_t *tvb _U_, packet_info *pinfo _U_, int *offsetp _U_, proto_tree *t _U_, guint byte_order _U_, int length _U_)
30149 static void xvmcQueryVersion_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30151 int f_length, length, sequence_number;
30152 int f_major;
30153 int f_minor;
30155 col_append_fstr(pinfo->cinfo, COL_INFO, "-QueryVersion");
30157 REPLY(reply);
30158 UNUSED(1);
30159 sequence_number = VALUE16(tvb, *offsetp);
30160 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30161 "sequencenumber: %d (xvmc-QueryVersion)", sequence_number);
30162 *offsetp += 2;
30163 f_length = VALUE32(tvb, *offsetp);
30164 length = f_length * 4 + 32;
30165 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30166 *offsetp += 4;
30167 f_major = VALUE32(tvb, *offsetp);
30168 proto_tree_add_item(t, hf_x11_xvmc_QueryVersion_reply_major, tvb, *offsetp, 4, byte_order);
30169 *offsetp += 4;
30170 f_minor = VALUE32(tvb, *offsetp);
30171 proto_tree_add_item(t, hf_x11_xvmc_QueryVersion_reply_minor, tvb, *offsetp, 4, byte_order);
30172 *offsetp += 4;
30175 static void xvmcListSurfaceTypes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30177 int f_port_id;
30178 f_port_id = VALUE32(tvb, *offsetp);
30179 proto_tree_add_item(t, hf_x11_xvmc_ListSurfaceTypes_port_id, tvb, *offsetp, 4, byte_order);
30180 *offsetp += 4;
30182 static void xvmcListSurfaceTypes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30184 int f_length, length, sequence_number;
30185 int f_num;
30187 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListSurfaceTypes");
30189 REPLY(reply);
30190 UNUSED(1);
30191 sequence_number = VALUE16(tvb, *offsetp);
30192 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30193 "sequencenumber: %d (xvmc-ListSurfaceTypes)", sequence_number);
30194 *offsetp += 2;
30195 f_length = VALUE32(tvb, *offsetp);
30196 length = f_length * 4 + 32;
30197 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30198 *offsetp += 4;
30199 f_num = VALUE32(tvb, *offsetp);
30200 proto_tree_add_item(t, hf_x11_xvmc_ListSurfaceTypes_reply_num, tvb, *offsetp, 4, byte_order);
30201 *offsetp += 4;
30202 UNUSED(20);
30203 struct_SurfaceInfo(tvb, offsetp, t, byte_order, f_num);
30206 static void xvmcCreateContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30208 int f_context_id;
30209 int f_port_id;
30210 int f_surface_id;
30211 int f_width;
30212 int f_height;
30213 int f_flags;
30214 f_context_id = VALUE32(tvb, *offsetp);
30215 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_context_id, tvb, *offsetp, 4, byte_order);
30216 *offsetp += 4;
30217 f_port_id = VALUE32(tvb, *offsetp);
30218 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_port_id, tvb, *offsetp, 4, byte_order);
30219 *offsetp += 4;
30220 f_surface_id = VALUE32(tvb, *offsetp);
30221 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_surface_id, tvb, *offsetp, 4, byte_order);
30222 *offsetp += 4;
30223 f_width = VALUE16(tvb, *offsetp);
30224 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_width, tvb, *offsetp, 2, byte_order);
30225 *offsetp += 2;
30226 f_height = VALUE16(tvb, *offsetp);
30227 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_height, tvb, *offsetp, 2, byte_order);
30228 *offsetp += 2;
30229 f_flags = VALUE32(tvb, *offsetp);
30230 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_flags, tvb, *offsetp, 4, byte_order);
30231 *offsetp += 4;
30233 static void xvmcCreateContext_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30235 int f_length, length, sequence_number;
30236 int f_width_actual;
30237 int f_height_actual;
30238 int f_flags_return;
30240 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateContext");
30242 REPLY(reply);
30243 UNUSED(1);
30244 sequence_number = VALUE16(tvb, *offsetp);
30245 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30246 "sequencenumber: %d (xvmc-CreateContext)", sequence_number);
30247 *offsetp += 2;
30248 f_length = VALUE32(tvb, *offsetp);
30249 length = f_length * 4 + 32;
30250 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30251 *offsetp += 4;
30252 f_width_actual = VALUE16(tvb, *offsetp);
30253 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_reply_width_actual, tvb, *offsetp, 2, byte_order);
30254 *offsetp += 2;
30255 f_height_actual = VALUE16(tvb, *offsetp);
30256 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_reply_height_actual, tvb, *offsetp, 2, byte_order);
30257 *offsetp += 2;
30258 f_flags_return = VALUE32(tvb, *offsetp);
30259 proto_tree_add_item(t, hf_x11_xvmc_CreateContext_reply_flags_return, tvb, *offsetp, 4, byte_order);
30260 *offsetp += 4;
30261 UNUSED(20);
30262 listOfCard32(tvb, offsetp, t, hf_x11_xvmc_CreateContext_reply_priv_data, hf_x11_xvmc_CreateContext_reply_priv_data_item, f_length, byte_order);
30265 static void xvmcDestroyContext(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30267 int f_context_id;
30268 f_context_id = VALUE32(tvb, *offsetp);
30269 proto_tree_add_item(t, hf_x11_xvmc_DestroyContext_context_id, tvb, *offsetp, 4, byte_order);
30270 *offsetp += 4;
30273 static void xvmcCreateSurface(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30275 int f_surface_id;
30276 int f_context_id;
30277 f_surface_id = VALUE32(tvb, *offsetp);
30278 proto_tree_add_item(t, hf_x11_xvmc_CreateSurface_surface_id, tvb, *offsetp, 4, byte_order);
30279 *offsetp += 4;
30280 f_context_id = VALUE32(tvb, *offsetp);
30281 proto_tree_add_item(t, hf_x11_xvmc_CreateSurface_context_id, tvb, *offsetp, 4, byte_order);
30282 *offsetp += 4;
30284 static void xvmcCreateSurface_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30286 int f_length, length, sequence_number;
30288 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateSurface");
30290 REPLY(reply);
30291 UNUSED(1);
30292 sequence_number = VALUE16(tvb, *offsetp);
30293 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30294 "sequencenumber: %d (xvmc-CreateSurface)", sequence_number);
30295 *offsetp += 2;
30296 f_length = VALUE32(tvb, *offsetp);
30297 length = f_length * 4 + 32;
30298 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30299 *offsetp += 4;
30300 UNUSED(24);
30301 listOfCard32(tvb, offsetp, t, hf_x11_xvmc_CreateSurface_reply_priv_data, hf_x11_xvmc_CreateSurface_reply_priv_data_item, f_length, byte_order);
30304 static void xvmcDestroySurface(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30306 int f_surface_id;
30307 f_surface_id = VALUE32(tvb, *offsetp);
30308 proto_tree_add_item(t, hf_x11_xvmc_DestroySurface_surface_id, tvb, *offsetp, 4, byte_order);
30309 *offsetp += 4;
30312 static void xvmcCreateSubpicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30314 int f_subpicture_id;
30315 int f_context;
30316 int f_xvimage_id;
30317 int f_width;
30318 int f_height;
30319 f_subpicture_id = VALUE32(tvb, *offsetp);
30320 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_subpicture_id, tvb, *offsetp, 4, byte_order);
30321 *offsetp += 4;
30322 f_context = VALUE32(tvb, *offsetp);
30323 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_context, tvb, *offsetp, 4, byte_order);
30324 *offsetp += 4;
30325 f_xvimage_id = VALUE32(tvb, *offsetp);
30326 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_xvimage_id, tvb, *offsetp, 4, byte_order);
30327 *offsetp += 4;
30328 f_width = VALUE16(tvb, *offsetp);
30329 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_width, tvb, *offsetp, 2, byte_order);
30330 *offsetp += 2;
30331 f_height = VALUE16(tvb, *offsetp);
30332 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_height, tvb, *offsetp, 2, byte_order);
30333 *offsetp += 2;
30335 static void xvmcCreateSubpicture_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30337 int f_length, length, sequence_number;
30338 int f_width_actual;
30339 int f_height_actual;
30340 int f_num_palette_entries;
30341 int f_entry_bytes;
30343 col_append_fstr(pinfo->cinfo, COL_INFO, "-CreateSubpicture");
30345 REPLY(reply);
30346 UNUSED(1);
30347 sequence_number = VALUE16(tvb, *offsetp);
30348 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30349 "sequencenumber: %d (xvmc-CreateSubpicture)", sequence_number);
30350 *offsetp += 2;
30351 f_length = VALUE32(tvb, *offsetp);
30352 length = f_length * 4 + 32;
30353 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30354 *offsetp += 4;
30355 f_width_actual = VALUE16(tvb, *offsetp);
30356 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_reply_width_actual, tvb, *offsetp, 2, byte_order);
30357 *offsetp += 2;
30358 f_height_actual = VALUE16(tvb, *offsetp);
30359 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_reply_height_actual, tvb, *offsetp, 2, byte_order);
30360 *offsetp += 2;
30361 f_num_palette_entries = VALUE16(tvb, *offsetp);
30362 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_reply_num_palette_entries, tvb, *offsetp, 2, byte_order);
30363 *offsetp += 2;
30364 f_entry_bytes = VALUE16(tvb, *offsetp);
30365 proto_tree_add_item(t, hf_x11_xvmc_CreateSubpicture_reply_entry_bytes, tvb, *offsetp, 2, byte_order);
30366 *offsetp += 2;
30367 listOfByte(tvb, offsetp, t, hf_x11_xvmc_CreateSubpicture_reply_component_order, 4, byte_order);
30368 UNUSED(12);
30369 listOfCard32(tvb, offsetp, t, hf_x11_xvmc_CreateSubpicture_reply_priv_data, hf_x11_xvmc_CreateSubpicture_reply_priv_data_item, f_length, byte_order);
30372 static void xvmcDestroySubpicture(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30374 int f_subpicture_id;
30375 f_subpicture_id = VALUE32(tvb, *offsetp);
30376 proto_tree_add_item(t, hf_x11_xvmc_DestroySubpicture_subpicture_id, tvb, *offsetp, 4, byte_order);
30377 *offsetp += 4;
30380 static void xvmcListSubpictureTypes(tvbuff_t *tvb, packet_info *pinfo _U_, int *offsetp, proto_tree *t, guint byte_order, int length _U_)
30382 int f_port_id;
30383 int f_surface_id;
30384 f_port_id = VALUE32(tvb, *offsetp);
30385 proto_tree_add_item(t, hf_x11_xvmc_ListSubpictureTypes_port_id, tvb, *offsetp, 4, byte_order);
30386 *offsetp += 4;
30387 f_surface_id = VALUE32(tvb, *offsetp);
30388 proto_tree_add_item(t, hf_x11_xvmc_ListSubpictureTypes_surface_id, tvb, *offsetp, 4, byte_order);
30389 *offsetp += 4;
30391 static void xvmcListSubpictureTypes_Reply(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30393 int f_length, length, sequence_number;
30394 int f_num;
30396 col_append_fstr(pinfo->cinfo, COL_INFO, "-ListSubpictureTypes");
30398 REPLY(reply);
30399 UNUSED(1);
30400 sequence_number = VALUE16(tvb, *offsetp);
30401 proto_tree_add_uint_format(t, hf_x11_reply_sequencenumber, tvb, *offsetp, 2, sequence_number,
30402 "sequencenumber: %d (xvmc-ListSubpictureTypes)", sequence_number);
30403 *offsetp += 2;
30404 f_length = VALUE32(tvb, *offsetp);
30405 length = f_length * 4 + 32;
30406 proto_tree_add_item(t, hf_x11_replylength, tvb, *offsetp, 4, byte_order);
30407 *offsetp += 4;
30408 f_num = VALUE32(tvb, *offsetp);
30409 proto_tree_add_item(t, hf_x11_xvmc_ListSubpictureTypes_reply_num, tvb, *offsetp, 4, byte_order);
30410 *offsetp += 4;
30411 UNUSED(20);
30412 struct_ImageFormatInfo(tvb, offsetp, t, byte_order, f_num);
30414 static const value_string xvmc_extension_minor[] = {
30415 { 0, "QueryVersion" },
30416 { 1, "ListSurfaceTypes" },
30417 { 2, "CreateContext" },
30418 { 3, "DestroyContext" },
30419 { 4, "CreateSurface" },
30420 { 5, "DestroySurface" },
30421 { 6, "CreateSubpicture" },
30422 { 7, "DestroySubpicture" },
30423 { 8, "ListSubpictureTypes" },
30424 { 0, NULL }
30426 const x11_event_info xvmc_events[] = {
30427 { NULL, NULL }
30429 static x11_reply_info xvmc_replies[] = {
30430 { 0, xvmcQueryVersion_Reply },
30431 { 1, xvmcListSurfaceTypes_Reply },
30432 { 2, xvmcCreateContext_Reply },
30433 { 4, xvmcCreateSurface_Reply },
30434 { 6, xvmcCreateSubpicture_Reply },
30435 { 8, xvmcListSubpictureTypes_Reply },
30436 { 0, NULL }
30439 static void dispatch_xvmc(tvbuff_t *tvb, packet_info *pinfo, int *offsetp, proto_tree *t, guint byte_order)
30441 int minor, length;
30442 minor = CARD8(xvmc_extension_minor);
30443 length = REQUEST_LENGTH();
30445 col_append_fstr(pinfo->cinfo, COL_INFO, "-%s",
30446 val_to_str(minor, xvmc_extension_minor,
30447 "<Unknown opcode %d>"));
30448 switch (minor) {
30449 case 0:
30450 xvmcQueryVersion(tvb, pinfo, offsetp, t, byte_order, length);
30451 break;
30452 case 1:
30453 xvmcListSurfaceTypes(tvb, pinfo, offsetp, t, byte_order, length);
30454 break;
30455 case 2:
30456 xvmcCreateContext(tvb, pinfo, offsetp, t, byte_order, length);
30457 break;
30458 case 3:
30459 xvmcDestroyContext(tvb, pinfo, offsetp, t, byte_order, length);
30460 break;
30461 case 4:
30462 xvmcCreateSurface(tvb, pinfo, offsetp, t, byte_order, length);
30463 break;
30464 case 5:
30465 xvmcDestroySurface(tvb, pinfo, offsetp, t, byte_order, length);
30466 break;
30467 case 6:
30468 xvmcCreateSubpicture(tvb, pinfo, offsetp, t, byte_order, length);
30469 break;
30470 case 7:
30471 xvmcDestroySubpicture(tvb, pinfo, offsetp, t, byte_order, length);
30472 break;
30473 case 8:
30474 xvmcListSubpictureTypes(tvb, pinfo, offsetp, t, byte_order, length);
30475 break;
30476 /* No need for a default case here, since Unknown is printed above,
30477 and UNDECODED() is taken care of by dissect_x11_request */
30481 static void register_xvmc(void)
30483 set_handler("XVideo-MotionCompensation", dispatch_xvmc, xvmc_errors, xvmc_events, xvmc_replies);
30485 static void register_x11_extensions(void)
30487 register_bigreq();
30488 register_composite();
30489 register_damage();
30490 register_dpms();
30491 register_dri2();
30492 register_ge();
30493 register_glx();
30494 register_randr();
30495 register_record();
30496 register_render();
30497 register_res();
30498 register_screensaver();
30499 register_shape();
30500 register_shm();
30501 register_sync();
30502 register_xc_misc();
30503 register_xevie();
30504 register_xf86dri();
30505 register_xf86vidmode();
30506 register_xfixes();
30507 register_xinerama();
30508 register_xinput();
30509 register_xkb();
30510 register_xprint();
30511 register_xselinux();
30512 register_xtest();
30513 register_xv();
30514 register_xvmc();