Make sure to pass the sent/received direction from pppdump.c in
authorGilbert Ramirez <gram@alumni.rice.edu>
Thu, 21 Sep 2000 04:41:37 +0000 (04:41 -0000)
committerGilbert Ramirez <gram@alumni.rice.edu>
Thu, 21 Sep 2000 04:41:37 +0000 (04:41 -0000)
pseudo_header.
Use generic "p2p_phdr" instead of "lapd_phdr". Modify toshiba.c and
packet-lapd.c to take that into account.
Add frame.p2p_dir, a filterable field, 0=sent, 1=recvd
Make p2p_dir available in packe_info, as I think it will be needed
in VJ COMP and UNCOMP dissection.

Rename WTAP_ENCAP_TR to WTAP_ENCAP_TOKEN_RING.

Mention pppd-log support in man page.
Mention atmsnoop in README.

svn path=/trunk/; revision=2455

17 files changed:
README
capture.c
doc/ethereal.pod.template
packet-lapd.c
packet.c
packet.h
randpkt.c
wiretap/iptrace.c
wiretap/lanalyzer.c
wiretap/libpcap.c
wiretap/netmon.c
wiretap/netxray.c
wiretap/ngsniffer.c
wiretap/pppdump.c
wiretap/snoop.c
wiretap/toshiba.c
wiretap/wtap.h

diff --git a/README b/README
index 054a56af453050fcfc37c7cd7c878f7c01a0e8e1..7b2b82583ba4f5817f490c260ce0e48bb76e631b 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-$Id: README,v 1.43 2000/09/20 12:09:37 gram Exp $
+$Id: README,v 1.44 2000/09/21 04:41:05 gram Exp $
 
 General Information
 ------- -----------
@@ -91,6 +91,7 @@ Sniffer (compressed and uncompressed)
 NetXray
 Sniffer Pro
 snoop
+atmsnoop
 Shomiti
 LANalyzer
 Microsoft Network Monitor
index 1c15ab9e3fd18152be32e18f6b00578e62850400..8132f89c29fef69e0829af6de4dd27332ec05005 100644 (file)
--- a/capture.c
+++ b/capture.c
@@ -1,7 +1,7 @@
 /* capture.c
  * Routines for packet capture windows
  *
- * $Id: capture.c,v 1.126 2000/09/17 03:20:03 guy Exp $
+ * $Id: capture.c,v 1.127 2000/09/21 04:41:06 gram Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -988,7 +988,7 @@ pipe_dispatch(int fd, loop_data *ld, struct pcap_hdr *hdr)
     case WTAP_ENCAP_FDDI_BITSWAPPED:
       capture_fddi(pd, &ld->counts);
       break;
-    case WTAP_ENCAP_TR:
+    case WTAP_ENCAP_TOKEN_RING:
       capture_tr(pd, 0, &ld->counts);
       break;
     case WTAP_ENCAP_NULL:
@@ -1578,7 +1578,7 @@ capture_pcap_cb(u_char *user, const struct pcap_pkthdr *phdr,
     case WTAP_ENCAP_FDDI_BITSWAPPED:
       capture_fddi(pd, &ld->counts);
       break;
-    case WTAP_ENCAP_TR:
+    case WTAP_ENCAP_TOKEN_RING:
       capture_tr(pd, 0, &ld->counts);
       break;
     case WTAP_ENCAP_NULL:
index ee19773e04db16f6df5409998e09dfb7fa15196c..8ab34a22f8b9e37fe8f081ce41dd3e2704f3921d 100644 (file)
@@ -38,8 +38,9 @@ B<atmsnoop>, B<LanAlyzer>, B<Sniffer> (compressed or uncompressed),
 Microsoft B<Network Monitor>, AIX's B<iptrace>, B<NetXray>, B<Sniffer
 Pro>, B<RADCOM>'s WAN/LAN analyzer, B<Lucent/Ascend> router debug
 output, HP-UX's B<nettl>, the dump output from B<Toshiba's> ISDN
-routers, the output from B<i4btrace> from the ISDN4BSD project, and
-output in IPLog format from the Cisco Secure Intrusion Detection System.
+routers, the output from B<i4btrace> from the ISDN4BSD project, the
+output in B<IPLog> format from the Cisco Secure Intrusion Detection System,
+and B<pppd logs> (pppdump format).
 There is no need to tell B<Ethereal> what type of file you are reading;
 it will determine the file type by itself.  B<Ethereal> is also capable
 of reading any of these file formats if they are compressed using gzip. 
index 6566bd4b2bf0b2f9069dcfca54ad49eecc405649..68f0a4b0ae1a32a3baa8aea087dd8a07485c9896 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for LAPD frame disassembly
  * Gilbert Ramirez <gram@xiexie.org>
  *
- * $Id: packet-lapd.c,v 1.13 2000/08/13 14:08:24 deniel Exp $
+ * $Id: packet-lapd.c,v 1.14 2000/09/21 04:41:07 gram Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -106,19 +106,19 @@ dissect_lapd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
        sapi = (address & LAPD_SAPI) >> LAPD_SAPI_SHIFT;
        lapd_header_len = 2;    /* address */
 
