Matias Fontanini
4e95797710
Allow constructing RadioTapParser from an empty buffer
2017-06-05 20:44:03 -07:00
Matias Fontanini
a641589b09
Make RadioTapParser work using only the options buffer
2017-06-05 20:44:03 -07:00
Matias Fontanini
b8e4c7248b
Add RadioTapParser class
2017-06-05 20:44:03 -07:00
Matias Fontanini
7589a0a108
Rename IPv6::add_ext_header to IPv6::add_header (deprecate former)
2017-06-05 20:44:03 -07:00
Matias Fontanini
34072f733c
Fix next header handling on IPv6
...
This was broken by design. Each header held the next header's
type, which made iterating through them very tricky (you'd have
to look at the previous header's next header value to know the
current one while doing so).
Now each header contains its own value and the next header
value is computed during serialization and then reverted back
after that.
2017-06-05 20:44:03 -07:00
Matias Fontanini
8021112fea
Use vector instead of lists everywhere
2017-06-05 20:44:03 -07:00
Matias Fontanini
36fedf4f65
Remove useless includes for utils.h on tests
2017-06-05 20:44:03 -07:00
Matias Fontanini
6f681f6519
Move smart_ptr definition into new file detail/smart_ptr.h
2017-06-05 20:44:03 -07:00
Matias Fontanini
c7273ddd30
Add PDU iterator class
2017-06-05 20:44:03 -07:00
Matias Fontanini
4eb4dfe5fa
Remove parent parameter from write_serialization
...
This is no longer needed as each PDU knows its parent PDU already
2017-06-05 20:44:03 -07:00
Matias Fontanini
8838ddf921
Add parent PDU member to PDU class
...
Now this is a bidirectional list of PDUs
2017-06-05 20:44:03 -07:00
Matias Fontanini
7f8644cb39
Merge branch 'develop'
2017-03-23 19:31:10 -07:00
Matias Fontanini
799ba2b4b6
Allow disabling pcap packet capture
2017-03-21 19:04:33 -07:00
Matias Fontanini
ad0a1ca97d
Use QoS TID when building AAD for CCMP decryption
...
Fixes #190
2017-03-11 10:43:12 -08:00
Matias Fontanini
7607610cf9
Merge branch 'develop'
2017-01-31 21:37:41 -08:00
Kyle Fazzari
a71a3d29ff
Fix -Wextra compiler warnings. ( #184 )
...
* Fix -Wextra compiler warnings.
Fix #183 .
Signed-off-by: Kyle Fazzari <github@status.e4ward.com >
* Comment out unused parameters.
This is done everywhere possible instead of using Internals::unused().
Note that this involved moving some implementations into the
corresponding .cpp file.
Signed-off-by: Kyle Fazzari <github@status.e4ward.com >
* Fix warnings in tests as well.
Signed-off-by: Kyle Fazzari <github@status.e4ward.com >
* Leave IPv4Reassembler alone, it's growing.
Signed-off-by: Kyle Fazzari <github@status.e4ward.com >
2017-01-25 13:26:11 -08:00
Ed Catmur
9051197603
Use actual payload length to construct inner PDU. ( #179 )
...
Fixes #178
2017-01-16 09:36:33 -08:00
Matias Fontanini
a63387f85e
Add Stream recovery mode
2016-10-30 11:38:50 -07:00
Matias Fontanini
df7e7b391d
Add flag to Stream to know whether it was attached
2016-10-30 10:31:16 -07:00
Matias Fontanini
5d6431d2d9
Allow enabling attachment to partial streams
2016-10-30 10:21:58 -07:00
Matias Fontanini
9dbad2a26f
Cleanup tests names and CMake script
2016-10-23 10:21:58 -07:00
Matias Fontanini
54ce11629c
Set payload type to 0 if no inner_pdu on Dot1Q
2016-09-29 07:37:46 -07:00
Matias Fontanini
8dcfd6aae0
Set protocol to 0 if no inner_pdu on IP
2016-09-29 07:37:46 -07:00
Patrick Michel
838a4a5cb9
Refactored code related to stream/flow initialization. ( #170 )
...
- Removed client_flow().process_packet() in Stream constructor, in favor of processing on SYN in stream follower.
- Moved +1 to seq on SYN/ACK.
2016-09-28 07:30:16 -07:00
Matias Fontanini
552006c876
Set EthernetII payload type to UNKNOWN if no inner_pdu
2016-09-27 07:47:32 -07:00
Matias Fontanini
d3c576f6de
Properly handle out of order SACKs on AckTracker
2016-04-03 09:39:11 -07:00
Matias Fontanini
8d52d73968
Allow disabling TCPIP classes
2016-04-02 09:35:42 -07:00
Matias Fontanini
48022d3a3f
Rename and undef symbols that conflict with macro names on DNS
...
The undefs are a temporary fix until we get rid of the old,
conflicting, names
Fixes #141
Fixes #58
2016-04-02 09:16:28 -07:00
Matias Fontanini
3773443fc8
Allow masking IPv4/6 and HW addresses
2016-03-19 15:44:55 -07:00
Matias Fontanini
1f4be63d08
Properly handle MLDv1 on ICMP
2016-03-17 21:49:06 -07:00
Matias Fontanini
4dcef0f15d
Add Utils::route6_entries
2016-03-06 19:18:33 -08:00
Matias Fontanini
c082dfad67
Minor changes on TCPIP::StreamFollower
2016-03-06 13:40:10 -08:00
Matias Fontanini
1681981fe8
Add WPA2Decrypter callback interface
2016-02-28 08:01:04 -08:00
Matias Fontanini
bf70a94921
Build layer 5 as RawPDU if IPv6 has fragment header
2016-02-22 20:37:48 -08:00
Matias Fontanini
e5282f8a3c
Fix compilation warnings
2016-02-21 18:50:47 -08:00
Matias Fontanini
92f0249d2b
Cleanup IPv4Reassembler
2016-02-21 18:20:06 -08:00
Matias Fontanini
9dabb6f570
Fix IP fragment reassemble when packet has flags DF+MF
2016-02-21 09:23:44 -08:00
Matias Fontanini
64b84fa91d
Prefix HAVE_ config.h macros with TINS_
2016-02-20 09:10:48 -08:00
Matias Fontanini
0e5d7d7ae0
Use C++11 mode by default
2016-02-17 21:04:28 -08:00
Matias Fontanini
9ef6f7a612
Initialize ACK tracker correctly
2016-02-17 20:10:22 -08:00
Matias Fontanini
423dbf2404
Return an empty string for dot11 ssid, if ssid is present but empty
...
References issue mentioned in #128
2016-02-16 21:28:59 -08:00
Matias Fontanini
abe94ece52
Allow asking whether segment was acked
2016-02-13 22:45:11 -08:00
Matias Fontanini
2498ebf7d6
Fix ACK tracker tests build
2016-02-13 21:26:46 -08:00
Matias Fontanini
116eb9f1c1
Add initial ACK tracking code
2016-02-13 20:24:15 -08:00
Matias Fontanini
48c068b84a
Add callbacks for stream termination events
2016-02-13 11:23:08 -08:00
Matias Fontanini
20a3868e82
Track Stream timestamps and add timeout to StreamFollower
2016-02-11 21:18:48 -08:00
Matias Fontanini
85d7401520
Store MSS value on Flows
2016-02-10 21:24:15 -08:00
Matias Fontanini
3b848060aa
Change tcp_ip directory structure
2016-02-10 20:56:13 -08:00
Matias Fontanini
69fc5ff54b
Add support for out of order data packet detection
2016-02-10 20:56:13 -08:00
Matias Fontanini
8db6032303
Add hardware addresses to Stream
2016-02-10 20:56:13 -08:00