Re: [patch 2/2] ufd v1 - use unsequential O(1) fdmap

From: Davide Libenzi
Date: Sun Jun 03 2007 - 16:19:52 EST


On Sun, 3 Jun 2007, Ulrich Drepper wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Davide Libenzi wrote:
> >> I agree with Ingo, no need for a second magic value. Use the same value
> >> as FD_UNSEQ_ALLOC which will just mean this exact value should never be
> >> used as a file descriptor.
> >
> > I explained this in my answer to Ingo...
>
> And if we have a new syscall we don't need any of that special dup2
> behavior you describe. I really don't think this should be added. dup2
> should just do what POSIX specifies, nothing more. I would even suggest
> to not allow to dup2() to a descriptor > RLIMIT_NOFILE unless it is
> already allocated. I.e., don't allow creating arbitrary high descriptors.
>
> This behavior is completely consistent with the current implementation.
> No bad surprises. In fact, it eliminates parts of the ABI
> incompatibility I talked about.

Agreed, a new syscall looks less messy. I'll make sys_dup2() to allow
installing in the non-sequential area, only if there's an fd already
allocated. F_DUPFD will remain unchanged (that is, not allow
non-sequential fds allocations).



> > Random can be expensive. At the moment is FIFO. I'm missing though how
> > this can be a security flaw, when the legacy one is exactly predictable.
>
> It's not an added security issue. It would mean removing a possible
> security the current file descriptor allocation has.
>
> If randomizing each allocator is too expensive then randomize at the
> very least the number of the first descriptor you give out.

Can you tell me how this can be a problem, and in which way making a
random thing would help?



- Davide

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