diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2012-03-08 00:28:52 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2012-03-08 00:28:52 +0100 |
commit | 4e3beb2e1db3d4739a5a924e003938a9815f98e5 (patch) | |
tree | 5fbfd5643c5e64dd82852be92bb66c9c9d2245b4 | |
parent | 0687a5b496a05cbc06f3bcdc517a2e6cabc535df (diff) | |
download | busybox-w32-4e3beb2e1db3d4739a5a924e003938a9815f98e5.tar.gz busybox-w32-4e3beb2e1db3d4739a5a924e003938a9815f98e5.tar.bz2 busybox-w32-4e3beb2e1db3d4739a5a924e003938a9815f98e5.zip |
tftpd: chroot to DIR, not merely chdir. Closes 4874
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | networking/tftp.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/networking/tftp.c b/networking/tftp.c index 043b879af..ce48a1edd 100644 --- a/networking/tftp.c +++ b/networking/tftp.c | |||
@@ -789,8 +789,9 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv) | |||
789 | openlog(applet_name, LOG_PID, LOG_DAEMON); | 789 | openlog(applet_name, LOG_PID, LOG_DAEMON); |
790 | logmode = LOGMODE_SYSLOG; | 790 | logmode = LOGMODE_SYSLOG; |
791 | } | 791 | } |
792 | if (argv[0]) | 792 | if (argv[0]) { |
793 | xchdir(argv[0]); | 793 | xchroot(argv[0]); |
794 | } | ||
794 | 795 | ||
795 | result = recv_from_to(STDIN_FILENO, block_buf, sizeof(block_buf), | 796 | result = recv_from_to(STDIN_FILENO, block_buf, sizeof(block_buf), |
796 | 0 /* flags */, | 797 | 0 /* flags */, |