From 810924b05f1448e9da2916d16c71a44996ade3dc Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Mon, 30 Jul 2012 16:06:32 -0700 Subject: [PATCH] rspreload: Support dup2 calls vsftpd requires dup2() support. To handle dup2, we need to add reference count tracking to the preload fd's. Signed-off-by: Sean Hefty --- src/preload.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/preload.c b/src/preload.c index a6801434..4b891a10 100644 --- a/src/preload.c +++ b/src/preload.c @@ -886,3 +886,10 @@ int fcntl(int socket, int cmd, ... /* arg */) va_end(args); return ret; } + +int dup2(int oldfd, int newfd) +{ + int fd; + return (fd_get(oldfd, &fd) == fd_rsocket) ? + : dup2(oldfd, newfd); +} -- 2.45.2