Joerg Mayer's updates to the VINES dissector and to protocol layers
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Thu, 20 Jan 2000 21:34:16 +0000 (21:34 +0000)
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Thu, 20 Jan 2000 21:34:16 +0000 (21:34 +0000)
above VINES.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1514 f5534014-38df-0310-8fa8-9805f1628bb7

capture.c
ethertype.c
packet-ip.c
packet-ip.h
packet-ppp.c
packet.h

index 798c6238bd5537330398844d0639a9d99fb4eee9..d86a82ba23ae17625d1a76784ae90231acaa6f22 100644 (file)
--- a/capture.c
+++ b/capture.c
@@ -1,7 +1,7 @@
 /* capture.c
  * Routines for packet capture windows
  *
- * $Id: capture.c,v 1.89 2000/01/12 06:56:32 guy Exp $
+ * $Id: capture.c,v 1.90 2000/01/20 21:34:12 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -485,7 +485,7 @@ int
 capture(void)
 {
   GtkWidget  *cap_w, *main_vb, *count_lb, *tcp_lb, *udp_lb, *icmp_lb,
-             *ospf_lb, *gre_lb, *netbios_lb, *ipx_lb, *other_lb, *stop_bt;
+             *ospf_lb, *gre_lb, *netbios_lb, *ipx_lb, *vines_lb, *other_lb, *stop_bt;
   pcap_t     *pch;
   gchar       err_str[PCAP_ERRBUF_SIZE], label_str[32];
   loop_data   ld;
@@ -511,6 +511,7 @@ capture(void)
   ld.counts.gre     = 0;
   ld.counts.ipx     = 0;
   ld.counts.netbios = 0;
+  ld.counts.vines   = 0;
   ld.counts.other   = 0;
   ld.pdh            = NULL;
 
@@ -645,6 +646,10 @@ capture(void)
   gtk_box_pack_start(GTK_BOX(main_vb), ipx_lb, FALSE, FALSE, 3);
   gtk_widget_show(ipx_lb);
 
+  vines_lb = gtk_label_new("VINES: 0 (0.0%)");
+  gtk_box_pack_start(GTK_BOX(main_vb), vines_lb, FALSE, FALSE, 3);
+  gtk_widget_show(vines_lb);
+
   other_lb = gtk_label_new("Other: 0 (0.0%)");
   gtk_box_pack_start(GTK_BOX(main_vb), other_lb, FALSE, FALSE, 3);
   gtk_widget_show(other_lb);
@@ -737,6 +742,10 @@ capture(void)
                pct(ld.counts.ipx, ld.counts.total));
       gtk_label_set(GTK_LABEL(ipx_lb), label_str);
 
+      sprintf(label_str, "VINES: %d (%.1f%%)", ld.counts.vines,
+               pct(ld.counts.vines, ld.counts.total));
+      gtk_label_set(GTK_LABEL(vines_lb), label_str);
+
       sprintf(label_str, "Other: %d (%.1f%%)", ld.counts.other,
                pct(ld.counts.other, ld.counts.total));
       gtk_label_set(GTK_LABEL(other_lb), label_str);
index f04ea14b83bc5876d05cadea82851d581eee2b38..0a467729490ef64f44633e6f77b798b3fa5f8df1 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for calling the right protocol for the ethertype.
  * This is called by both packet-eth.c (Ethernet II) and packet-llc.c (SNAP)
  *
- * $Id: ethertype.c,v 1.23 2000/01/13 17:59:14 guy Exp $
+ * $Id: ethertype.c,v 1.24 2000/01/20 21:34:16 guy Exp $
  *
  * Gilbert Ramirez <gram@verdict.uthscsa.edu>
  *
@@ -69,6 +69,9 @@ capture_ethertype(guint16 etype, int offset,
     case ETHERTYPE_VLAN:
       capture_vlan(pd, offset, cap_len, ld);
       break;
+    case ETHERTYPE_VINES:
+      capture_vines(pd, offset, cap_len, ld);
+      break;
     default:
       ld->other++;
       break;
index 9c2bf1be886d8f43b07b2453173d9a58a1ab402a..b5395344970f25bf257ba64a7bbb37a6ce05526c 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-ip.c
  * Routines for IP and miscellaneous IP protocol packet disassembly
  *
- * $Id: packet-ip.c,v 1.68 2000/01/16 02:54:47 guy Exp $
+ * $Id: packet-ip.c,v 1.69 2000/01/20 21:34:12 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -328,6 +328,9 @@ capture_ip(const u_char *pd, int offset, guint32 cap_len, packet_counts *ld) {
     case IP_PROTO_GRE:
       ld->gre++;
       break;
+    case IP_PROTO_VINES:
+      ld->gre++;
+      break;
     default:
       ld->other++;
   }
@@ -710,6 +713,7 @@ static const value_string proto_vals[] = { {IP_PROTO_ICMP, "ICMP"},
                                            {IP_PROTO_ESP,  "ESP" },
                                            {IP_PROTO_IPV6, "IPv6"},
                                            {IP_PROTO_PIM,  "PIM" },
+                                           {IP_PROTO_VINES,"VINES"},
                                            {0,             NULL  } };
 
 static const value_string precedence_vals[] = {
@@ -819,6 +823,7 @@ dissect_ip(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
     case IP_PROTO_AH:
     case IP_PROTO_IPV6:
     case IP_PROTO_PIM:
+    case IP_PROTO_VINES:
       /* Names are set in the associated dissect_* routines */
       break;
     default:
