Ethereal-cvs: [ethereal-cvs] cvs commit: ethereal/gtk proto_dlg.c proto_dlg.h Makefile.am

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Laurent Deniel <deniel@xxxxxxxxxxxx>
Date: Sun, 13 Aug 2000 09:04:03 -0500 (CDT)
deniel      2000/08/13 09:03:59 CDT

  Modified files:
    gtk                  Makefile.am Makefile.nmake menu.c 
  Added files:
    gtk                  proto_dlg.c proto_dlg.h 
  Log:
  Add the "Edit:Protocols..." feature which currently only implements
  the following:
  
  It is now possible to enable/disable a particular protocol decoding
  (i.e. the protocol dissector is void or not). When a protocol
  is disabled, it is displayed as Data and of course, all linked
  sub-protocols are disabled as well.
  
  Disabling a protocol could be interesting:
  
  - in case of buggy dissectors
  - in case of wrong heuristics
  - for performance reasons
  - to decode the data as another protocol (TODO)
  
  Currently (if I am not wrong), all dissectors but NFS can be disabled
  (and dissectors that do not register protocols :-)
  
  I do not like the way the RPC sub-dissectors are disabled (in the
  sub-dissectors) since this could be done in the RPC dissector itself,
  knowing the sub-protocol hfinfo entry (this is why, I've not modified
  the NFS one yet).
  
  Two functions are added in proto.c :
  
  gboolean proto_is_protocol_enabled(int n);
  void proto_set_decoding(int n, gboolean enabled);
  
  and two MACROs which can be used in dissectors:
  
  OLD_CHECK_DISPLAY_AS_DATA(index, pd, offset, fd, tree)
  CHECK_DISPLAY_AS_DATA(index, tvb, pinfo, tree)
  
  See also the XXX in proto_dlg.c and proto.c around the new functions.
  
  Revision  Changes    Path
  1.30      +3 -1      ethereal/gtk/Makefile.am
  1.13      +1 -0      ethereal/gtk/Makefile.nmake
  1.35      +3 -1      ethereal/gtk/menu.c