lkml.org 
[lkml]   [2007]   [Jun]   [10]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSat, 9 Jun 2007 22:06:27 -0700 (PDT)
FromLinus Torvalds <>
SubjectRe: [patch 7/8] fdmap v2 - implement sys_socket2

On Sat, 9 Jun 2007, dean gaudet wrote:
> 
> for an example of a library wanting to cache an open fd ... and failing 
> miserably at protecting itself from the application closing its fd read:

Heh.

Why the hell doesn't that thing just do an "fstat()" on the thing, and 
compare the inode number? Not that I would guarantee that it works either 
for a socket, but it would seem to make more sense than what it apparently 
does now, and I think it should work at least on Linux.

(Ie linux will give fake "st_ino" numbers to sockets. Whether anybody else 
will do that, I have no friggin clue. And you probably shouldn't depend on 
it even under Linux, but damn, despite all of those issues, it's likely 
better and more logical than what libnss-ldap apparently does now ;)

Doing a "fstat()" call is how you generally test if two fd's point to the 
same file. Doing the same thing for sockets would at least be half-way 
sane, and even if the OS doesn't give new sockets individual st_ino 
numbers, they probably won't be *changing*.

		Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-06-10 07:13    [from the cache]
©2003-2008