Messages in this thread | | | From | (Linus Torvalds) | Subject | Re: glibc 2, Linux 2.x and the world of many patches! | Date | 31 Jul 1997 17:16:31 GMT |
| |
In article <19970731121925.27207@calder>, <mdorman-linux@calder.med.miami.edu> wrote: > >First, your current patches aren't against the current glibc, which >means they do not actually take care of many of the issues one can >find in compiling against glibc (for instance, at least on the alpha, >the size_t vs. int on socket functions issue that was introduced after >the snapshot you use---I suspect this would show up on UltraPenguin, >too).
Oh, no! Don't tell me that glibc now tries to implement the completely broken new POSIX standard for size_t of socket names?
I complained to the POSIX people the very same day I found out (Alan sent me a patch that tried to implement it in the kernel, and when I asked him why he did something so stupid and broken he pointed to the POSIX people), but it seems the committee was populated by bungling idiots and they had already passed the thing.
It's sad, because POSIX has mostly been on the ball apart from this one major f*ck-up (sorry, there is no polite way of putting it).
If any glibc people actually read this list, PLEASE disregard the new and broken POSIX stuff in glibc when it comes to socket name lengths. It is technically broken and it CANNOT work on machines where "sizeof(int) != sizeof(size_t)" (which covers all sane 64-bit implementations).
The bottom line is that the socket interface has been passing pointers to integers around for a long time, and the new POSIX standard (whetaver the number is, I forget - 1d?) broke that interface for no good reason.
Implementing the broken POSIX standard is horribly stupid: it breaks good, working programs in subtle and very hard-to-find ways.
Do NOT implement it, and laugh derisively at anybody who is so clueless that he thinks that particular POSIX standard actually is worth the paper it is printed on. Only a committee can get it so obviously wrong,
Linus
| |