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

Fragmented IP packet's inner_pdu PDUs are not decoded now.

This commit is contained in:
Matias Fontanini
2013-11-16 19:40:08 -03:00
parent dc6c37777b
commit a6655191d4
2 changed files with 34 additions and 15 deletions

View File

@@ -14,7 +14,7 @@ using namespace Tins;
class IPTest : public testing::Test {
public:
static const uint8_t expected_packet[];
static const uint8_t expected_packet[], fragmented_packet[];
void test_equals(const IP &ip1, const IP &ip2);
};
@@ -24,6 +24,12 @@ const uint8_t IPTest::expected_packet[] = {
168, 9, 43, 130, 11, 116, 106, 103, 171, 119, 171, 104, 101, 108, 0
};
const uint8_t IPTest::fragmented_packet[] = {
69, 0, 0, 60, 0, 242, 7, 223, 64, 17, 237, 220, 192, 0, 2, 1, 192,
0, 2, 2, 192, 0, 192, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
TEST_F(IPTest, DefaultConstructor) {
IP ip;
@@ -63,6 +69,12 @@ TEST_F(IPTest, Constructor) {
EXPECT_EQ(ip.id(), 1);
}
TEST_F(IPTest, ConstructorFromFragmentedPacket) {
IP ip(fragmented_packet, sizeof(fragmented_packet));
ASSERT_TRUE(ip.inner_pdu());
EXPECT_EQ(PDU::RAW, ip.inner_pdu()->pdu_type());
}
TEST_F(IPTest, TOS) {
IP ip;
ip.tos(0x7a);