Victor Julien
76c8c077c5
tcp: fix alignment issues with tcp timestamps
10 years ago
Victor Julien
38f67d88ea
tcp: reduce TCP options storage in packets
...
Until now, the TCP options would all be stored in the Packet structure.
The commonly used ones (wscale, ts, sack, sackok and mss*) then had a
pointer to the position in the option array. Overall this option array
was large. About 360 bytes on 64bit systems. Since no part of the engine
would every access this array other than through the common short cuts,
this was actually just wasteful.
This patch changes the approach. It stores just the common ones in the
packet. The rest is gone. This shrinks the packet structure with almost
300 bytes.
* even though mss wasn't actually used
10 years ago
Victor Julien
6b2fb3fd5d
Fix minor format string issues
10 years ago
Ken Steele
045966676d
Add Packed attribute on Header structures
...
Structures that are used to cast packet data into fields need to be packed
so that the compiler doesn't add any padding to these fields. This also helps
Tile-Gx to avoid unaligned loads because the compiler will insert code to
handle the possible unaligned load.
11 years ago
Ken Steele
f16b339fc4
Rename checksums to level3_comp_csum and level4_comp_csum.
...
This will also sharing even more memory in the Packet_ structure.
12 years ago
Ken Steele
c6a8d0ab6b
Share Packet checksum values for TCP, UDP, IPv6. ICMPv4 and ICMPv6
...
Keep a separate checksum for IPV4, since a packet can have both an IPV4
checksum and a TCPV4 checksum, or IPV4 and UDPV4 checksum.
This will allow future sharing of more values.
Use PACKET_RESET_CHECKSUMS() in Unit Tests in place of setting the
individual checksum values.
12 years ago
Anoop Saldanha
98a8234e0a
csum function fixes. Improves alert accuracy. FPs on invalid-csums decoder rules fixed
14 years ago
Victor Julien
e1d4e16645
Simplify packet decoding macro's.
15 years ago
Victor Julien
6aa551c558
Small optimizations to IPV4 and TCP header parsing.
15 years ago
Victor Julien
d0374ced38
Implement SACK in the stream engine.
15 years ago
Victor Julien
6fc075d4ae
Add TCP packet SACK option decoding.
15 years ago
Eric Leblond
0cf05856d0
Fix Packet usage.
...
This patch suppresses remaining direct access to pkt and pktlen in the
Packet structure.
15 years ago
Gurvinder Singh
7d0781b349
added support to log dropped packet as netfilter logs while in inline mode
15 years ago
Anoop Saldanha
7abf3a2123
fix csum handling for tcp/dup
15 years ago
Victor Julien
6519a86ec7
Move packet pool to ringbuffer, update packet pool api and ringbuffer api. Remove memset usage from PACKET_RECYCLE, add proper cleanup macros.
16 years ago
William Metcalf
2eef905c07
GPL and Copyright header updates.
16 years ago
William Metcalf
ce01927515
Import of GPLv2 Header 050410
16 years ago
Pablo Rincon
b334036d75
Moving inline functions to the .h files, so gcc can inline them correctly
16 years ago
Victor Julien
5eb4095b9a
Comment ECN/CWR changes more.
16 years ago
Pablo Rincon
83ddc5813a
Support for ecn/cwr TCP sessions
16 years ago
Gurvinder Singh
37b4682407
target based paws handling
16 years ago
Victor Julien
0d0ffb9963
Reorganize header inclusions.
16 years ago
Victor Julien
301522f316
Add TCP_GET_WSCALE macro for easy access to wscale. Update StreamTcp to use it. Default to wscale 14 (max) in case of midstream as there seems to be no reliable way to predict wscale if we missed it.
16 years ago
Victor Julien
a6fe5a7331
Add TCP_GET_TS1 and TCP_GET_TS2 marco's to efficiently retrieve the TCP timestamps in host order.
16 years ago
Anoop Saldanha
22c0ec2bc5
Added support for the csum-<protocol> rules keyword to the detection engine. Keywords added are ipv4-csum, tcpv4-csum, tcpv6-csum, udpv4-csum, udpv6-csum, icmpv4-csum and icmpv6-csum
16 years ago
Anoop Saldanha
41dd0f8e62
checksum calculation functions for ipv4, tcp, udpv4, icmpv4
16 years ago
Brian Rectanus
fa5939ca91
64 bit cleanup part2
16 years ago
Victor Julien
689bbfdc45
Rename all structure definitions in the "typedef struct _SomeStruct" format to "typedef struct SomeStruct_" to make the Doxygen output more useful.
...
Remove the Trie multi pattern matcher code. It wasn't used anymore.
17 years ago
Victor Julien
9c7f5afa79
Large update: pcap support, threading fixes, initial stream tracking, time handling, pool support, runmodes, decoders added, autojunk update.
17 years ago
William Metcalf
0ffa1c2465
updates for configure.in, added reject code, some decode stuff for tcp
17 years ago
Victor Julien
bab4b62376
Initial add of the files.
17 years ago