Deleted Added
full compact
netdissect.h (214478) netdissect.h (235530)
1/*
2 * Copyright (c) 1988-1997
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Copyright (c) 1998-2004 Michael Richardson <mcr@tcpdump.org>
6 * The TCPDUMP project
7 *
8 * Redistribution and use in source and binary forms, with or without

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

102 int ndo_Xflag; /* print packet in hex/ascii */
103 int ndo_Aflag; /* print packet only in ascii observing TAB,
104 * LF, CR and SPACE as graphical chars
105 */
106 int ndo_Bflag; /* buffer size */
107 int ndo_Iflag; /* rfmon (monitor) mode */
108 int ndo_Oflag; /* run filter code optimizer */
109 int ndo_dlt; /* if != -1, ask libpcap for the DLT it names*/
1/*
2 * Copyright (c) 1988-1997
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Copyright (c) 1998-2004 Michael Richardson <mcr@tcpdump.org>
6 * The TCPDUMP project
7 *
8 * Redistribution and use in source and binary forms, with or without

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

102 int ndo_Xflag; /* print packet in hex/ascii */
103 int ndo_Aflag; /* print packet only in ascii observing TAB,
104 * LF, CR and SPACE as graphical chars
105 */
106 int ndo_Bflag; /* buffer size */
107 int ndo_Iflag; /* rfmon (monitor) mode */
108 int ndo_Oflag; /* run filter code optimizer */
109 int ndo_dlt; /* if != -1, ask libpcap for the DLT it names*/
110 int ndo_jflag; /* packet time stamp source */
110 int ndo_pflag; /* don't go promiscuous */
111
112 int ndo_Cflag; /* rotate dump files after this many bytes */
113 int ndo_Cflag_count; /* Keep track of which file number we're writing */
114 int ndo_Gflag; /* rotate dump files after this many seconds */
115 int ndo_Gflag_count; /* number of files created with Gflag rotation */
116 time_t ndo_Gflag_time; /* The last time_t the dump file was rotated. */
117 int ndo_Wflag; /* recycle output files after this number of files */
118 int ndo_WflagChars;
111 int ndo_pflag; /* don't go promiscuous */
112
113 int ndo_Cflag; /* rotate dump files after this many bytes */
114 int ndo_Cflag_count; /* Keep track of which file number we're writing */
115 int ndo_Gflag; /* rotate dump files after this many seconds */
116 int ndo_Gflag_count; /* number of files created with Gflag rotation */
117 time_t ndo_Gflag_time; /* The last time_t the dump file was rotated. */
118 int ndo_Wflag; /* recycle output files after this number of files */
119 int ndo_WflagChars;
120 int ndo_Hflag; /* dissect 802.11s draft mesh standard */
119 int ndo_suppress_default_print; /* don't use default_print() for unknown packet types */
120 const char *ndo_dltname;
121
122 char *ndo_espsecret;
123 struct sa_list *ndo_sa_list_head; /* used by print-esp.c */
124 struct sa_list *ndo_sa_default;
125
126 char *ndo_sigsecret; /* Signature verification secret key */

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

152 const char *fmt, ...)
153#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
154 __attribute__ ((format (printf, 2, 3)))
155#endif
156 ;
157 void (*ndo_error)(netdissect_options *,
158 const char *fmt, ...)
159#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
121 int ndo_suppress_default_print; /* don't use default_print() for unknown packet types */
122 const char *ndo_dltname;
123
124 char *ndo_espsecret;
125 struct sa_list *ndo_sa_list_head; /* used by print-esp.c */
126 struct sa_list *ndo_sa_default;
127
128 char *ndo_sigsecret; /* Signature verification secret key */

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

154 const char *fmt, ...)
155#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
156 __attribute__ ((format (printf, 2, 3)))
157#endif
158 ;
159 void (*ndo_error)(netdissect_options *,
160 const char *fmt, ...)
161#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
160 __attribute__ ((format (printf, 2, 3)))
162 __attribute__ ((noreturn, format (printf, 2, 3)))
161#endif
162 ;
163 void (*ndo_warning)(netdissect_options *,
164 const char *fmt, ...)
165#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
166 __attribute__ ((format (printf, 2, 3)))
167#endif
168 ;

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

