Hello all,
I found what seems like a bug related to SO_OOBINLINE handling with TCP sockets. I couldn't easily find any mention of this on the Internet, so I'm asking about it here.
The basic problem is best expressed by reading and running the attached .c file. As a summary, setting SO_OOBINLINE on a socket after sending and receiving OOB data seems to cause that data to be received again. This is especially suspicious since making an (unsuccessful) recv() call before setting SO_OOBINLINE [commented out with if(0)] will cause said recv to return normally.
Is this a bug? Is there anything that should be done about this behaviour?
Thanks,
Zeb