busybox/networking
Denys Vlasenko a6ae999b3b ftpd: escape chroot prior to re-executing ls helper
When we merely chdir to saved "real" root fd,
exec("proc/self/exe") works for static executables but not
for dynamic ones (they can't find their interpreter).

With this patch, we also *chroot* to real root.
As a bonus, this gives us proper usernames, timezone conversion
etc.

function                                             old     new   delta
popen_ls                                             203     259     +56
ftpd_main                                           2362    2366      +4

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-06-27 12:24:39 +02:00
..
libiproute libbb: use a wrapper around sysconf(_SC_CLK_TCK) to save a few bytes 2014-06-22 14:01:13 +02:00
ssl_helper networking/ssl_helper: experimental matrixssl-based ssl helper 2014-02-23 23:31:13 +01:00
udhcp udhcpc: make hostname sanitization optional. Closes 3979 2014-06-16 00:17:00 +02:00
arp.c Use unsigned printf/scanf conversion where more appropriate 2013-11-29 16:45:45 +01:00
arping.c
brctl.c
Config.src ntpd: add optional support for /etc/ntp.conf 2014-03-23 18:34:51 +01:00
dnsd.c
ether-wake.c ether-wake: shorten help text, reduce packet buffer size 2013-10-14 19:04:20 +02:00
ftpd.c ftpd: escape chroot prior to re-executing ls helper 2014-06-27 12:24:39 +02:00
ftpgetput.c
hostname.c hostname: do not use gethostbyname() for "hostname -s" 2013-12-17 19:13:45 +01:00
httpd_indexcgi.c
httpd_post_upload.txt
httpd_ssi.c
httpd.c httpd: make sire pfd[TO_CGI].revents is cleared before poll() 2013-09-18 12:08:41 +02:00
ifconfig.c fix build error with musl libc due to if_slip.h 2013-08-15 09:54:51 +02:00
ifenslave.c
ifplugd.c ifplugd: code shrink 2014-02-10 09:51:03 +01:00
ifupdown.c libbb: rename execable -> executable. No code changes 2014-05-02 17:15:58 +02:00
inetd.c
interface.c networking: fix potential overflow in ife_print6() 2013-08-14 17:43:05 +02:00
ip.c
ipcalc.c
isrv_identd.c fakeidentd: simplify ndelay manipulations 2014-01-10 17:12:54 +01:00
isrv.c
isrv.h fixlet for the previous commit #2 2014-01-09 20:09:43 +01:00
Kbuild.src
nameif.c
nbd-client.c
nc_bloaty.c nc: fix option bit positions. Closes 6926 2014-02-26 13:58:59 +01:00
nc.c
netstat.c Use unsigned printf/scanf conversion where more appropriate 2013-11-29 16:45:45 +01:00
nslookup.c
ntpd_simple.c use [s]rand(), not [s]random() 2014-03-05 18:58:15 +01:00
ntpd.c ntpd: fix wrong delay value in one of the printed messages 2014-04-20 13:04:23 +02:00
ping.c ping: revert "try SOCK_DGRAM if no root privileges" 2014-01-09 11:53:26 +01:00
pscan.c Use unsigned printf/scanf conversion where more appropriate 2013-11-29 16:45:45 +01:00
route.c libbb: use a wrapper around sysconf(_SC_CLK_TCK) to save a few bytes 2014-06-22 14:01:13 +02:00
slattach.c
tc.c fix assorted unused code and wrong format specs found by cppchekc (bug 6716) 2013-11-29 16:43:33 +01:00
tcpudp_perhost.c
tcpudp_perhost.h
tcpudp.c
telnet.c
telnetd.c
telnetd.ctrlSQ.patch
tftp.c
traceroute.c fix assorted unused code and wrong format specs found by cppchekc (bug 6716) 2013-11-29 16:43:33 +01:00
tunctl.c
vconfig.c
wget.c wget: fix a case where progress bar isn't updated if writes are very slow 2014-03-27 16:50:29 +01:00
whois.c
zcip.c