Ethereal-cvs: [Ethereal-cvs] cvs commit: ethereal packet-x11-keysymdef.h packet-x11.c x11-fiel
obiot 2004/01/02 06:52:46 CST
Modified files:
. packet-x11.c x11-fields
Added files:
. packet-x11-keysymdef.h
Log:
From Michael Shuldman:
Add support for parsing some X11 replies and events (and
the framework for handling X11 errors it looks like) to the
existing X11 code, which parses X11 requests.
It parses what is the most difficult part of the replies/events,
they Keycode stuff by parsing the Keyboardmapping replies and etc,
and then KeyPress, KeyRelease events and some related stuff (used
for a specific project).
Adding support for parsing the rest of the event/replies should not
be difficult, I think it will mostly consist of going through every
event/reply and add the missing calls for each dataitem i.e. register
the data, the remaining the eventcodes/replies are pretty
straightforward if I remember correctly.
All events and replies are reported, it's the "detailed" (-V option)
that's missing for most.
The replies, events and errors are listed in the Info column,
and are summarized in the protocol summary line.
Bogus if (tree) { } constructs have also been fixed.
List over other misc. stuff added:
- handle multiple outstanding requests.
- add AllocNamedColor to list of requests expecting a reply.
- body for parsing error replies.
- each packet can be sent to us multiple times, try to handle that.
- change request_length display to be what the client actually sends
for x11_request, not what it means (don't multiply by four).
- add some more opcodes expecting a reply (gone through all listed
in the ref. now, so should be complete).
- use hashtable and sequencenumber for matching reply to request.
Revision Changes Path
1.48 +1723 -555 ethereal/packet-x11.c
1.10 +55 -1 ethereal/x11-fields