dect
/
libpcap
Archived
13
0
Fork 0
Commit Graph

995 Commits

Author SHA1 Message Date
hannes b1a31d31cc code cosmetics: clean up some if() chains and replace by switch() statements 2006-02-22 10:38:28 +00:00
hannes 525e3cbe8f code cosmetics: clean up some if() chains and replace by switch() statements 2006-02-22 10:22:04 +00:00
guy 3adb2d4f0d Clean up some comments, and give more details so people understand what
they do, and don't, have to do about 32-bit vs. 64-bit platforms in
libpcap.
2006-02-09 22:26:12 +00:00
guy c1fca92559 From Daniele Orlandi <daniele@orlandi.com>: add support for capturing
LAPD frames with vISDN.
2006-01-22 20:11:26 +00:00
gianluca 4526fd6dee Added some code to properly distinguish a failure in PacketGetAdapterNames()
from a "buffer too small" error.
2006-01-22 18:29:00 +00:00
gianluca 54693a0c07 Added an implementation of gai_strerror() for the compilation of libpcap.lib
and wpcap.dll under Cygnus and MingW32. The implementation is basically
taken from the FreeBSD sources.
2006-01-22 18:03:43 +00:00
gianluca 64e1e8e43b Added a patch to make libpcap.lib and wpcap.dll compile under Cygnus and
MingW32.
2006-01-22 18:02:18 +00:00
guy 859204c1e8 From Sam Leffler and Jason Evans: fix the allocation of the buffer for
the list of link-layer types.
2006-01-22 05:28:12 +00:00
guy cb71eef7ae We've already used strdup(), and nobody's complained about their OS
lacking it, so use it in some other cases, instead of duplicating its
functionality.

Check, however, whether it succeeds, and fail appropriately when it
fails.

Also, when other mallocs fails, free up any memory allocated for data
structures, so it doesn't leak.
2006-01-21 10:45:18 +00:00
guy 0c77a6d811 Put in a note about getting a description of the interface on FreeBSD. 2006-01-10 21:22:00 +00:00
hannes 98a1d8cfbd add DLT/LINKTYPE for carrying FRF.16 Multi-link Frame Relay 2005-12-13 13:41:39 +00:00
guy 8fe5fce9e4 Don't double-count received packets on Linux systems that support the
PACKET_STATISTICS getsockopt() argument on PF_PACKET sockets.
2005-11-24 19:27:42 +00:00
guy 8e06df3e4c Make the "applied to" errors say "applied to net" if we're applying
bogus keywords to "net" rather than "host".
2005-11-17 04:49:34 +00:00
guy 907283b793 Previous change was applied by hand, and deleted one line. Put that
line back.
2005-11-09 23:49:30 +00:00
guy f33fbd4b19 From Rick Jones: crank up some limits so the HP-UX lex can handle this
file.
2005-11-08 02:32:55 +00:00
guy cee0360845 Handle too-short snapshot lengths in cooked mode. 2005-10-08 11:30:26 +00:00
guy a1e758a03d Warn about some broken drivers *cough* Broadcom *cough* ignoring
DLIOCRAW and overwriting the Ethertype with the SAP we happened to bind
to (the fact that we requested SAP promiscuity nonwithstanding).
2005-09-07 08:28:56 +00:00
guy 5fe3c66fc0 Mention new "pppoed" and "pppoes" filters. 2005-09-05 09:17:23 +00:00
guy 7fb15ab846 Add "pppoed" and "pppoes" keywords, for PPPoE Discovery and Session
packets (based on the Ethernet type).  "pppoes" has the side-effect that
subsequent filter expressions will test the PPP header and headers
in the PPP payload, not the link-layer header and headers in the
link-layer payload.
2005-09-05 09:06:58 +00:00
risso a8302b7a2b Added a missing check on the return value of PacketGetAdapterNames() 2005-09-01 22:14:32 +00:00
guy 3410839c5d Today is Tuesday, not Monday. 2005-08-31 06:51:46 +00:00
guy 0e2413c634 When checking for VLAN packets, check the type field in the Ethernet
header, not the VLAN header.
2005-08-31 06:51:05 +00:00
guy 1e5fb25e2c Add another magic number (we'd have used the Navtel one, except that
nobody from Navtel has ever said whether their format differs from the
standard one anywhere other than the time stamp).
2005-08-29 21:05:05 +00:00
guy e7639013b4 Add some more fixes to the list of changes.
Remove trailing white space.
2005-08-23 03:48:35 +00:00
guy 4b8835513e Propagate updates from x.9 branch. 2005-08-23 03:09:41 +00:00
guy c166082296 From Mike "Dragorn" Kershaw: add support for the new ARPHRD_ value for
802.11 with a radiotap header (used by the madwifi driver, and in the
pipeline to be officially assigned).
2005-08-16 04:18:32 +00:00
guy de054a43c1 From Don Ebright: clean out *uerror in recv_ack() before doing anything,
so that it's not EBUSY if we didn't get an EBUSY in a
DL_ERROR_ACK/DL_SYSERR reply, and our checks for EBUSY only catch that
case.

If we *did* get EBUSY on all the SAPs we tried, supply an error.

