summaryrefslogtreecommitdiff
path: root/tools/process-x11-xcb.pl
AgeCommit message (Collapse)AuthorFilesLines
2017-05-03Add terminating NULL to lists for proto_tree_add_bitmask().Guy Harris1-0/+1
Those lists require null terminators; fix the script to add them, and re-run the script (with the current tip of the master branch for xcbproto and mesa). Change-Id: I76c156521e79753f5c19cae16e9caa031abd2496 Reviewed-on: https://code.wireshark.org/review/21471 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-04-19X11: Replace VALUEXX macros and handle endianness "natively."Michael Mann1-25/+46
Change-Id: I45d4557377a445c981e6b7cfc1dbe57f586252e5 Reviewed-on: https://code.wireshark.org/review/21210 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-18X11: Replace UNUSED macroMichael Mann1-10/+20
Change-Id: Ieed2c672fd2acb76dba0ef1c3182eb9f00a04253 Reviewed-on: https://code.wireshark.org/review/21205 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-18X11: Sort mesa_enum to allow for value_string_extMichael Mann1-19/+7
Adjust the dissector generator to put mesa_enum values in numerical order. Remove comments about where the specific values came from as sorting them means the comments aren't always going to be in the right place. Change-Id: I3c6b8252017c8a3ec379be49b3df069ec488cd1c Reviewed-on: https://code.wireshark.org/review/21198 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-18X11: Use proto_tree_add_bitmask for generated bitmasksMichael Mann1-7/+5
Change-Id: Idc95500b74452911117be8903fe0bde0c8a6fefa Reviewed-on: https://code.wireshark.org/review/21173 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-04-16X11: Resolve filter differences between a "list" and its "item".Michael Mann1-2/+2
The "list" is of type FT_NONE and the "item" is not. That can cause type conflicts. Change-Id: If62f7113bc120e392588724a0dd65b7ab32ccde7 Reviewed-on: https://code.wireshark.org/review/21146 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-16X11: Revert mesa_enum_ext back to mesa_enumMichael Mann1-3/+2
Values aren't numerically sorted in the XML, so they aren't put in the value_string in numerical order. That's a problem for value_string_ext. Change-Id: Ie40c5ab1083cc7be140d11dc131e3588759819b7 Reviewed-on: https://code.wireshark.org/review/21128 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-16X11: Ensure mesa_enum value_string has unique valuesMichael Mann1-3/+12
Also convert usage to a value_string_ext Change-Id: Ie515591355879f8eb65faf50e7c04b30cff13519 Reviewed-on: https://code.wireshark.org/review/21124 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-15x11: proto_tree_add_uint_format -> proto_tree_add_uint_format_valueMichael Mann1-8/+18
Change-Id: Ib8b80b2c4a79941cf56d8add783c88d1078f079a Reviewed-on: https://code.wireshark.org/review/21104 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-06-16X11: Fix last indent issue on X11 generatorAlexis La Goutte1-23/+23
and regenerate X11 dissector Change-Id: If2c781d346713f5a2a2e97de84c0fedcfd1958af Reviewed-on: https://code.wireshark.org/review/15944 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-29Support building the X11 dissector outside the source tree.Jeff Morriss1-35/+42
Use relative path names for the script names and mesa/xcbproto directories so different paths (from different users) don't cause deltas. Also, with help from Peter Wu and Graham, get generation of the X11 dissector working from cmake. Change-Id: I95cd2a0f973dcbc67f457ff94c28e46a666afb74 Reviewed-on: https://code.wireshark.org/review/12213 Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-21x11 generator: Fix indent (use always 4 spaces) and add modelinesAlexis La Goutte1-561/+574
Change-Id: I91739bb6f4acc4da060cf389ec288ee910965b2a Reviewed-on: https://code.wireshark.org/review/11113 Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-10-20X11 generator: avoid extraneous parens in conditionals.Jeff Morriss1-3/+16
This is to avoid complaints from clang of the form: wireshark/epan/dissectors/x11-extension-implementation.h:17021:18: error: equality comparison with extraneous parentheses [-Werror,-Wparentheses-equality] if ((f_class_id == 0)) { ~~~~~~~~~~~^~~~ Change-Id: I91d629ad47677b71909d7da517c4a6198c276186 Reviewed-on: https://code.wireshark.org/review/11186 Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-19x11 generator: Support new XCB paramrefPeter Harris1-5/+39
Change-Id: I8ae38785bd0f2f81fa2164b5bc29274bd7e940f5 Reviewed-on: https://code.wireshark.org/review/11105 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2015-10-19x11 generator: Don't crash when a switch is in a structPeter Harris1-1/+4
The size calculation for the struct will be wrong (too small) which looks strange in the GUI when the children elements extend past the region marked by their parent. But it doesn't seem to cause any actual problems, there is only one request affected by this, and correct size calculation (by recursing the switch) would take a fair amount of work. Change-Id: I1847f736153daf59b8dbf3299005a772ffe9673a Reviewed-on: https://code.wireshark.org/review/11107 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2015-10-19x11 generator: Fix struct size with arrayPeter Harris1-1/+0
my $count here shadows my $count in the outer scope, preventing the size of constant sized arrays from being calculated correctly. Change-Id: I89c989ee2d288d4828871ebab650807fbde747dd Reviewed-on: https://code.wireshark.org/review/11106 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2015-10-19x11 generator: Allow perl 5.20 and newerPeter Harris1-1/+0
Despite promises from the Perl maintainers to remove or at least drastically change given/when and smartmatch, that still hasn't happened as of 5.22. We can cross that bridge when we come to it. Until then, assume they're never going to break given/when. Change-Id: If9270bd6fd819d24c58f31f2dfe0d88e831b19fe Reviewed-on: https://code.wireshark.org/review/11104 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2015-10-19x11 generator: some blacklisted structs are now used.Jeff Morriss1-9/+9
Also, die more gracefully than: Can't use string ("1") as a HASH ref while "strict refs" in use at ../../tools/process-x11-xcb.pl line 675. at ../../tools/process-x11-xcb.pl line 1859 at ../../tools/process-x11-xcb.pl line 1859 when blacklisted (previously unused) structures start being used in the xcbproto source. (It's still not possible to regenerate the X11 dissector but this is a step...) Change-Id: I1dec16a7a479d5f453c5f54e561aa8238eb21280 Reviewed-on: https://code.wireshark.org/review/10972 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2015-05-01Fix some cases where we're shifting a signed 1 left.Guy Harris1-1/+1
Shift 1U instead, to make sure it's unsigned; the result of, for example, the result of shifting a signed value left is undefined if the value times 2^{shift count} doesn't fit in the *signed* type of the shifted value. That means, in particular, that the result of shifting 1 left by {number of bits in an int - 1} is undefined. (In *practice*, it'll probably be -2^32, with the bit you want set, but that's not guaranteed, and GCC 5.1 seems not to like it.) This fixes the *other* generator for the X11 header files; we manually fix the file in question, because life's too short to spend very much of it trying to debug Perl issues that cause a Can't use string ("1") as a HASH ref while "strict refs" in use at ../../tools/process-x11-xcb.pl line 675. at ../../tools/process-x11-xcb.pl line 1859 at ../../tools/process-x11-xcb.pl line 1859 failure. Change-Id: I3dd46025b2ae461e63034b36ab11cdbc9380b696 Reviewed-on: https://code.wireshark.org/review/8263 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-05-01Fix some cases where we're shifting a signed 1 left.Guy Harris1-1/+1
Shift 1U instead, to make sure it's unsigned; the result of, for example, the result of shifting a signed value left is undefined if the value times 2^{shift count} doesn't fit in the *signed* type of the shifted value. That means, in particular, that the result of shifting 1 left by {number of bits in an int - 1} is undefined. (In *practice*, it'll probably be -2^32, with the bit you want set, but that's not guaranteed, and GCC 5.1 seems not to like it.) This fixes the generator for the X11 header files; we manually fix the header file in question, because life's too short to spend very much of it trying to debug Perl issues that cause a Can't use string ("1") as a HASH ref while "strict refs" in use at ../../tools/process-x11-xcb.pl line 675. at ../../tools/process-x11-xcb.pl line 1859 at ../../tools/process-x11-xcb.pl line 1859 failure. Change-Id: Ia903e9dacad49021bc0dfe129b9393ad426de9eb Reviewed-on: https://code.wireshark.org/review/8261 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-19Add parenthesis around some generated code so it compiles. This newStephen Fisher1-1/+1
code only shows up when the X11 dissector is updated from the latest xcbproto & mesa, which I will commit real soon now (RSN). Change-Id: Ic750df3b4406f107fd850ade891ee093054c8d6d Reviewed-on: https://code.wireshark.org/review/5882 Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2014-12-19Skip over the new 'switch' field in xproto/src/xinput.xml so we canStephen Fisher1-0/+1
re-generate the x11 dissector again without the script breaking. Change-Id: I6d24cf098f370f4c1ff191052e2ea67b7875b33a Reviewed-on: https://code.wireshark.org/review/5878 Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2014-12-19Put a colon after the error message and before the field the errorStephen Fisher1-1/+1
is referring to for clarity. Change-Id: I7930e851647c847335b91435c7b0871c6db2defe Reviewed-on: https://code.wireshark.org/review/5847 Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2014-12-19Add a comment to each of these scripts to say thatStephen Fisher1-0/+2
epan/dissectors/README.X11 has instructions for running them. Change-Id: Id3c1df1bf1f50b19372b9a0470822da9ca6504f7 Reviewed-on: https://code.wireshark.org/review/5846 Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2014-08-22X11: Support xcb's new <case>Peter Harris1-15/+22
Change-Id: I32c6ab15d6dc7a67cdb50c4187e2752730315588 Reviewed-on: https://code.wireshark.org/review/3751 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-06-12X11: Support XCB's new <pad align='n' />Peter Harris1-7/+34
Change-Id: I0a45380ffcfb3be7e3190d0875626ed0fe046c4e Signed-off-by: Peter Harris <pharris@opentext.com> Reviewed-on: https://code.wireshark.org/review/2147 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-02-25Get rid of a few more Subversion remnants.Jeff Morriss1-2/+0
Change-Id: I35ff651017e355f92b4f9e6388e90d446f245d0a Reviewed-on: https://code.wireshark.org/review/361 Reviewed-by: Evan Huus <eapache@gmail.com> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-02-14Remove $Id$ and other Subversion leftovers from the tools.Jeff Morriss1-2/+0
There are a few things in here which could still use attention. Don't regenerate anything now. Change-Id: I283c224d3523212144707fca3d6265916cb11792 Reviewed-on: https://code.wireshark.org/review/205 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2013-12-19Some patches from Peter Harris:Jeff Morriss1-19/+105
[PATCH 1/5] X11 dissector: Sort declarations This prevents pointless changes showing up in the diff when evaluating unrelated changes to the generator. See http://search.cpan.org/dist/perl-5.18.0/pod/perldelta.pod#Hash_randomization [PATCH 2/5] X11 dissector: Silence warnings on perl 5.18, prevent 5.20 Perl 5.18 retroactively marked "given/when" experimental, with a promise to remove or dramatically change it in 5.20. Since there is no perl 5.20 yet, there is no way to make this script compatible with it. [PATCH 3/5] X11 dissector: Support variable_param (at least for glCallLists) (This patch makes the change in r54232 unnecessary by using the previously- unused variable.) [PATCH 4/5] X11 dissector: Remove obsolete TODO item This item was done in r53531 PATCH 09/11 svn path=/trunk/; revision=54242
2013-12-18Instead of assigning a variable to itself, avoid unused warnings similarGerald Combs1-1/+1
to the Q_UNUSED macro. svn path=/trunk/; revision=54232
2013-11-24Fix checkAPIs: don't try to feed VALS() into FT_BOOLEANs.Jeff Morriss1-3/+4
Also, as per Peter Harris' request, update copyright date. svn path=/trunk/; revision=53545
2013-11-24Some patches from Peter Harris to make it possible to build the X11 dissectorJeff Morriss1-132/+371
again (and some various other improvements): Rebuild the dissector with the latest xcbproto and mesa. Subject: [PATCH 01/11] X11 dissector: Support CARD64 and INT64 types These types are used by the new Present extension. Subject: [PATCH 02/11] X11 dissector: Un-blacklist a few structures The xinput structs are used by the latest xcb/proto, and the xkb struct has been removed. Subject: [PATCH 03/11] X11 dissector: Add hack for xinput:ChangeProperty xinput:ChangeProperty should use switch/case, but only switch/bitcase is supported at the moment. Add (hopefully temporary) hack. Subject: [PATCH 04/11] X11 dissector: Use namespace for types In particular, the name of the xsync struct 'INT64' collides with a basic type of the same name. Subject: [PATCH 05/11] X11 dissector: Add support for "Generic" events All new extensions are using the new "Generic" events instead of traditional events, because there aren't enough traditional event numbers. Denoted by <event xge="true"> in xcb/proto. Subject: [PATCH 06/11] X11 dissector: Blacklist unused structures Subject: [PATCH 07/11] X11 dissector: Support multiple enumref in a bitcase XKB is weird. Subject: [PATCH 08/11] X11 dissector: Support sumof Subject: [PATCH 09/11] X11 dissector: Stop generating unused-but-set variables (This patch also reverts r53298/r53299.) svn path=/trunk/; revision=53531
2013-11-13Wrap GCC pragma in an #ifdef to make it compile when we're not using GCC.Jeff Morriss1-1/+3
Again, change manually applied to the .h file. svn path=/trunk/; revision=53299
2013-11-13Use a gcc pragma to stop the (pages of) warnings coming out ofJeff Morriss1-2/+3
x11-extensions-implementation.h . This change was manually applied to the .h file as I can't currently rebuild the X11 dissector. svn path=/trunk/; revision=53298
2013-09-08Add filterable expert info to generated X11 dissector. I didn't regenerate ↵Michael Mann1-1/+1
the dissector files, but did manually update the source (tools/process-x11-xcb.pl) so any future regeneration won't lose the changes. svn path=/trunk/; revision=51834
2012-06-28Update FSF address - part II.Jakub Zawadzki1-1/+1
svn path=/trunk/; revision=43538
2012-05-12A routine that processes a struct_XXX() won't necessarily use itsGuy Harris1-1/+1
encoding argument; mark it as (potentially) unused. svn path=/trunk/; revision=42609
2012-05-12Get rid of remaining Booleans-as-encoding-arguments inGuy Harris1-51/+54
proto_tree_add_item() calls. Updated tools/process-x11-xcb.pl to support different encoding values for different fields. Replaced the "little_endian" Boolean value with a "byte_order" value containing the setting of the byte-order ENC_ bit. Regenerated X11 fields from current x.org git. svn path=/trunk/; revision=42601
2012-03-13From Peter Harris:Jeff Morriss1-10/+32
An enum name collision was recently added to the upstream XCB/proto. Avoid the collision by putting enum names into their proper namespace. After applying that, regenerate the X11 dissector. svn path=/trunk/; revision=41514
2010-09-24(Refining the regexp...) Replace blurbs that match the name (case ↵Jeff Morriss1-1/+1
insensitive) with NULL. svn path=/trunk/; revision=34230
2010-06-03From Peter Harris via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4820 :Jeff Morriss1-7/+6
Mesa moved its API description file again. Also, while I'm here, I noticed that they stopped using signed tags, so add --tags to "git describe" for a better description of the mesa version used to build the X11 dissector. svn path=/trunk/; revision=33067
2010-04-20From Peter Harris via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4481 :Jeff Morriss1-116/+227
The XKEYBOARD extension is a pain in the... so XCB had to grow new ways to describe the protocol. This patch adds support to the Wireshark dissector, so it can successfully process the XCB description of the XKEYBOARD extension. Without this patch, "make x11-dissector" chokes on the current xcbproto from git. Also update the script to deal with the new mesa directory structure. svn path=/trunk/; revision=32520
2009-10-03From Peter Harris via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4067 :Jeff Morriss1-6/+134
This patch adds enum support to x11-process-xcb.pl svn path=/trunk/; revision=30257
2009-09-12Move all of the scripts in epan/dissectors/ to tools/ .Jeff Morriss1-0/+1241
Add a target ("x11-dissector") to build the X11 dissector. Put the X11-related files (back) in the source distribution. svn path=/trunk/; revision=29871