247#if 0
248extern char *read_infile(netdissect_options *, char *);
249extern char *copy_argv(netdissect_options *, char **);
250#endif
251
252extern void safeputchar(int);
253extern void safeputs(const char *, int);
254
163#endif
164 ;
165 void (*ndo_warning)(netdissect_options *,
166 const char *fmt, ...)
167#ifdef __ATTRIBUTE___FORMAT_OK_FOR_FUNCTION_POINTERS
168 __attribute__ ((format (printf, 2, 3)))
169#endif
170 ;

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

249#if 0
250extern char *read_infile(netdissect_options *, char *);
251extern char *copy_argv(netdissect_options *, char **);
252#endif
253
254extern void safeputchar(int);
255extern void safeputs(const char *, int);
256
257#define PLURAL_SUFFIX(n) \
258 (((n) != 1) ? "s" : "")
259
255#if 0
256extern const char *isonsap_string(netdissect_options *, const u_char *);
257extern const char *protoid_string(netdissect_options *, const u_char *);
258extern const char *dnname_string(netdissect_options *, u_short);
259extern const char *dnnum_string(netdissect_options *, u_short);
260#endif
261
262/* The printer routines. */
263
264#include <pcap.h>
265
260#if 0
261extern const char *isonsap_string(netdissect_options *, const u_char *);
262extern const char *protoid_string(netdissect_options *, const u_char *);
263extern const char *dnname_string(netdissect_options *, u_short);
264extern const char *dnnum_string(netdissect_options *, u_short);
265#endif
266
267/* The printer routines. */
268
269#include <pcap.h>
270
271typedef u_int (*if_ndo_printer)(struct netdissect_options *ndo,
272 const struct pcap_pkthdr *, const u_char *);
273typedef u_int (*if_printer)(const struct pcap_pkthdr *, const u_char *);
266
274
275extern if_ndo_printer lookup_ndo_printer(int);
276extern if_printer lookup_printer(int);
277
267extern void eap_print(netdissect_options *,const u_char *, u_int);
268extern int esp_print(netdissect_options *,
269 register const u_char *bp, int len, register const u_char *bp2,
270 int *nhdr, int *padlen);
271extern void arp_print(netdissect_options *,const u_char *, u_int, u_int);
272extern void icmp6_print(netdissect_options *ndo, const u_char *,
273 u_int, const u_char *, int);
274extern void isakmp_print(netdissect_options *,const u_char *,
275 u_int, const u_char *);
276extern void isakmp_rfc3948_print(netdissect_options *,const u_char *,
277 u_int, const u_char *);
278extern void ip_print(netdissect_options *,const u_char *, u_int);
279extern void ip_print_inner(netdissect_options *ndo,
280 const u_char *bp, u_int length, u_int nh,
281 const u_char *bp2);
282extern void rrcp_print(netdissect_options *,const u_char *, u_int);
283
278extern void eap_print(netdissect_options *,const u_char *, u_int);
279extern int esp_print(netdissect_options *,
280 register const u_char *bp, int len, register const u_char *bp2,
281 int *nhdr, int *padlen);
282extern void arp_print(netdissect_options *,const u_char *, u_int, u_int);
283extern void icmp6_print(netdissect_options *ndo, const u_char *,
284 u_int, const u_char *, int);
285extern void isakmp_print(netdissect_options *,const u_char *,
286 u_int, const u_char *);
287extern void isakmp_rfc3948_print(netdissect_options *,const u_char *,
288 u_int, const u_char *);
289extern void ip_print(netdissect_options *,const u_char *, u_int);
290extern void ip_print_inner(netdissect_options *ndo,
291 const u_char *bp, u_int length, u_int nh,
292 const u_char *bp2);
293extern void rrcp_print(netdissect_options *,const u_char *, u_int);
294
295extern void ether_print(netdissect_options *,
296 const u_char *, u_int, u_int,
297 void (*)(netdissect_options *, const u_char *),
298 const u_char *);
299
300extern u_int ether_if_print(netdissect_options *,
301 const struct pcap_pkthdr *,const u_char *);
302extern u_int netanalyzer_if_print(netdissect_options *,
303 const struct pcap_pkthdr *,const u_char *);
304extern u_int netanalyzer_transparent_if_print(netdissect_options *,
305 const struct pcap_pkthdr *,
306 const u_char *);
307
308extern int ethertype_print(netdissect_options *,u_short, const u_char *,
309 u_int, u_int);
310
284/* stuff that has not yet been rototiled */
285#if 0
286extern void ascii_print(netdissect_options *,u_int);
287extern void hex_and_ascii_print_with_offset(netdissect_options *,const char *,
288 u_int, u_int);
289extern void hex_and_ascii_print(netdissect_options *,const char *, u_int);
290extern void hex_print_with_offset(netdissect_options *,const char *,
291 u_int, u_int);
292extern void hex_print(netdissect_options *,const char *, u_int);
293extern void telnet_print(netdissect_options *,const u_char *, u_int);
311/* stuff that has not yet been rototiled */
312#if 0
313extern void ascii_print(netdissect_options *,u_int);
314extern void hex_and_ascii_print_with_offset(netdissect_options *,const char *,
315 u_int, u_int);
316extern void hex_and_ascii_print(netdissect_options *,const char *, u_int);
317extern void hex_print_with_offset(netdissect_options *,const char *,
318 u_int, u_int);
319extern void hex_print(netdissect_options *,const char *, u_int);
320extern void telnet_print(netdissect_options *,const u_char *, u_int);
294extern int ethertype_print(netdissect_options *,u_short, const u_char *,
295 u_int, u_int);
296extern int llc_print(netdissect_options *,
297 const u_char *, u_int, u_int, const u_char *,
298 const u_char *, u_short *);
299extern void aarp_print(netdissect_options *,const u_char *, u_int);
300extern void atalk_print(netdissect_options *,const u_char *, u_int);
301extern void atm_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
302extern void bootp_print(netdissect_options *,const u_char *,
303 u_int, u_short, u_short);

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

