omniti-labs/reconnoiter — pull request #51 by TheTeaWeevil (2012-03-02 20:28:18+00:00)
Title: Linux External Check Fix

The external check was not working properly on my Fedora Linux system. Upon looking into it, I found that there's an issue with the MSG_PEEK flag, which was being used to determine when there was data to read. This will not work properly most of the time. I changed the code to no longer use the MSG_PEEK flag and added a bunch of robustness to reading and writing messages (IE, no longer assert and exit the program if everything doesn't go in one read/write - try to read to see if more data is on the line), since there were incidents where data was not being read in all one go, causing system failures.