1
0
mirror of https://github.com/mfontanini/libtins synced 2026-01-23 02:35:57 +01:00
Commit Graph

1068 Commits

Author SHA1 Message Date
Matias Fontanini
2f528876ad Add back RadioTap::TSTF 2017-06-05 20:44:03 -07:00
Matias Fontanini
aa64e34880 Keep current flags as member in RadioTapParser 2017-06-05 20:44:03 -07:00
Matias Fontanini
5fcde41023 Use RadioTapParser/Writer in RadioTap 2017-06-05 20:44:03 -07:00
Matias Fontanini
63e22fc349 Add RadioTapWriter class 2017-06-05 20:44:03 -07:00
Matias Fontanini
7af1ec0984 Add some useful member functions to RadioTapParser 2017-06-05 20:44:03 -07:00
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
d29296935e Fix C++03 build issues on PDU option 2017-06-05 20:44:03 -07:00
Matias Fontanini
1da2c1dcdc Add overload of Sniffer ctor taking only the device 2017-06-05 20:44:03 -07:00
Matias Fontanini
76395370de Use the right checks to consider an interface up on Windows
Fixes #182

Thanks @gvanem!
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
9442233a8a Calculate IPv6 headers size on demand 2017-06-05 20:44:03 -07:00
Matias Fontanini
993831709d Improve DNS class performance slightly 2017-06-05 20:44:03 -07:00
Matias Fontanini
4def995185 Fix build issue on VS 2017-06-05 20:44:03 -07:00
Matias Fontanini
fa85aa3f8b Performance improvements
* Remove option size memers on IP/TCP and instead calculate
these when they're needed
* Reorder members on IP/TCP so as to remove/decrease padding
* Move most memory helpers impl into header file so they
can be inlined
* Make PDUOption's move ctor/assignment operator noexcept
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
80f424b6b3 Use TINS_DEPRECATED on old Sniffer constructors 2017-06-05 20:44:03 -07:00
Matias Fontanini
1ef5be352a Use custom exceptions everywhere 2017-06-05 20:44:03 -07:00
Matias Fontanini
1a83801722 Remove useless includes 2017-06-05 20:44:03 -07:00
Matias Fontanini
3c2f40ec02 Split pdu_option.h into a source file as well 2017-06-05 20:44:03 -07:00
Matias Fontanini
b47dc3f77c Only call memcpy in PDUOption if size > 0 2017-06-05 20:44:03 -07:00
Matias Fontanini
f1e726f503 Don't dereference iterator in memory helpers if size == 0 2017-06-05 20:44:03 -07:00
Matias Fontanini
afb6ad488c Use TINS_IS_CXX11 macro properly 2017-06-05 20:44:03 -07:00
Matias Fontanini
5d68211af2 Include iterator in network_interface 2017-06-05 20:44:03 -07:00
Matias Fontanini
887bccf0af Fix undefined std::min use in PPPoE 2017-06-05 20:44:03 -07:00
Matias Fontanini
7eb067338f Try to make VC happy with std::hash definition 2017-06-05 20:44:03 -07:00
Matias Fontanini
6896cc6346 Fix more build issues on appveyor 2017-06-05 20:44:03 -07:00
Matias Fontanini
de2f29b797 Fix build issue on appveyor 2017-06-05 20:44:03 -07:00
Matias Fontanini
1ec6006f33 Add missing stdexcept include in routing_utils.cpp 2017-06-05 20:44:03 -07:00
Matias Fontanini
d9f92c46c4 Fix missing include for sstream on packet_sender.cpp 2017-06-05 20:44:03 -07:00
Matias Fontanini
9677c06036 Fix build issues due to std::hash missing 2017-06-05 20:44:03 -07:00
Matias Fontanini
a07b3e8a3a Remove inclusion of algorithm almost everywhere 2017-06-05 20:44:03 -07:00
Matias Fontanini
58a4d336b9 Move memory helpers implementation into a source file 2017-06-05 20:44:03 -07:00
Matias Fontanini
86da3818ff Remove useless includes 2017-06-05 20:44:03 -07:00
Matias Fontanini
815889bd22 Move seq_compare into its own header file 2017-06-05 20:44:03 -07:00
Matias Fontanini
be48947ead Move is_dot3 into details/pdu_helpers.h 2017-06-05 20:44:03 -07:00
Matias Fontanini
3e7188edf7 Move internals' PDU helpers into their own files 2017-06-05 20:44:03 -07:00
Matias Fontanini
3d4f9285c9 Move PDU utils into their own file 2017-06-05 20:44:03 -07:00
Matias Fontanini
e556f4147f Move resolution utils into their own file 2017-06-05 20:44:03 -07:00
Matias Fontanini
4e4f7a2390 Move Utils::gateway_from_ip into routing utils files 2017-06-05 20:44:03 -07:00
Matias Fontanini
35e65d018c Move routing related functions into their own header file 2017-06-05 20:44:03 -07:00
Matias Fontanini
714b8d9810 Use checksum utils on crypto and icmp extension source files 2017-06-05 20:44:03 -07:00
Matias Fontanini
d061fced7e Move frequency (channel) utils into their own file 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
89202c5dd5 Move checksum utils into their own file 2017-06-05 20:44:03 -07:00
Matias Fontanini
110adc58dc Move ICMP extension helpers into their own file 2017-06-05 20:44:03 -07:00
Matias Fontanini
6f32a1982a Remove useless stdexcept includes 2017-06-05 20:44:03 -07:00
Matias Fontanini
c50c4c105c Add relative includes on detail headers 2017-06-05 20:44:03 -07:00