314extern void decnet_print(netdissect_options *,const u_char *,
315 u_int, u_int);
316extern void default_print(netdissect_options *,const u_char *, u_int);
317extern void dvmrp_print(netdissect_options *,const u_char *, u_int);
318extern void egp_print(netdissect_options *,const u_char *, u_int,
319 const u_char *);
320
321extern void arcnet_if_print(u_char*,const struct pcap_pkthdr *,const u_char *);
321extern int llc_print(netdissect_options *,
322 const u_char *, u_int, u_int, const u_char *,
323 const u_char *, u_short *);
324extern void aarp_print(netdissect_options *,const u_char *, u_int);
325extern void atalk_print(netdissect_options *,const u_char *, u_int);
326extern void atm_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
327extern void bootp_print(netdissect_options *,const u_char *,
328 u_int, u_short, u_short);

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

339extern void decnet_print(netdissect_options *,const u_char *,
340 u_int, u_int);
341extern void default_print(netdissect_options *,const u_char *, u_int);
342extern void dvmrp_print(netdissect_options *,const u_char *, u_int);
343extern void egp_print(netdissect_options *,const u_char *, u_int,
344 const u_char *);
345
346extern void arcnet_if_print(u_char*,const struct pcap_pkthdr *,const u_char *);
322extern void ether_if_print(u_char *,const struct pcap_pkthdr *,const u_char *);
323extern void token_if_print(u_char *,const struct pcap_pkthdr *,const u_char *);
324extern void fddi_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
325
326extern void gre_print(netdissect_options *,const u_char *, u_int);
327extern void icmp_print(netdissect_options *,const u_char *, u_int,
328 const u_char *);
329extern void hsrp_print(netdissect_options *ndo,
330 register const u_char *bp, register u_int len);
331extern void ieee802_11_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
332extern void igmp_print(netdissect_options *,
333 register const u_char *, u_int);
334extern void igrp_print(netdissect_options *,const u_char *, u_int,
335 const u_char *);
347extern void token_if_print(u_char *,const struct pcap_pkthdr *,const u_char *);
348extern void fddi_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
349
350extern void gre_print(netdissect_options *,const u_char *, u_int);
351extern void icmp_print(netdissect_options *,const u_char *, u_int,
352 const u_char *);
353extern void hsrp_print(netdissect_options *ndo,
354 register const u_char *bp, register u_int len);
355extern void ieee802_11_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
356extern void igmp_print(netdissect_options *,
357 register const u_char *, u_int);
358extern void igrp_print(netdissect_options *,const u_char *, u_int,
359 const u_char *);
360extern int nextproto4_cksum(const struct ip *, const u_int8_t *, u_int, u_int);
336extern void ipN_print(netdissect_options *,const u_char *, u_int);
337extern void ipx_print(netdissect_options *,const u_char *, u_int);
338extern void isoclns_print(netdissect_options *,const u_char *,
339 u_int, u_int, const u_char *, const u_char *);
340extern void krb_print(netdissect_options *,const u_char *, u_int);
341extern void llap_print(netdissect_options *,const u_char *, u_int);
342extern const char *linkaddr_string(netdissect_options *ndo,
343 const u_char *ep, const unsigned int len);

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

