Hello, I am trying to add sequence numbers in the data portion of a packet, so i edited the timedsource.cc to just push the sequence number in the packet. The code converts the number to string, "pushes" the strings length on the packet and copies it. I am getting the following error
click: ../lib/packet.cc:416: WritablePacket* Packet::expensive_uniqueify(int32_t, int32_t, bool): Assertion `(extra_headroom >= (int32_t)(-headroom())) && (extra_tailroom >= (int32_t)(-tailroom()))' failed. Initially the packet has no headroom or tailroom. The headroom() and tailroom() return 0. The sequence of function calls is push->expensive_push->expensive_uniqueify. Right before expensive_uniqueify is called the headroom and tailroom are still 0. I printed values before the assertion and I get these: extra headroom 128 headroom 0 extra_tailroom 0 tailroom -157483016 end_buffer 137 end_data 157483153 There is nothing else that is modifying the packet before the function call or during the function call. I am clueless as to why the end_data and end_buffer values are so weird. Any suggestions as to why this would be happening would be really helpful. Thanks! -- Amita Ekbote _______________________________________________ click mailing list click@amsterdam.lcs.mit.edu https://amsterdam.lcs.mit.edu/mailman/listinfo/click