SourceForge: etherape/etherape: changeset 724:e8a271a690db
fix compilation flags, remove bogus rpc marker
authorR.Ghetta <bchiara@users.sf.net>
Sun Nov 08 19:35:34 2009 +0100 (6 weeks ago)
changeset 724e8a271a690db
parent 723 88e0aaa36720
child 725 19f389f0bf7c
fix compilation flags, remove bogus rpc marker
ChangeLog
NEWS
TODO
src/Makefile.am
src/capture.c
src/decode_proto.c
     1.1 --- a/ChangeLog	Sun Oct 18 16:51:42 2009 +0200
     1.2 +++ b/ChangeLog	Sun Nov 08 19:35:34 2009 +0100
     1.3 @@ -1,3 +1,106 @@
     1.4 +2009-10-18  R.Ghetta  <bchiara@users.sf.net>
     1.5 +
     1.6 +	* src/eth_resolv.h, src/names.c, src/resolv.c, src/util.c, src/util.h:
     1.7 +	removed duplicate functionality
     1.8 +	[d986279f7d3a] [tip]
     1.9 +
    1.10 +	* src/eth_resolv.h, src/names.c, src/node.c, src/node_id.c,
    1.11 +	src/node_id.h, src/resolv.c:
    1.12 +	name decode refactoring: remove solved flag, add resolved name only
    1.13 +	if actually resolved
    1.14 +
    1.15 +	Polished a bit ethernet name resolving
    1.16 +	[f9371ed70402]
    1.17 +
    1.18 +	* TODO, src/capture.c, src/capture.h, src/common.h,
    1.19 +	src/decode_proto.c, src/decode_proto.h, src/menus.c, src/names.c,
    1.20 +	src/node_id.c, src/node_id.h, src/preferences.c:
    1.21 +	unified node id extraction with protocol decoding. Added
    1.22 +	experimental wlan/radiotap support
    1.23 +
    1.24 +	This change fixes a long standing problem on node ids, namely the
    1.25 +	need to have fixed positions for node addresses. While protocol
    1.26 +	decoding had most of the machinery to properly follow variable
    1.27 +	length protocols, node ids (used as internal keys for nodes) where
    1.28 +	attributed only on static information. Variable lenght decoding made
    1.29 +	possibile to support wlan. Decoding is still limited, to basic data,
    1.30 +	though.
    1.31 +	[a43a8301dd51]
    1.32 +
    1.33 +2009-10-17  R.Ghetta  <bchiara@users.sf.net>
    1.34 +
    1.35 +	* src/capture.c, src/decode_proto.c, src/decode_proto.h:
    1.36 +	revorked l3 proto decoding. Now ip position depends only on packet
    1.37 +	data, allowing for non uniform protocol types (e.g. wlan)
    1.38 +	[ae26f4abac47]
    1.39 +
    1.40 +	* TODO, src/capture.c, src/decode_proto.c:
    1.41 +	corrected compile errors, unified l2 addr decode
    1.42 +	[244ab4b3fc9c]
    1.43 +
    1.44 +	* src/capture.c, src/decode_proto.c, src/menus.c:
    1.45 +	revised table to handle variable header protocol types (like
    1.46 +	wireless)
    1.47 +
    1.48 +	Added a bit of wifi mapping (non functional)
    1.49 +	[52823815cbf8]
    1.50 +
    1.51 +2009-10-09  R.Ghetta  <bchiara@users.sf.net>
    1.52 +
    1.53 +	* .hgtags:
    1.54 +	fixed tags for 0.9.8
    1.55 +	[5e05da8b6048]
    1.56 +
    1.57 +2009-10-07  R.Ghetta  <bchiara@users.sf.net>
    1.58 +
    1.59 +	* glade/etherape.glade, src/capture.c, src/capture.h, src/common.h,
    1.60 +	src/decode_proto.c, src/decode_proto.h, src/globals.h, src/main.c,
    1.61 +	src/menus.c, src/names.c, src/names.h, src/node.c, src/node_id.c,
    1.62 +	src/node_id.h:
    1.63 +	Unified link level types. L2 decoding is now table-driven, to make
    1.64 +	adding new types easier. Removed the enum mirroring pcap DLT_xxx
    1.65 +	types
    1.66 +	[a8d0b33e936a]
    1.67 +
    1.68 +	* autogen.sh, etherape.desktop, etherape.desktop.in, etherape.spec.in:
    1.69 +	update autogen and spec
    1.70 +	[5e7566d88fc0]
    1.71 +
    1.72 +2009-09-28  R.Ghetta  <bchiara@users.sf.net>
    1.73 +
    1.74 +	* html/FAQ.html, html/NEWS.html, html/bug-reporting.html,
    1.75 +	html/etherape.css:
    1.76 +	removed obsolete files
    1.77 +	[d60950431152]
    1.78 +
    1.79 +	* Makefile.am, po/es.po, po/etherape.pot, po/fr.po, po/nl.po,
    1.80 +	po/tr.po:
    1.81 +	updated translations, added xpm file to debian
    1.82 +	[de5ba84c68a4]
    1.83 +
    1.84 +2009-09-27  R.Ghetta  <bchiara@users.sf.net>
    1.85 +
    1.86 +	* .hgtags:
    1.87 +	Added tag rel-0-9-8 for changeset 02ecc2219e37
    1.88 +	[8d465a947049]
    1.89 +
    1.90 +	* etherape.1, glade/etherape.glade, src/main.c:
    1.91 +	forgot manual and logo.
    1.92 +	[02ecc2219e37] [rel-0-9-8]
    1.93 +
    1.94 +	* .hgtags:
    1.95 +	Added tag rel-0-9-8 for changeset c1fa86faf0f5
    1.96 +	[7795d474b06b]
    1.97 +
    1.98 +	* ChangeLog, FAQ, NEWS, README.CVS, README.bugs, TODO, po/es.po,
    1.99 +	po/etherape.pot, po/fr.po, po/nl.po, po/tr.po:
   1.100 +	release 0.9.8
   1.101 +	[c1fa86faf0f5]
   1.102 +
   1.103 +	* config.h.in, configure.in, src/main.c, src/menus.c:
   1.104 +	mercurial id can be obtained only on a devel repo. Disable for now.
   1.105 +	[f9fefcf28795]
   1.106 +
   1.107  2009-09-26  R.Ghetta  <bchiara@users.sf.net>
   1.108  
   1.109  	* src/main.c:
     2.1 --- a/NEWS	Sun Oct 18 16:51:42 2009 +0200
     2.2 +++ b/NEWS	Sun Nov 08 19:35:34 2009 +0100
     2.3 @@ -2,6 +2,14 @@
     2.4  
     2.5     $Date$
     2.6  
     2.7 +  Overview of changes in EtherApe 0.9.9 ():
     2.8 +
     2.9 +   Changes summary:
    2.10 +     * experimental wlan and wlan/radiotap protocol decoding
    2.11 +     * unified link level modes
    2.12 +     * several performance enhancements
    2.13 +     * refactored and streamlined node id definition.
    2.14 +     * improved l3 packet deconding, now fully dynamic.  
    2.15  
    2.16    Overview of changes in EtherApe 0.9.8 (Sunday Sep 27 2009):
    2.17  
     3.1 --- a/TODO	Sun Oct 18 16:51:42 2009 +0200
     3.2 +++ b/TODO	Sun Nov 08 19:35:34 2009 +0100
     3.3 @@ -8,6 +8,8 @@
     3.4  
     3.5    * show all node stats in node window
     3.6  
     3.7 +  * find a way to record both ports of a link/connection
     3.8 +
     3.9    * revise preferences dialog; allow filtering out netbios names
    3.10  
    3.11    * Ability to set per node preferences. Like setting an hour long
    3.12 @@ -23,8 +25,6 @@
    3.13    * rewrite names handling. Do only packet extraction at capture time, name
    3.14      resolution only at display time for the chosen name.
    3.15  
    3.16 -  * Generalize a way to return error messages from capture.c
    3.17 -  
    3.18    * use glib datastructs everywhere, instead of a mix of glib and in-house.
    3.19  
    3.20    * refactor stop handling; separate clearing data from updating. 
     4.1 --- a/src/Makefile.am	Sun Oct 18 16:51:42 2009 +0200
     4.2 +++ b/src/Makefile.am	Sun Nov 08 19:35:34 2009 +0100
     4.3 @@ -48,6 +48,9 @@
     4.4  etherape_LDADD = $(ETHERAPE_LIBS) $(PCAP_LIBS) 
     4.5  etherape_LDFLAGS = 
     4.6  
     4.7 +AM_CPPFLAGS = \
     4.8 +	$(ETHERAPE_CFLAGS)
     4.9 +
    4.10  .indent: $(etherape_SOURCES)
    4.11  	indent $? 
    4.12  	touch .indent
     5.1 --- a/src/capture.c	Sun Oct 18 16:51:42 2009 +0200
     5.2 +++ b/src/capture.c	Sun Nov 08 19:35:34 2009 +0100
     5.3 @@ -338,7 +338,7 @@
     5.4  
     5.5    /* Close the capture */
     5.6    pcap_stats (pch_struct, &ps);
     5.7 -  g_my_debug ("libpcap received %d packets, dropped %d. EtherApe saw %g",
     5.8 +  g_my_debug ("libpcap received %d packets, dropped %d. EtherApe saw %lu",
     5.9  	      ps.ps_recv, ps.ps_drop, n_packets);
    5.10    pcap_close (pch_struct);
    5.11    g_my_info (_("Capture device stopped or file closed"));
     6.1 --- a/src/decode_proto.c	Sun Oct 18 16:51:42 2009 +0200
     6.2 +++ b/src/decode_proto.c	Sun Nov 08 19:35:34 2009 +0100
     6.3 @@ -1213,8 +1213,7 @@
     6.4    enum rpc_program msg_program;
     6.5    const gchar *rpc_prot = NULL;
     6.6  
     6.7 -  /* Determine whether this is an RPC cur_packet */
     6.8 -
     6.9 +  /* Determine whether this is an RPC packet */
    6.10    if (dp->cur_len < 24)
    6.11      return FALSE;		/* not big enough */
    6.12  
    6.13 @@ -1229,11 +1228,6 @@
    6.14        msg_program = pntohl (dp->cur_packet + 16);
    6.15      }
    6.16  
    6.17 -  if (msg_type != RPC_REPLY && msg_type != RPC_CALL)
    6.18 -    return FALSE;
    6.19 -
    6.20 -  decode_proto_add(dp, "RPC");
    6.21 -
    6.22    switch (msg_type)
    6.23      {
    6.24      case RPC_REPLY:
    6.25 @@ -1244,51 +1238,58 @@
    6.26        if (!(rpc_prot = find_conversation (dp->global_dst_address, 0,
    6.27  					  dp->global_dst_port, 0)))
    6.28  	return FALSE;
    6.29 +      decode_proto_add(dp, "RPC");
    6.30        decode_proto_add(dp, rpc_prot);
    6.31        return TRUE;
    6.32 +
    6.33      case RPC_CALL:
    6.34        switch (msg_program)
    6.35  	{
    6.36  	case BOOTPARAMS_PROGRAM:
    6.37 -	  decode_proto_add(dp, "BOOTPARAMS");
    6.38 +	  rpc_prot = "BOOTPARAMS";
    6.39  	  break;
    6.40  	case MOUNT_PROGRAM:
    6.41 -	  decode_proto_add(dp, "MOUNT");
    6.42 +	  rpc_prot = "MOUNT";
    6.43  	  break;
    6.44  	case NLM_PROGRAM:
    6.45 -	  decode_proto_add(dp, "NLM");
    6.46 +	  rpc_prot = "NLM";
    6.47  	  break;
    6.48  	case PORTMAP_PROGRAM:
    6.49 -	  decode_proto_add(dp, "PORTMAP");
    6.50 +	  rpc_prot = "PORTMAP";
    6.51  	  break;
    6.52  	case STAT_PROGRAM:
    6.53 -	  decode_proto_add(dp, "STAT");
    6.54 +	  rpc_prot = "STAT";
    6.55  	  break;
    6.56  	case NFS_PROGRAM:
    6.57 -	  decode_proto_add(dp, "NFS");
    6.58 +	  rpc_prot = "NFS";
    6.59  	  break;
    6.60  	case YPBIND_PROGRAM:
    6.61 -	  decode_proto_add(dp, "YPBIND");
    6.62 +	  rpc_prot = "YPBIND";
    6.63  	  break;
    6.64  	case YPSERV_PROGRAM:
    6.65 -	  decode_proto_add(dp, "YPSERV");
    6.66 +	  rpc_prot = "YPSERV";
    6.67  	  break;
    6.68  	case YPXFR_PROGRAM:
    6.69 -	  decode_proto_add(dp, "YPXFR");
    6.70 +	  rpc_prot = "YPXFR";
    6.71  	  break;
    6.72  	default:
    6.73  	  return FALSE;
    6.74  	}
    6.75  
    6.76        /* Search for an already existing conversation, if not, create one */
    6.77 +      g_assert(rpc_prot);
    6.78        if (!find_conversation (dp->global_src_address, 0, dp->global_src_port, 0))
    6.79  	add_conversation (dp->global_src_address, 0,
    6.80  			  dp->global_src_port, 0, rpc_prot);
    6.81  
    6.82 +      decode_proto_add(dp, "RPC");
    6.83 +      decode_proto_add(dp, rpc_prot);
    6.84        return TRUE;
    6.85 +
    6.86      default:
    6.87        return FALSE;
    6.88      }
    6.89 +  
    6.90    return FALSE;
    6.91  }				/* get_rpc */
    6.92