Deleted Added
sdiff udiff text old ( 26183 ) new ( 39300 )
full compact
1/*
2 * Copyright (c) 1989, 1990, 1991, 1993, 1994, 1995, 1996, 1997
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that: (1) source code distributions
7 * retain the above copyright notice and this paragraph in its entirety, (2)
8 * distributions including binary code include the above copyright notice and
9 * this paragraph in its entirety in the documentation or other materials
10 * provided with the distribution, and (3) all advertising materials mentioning

--- 5 unchanged lines hidden (view full) ---

16 * written permission.
17 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20 */
21
22#ifndef lint
23static const char rcsid[] =
24 "@(#) $Header: print-sl.c,v 1.42 97/06/12 14:21:35 leres Exp $ (LBL)";
25#endif
26
27#ifdef HAVE_NET_SLIP_H
28#include <sys/param.h>
29#include <sys/time.h>
30#include <sys/timeb.h>
31#include <sys/file.h>
32#include <sys/ioctl.h>

--- 16 unchanged lines hidden (view full) ---

49#include <netinet/tcpip.h>
50
51#include <net/slcompress.h>
52#include <net/slip.h>
53
54#include <ctype.h>
55#include <netdb.h>
56#include <pcap.h>
57#include <stdio.h>
58
59#include "interface.h"
60#include "addrtoname.h"
61#include "extract.h" /* must come after interface.h */
62
63static u_int lastlen[2][256];
64static u_int lastconn = 255;

--- 4 unchanged lines hidden (view full) ---

69/* XXX BSD/OS 2.1 compatibility */
70#if !defined(SLIP_HDRLEN) && defined(SLC_BPFHDR)
71#define SLIP_HDRLEN SLC_BPFHDR
72#define SLX_DIR 0
73#define SLX_CHDR (SLC_BPFHDRLEN - 1)
74#define CHDR_LEN (SLC_BPFHDR - SLC_BPFHDRLEN)
75#endif
76
77/* XXX needs more hacking to work right */
78
79void
80sl_if_print(u_char *user, const struct pcap_pkthdr *h, const u_char *p)
81{
82 register u_int caplen = h->caplen;
83 register u_int length = h->len;
84 register const struct ip *ip;
85
86 ts_print(&h->ts);

--- 20 unchanged lines hidden (view full) ---

107 ip_print((u_char *)ip, length);
108
109 if (xflag)
110 default_print((u_char *)ip, caplen - SLIP_HDRLEN);
111 out:
112 putchar('\n');
113}
114
115
116void
117sl_bsdos_if_print(u_char *user, const struct pcap_pkthdr *h, const u_char *p)
118{
119 register u_int caplen = h->caplen;
120 register u_int length = h->len;
121 register const struct ip *ip;
122
123 ts_print(&h->ts);
124
125 if (caplen < SLIP_HDRLEN) {
126 printf("[|slip]");
127 goto out;
128 }
129 /*
130 * Some printers want to get back at the link level addresses,
131 * and/or check that they're not walking off the end of the packet.
132 * Rather than pass them all the way down, we set these globals.
133 */
134 packetp = p;
135 snapend = p + caplen;
136
137 length -= SLIP_HDRLEN;
138
139 ip = (struct ip *)(p + SLIP_HDRLEN);
140
141#ifdef notdef
142 if (eflag)
143 sliplink_print(p, ip, length);
144#endif
145
146 ip_print((u_char *)ip, length);
147
148 if (xflag)
149 default_print((u_char *)ip, caplen - SLIP_HDRLEN);
150 out:
151 putchar('\n');
152}
153
154static void
155sliplink_print(register const u_char *p, register const struct ip *ip,
156 register u_int length)
157{
158 int dir;
159 u_int hlen;
160
161 dir = p[SLX_DIR];

--- 120 unchanged lines hidden (view full) ---

282#else
283#include <sys/types.h>
284#include <sys/time.h>
285
286#include <pcap.h>
287#include <stdio.h>
288
289#include "interface.h"
290
291void
292sl_if_print(u_char *user, const struct pcap_pkthdr *h, const u_char *p)
293{
294
295 error("not configured for slip");
296 /* NOTREACHED */
297}
298
299void
300sl_bsdos_if_print(u_char *user, const struct pcap_pkthdr *h, const u_char *p)
301{
302
303 error("not configured for slip");
304 /* NOTREACHED */
305}
306#endif