-       if (pinfo->pseudo_header->lapd.from_network_to_user) {
-               is_response = cr ? FALSE : TRUE;
+       if (pinfo->pseudo_header->p2p.sent) {
+               is_response = cr ? TRUE : FALSE;
                if(check_col(pinfo->fd, COL_RES_DL_DST))
-                   col_add_str(pinfo->fd, COL_RES_DL_DST, "User");
+                       col_add_str(pinfo->fd, COL_RES_DL_DST, "Network");
                if(check_col(pinfo->fd, COL_RES_DL_SRC))
-                   col_add_str(pinfo->fd, COL_RES_DL_SRC, "Network");
+                       col_add_str(pinfo->fd, COL_RES_DL_SRC, "User");
        }
        else {
-               is_response = cr ? TRUE : FALSE;
+               is_response = cr ? FALSE : TRUE;
                if(check_col(pinfo->fd, COL_RES_DL_DST))
-                       col_add_str(pinfo->fd, COL_RES_DL_DST, "Network");
+                   col_add_str(pinfo->fd, COL_RES_DL_DST, "User");
                if(check_col(pinfo->fd, COL_RES_DL_SRC))
-                       col_add_str(pinfo->fd, COL_RES_DL_SRC, "User");
+                   col_add_str(pinfo->fd, COL_RES_DL_SRC, "Network");
        }
 
 
index ca225f6dc8be33b98ea22715fa5a2ce999270586..8b305a453e03f4a2247a9aa15ff7155e419bcbc4 100644 (file)
--- a/packet.c
+++ b/packet.c
@@ -1,7 +1,7 @@
 /* packet.c
  * Routines for packet disassembly
  *
- * $Id: packet.c,v 1.108 2000/09/13 20:17:21 gram Exp $
+ * $Id: packet.c,v 1.109 2000/09/21 04:41:07 gram Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -102,6 +102,7 @@ static int hf_frame_time_delta = -1;
 static int hf_frame_number = -1;
 static int hf_frame_packet_len = -1;
 static int hf_frame_capture_len = -1;
+static int hf_frame_p2p_dir = -1;
 static int proto_short = -1;
 static int proto_malformed = -1;
 
@@ -109,6 +110,14 @@ static gint ett_frame = -1;
 
 static void display_signed_time(gchar *, int, gint32, gint32);
 
+
+static const value_string p2p_dirs[] = {
+       { P2P_DIR_SENT, "Sent" },
+       { P2P_DIR_RECV, "Received" },
+       { 0, NULL }
+};
+       
+
 /* Protocol-specific data attched to a frame_data structure - protocol
    index and opaque pointer. */
 typedef struct _frame_proto_data {
@@ -939,6 +948,7 @@ void blank_packetinfo(void)
   pi.srcport  = 0;
   pi.destport = 0;
   pi.current_proto = "<Missing Protocol Name>";
+  pi.p2p_dir = P2P_DIR_UNKNOWN;
 }
 
 /* Do all one-time initialization. */
@@ -1000,6 +1010,14 @@ dissect_packet(union wtap_pseudo_header *pseudo_header, const u_char *pd,
        struct timeval tv;
        static tvbuff_t *tvb;
 
+       blank_packetinfo();
+
+       if (fd->lnk_t == WTAP_ENCAP_LAPD ||
+                       fd->lnk_t == WTAP_ENCAP_PPP_WITH_PHDR) {
+
+               pi.p2p_dir = pseudo_header->p2p.sent ? P2P_DIR_SENT : P2P_DIR_RECV;
+       }
+
        /* Put in frame header information. */
        if (tree) {
          ti = proto_tree_add_protocol_format(tree, proto_frame, NullTVB, 0, fd->cap_len,
@@ -1030,9 +1048,14 @@ dissect_packet(union wtap_pseudo_header *pseudo_header, const u_char *pd,
          proto_tree_add_uint_format(fh_tree, hf_frame_capture_len, NullTVB,
                0, 0, fd->cap_len, "Capture Length: %d byte%s", fd->cap_len,
                plurality(fd->cap_len, "", "s"));
+
+         /* Check for existences of P2P pseudo header */
+         if (fd->lnk_t == WTAP_ENCAP_LAPD || fd->lnk_t == WTAP_ENCAP_PPP_WITH_PHDR) {
+                 proto_tree_add_uint(fh_tree, hf_frame_p2p_dir, NullTVB,
+                                 0, 0, pi.p2p_dir);
+         }
        }
 
-       blank_packetinfo();
 
        /* Set the initial payload to the packet length, and the initial
           captured payload to the capture length (other protocols may
@@ -1060,13 +1083,14 @@ dissect_packet(union wtap_pseudo_header *pseudo_header, const u_char *pd,
                        case WTAP_ENCAP_FDDI_BITSWAPPED :
                                dissect_fddi(tvb, &pi, tree, TRUE);
                                break;
-                       case WTAP_ENCAP_TR :
+                       case WTAP_ENCAP_TOKEN_RING :
                                dissect_tr(tvb, &pi, tree);
                                break;
                        case WTAP_ENCAP_NULL :
                                dissect_null(tvb, &pi, tree);
                                break;
                        case WTAP_ENCAP_PPP :
+                       case WTAP_ENCAP_PPP_WITH_PHDR :
                                dissect_ppp(tvb, &pi, tree);
                                break;
                        case WTAP_ENCAP_LAPB :
@@ -1203,6 +1227,10 @@ proto_register_frame(void)
                { &hf_frame_capture_len,
                { "Capture Frame Length",       "frame.cap_len", FT_UINT32, BASE_DEC, NULL, 0x0,
                        "" }},
+
+               { &hf_frame_p2p_dir,
+               { "Point-to-Point Direction",   "frame.p2p_dir", FT_UINT8, BASE_DEC, VALS(p2p_dirs), 0x0,
+                       "" }},
        };
        static gint *ett[] = {
                &ett_frame,
index fdcac956312440daeb8331c1d7fc1276ffe4b8c7..950ddf9aabaf86f80231c4def4e5407d77faaa9c 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.201 2000/09/11 16:16:12 gram Exp $
+ * $Id: packet.h,v 1.202 2000/09/21 04:41:08 gram Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -148,6 +148,10 @@ typedef enum {
   PT_NCP               /* NCP connection */
 } port_type;
 
+#define P2P_DIR_UNKNOWN        -1
+#define P2P_DIR_SENT   0
+#define P2P_DIR_RECV   1
+
 typedef struct _packet_info {
   const char *current_proto;   /* name of protocol currently being dissected */
   frame_data *fd;
@@ -168,6 +172,7 @@ typedef struct _packet_info {
   guint32 match_port;
   int     iplen;
   int     iphdrlen;
+  int    p2p_dir;
 } packet_info;
 
 extern packet_info pi;
index c4011baeae4db2d56710041e9df7bc65502ef113..61e935edbe509d8e4f7666deae8bb41511d0e65f 100644 (file)
--- a/randpkt.c
+++ b/randpkt.c
@@ -4,7 +4,7 @@
  * Creates random packet traces. Useful for debugging sniffers by testing
  * assumptions about the veracity of the data found in the packet.
  *
- * $Id: randpkt.c,v 1.8 2000/06/11 15:54:03 gerald Exp $
+ * $Id: randpkt.c,v 1.9 2000/09/21 04:41:09 gram Exp $
  *
  * Copyright (C) 1999 by Gilbert Ramirez <gram@xiexie.org>
  * 
@@ -215,7 +215,7 @@ pkt_example examples[] = {
                PKT_IP,         pkt_ip,         WTAP_ENCAP_ETHERNET,    array_length(pkt_ip) },
 
        { "llc", "Logical Link Control",
-               PKT_LLC,        pkt_llc,        WTAP_ENCAP_TR,          array_length(pkt_llc) },
+               PKT_LLC,        pkt_llc,        WTAP_ENCAP_TOKEN_RING,  array_length(pkt_llc) },
 
        { "nbns", "NetBIOS-over-TCP Name Service",
                PKT_NBNS,       pkt_nbns,       WTAP_ENCAP_ETHERNET,    array_length(pkt_nbns) },
@@ -224,10 +224,10 @@ pkt_example examples[] = {
                PKT_SYSLOG,     pkt_syslog,     WTAP_ENCAP_ETHERNET,    array_length(pkt_syslog) },
 
        { "tcp", "Transmission Control Protocol",
-               PKT_TCP,        pkt_tcp,        WTAP_ENCAP_TR,          array_length(pkt_tcp) },
+               PKT_TCP,        pkt_tcp,        WTAP_ENCAP_TOKEN_RING,  array_length(pkt_tcp) },
 
        { "tr",  "Token-Ring",
-               PKT_TR,         NULL,           WTAP_ENCAP_TR,          0 },
+               PKT_TR,         NULL,           WTAP_ENCAP_TOKEN_RING,  0 },
 
        { "udp", "User Datagram Protocol",
                PKT_UDP,        pkt_udp,        WTAP_ENCAP_ETHERNET,    array_length(pkt_udp) }
index a2bf913b5800e0a619ddeb9f6e2f37bfef1a8d5d..41a1da2213418832950f213fb8ba079e5a2a00e2 100644 (file)
@@ -1,6 +1,6 @@
 /* iptrace.c
  *
- * $Id: iptrace.c,v 1.31 2000/09/07 05:34:09 gram Exp $
+ * $Id: iptrace.c,v 1.32 2000/09/21 04:41:30 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -408,7 +408,7 @@ wtap_encap_ift(unsigned int  ift)
 /* 0x6 */      WTAP_ENCAP_ETHERNET,    /* IFT_ETHER */
 /* 0x7 */      WTAP_ENCAP_UNKNOWN,     /* IFT_ISO88023 */
 /* 0x8 */      WTAP_ENCAP_UNKNOWN,     /* IFT_ISO88024 */
-/* 0x9 */      WTAP_ENCAP_TR,          /* IFT_ISO88025 */
+/* 0x9 */      WTAP_ENCAP_TOKEN_RING,  /* IFT_ISO88025 */
 /* 0xa */      WTAP_ENCAP_UNKNOWN,     /* IFT_ISO88026 */
 /* 0xb */      WTAP_ENCAP_UNKNOWN,     /* IFT_STARLAN */
 /* 0xc */      WTAP_ENCAP_RAW_IP,      /* IFT_P10, IBM SP switch */
index 4df14843c97669020d1f7623a4810ddb56fc5f34..e566c718660bec81ea040de64217322fab14fe9b 100644 (file)
@@ -1,6 +1,6 @@
 /* lanalyzer.c
  *
- * $Id: lanalyzer.c,v 1.25 2000/09/07 05:34:10 gram Exp $
+ * $Id: lanalyzer.c,v 1.26 2000/09/21 04:41:30 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -167,7 +167,7 @@ int lanalyzer_open(wtap *wth, int *err)
                                                wth->file_encap = WTAP_ENCAP_ETHERNET;
                                                break;
                                        case BOARD_325TR:
-                                               wth->file_encap = WTAP_ENCAP_TR;
+                                               wth->file_encap = WTAP_ENCAP_TOKEN_RING;
                                                break;
                                        default:
                                                g_message("lanalyzer: board type %u unknown",
index 173548fddf797f67c1bc331729c24052f1e3b2d3..6dcf93c9b624c0386b0c82745f3e8a02525eb5d7 100644 (file)
@@ -1,6 +1,6 @@
 /* libpcap.c
  *
- * $Id: libpcap.c,v 1.42 2000/09/17 07:50:35 guy Exp $
+ * $Id: libpcap.c,v 1.43 2000/09/21 04:41:31 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -95,7 +95,7 @@ static const struct {
         */
        { 0,            WTAP_ENCAP_NULL },      /* null encapsulation */
        { 1,            WTAP_ENCAP_ETHERNET },
-       { 6,            WTAP_ENCAP_TR },        /* IEEE 802 Networks - assume token ring */
+       { 6,            WTAP_ENCAP_TOKEN_RING },        /* IEEE 802 Networks - assume token ring */
        { 7,            WTAP_ENCAP_ARCNET },
        { 8,            WTAP_ENCAP_SLIP },
        { 9,            WTAP_ENCAP_PPP },
index 337c4a8c34b22be5df6e5a6c1da7854d3c6b4261..7a56d7b3a437f7976f93c0595ef8854675285d0c 100644 (file)
@@ -1,6 +1,6 @@
 /* netmon.c
  *
- * $Id: netmon.c,v 1.33 2000/09/07 05:34:12 gram Exp $
+ * $Id: netmon.c,v 1.34 2000/09/21 04:41:32 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -108,7 +108,7 @@ int netmon_open(wtap *wth, int *err)
        static const int netmon_encap[] = {
                WTAP_ENCAP_UNKNOWN,
                WTAP_ENCAP_ETHERNET,
-               WTAP_ENCAP_TR,
+               WTAP_ENCAP_TOKEN_RING,
                WTAP_ENCAP_FDDI_BITSWAPPED,
                WTAP_ENCAP_UNKNOWN,     /* WAN */
                WTAP_ENCAP_UNKNOWN,     /* LocalTalk */
@@ -412,7 +412,7 @@ netmon_close(wtap *wth)
 static const int wtap_encap[] = {
        -1,             /* WTAP_ENCAP_UNKNOWN -> unsupported */
        1,              /* WTAP_ENCAP_ETHERNET -> NDIS Ethernet */
-       2,              /* WTAP_ENCAP_TR -> NDIS Token Ring */
+       2,              /* WTAP_ENCAP_TOKEN_RING -> NDIS Token Ring */
        -1,             /* WTAP_ENCAP_SLIP -> unsupported */
        -1,             /* WTAP_ENCAP_PPP -> unsupported */
        3,              /* WTAP_ENCAP_FDDI -> NDIS FDDI */
index 061387ff7e3a808c03a557b4a3e89fb624c1d1b4..c998a7bfa1e7e41fbbed1f20fc772b9b0d68e1fd 100644 (file)
@@ -1,6 +1,6 @@
 /* netxray.c
  *
- * $Id: netxray.c,v 1.31 2000/09/07 05:34:14 gram Exp $
+ * $Id: netxray.c,v 1.32 2000/09/21 04:41:32 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -110,7 +110,7 @@ int netxray_open(wtap *wth, int *err)
        double t;
        static const int netxray_encap[] = {
                WTAP_ENCAP_ETHERNET,
-               WTAP_ENCAP_TR,
+               WTAP_ENCAP_TOKEN_RING,
                WTAP_ENCAP_FDDI_BITSWAPPED,
                WTAP_ENCAP_ETHERNET,    /* WAN(PPP), but shaped like ethernet */
                WTAP_ENCAP_UNKNOWN,     /* LocalTalk */
@@ -310,7 +310,7 @@ netxray_close(wtap *wth)
 static const int wtap_encap[] = {
     -1,                /* WTAP_ENCAP_UNKNOWN -> unsupported */
     0,         /* WTAP_ENCAP_ETHERNET -> NDIS Ethernet */
-    1,         /* WTAP_ENCAP_TR -> NDIS Token Ring */
+    1,         /* WTAP_ENCAP_TOKEN_RING -> NDIS Token Ring */
     -1,                /* WTAP_ENCAP_SLIP -> unsupported */
     -1,                /* WTAP_ENCAP_PPP -> unsupported */
     2,         /* WTAP_ENCAP_FDDI -> NDIS FDDI */
index 898806c5fca08a36e23938905181f156555b9990..807cda7deec5b5ef77e4267b4e30f9b02ac4257a 100644 (file)
@@ -1,6 +1,6 @@
 /* ngsniffer.c
  *
- * $Id: ngsniffer.c,v 1.51 2000/09/07 05:34:16 gram Exp $
+ * $Id: ngsniffer.c,v 1.52 2000/09/21 04:41:33 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -291,7 +291,7 @@ int ngsniffer_open(wtap *wth, int *err)
        guint16 start_date;
        guint16 start_time;
        static const int sniffer_encap[] = {
-               WTAP_ENCAP_TR,
+               WTAP_ENCAP_TOKEN_RING,
                WTAP_ENCAP_ETHERNET,
                WTAP_ENCAP_ARCNET,
                WTAP_ENCAP_UNKNOWN,     /* StarLAN */
@@ -893,7 +893,7 @@ static void ngsniffer_close(wtap *wth)
 static const int wtap_encap[] = {
     -1,                /* WTAP_ENCAP_UNKNOWN -> unsupported */
     1,         /* WTAP_ENCAP_ETHERNET */
-    0,         /* WTAP_ENCAP_TR */
+    0,         /* WTAP_ENCAP_TOKEN_RING */
     -1,                /* WTAP_ENCAP_SLIP -> unsupported */
     7,         /* WTAP_ENCAP_PPP -> Internetwork analyzer (synchronous) FIXME ! */
     -1,                /* WTAP_ENCAP_FDDI -> unsupported */
index 5a7c030198c38f3b7ca2bc8b2c53ee4bbf5cf249..5e1ba5e1cd3e6f0c13573f70353c075ed76f1cf2 100644 (file)
@@ -1,6 +1,6 @@
 /* pppdump.c
  *
- * $Id: pppdump.c,v 1.2 2000/09/19 17:35:08 gram Exp $
+ * $Id: pppdump.c,v 1.3 2000/09/21 04:41:35 gram Exp $
  *
  * Copyright (c) 2000 by Gilbert Ramirez <gram@xiexie.org>
  * 
@@ -197,7 +197,7 @@ pppdump_open(wtap *wth, int *err)
 
        state->offset = 5; 
        file_seek(wth->fh, 5, SEEK_SET); 
-       wth->file_encap = WTAP_ENCAP_PPP; 
+       wth->file_encap = WTAP_ENCAP_PPP_WITH_PHDR
        wth->file_type = WTAP_FILE_PPPDUMP; 
 
        wth->snapshot_length = 8192; /* just guessing */ 
@@ -254,7 +254,9 @@ pppdump_read(wtap *wth, int *err, int *data_offset)
        wth->phdr.caplen        = num_bytes;
        wth->phdr.ts.tv_sec     = state->timestamp;
        wth->phdr.ts.tv_usec    = state->tenths * 100000;
-       wth->phdr.pkt_encap     = WTAP_ENCAP_PPP;
+       wth->phdr.pkt_encap     = WTAP_ENCAP_PPP_WITH_PHDR;
+
+       wth->pseudo_header.p2p.sent = (direction == DIRECTION_SENT ? TRUE : FALSE);
 
        return TRUE;
 }
@@ -541,6 +543,8 @@ pppdump_seek_read (wtap *wth,
                return -1;
        }
 
+       pseudo_header->p2p.sent = (pid->dir == DIRECTION_SENT ? TRUE : FALSE);
+
        return 0;
 }
 
index 7d8e9302f4d76439dddb46d4f3e15745fc2f6105..9e23eb6fbb07bd9144a92fff0001a02967e6611d 100644 (file)
@@ -1,6 +1,6 @@
 /* snoop.c
  *
- * $Id: snoop.c,v 1.31 2000/09/19 05:12:11 guy Exp $
+ * $Id: snoop.c,v 1.32 2000/09/21 04:41:36 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -125,7 +125,7 @@ int snoop_open(wtap *wth, int *err)
        static const int snoop_encap[] = {
                WTAP_ENCAP_ETHERNET,    /* IEEE 802.3 */
                WTAP_ENCAP_UNKNOWN,     /* IEEE 802.4 Token Bus */
-               WTAP_ENCAP_TR,
+               WTAP_ENCAP_TOKEN_RING,
                WTAP_ENCAP_UNKNOWN,     /* IEEE 802.6 Metro Net */
                WTAP_ENCAP_ETHERNET,
                WTAP_ENCAP_UNKNOWN,     /* HDLC */
@@ -405,7 +405,7 @@ snoop_read_rec_data(FILE_T fh, u_char *pd, int length, int *err)
 static const int wtap_encap[] = {
        -1,             /* WTAP_ENCAP_UNKNOWN -> unsupported */
        0x04,           /* WTAP_ENCAP_ETHERNET -> DL_ETHER */
-       0x02,           /* WTAP_ENCAP_TR -> DL_TPR */
+       0x02,           /* WTAP_ENCAP_TOKEN_RING -> DL_TPR */
        -1,             /* WTAP_ENCAP_SLIP -> unsupported */
        -1,             /* WTAP_ENCAP_PPP -> unsupported */
        0x08,           /* WTAP_ENCAP_FDDI -> DL_FDDI */
index 407b52dab755df0f02d236770af9298eb35aa04d..d0b6d37c3f0b1f05df795dc20ea54732155c9e97 100644 (file)
@@ -1,6 +1,6 @@
 /* toshiba.c
  *
- * $Id: toshiba.c,v 1.12 2000/09/07 05:34:20 gram Exp $
+ * $Id: toshiba.c,v 1.13 2000/09/21 04:41:37 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -327,8 +327,8 @@ parse_toshiba_rec_hdr(wtap *wth, FILE_T fh,
                case 'D':
                        if (wth)
                                wth->phdr.pkt_encap = WTAP_ENCAP_LAPD;
-                       pseudo_header->lapd.from_network_to_user = 
-                               (direction[0] == 'R' ? TRUE : FALSE );
+                       pseudo_header->p2p.sent = 
+                               (direction[0] == 'T' ? TRUE : FALSE );
                        break;
                        
                default:
index c3ccdc4ed574a7968fadd7dc8a59f4d684cdb9a0..43426a1993c3b68d2601380a53fc75ca9d717e2a 100644 (file)
@@ -1,6 +1,6 @@
 /* wtap.h
  *
- * $Id: wtap.h,v 1.80 2000/09/19 17:22:11 gram Exp $
+ * $Id: wtap.h,v 1.81 2000/09/21 04:41:37 gram Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -78,7 +78,7 @@
 #define WTAP_ENCAP_PER_PACKET                  -1
 #define WTAP_ENCAP_UNKNOWN                     0
 #define WTAP_ENCAP_ETHERNET                    1
-#define WTAP_ENCAP_TR                          2
+#define WTAP_ENCAP_TOKEN_RING                  2
 #define WTAP_ENCAP_SLIP                                3
 #define WTAP_ENCAP_PPP                         4
 #define WTAP_ENCAP_FDDI                                5
 #define WTAP_ENCAP_ASCEND                      14
 #define WTAP_ENCAP_LAPD                                15
 #define WTAP_ENCAP_V120                                16
+#define WTAP_ENCAP_PPP_WITH_PHDR               17
 
 /* last WTAP_ENCAP_ value + 1 */
-#define WTAP_NUM_ENCAP_TYPES                   17
+#define WTAP_NUM_ENCAP_TYPES                   18
 
 /* File types that can be read by wiretap.
    We support writing some many of these file types, too, so we
@@ -185,11 +186,12 @@ struct ascend_phdr {
        guint32 task;                   /* Task number */
 };
 
-/* Packet "pseudo-header" information for LAPD capture files. */
-struct lapd_phdr {
-       gboolean        from_network_to_user;
+
+struct p2p_phdr {
+       gboolean        sent; /* TRUE=sent, FALSE=received */
 };
 
+
 /*
  * Bits in AppTrafType.
  *
@@ -246,7 +248,7 @@ union wtap_pseudo_header {
        struct x25_phdr                 x25;
        struct ngsniffer_atm_phdr       ngsniffer_atm;
        struct ascend_phdr              ascend;
-       struct lapd_phdr                lapd;
+       struct p2p_phdr                 p2p;
 };
 
 struct wtap_pkthdr {