Make "dl_dohpuxbind()" always return a value, so we don't fall off the
end and return an error indication by accident.
2005-08-13 23:14:24 +00:00
hannes 9ab067e012 allocate 4 new DLTs on behalf of Juniper Networks, Inc. for
prepending meta-information like interface index, interface name
before a standard Ethernet, PPP, Frame Relay, C-HDLC Frame
2005-08-12 19:23:30 +00:00
guy 88389e4834 Add another test program, based on the test program for
pcap_findalldevs() from Scott Gifford.
2005-08-10 06:19:05 +00:00
guy 8da5ed28e5 We're building with the current version of libpcap, so we know we have
"pcap_lib_version()"; use it.
2005-08-08 17:50:13 +00:00
guy 9415d150b0 Add a test program for the BPF code generator (not built by default, and
not installed; built with the version of libpcap in this directory, not
the installed version).
2005-08-08 17:44:25 +00:00
guy b2b10cab4e The "is_mpls" Boolean isn't necessary - we can just check the MPLS label
stack depth to see whether we're processing MPLS-encapsulated packets or
not.
2005-08-08 07:24:53 +00:00
guy c6b5551a8b When we're processing MPLS-encapsulated packets, don't set off_linktype
to -1, set a "we're doing MPLS" flag, and check that flag rather than
checking for an off_linktype of -1; off_linktype can be -1 for reasons
having nothing to do with MPLS (e.g., a DLT_ of DLT_RAW), and those
should be handled as they have traditionally been.

Rename "gen_null()" to "gen_mpls_linktype()" to make it clearer what it
does (it checks the MPLS stack as well as the IP header).
2005-08-08 02:38:29 +00:00
guy 638626c0d8 Propagate from main branch the change:
revision 1.59.2.3
	date: 2005/07/11 20:09:47;  author: mcr;  state: Exp;  lines: +2 -2
	   adjusted version
2005-08-05 23:05:37 +00:00
guy 4cfab3417f Most in-kernel BPF interpreters have the constant field of an
instruction as an unsigned value, and, at least for comparisons, the
value is converted to unsigned anyway, as the A and X registers are
unsigned, and the Usual Arithmetic Conversions of C89 apply to
comparisons.  Make ours unsigned as well.  (On two's complement machines
- which means all machines we support - that won't be an issue for using
the constant field as an offset, either, as arithmetic in the BPF
virtual machine is 32-bit two's complement.)
2005-08-01 01:13:53 +00:00
guy 0eadd018f7 From OpenBSD: fix a comment. 2005-07-31 19:01:14 +00:00
guy c8714e05b0 Add another optimization, now that 0.9[.x] is out (having fixed several
optimizer bugs in 0.9[.x], I didn't want to add more potentially-buggy
optimizations).
2005-07-31 17:58:24 +00:00
risso a0f5f72985 Added a definition for SIZEOF_LONG_LONG for Cygnus compilation (win32). 2005-07-21 18:12:41 +00:00
hannes f0ca0272f5 add basic support for DLT_JUNIPER_MFR 2005-07-20 15:25:09 +00:00
hannes be02452be7 add basic support for DLT_JUNIPER_MFR 2005-07-20 15:18:07 +00:00
hannes d0bf1c55eb per suggestion from Paolo Lucente <paolo.lucente@ic.cnr.it>:
centralize the MPLS check into gen_linktype() and backout the
  specific checks in gen_proto_abrev(), gen_proto(), gen_host()

  this adds as a by-product support for IPv6
2005-07-14 15:59:24 +00:00
hannes bb20233f41 bugreport from Paolo Lucente <paolo.lucente@ic.cnr.it>:
-catch the case where the expression is "mpls && vlan" or a similar mutation
   and generate an error - contrary "vlan && mpls" is perfectly fine;
2005-07-11 13:56:01 +00:00
guy d8d2d19c98 Stephen Donnely says MTP3 and SCCP don't belong in the list of DLT_
values for an HDLC link (MTP2 is what's usually run on those links, with
MTP3 atop it); remove them.  Also, boost dlt_count to match the number
of DLT_ values.
2005-07-10 22:09:16 +00:00
risso 34023facce Added a missing initialization of pcap_t::timeout when an adapter is opened
with pcap_open_live. This bug caused pcap_setnonblock to misbehave when
the adapter was set to blocking mode.
2005-07-10 17:53:08 +00:00
guy d9d1f9154e select() should work on BPF devices on Tiger; it's poll() and kqueues
that don't work.
2005-07-10 10:54:45 +00:00
hannes e821a5221b fix MPLS code generation:
if we have a MPLS label stack deeper > 1 then generate a match
  for a cleared bottom-of-stack-bit of the previous MPLS shim header
  rather than just incrementing the offset;

if there is a compined expression of MPLS and IP like e.g.
  "mpls && ip" | "mpls && ip host" | "mpls && ip src net"
  then poison the linkoffset to make sure that other code generators
  do not try to match link-layer protos like Q_ARP, Q_RARP etc.

introduce a new function gen_null() that matches against the first nibble
  of the IP header and matches if the bottom-of-stack bit is set;

TODO: IPv6 stuff i.e. gen_host6() etc.
2005-07-08 15:18:59 +00:00
guy 7f34968ee3 From Stephen Donnelly: updates to the DAG support, to support their
updated API if available.
2005-07-07 06:55:19 +00:00
guy 75b14d240d OK, we'll be putting out 0.9.2 soon, so add the API changes back in
again.
2005-07-07 01:57:00 +00:00
guy 5e92dec088 0.9's already been released, so, for better or worse, we're stuck with
the old names.
2005-07-05 22:31:57 +00:00
guy 727beef298 Rename "direction_t" to "pcap_direction_t", and rename "D_IN" and
"D_OUT" to "PCAP_D_IN" and "PCAP_D_OUT", to avoid potential namespace
collisions, as per a suggestion by Dean Gaudet.
2005-07-05 22:12:17 +00:00