Re: [PATCH] unix: properly account for FDs passed over unix sockets
From: Willy Tarreau
Date: Wed Dec 30 2015 - 06:23:34 EST
On Wed, Dec 30, 2015 at 09:58:42AM +0100, Hannes Frederic Sowa wrote:
> The MSG_PEEK code should not be harmful and the patch is good as is. I
> first understood from the published private thread, that it is possible
> for a program to exceed the rlimit of fds. But the DoS is only by
> keeping the fds in flight and not attaching them to any program.
Exactly. The real issue is when these FDs become very expensive such as
pipes full of data.
> __alloc_fd, called on the receiver side, does check for the rlimit
> maximum anyway, so I don't see a loophole anymore:
>
> Acked-by: Hannes Frederic Sowa <hannes@xxxxxxxxxxxxxxxxxxx>
Thanks!
> Another idea would be to add the amount of memory used to manage the fds
> to sock_rmem/wmem but I don't see any advantages or disadvantages.
Compared to the impact of the pending data in pipes themselves in flight,
this would remain fairly minimal.
Thanks,
Willy
--
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/