@@ -947,6 +952,9 @@ again:
     case IP_PROTO_OSPF:
       dissect_ospf(pd, offset, fd, tree);
       break;
+    case IP_PROTO_VINES:
+      dissect_vines_frp(pd, offset, fd, tree);
+      break;
     case IP_PROTO_RSVP:
       dissect_rsvp(pd, offset, fd, tree);
       break;
index 2d686fd527711861748bdbe50ee264342dd5b46a..5911bccdfa815ac7c0954293cf80652d782562ef 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-ip.h
  * Definitions for IP packet disassembly structures and routines
  *
- * $Id: packet-ip.h,v 1.9 1999/11/21 14:43:53 gram Exp $
+ * $Id: packet-ip.h,v 1.10 2000/01/20 21:34:15 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -51,7 +51,8 @@
 #define IP_PROTO_NONE          59              /* IP6 no next header */
 #define IP_PROTO_DSTOPTS       60              /* IP6 no next header */
 #define IP_PROTO_EON           80              /* ISO cnlp */
-#define IP_PROTO_EIGRP   88
+#define IP_PROTO_VINES         83              /* Vines over raw IP */
+#define IP_PROTO_EIGRP         88
 #define IP_PROTO_OSPF          89
 #define IP_PROTO_ENCAP         98              /* encapsulation header */
 #define IP_PROTO_PIM           103             /* Protocol Independent Mcast */
index 04a936e147a14ad8061f4af8c4a54589923d36da..feb31b4a1c53dead5aa2c1d514c4ca442b7c994e 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-ppp.c
  * Routines for ppp packet disassembly
  *
- * $Id: packet-ppp.c,v 1.23 1999/11/30 23:56:36 gram Exp $
+ * $Id: packet-ppp.c,v 1.24 2000/01/20 21:34:15 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -528,6 +528,9 @@ capture_ppp( const u_char *pd, guint32 cap_len, packet_counts *ld ) {
     case PPP_IPX:
       capture_ipx(pd, 4, cap_len, ld);
       break;
+    case PPP_VINES:
+      capture_ipx(pd, 4, cap_len, ld);
+      break;
     default:
       ld->other++;
       break;
index cb1ad52b6e93a71c576e0cdf6815663e97d9455c..cd9ca5e0c0d15033b2e7d8a2b258739d14a481fd 100644 (file)
--- a/packet.h
+++ b/packet.h
@@ -1,7 +1,7 @@
 /* packet.h
  * Definitions for packet disassembly structures and routines
  *
- * $Id: packet.h,v 1.165 2000/01/07 09:10:13 guy Exp $
+ * $Id: packet.h,v 1.166 2000/01/20 21:34:14 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -103,6 +103,7 @@ typedef struct _packet_counts {
   gint           gre;
   gint           netbios;
   gint           ipx;
+  gint           vines;
   gint           other;
   gint           total;
 } packet_counts;
@@ -290,6 +291,7 @@ void capture_netbios(const u_char *, int, guint32, packet_counts *);
 void capture_llc(const u_char *, int, guint32, packet_counts *);
 void capture_ip(const u_char *, int, guint32, packet_counts *);
 void capture_ipx(const u_char *, int, guint32, packet_counts *);
+void capture_vines(const u_char *, int, guint32, packet_counts *);
 void capture_vlan(const u_char *, int, guint32, packet_counts *);
 
 /*