Reply To: Modify Packet that that change the packet size

Home Forums Discussions Support Modify Packet that that change the packet size Reply To: Modify Packet that that change the packet size

#5889
Vadim Smirnov
Keymaster

    Can you share an example (C/C++) for that case, suppose the new size (changed) always less than or equals MAX_ETHER_FRAME.

    Sorry, at the moment we don’t have sample which modifies TCP data length in the packet. Implementing this kind of modification is a bit more complex that just changing few bytes in the packet without changing its length. I would recommend reading some good overview of TCP protocol before trying to implement this. In two words you have to track/alter sequence and acknowledgement fields in the packets. An example, you change “sex sex” in the incoming packet with «foo”, after this modification TCP data length of the packet is reduced for 4 bytes, so you should also modify sequence number in the TCP header by reducing it to 4. This SINGLE modification affects the whole TCP connection and you should also do the following:

    1) For all other incoming packets associated with this connection you should also reduce the sequence for these 4 bytes.
    2) For the outgoing packets associated with this connection you have to increment an acknowledgement number for those 4 bytes.

    If you do more modifications then you should recalculate sequence/acknowledgement numbers shift.