data

length

buffer_size

Number of bytes the buffer pointed to by data can hold. buffer_size will always be >= length.

return value

Number of bytes RTIP-32 should process at *data. If 0 is returned, RTIP-32 will discard this packet.

This callback can be used to intercept incoming packets at a very early stage and in real time. The callback function may modify the data pointed to by parameter data, if designed. It must return the number of bytes RTIP-32 should process. If the packet data is not modified and RTIP-32 should continue normal processing, return parameter length. To discard the data, return 0.

Since this callback is called from a hardware interrupt handler, it should be short and consume very little stack space. It may not call any functions which may cause a blocking task switch (e.g., malloc, etc). To intercept less time critical packets, use cb_packetin_task instead.