none
Adding a timestamp option field to the IP header RRS feed

  • Question

  • I'd like to add a timestamp option field to the end of my IP header in the transport outbound layer before reinjecting the packet. If I understand correctly, there is no IP header yet at this layer. How do I create the header, allocate, and fill in the additional area for the option? I'm getting lost between too much and not enough information...


    Freddy

    Wednesday, April 18, 2012 10:55 PM

Answers

All replies

  • Check FwpsConstructIpHeaderForTransportPacket0 function http://msdn.microsoft.com/en-us/library/windows/hardware/ff551154(v=vs.85).aspx

    -- Antti

    Thursday, April 19, 2012 9:38 AM
  • I've checked the FwpsConstructIpHeaderForTransportPacket0 function before posting the question. It's not clear (and I couldn't find a clear example) where is the current offset supposed to be, when and how should I allocate the memory for the additional option, do I need to manually fix the header or can I use the same function to recalculate checksum etc (and will it keep my added option intact?

    One more specific question - after calling FwpsConstructIpHeaderForTransportPacket0 (for a cloned NBL) where is current offset in each NET_BUFFER?

    Does anyone has an example or advice on adding option field to IP header in transport layer?


    Freddy



    Thursday, April 19, 2012 5:15 PM
  • Solved by trial and error (and a lot of single stepping).

    Freddy

    Friday, April 20, 2012 9:21 PM