>> I might rip out the OOB stuff just to find and fix anything trying >> to use it, though. > I think ripping it out would be the right thing. And I suspect very > little would notice.
I just did a first pass, doing find . -type f -print0 | xargs -0 mcgrep -H -l MSG_OOB in /usr/src. Most of it is no surprise, or is irrelevant here: telnet and ftp, documentation, the kernel support that backends it, sys/compat, those are expected. But I got one surprise: rlogin{,d}. And I had a quick look at the code - it actually _uses_ it. It is not a case where completely ignoring URG will work. (It actually uses it as out-of-band data, too. You'd almost think it came from the same people who tried to turn the urgent pointer into out-of-band data in the first place.) Fortunately or unfortunately, I don't care about rlogin. I would ditch it when eliminating MSG_OOB. In theory, eliminating MSG_OOB is wrong, because TCP may not be the only protocol that uses it. My sweep found sys/netiso/tp_usrreq.c, and searching for SSD_RCVATMARK under sys/ finds hits in netiso as well as netinet. But I care about netiso about as much as I care about rlogin; I certainly don't mind losing it for long enough to find everything using TCP "OOB". /~\ The ASCII Mouse \ / Ribbon Campaign X Against HTML mo...@rodents-montreal.org / \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B