[FFmpeg-devel] libossupport status

François Revol revol
Wed Dec 26 14:22:50 CET 2007


> > > Then add it. Submit patches to mingw for their broken crap, and 
> > > then
> > > require latest mingw...
> > > 
> > > Anyway WTF is the point of this? O_NONBLOCK is useless; just do a
> > > select before attempting to read/write... Or are you worried 
> > > about
> > > running into the Linux bug in select? :)
> > 
> > As far as I can see, the nonblock option is used only in tcp.c, 
> > which
> > already uses select() before writing or reading. I do not know if 
> > using
> > O_NONBLOCK is useless or not (I suspect it is not), but I believe 
> > this
> > is an orthogonal issue respect to the OS support library, and 
> > should be
> > fixed (if there is something to fix) with a separate patch.
> 
> If a socket has been reported writable by select, then POSIX
> guarantees it will not block when writing a number of bytes 
> equivalent
> to the current value of SO_SNDLOWAT, or fewer. If it has been 
> reported
> readable, it will never block on the next read.

Standards are meant to deviate from it seems.

> > BTW, where can I find more info about the Linux bug you are citing? 
> > I've
> > never heared anything about it (and I often use select() in my
> > programs)... Is it limited to some particular kernel/libc versions?
> 
> It affects UDP only and it's a WONTFIX because the Linux developers
> are assholes who don't care that they introduced a DoS bug through
> their nonconformance when fixing it would negate their meaningless
> 0.1% contrived-benchmark gains.

And you talk about others as "broken" ?
How many times was I replied to "just fix your OS"...
Sorry but I'm just ROTFL.

> > I see that there are different opinions about this include... I 
> > posted a
> > version of the patch which uses "#include "os_support.h"", and a 
> > version
> > that does not require it. Let's see how the discussion evolves...
> 
> Whatever header crap is needed from ossupport, it can be in the
> replacement headers ossupport supplies for broken operating systems.
> There's no need for "os_support.h"
> 

As long as it doesn't break the BeOS build and I can finally put in the 
required fixes I'm ok with moving all off that one.

Btw there is still a setmode() call somewhere which is totally non 
POSIX.

Fran?ois.




More information about the ffmpeg-devel mailing list