diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2014-06-27 13:53:35 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2014-06-27 13:53:35 +0200 |
commit | 9d7cbdeee3545d36db201a2d822cd2bd10074add (patch) | |
tree | fcfe36089e7130c3e3b3f21d96d6abd176c8e9fd | |
parent | 27c290f7f29fc57385d53893bfd7301db4708e9c (diff) | |
download | busybox-w32-9d7cbdeee3545d36db201a2d822cd2bd10074add.tar.gz busybox-w32-9d7cbdeee3545d36db201a2d822cd2bd10074add.tar.bz2 busybox-w32-9d7cbdeee3545d36db201a2d822cd2bd10074add.zip |
ftpd: do not use root_fd if we are not in chroot
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | networking/ftpd.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/networking/ftpd.c b/networking/ftpd.c index e7cf5f431..2d2a3a44c 100644 --- a/networking/ftpd.c +++ b/networking/ftpd.c | |||
@@ -1173,11 +1173,14 @@ int ftpd_main(int argc UNUSED_PARAM, char **argv) | |||
1173 | applet_name = xasprintf("%s[%u]", applet_name, (int)getpid()); | 1173 | applet_name = xasprintf("%s[%u]", applet_name, (int)getpid()); |
1174 | 1174 | ||
1175 | #if !BB_MMU | 1175 | #if !BB_MMU |
1176 | G.root_fd = xopen("/", O_RDONLY | O_DIRECTORY); | 1176 | G.root_fd = -1; |
1177 | close_on_exec_on(G.root_fd); | ||
1178 | #endif | 1177 | #endif |
1179 | argv += optind; | 1178 | argv += optind; |
1180 | if (argv[0]) { | 1179 | if (argv[0]) { |
1180 | #if !BB_MMU | ||
1181 | G.root_fd = xopen("/", O_RDONLY | O_DIRECTORY); | ||
1182 | close_on_exec_on(G.root_fd); | ||
1183 | #endif | ||
1181 | xchroot(argv[0]); | 1184 | xchroot(argv[0]); |
1182 | } | 1185 | } |
1183 | 1186 | ||