373
374extern int vjc_print(netdissect_options *,register const char *,
375 register u_int, u_short);
376
377extern void raw_if_print(u_char *,
378 const struct pcap_pkthdr *, const u_char *);
379
380extern void rip_print(netdissect_options *,const u_char *, u_int);
361extern void ipN_print(netdissect_options *,const u_char *, u_int);
362extern void ipx_print(netdissect_options *,const u_char *, u_int);
363extern void isoclns_print(netdissect_options *,const u_char *,
364 u_int, u_int, const u_char *, const u_char *);
365extern void krb_print(netdissect_options *,const u_char *, u_int);
366extern void llap_print(netdissect_options *,const u_char *, u_int);
367extern const char *linkaddr_string(netdissect_options *ndo,
368 const u_char *ep, const unsigned int len);

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

398
399extern int vjc_print(netdissect_options *,register const char *,
400 register u_int, u_short);
401
402extern void raw_if_print(u_char *,
403 const struct pcap_pkthdr *, const u_char *);
404
405extern void rip_print(netdissect_options *,const u_char *, u_int);
406extern void rpki_rtr_print(netdissect_options *,const u_char *, u_int);
381
382extern void sctp_print(netdissect_options *ndo,
383 const u_char *bp, const u_char *bp2,
384 u_int sctpPacketLength);
385
386extern void sl_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
387
388extern void lane_if_print(u_char *,const struct pcap_pkthdr *,const u_char *);

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

419 const u_char *data, int);
420extern char *smb_errstr(netdissect_options *,int, int);
421extern const char *nt_errstr(netdissect_options *, u_int32_t);
422extern void print_data(netdissect_options *,const unsigned char *, int);
423extern void l2tp_print(netdissect_options *,const u_char *, u_int);
424extern void lcp_print(netdissect_options *,const u_char *, u_int);
425extern void vrrp_print(netdissect_options *,const u_char *bp,
426 u_int len, int ttl);
407
408extern void sctp_print(netdissect_options *ndo,
409 const u_char *bp, const u_char *bp2,
410 u_int sctpPacketLength);
411
412extern void sl_if_print(u_char *,const struct pcap_pkthdr *, const u_char *);
413
414extern void lane_if_print(u_char *,const struct pcap_pkthdr *,const u_char *);

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

