|
785 |
p2 = p->CreateFragment (6,535-6); |
785 |
p2 = p->CreateFragment (6,535-6); |
786 |
p1->AddAtEnd(p2); |
786 |
p1->AddAtEnd(p2); |
787 |
|
787 |
|
|
|
788 |
// bug 1072#2 |
789 |
p = Create<Packet> (reinterpret_cast<const uint8_t*> ("hello world"), 11); |
790 |
ADD_HEADER (p, 2); |
791 |
CHECK_HISTORY(p, 2, 2, 11); |
792 |
p1 = p->CreateFragment (0, 5); |
793 |
CHECK_HISTORY(p1, 2, 2, 3); |
794 |
p2 = p->CreateFragment (5, 8); |
795 |
CHECK_HISTORY(p2, 1, 8); |
796 |
|
797 |
ADD_HEADER (p1, 8+2+2*6); |
798 |
ADD_TRAILER (p1, 4); |
799 |
CHECK_HISTORY(p1, 4, 22, 2, 3, 4); |
800 |
ADD_HEADER (p2, 8+2+2*6); |
801 |
ADD_TRAILER (p2, 4); |
802 |
CHECK_HISTORY(p2, 3, 22, 8, 4); |
803 |
|
804 |
REM_TRAILER (p1, 4); |
805 |
REM_HEADER (p1, 8+2+2*6); |
806 |
CHECK_HISTORY(p1, 2, 2, 3); |
807 |
REM_TRAILER (p2, 4); |
808 |
REM_HEADER (p2, 8+2+2*6); |
809 |
CHECK_HISTORY(p2, 1, 8); |
810 |
|
811 |
p3 = p1->Copy(); |
812 |
CHECK_HISTORY(p3, 2, 2, 3); |
813 |
p3->AddAtEnd(p2); |
814 |
CHECK_HISTORY(p3, 2, 2, 11); |
815 |
|
816 |
CHECK_HISTORY(p, 2, 2, 11); |
817 |
REM_HEADER (p, 2); |
818 |
CHECK_HISTORY(p, 1, 11); |
819 |
REM_HEADER (p3, 2); |
820 |
CHECK_HISTORY(p3, 1, 11); |
821 |
|
822 |
uint8_t *buf = new uint8_t[p3->GetSize ()]; |
823 |
p3->CopyData (buf, p3->GetSize ()); |
824 |
std::string msg = std::string (reinterpret_cast<const char *>(buf), |
825 |
p3->GetSize ()); |
826 |
delete [] buf; |
827 |
NS_TEST_EXPECT_MSG_EQ(msg, std::string("hello world"), "Could not find original data in received packet"); |
828 |
|
829 |
|
788 |
NS_TEST_EXPECT_MSG_EQ(result, true, "PacketMetadataTest failed"); |
830 |
NS_TEST_EXPECT_MSG_EQ(result, true, "PacketMetadataTest failed"); |
789 |
} |
831 |
} |
790 |
//----------------------------------------------------------------------------- |
832 |
//----------------------------------------------------------------------------- |