Matias Fontanini
ea6638c163
IP now uses PDUOption::to<>. Started porting ICMPv6 to do so as well.
2013-12-16 15:50:17 -03:00
Matias Fontanini
112a357726
Added PDUOption::to<>. TCP options now use this method when being converted to their appropriate types.
2013-12-16 14:11:53 -03:00
Matias Fontanini
2ddec368c3
Fixed bug on IP when serializing fragmented packets.
...
The original protocol id was being overwritten with 0xff(unknown)
when the inner_pdu was a RawPDU, even if it was just a fragment of
a transport layer PDU. The protocol id is now kept if the packet
is fragmented.
2013-12-04 10:56:48 -03:00
Matias Fontanini
6355aff3cd
Added IPv4Reassembler class.
2013-11-17 15:32:24 -03:00
Matias Fontanini
01b2a9c7b2
Modified some examples fixed some doxygen documentation.
2013-10-06 23:00:20 -03:00
Matias Fontanini
5064a9255b
Fixed BSD notice. Updated AUTHORS file.
2013-04-23 20:33:00 -03:00
Matias Fontanini
bf604339f0
Removed the PDU* parameter in several PDU's constructors.
2013-04-23 20:03:08 -03:00
Matias Fontanini
0f2bc45059
Moved definitions inside TINS_IS_CXX11 into header files.
2013-04-23 13:04:57 -03:00
Matias Fontanini
9be4f0ca37
Removed IP, UDP and IP checksum setters. Added some checksum tests.
2013-04-22 20:06:35 -03:00
Matias Fontanini
d1b64ec48e
PDU::matches_response is now const.
2013-04-21 20:03:47 -03:00
Matias Fontanini
69968cbc5c
Removed deprecated methods/types.
2013-04-21 19:52:39 -03:00
Matias Fontanini
97f049580b
Link layer PDUs no longer contain a NetworkInterface.
2013-04-21 18:50:08 -03:00
Matias Fontanini
3fd1b3d37d
Added malformed_packet exception. Every class except Dot11* use it.
2013-04-18 00:12:20 -03:00
Matias Fontanini
ae1e1c2ce2
Modified some protocols' internal type names.
2013-04-09 15:40:58 -03:00
Matias Fontanini
82ef41dd92
IP now fills automatically the sender address when no link layer PDU is present. Made some protocols work when using PacketSender::send_recv.
2013-03-25 14:08:59 -03:00
Matias Fontanini
8be0c4c23c
Marked PDU::clone_packet as deprecated.
2013-03-24 16:08:09 -03:00
Matias Fontanini
d7dd1e131f
Added an overload of add_option that takes an rvalue-ref in IP, TCP, DHCP, ICMPv6 and Dot11.
2013-03-24 00:08:53 -03:00
Matias Fontanini
584fe81f04
Optimized TCP, IP and PDUOption<>.
2013-03-23 13:44:33 -03:00
Matias Fontanini
a24e0d5a4b
Done some changes on the build system.
2013-01-31 16:48:32 -03:00
Matias Fontanini
c7c56a610c
Done some -pedantic modifications.
2013-01-24 13:44:30 -03:00
Matias Fontanini
02265061cc
Added SLL pseudo protocol header.
2013-01-16 00:05:28 -03:00
Matias Fontanini
356fe00aad
Fixed compilation error in OSX. Fixed bug when sending IP PDUs in BSD.
2012-12-04 16:15:08 -03:00
Matias Fontanini
53fe80d8a7
Added fix for IP::tot_len's endianess in OSX.
2012-12-03 20:34:15 -03:00
Matias Fontanini
742276c251
libtins compiles and runs under windows. Packets apparently can't be sent yet.
2012-12-02 20:25:05 -03:00
Matias Fontanini
6696c1b284
Ported almost everything to BSD. Utils::route_entries and sending link layer PDUs still don't work.
2012-11-28 00:11:42 -03:00
Matias Fontanini
a938d2ecfd
Added support for IPv6 extension headers. Specific headers getters and setters are not yet implemented.
2012-11-22 17:18:59 -03:00
Matias Fontanini
8276e7d086
Added IPv6 class. It's working, but there's no support for extension headers yet.
2012-11-21 22:09:58 -03:00
Matias Fontanini
abaa2bf926
PacketSender now throws on error. Fixed the documentation on several header files.
2012-10-19 12:01:34 -03:00
Matias Fontanini
73577c744a
Every test now pass on big endian architectures. Ported about half of the library to windows as well.
2012-10-08 21:14:57 -03:00
Matias Fontanini
1c22dab2dc
libtins now uses a BSD license.
2012-10-07 20:33:45 -03:00
Matias Fontanini
16a81c0589
Fixed bugs on IP+big endian architecture.
2012-10-03 00:35:16 -03:00
Matias Fontanini
e8151724c4
Removed PDU::clone_packet and renamed PDU::clone_pdu to PDU::clone.
2012-09-11 16:54:14 -03:00
Matias Fontanini
7cbd32361a
Modified some PacketSender and BaseSniffer functions to take references instead of pointers.
2012-09-11 08:51:25 -03:00
Matias Fontanini
e945ced307
Modified some file names.
2012-09-10 10:31:00 -03:00
Matias Fontanini
c49fbe9929
Added a generic PDUOption class. TCP, IP, DHCP and Dot11* now use this class to store their options.
2012-09-10 00:11:54 -03:00
Matias Fontanini
3cb6603151
Improved compile time using forward declarations and removing useless includes.
2012-09-05 11:59:46 -03:00
Matias Fontanini
832a79a1e1
Moved endianness change functions to endianness.h.
2012-09-03 23:58:43 -03:00
Matias Fontanini
958edcc74a
Added small_uint class.
2012-09-02 18:24:59 -03:00
Matias Fontanini
da8c77c77e
RAII'd some code. Everything(hopefully) uses IPv4Address now.
2012-08-27 00:16:56 -03:00
Matias Fontanini
892bc0ecd3
Started fixing endianess issues.
2012-08-15 12:04:13 -03:00
Matias Fontanini
e2223bf406
Fixed some bugs. Added a better dependency system for Makefiles.
2012-08-13 00:29:38 -03:00
Matias Fontanini
91af0f9cc2
EthernetII, IEEE802_3 and Dot11(and subclasses) now use NetworkInterface and HWAddress.
2012-08-09 12:00:29 -03:00
Matias Fontanini
4af3d3c697
Added a constant static value to each PDU indicating the corresponding PDU::PDUType flag.
2012-08-06 22:29:41 -03:00
Matias Fontanini
c5fce38c3a
Refactored several classes.
2012-08-03 13:08:24 -03:00
Matias Fontanini
08f8521ae7
Added IPv4Address class.
2012-05-03 12:03:26 -03:00
Matias Fontanini
53dfad8bf2
Done minor modifications.
2012-03-06 08:31:10 -03:00
Matias Fontanini
8f74ddbc30
Added IPTest. Fixed some IP bugs.
2011-09-24 22:59:58 -03:00
Santiago Alessandri
9e98e2e454
Started utils test. cChanged IP format
2011-09-22 22:53:09 -03:00
Matias Fontanini
4d8fb5a4e5
Modified IP, ARP, ICMP and EthernetII's clone_packet.
2011-09-15 09:17:35 -03:00
Matias Fontanini
abe73f185f
Added constants header.
2011-09-12 12:01:17 -03:00