On Tue, 8 Jan 2008, Rick Jones wrote:That's entirely reasonable, and probably a worthwhile change to make. But, as you say, it doesn't change whether or not this is a bug in the MSG_PEEK code. With a small bit of complication I certainly can do what you suggest. The initial reasoning was that this made it easy to handle the case where the caller of the library routine (my code which stumbled on this was part of a small library I wrote as part of the application) did not supply a sufficiently sized buffer for reception of the next message. The "easy" way to do this was a MSG_PEEK to validate the buffer size against the message size, followed by a regular recv() if the buffer is large enough. To do what you suggest (which effectively works around the bug) is certainly possible, but also requires maintaining state between calls to the "get message" routine, as I need to track whether or not the size has already been read from the next message on the stream socket. The change isn't terribly difficult, but wasn't the initial idea. Plus it's always good to flush a bug out of hiding, right? ;) Brent -- Brent Casavant All music is folk music. I ain't bcasavan@sgi.com never heard a horse sing a song. Silicon Graphics, Inc. -- Louis Armstrong --
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Amit K. Arora | [RFC] Heads up on sys_fallocate() |
| Chuck Ebbert | Why do so many machines need "noapic"? |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Natalie Protasevich | [BUG] New Kernel Bugs |