445 const u_char *data, int);
446extern char *smb_errstr(netdissect_options *,int, int);
447extern const char *nt_errstr(netdissect_options *, u_int32_t);
448extern void print_data(netdissect_options *,const unsigned char *, int);
449extern void l2tp_print(netdissect_options *,const u_char *, u_int);
450extern void lcp_print(netdissect_options *,const u_char *, u_int);
451extern void vrrp_print(netdissect_options *,const u_char *bp,
452 u_int len, int ttl);
453extern void carp_print(netdissect_options *,const u_char *bp,
454 u_int len, int ttl);
427extern void cdp_print(netdissect_options *,const u_char *,
428 u_int, u_int, const u_char *, const u_char *);
429extern void stp_print(netdissect_options *,const u_char *p, u_int length);
430extern void radius_print(netdissect_options *,const u_char *, u_int);
431extern void lwres_print(netdissect_options *,const u_char *, u_int);
432extern void pptp_print(netdissect_options *,const u_char *, u_int);
433#endif
434
435extern u_int ipnet_if_print(netdissect_options *,const struct pcap_pkthdr *, const u_char *);
455extern void cdp_print(netdissect_options *,const u_char *,
456 u_int, u_int, const u_char *, const u_char *);
457extern void stp_print(netdissect_options *,const u_char *p, u_int length);
458extern void radius_print(netdissect_options *,const u_char *, u_int);
459extern void lwres_print(netdissect_options *,const u_char *, u_int);
460extern void pptp_print(netdissect_options *,const u_char *, u_int);
461#endif
462
463extern u_int ipnet_if_print(netdissect_options *,const struct pcap_pkthdr *, const u_char *);
464extern u_int ppi_if_print(netdissect_options *,const struct pcap_pkthdr *, const u_char *);
436
465
437#if 0
466extern u_int ieee802_15_4_if_print(netdissect_options *,const struct pcap_pkthdr *, const u_char *);
467
438#ifdef INET6
439extern void ip6_print(netdissect_options *,const u_char *, u_int);
468#ifdef INET6
469extern void ip6_print(netdissect_options *,const u_char *, u_int);
470#if 0
440extern void ip6_opt_print(netdissect_options *,const u_char *, int);
471extern void ip6_opt_print(netdissect_options *,const u_char *, int);
441extern int nextproto6_cksum(const struct ip6_hdr *, const u_short *, u_int, u_int);
472extern int nextproto6_cksum(const struct ip6_hdr *, const u_int8_t *, u_int, u_int);
442extern int hbhopt_print(netdissect_options *,const u_char *);
443extern int dstopt_print(netdissect_options *,const u_char *);
444extern int frag6_print(netdissect_options *,const u_char *,
445 const u_char *);
446extern void icmp6_print(netdissect_options *,const u_char *,
447 const u_char *);
448extern void ripng_print(netdissect_options *,const u_char *, int);
449extern int rt6_print(netdissect_options *,const u_char *, const u_char *);
450extern void ospf6_print(netdissect_options *,const u_char *, u_int);
451extern void dhcp6_print(netdissect_options *,const u_char *,
452 u_int, u_int16_t, u_int16_t);
453
454extern void zephyr_print(netdissect_options * ndo,
455 const u_char *cp, int length);
473extern int hbhopt_print(netdissect_options *,const u_char *);
474extern int dstopt_print(netdissect_options *,const u_char *);
475extern int frag6_print(netdissect_options *,const u_char *,
476 const u_char *);
477extern void icmp6_print(netdissect_options *,const u_char *,
478 const u_char *);
479extern void ripng_print(netdissect_options *,const u_char *, int);
480extern int rt6_print(netdissect_options *,const u_char *, const u_char *);
481extern void ospf6_print(netdissect_options *,const u_char *, u_int);
482extern void dhcp6_print(netdissect_options *,const u_char *,
483 u_int, u_int16_t, u_int16_t);
484
485extern void zephyr_print(netdissect_options * ndo,
486 const u_char *cp, int length);
487#endif /* 0 */
456
457#endif /*INET6*/
488
489#endif /*INET6*/
458extern u_short in_cksum(const u_short *,
459 register u_int, int);
460
490
491#if 0
492struct cksum_vec {
493 const u_int8_t *ptr;
494 int len;
495};
496extern u_int16_t in_cksum(const struct cksum_vec *, int);
497extern u_int16_t in_cksum_shouldbe(u_int16_t, u_int16_t);
461#endif
462
463extern void esp_print_decodesecret(netdissect_options *ndo);
464extern int esp_print_decrypt_buffer_by_ikev2(netdissect_options *ndo,
465 int initiator,
466 u_char spii[8], u_char spir[8],
467 u_char *buf, u_char *end);
468
469
470#endif /* netdissect_h */
498#endif
499
500extern void esp_print_decodesecret(netdissect_options *ndo);
501extern int esp_print_decrypt_buffer_by_ikev2(netdissect_options *ndo,
502 int initiator,
503 u_char spii[8], u_char spir[8],
504 u_char *buf, u_char *end);
505
506
507#endif /* netdissect_h */