summaryrefslogtreecommitdiff
path: root/networking/ftpd.c
Commit message (Collapse)AuthorAgeFilesLines
* Apply post-1.23.0 patches, bump version to 1.23.11_23_1Denys Vlasenko2015-01-271-2/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: make LIST command show dotfiles tooDenys Vlasenko2014-09-151-8/+8
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: add optional support for authenticationMorten Kvistgaard2014-08-051-23/+24
| | | | | | | | | | | | | | function old new delta cmdio_get_cmd_and_arg - 237 +237 get_passwd - 97 +97 check_password - 82 +82 ftpd_main 2297 2178 -119 ask_and_check_password_extended 206 84 -122 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 0/2 up/down: 416/-241) Total: 175 bytes Signed-off-by: Morten Kvistgaard <MK@pch-engineering.dk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: do not use root_fd if we are not in chrootDenys Vlasenko2014-06-271-2/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: for LIST, open current directory *in the child*Denys Vlasenko2014-06-271-3/+5
| | | | | | Last change introduced an open fd leak. This is the fix. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: escape chroot prior to re-executing ls helperDenys Vlasenko2014-06-271-32/+21
| | | | | | | | | | | | | | | | 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>
* ftpd: optimize writes of LIST results a bitDenys Vlasenko2014-06-261-5/+10
| | | | | | | function old new delta handle_dir_common 201 207 +6 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: support deprecated XPWD commandDenys Vlasenko2014-06-251-1/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: free allocated string on error pathDenys Vlasenko2012-07-111-0/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: fix MDTM's month value. Closes 5336Denys Vlasenko2012-07-111-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: make xchroot do a chdir("/") after chrootDenys Vlasenko2012-03-081-2/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: remove "Options:" string from help textsDenys Vlasenko2011-06-051-1/+0
| | | | | | | function old new delta packed_usage 28706 28623 -83 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: make set_nport accept pointer to sockaddr, not to len_and_sockaddr.Denys Vlasenko2011-04-071-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: better usage textDenys Vlasenko2011-03-081-1/+18
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: make GNU licensing statement forms more regularDenys Vlasenko2010-08-161-1/+1
| | | | | | | This change retains "or later" state! No licensing _changes_ here, only form is adjusted (article, space between "GPL" and "v2" and so on). Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: s/xatoi_u/xatoi_positive/g - I got bored of mistyping xatoi_u as xatou_iDenys Vlasenko2010-08-121-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: introduce and use xfork() and xvfork()Pascal Bellard2010-07-041-4/+1
| | | | | | | | | | | | | | | | function old new delta launch_helper 170 169 -1 setup_heredoc 312 302 -10 handle_dir_common 367 354 -13 expand_vars_to_list 2456 2443 -13 open_transformer 89 74 -15 data_extract_to_command 439 423 -16 do_ipaddr 1406 1389 -17 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-85) Total: -85 bytes Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: work around LIST -aXYZ too, not only LIST -lXYZDenys Vlasenko2010-04-211-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* telnetd: fill hostname field in utmp/wtmp recordsDenys Vlasenko2010-04-061-15/+0
| | | | | | | | | | | | | function old new delta get_lsa - 109 +109 make_new_session 438 504 +66 get_peer_lsa - 10 +10 ftpd_main 2340 2267 -73 get_sock_lsa 101 10 -91 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 1/2 up/down: 185/-164) Total: 21 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: shrink by 33 bytesDenys Vlasenko2010-04-031-5/+11
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* typo fixesDenys Vlasenko2010-02-241-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: suppress ~60% of "aliased warnings" on gcc-4.4.1Denys Vlasenko2010-02-041-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace fixesDenys Vlasenko2010-01-251-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: conditional support for broken clientsStefan Seyfried2010-01-181-0/+12
| | | | | Signed-off-by: Stefan Seyfried <stefan.seyfried@googlemail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: code shrinkDenys Vlasenko2010-01-171-21/+30
| | | | | | | | | | | function old new delta MMU: handle_dir_common 354 338 -16 NOMMU: ftpd_main 2437 2442 +5 popen_ls 201 174 -27 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: added xfdopen_for_read/writeDenys Vlasenko2009-11-151-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta xfdopen_helper - 40 +40 logdir_open 1163 1184 +21 process_stdin 433 443 +10 xfdopen_for_write - 9 +9 doCommands 2465 2474 +9 patch_main 1214 1222 +8 bbunpack 457 465 +8 xfdopen_for_read - 7 +7 scan_tree 258 262 +4 xstrtoul_range_sfx 230 231 +1 sendmail_main 957 955 -2 passwd_main 1027 1023 -4 parse 969 964 -5 test_main 253 247 -6 sed_main 655 649 -6 dos2unix_main 437 429 -8 fbsplash_main 950 938 -12 handle_dir_common 371 354 -17 expand_vars_to_list 2197 2169 -28 update_passwd 1275 1246 -29 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 7/10 up/down: 117/-117) Total: 0 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: introduce and use ffulsh_all()Denys Vlasenko2009-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | function old new delta buffer_fill_and_print 179 196 +17 fflush_all - 9 +9 spawn 87 92 +5 rtcwake_main 455 453 -2 ... alarm_intr 93 84 -9 readcmd 1072 1062 -10 bb_ask 345 333 -12 more_main 845 832 -13 flush_stdout_stderr 42 23 -19 xfflush_stdout 27 - -27 flush_stderr 30 - -30 ------------------------------------------------------------------------------ (add/remove: 1/2 grow/shrink: 2/50 up/down: 31/-397) Total: -366 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* find: add zeroing of G.xxx; ftpd - remove extraneous zeroing of G.xxxDenys Vlasenko2009-09-301-2/+2
| | | | | | Brought "G trick" to the same shape in a few more places. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: allow multiple -S options to increase verbosity too, like -vDenys Vlasenko2009-06-051-3/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ftpd: fix a case when with -w unknown commands are ignored with no error codeDenys Vlasenko2009-06-041-0/+5
| | | | | Signed-off-by: Stefan Seyfried <seife@suse.de> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: mass renaming of USE_XXXX to IF_XXXXDenis Vlasenko2009-04-211-2/+2
| | | | | | and SKIP_XXXX to IF_NOT_XXXX - the second one was especially badly named. It was not skipping anything!
* ftpd: s/CONFIG_BUSYBOX_EXEC_PATH/bb_busybox_exec_path/Denis Vlasenko2009-04-041-1/+1
|
* ftpd: fix command fetching to not do it in 1-byte reads;Denis Vlasenko2009-03-181-14/+51
| | | | | | | | | | | | | | | fix command de-escaping. Tested to download files with embeeded \xff and LF. libbb: tweaks for the above function old new delta ftpd_main 2231 2321 +90 xmalloc_fgets_internal 190 222 +32 xmalloc_fgets_str_len - 27 +27 xmalloc_fgets_str 7 23 +16 xmalloc_fgetline_str 10 26 +16 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 4/0 up/down: 181/0) Total: 181 bytes
* ftpd: add some commentsDenis Vlasenko2009-03-181-1/+15
|
* ftpd: trim messages (but make sure they still make sense)Denis Vlasenko2009-03-181-8/+8
| | | | | | | text data bss dec hex filename 4400 0 0 4400 1130 ftpd_old.o 4346 0 0 4346 10fa ftpd.o
* ftpd: do not use nasty tricks for re-execing if we are on MMU machine.Denis Vlasenko2009-03-181-22/+57
| | | | | | | | | | | | On NOMMU, code is alomost the same, on MMU: function old new delta handle_dir_common 223 390 +167 ftpd_main 2306 2231 -75 popen_ls 203 - -203 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 1/1 up/down: 167/-278) Total: -111 bytes
* ftpd: add support for MDTM, I see clients often use it,Denis Vlasenko2009-03-181-11/+69
| | | | | | | | | | | it may allow client-side caching. function old new delta ftpd_main 2232 2306 +74 gmtime_r - 19 +19 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/0 up/down: 93/0) Total: 93 bytes
* ftpd: document NLST formatDenis Vlasenko2009-03-171-0/+8
|
* ftpd: instead of wordy HELP, implement useful, and smaller, FEAT.Denis Vlasenko2009-03-171-15/+14
| | | | | | | | | (HELP is still "supported" as an alias to FEAT) text data bss dec hex filename 807331 468 7856 815655 c7227 busybox_old 807246 468 7856 815570 c71d2 busybox_unstripped
* ftpd: implement -vv verbosityDenis Vlasenko2009-03-171-9/+31
| | | | | | | | | | | | | function old new delta ftpd_main 2097 2190 +93 verbose_log - 33 +33 cmdio_write_raw 12 34 +22 cmdio_write_ok 25 45 +20 cmdio_write_error 25 45 +20 cmdio_write 62 78 +16 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/0 up/down: 204/0) Total: 204 bytes
* ftpd: tweak timeout codeDenis Vlasenko2009-03-171-11/+15
|
* ftpd: fix thinko: set_nport takes port in network orderDenis Vlasenko2009-03-161-1/+1
|
* ftpd: dont use fdprintf for simple status messagesDenis Vlasenko2009-03-161-44/+65
| | | | | | | | | | function old new delta ftpd_main 2025 2055 +30 cmdio_write_ok 17 25 +8 cmdio_write_error 17 25 +8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 46/0) Total: 46 bytes
* ftpd: simplify PORT check by assuming IP = peer's IP.Denis Vlasenko2009-03-161-1/+27
| | | | | | | | Should be as safe as before this change. function old new delta ftpd_main 2115 2025 -90
* ftpd: add idle and absolute timeouts. This is a security issue,Denis Vlasenko2009-03-161-20/+50
| | | | | | | | | | | | | otherwise ftpd may end up hanging indefinitely. function old new delta timeout_handler - 110 +110 ftpd_main 2019 2115 +96 packed_usage 25662 25685 +23 handle_upload_common 306 322 +16 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 3/0 up/down: 245/0) Total: 245 bytes
* ftpd: security tightened up:Denis Vlasenko2009-03-161-89/+107
| | | | | | | | | | | | | PORT is not allowed on !IPv4 PORT must have IP == peer's IP upload is allowed only into regular files function old new delta ftpd_main 1815 2019 +204 handle_upload_common 260 306 +46 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 250/0) Total: 250 bytes
* ftpd: fix the bug where >2GB file ops report errors;Denis Vlasenko2009-03-151-65/+119
| | | | | | | | | | | | | | | | make a few simplifications; add TODOs. function old new delta port_or_pasv_was_seen - 37 +37 get_remote_transfer_fd 104 109 +5 handle_upload_common 265 260 -5 handle_dir_common 228 223 -5 popen_ls 211 203 -8 ftpd_main 1825 1815 -10 data_transfer_checks_ok 37 - -37 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 1/4 up/down: 42/-65) Total: -23 bytes
* ftpd: stop unconditional logging to syslog. This was the only appletDenis Vlasenko2009-03-111-6/+9
| | | | | | | | | which was doing it. Added option -S to enable it when desired. function old new delta packed_usage 25647 25666 +19 ftpd_main 1826 1825 -1
* ftpd: add LOG_NDELAY to openlogDenis Vlasenko2009-03-091-1/+2
|
* ftpd: reuse ls applet for LIST/NLST/STAT generationDenis Vlasenko2009-03-091-246/+154
| | | | | | | | | | | | | | | | | | | | | | | function old new delta popen_ls - 211 +211 ftpd_main 1760 1826 +66 handle_dir_common 199 228 +29 get_remote_transfer_fd 89 104 +15 replace_char 30 34 +4 handle_upload_common 263 265 +2 bind_for_passive_mode 129 121 -8 cmdio_write 84 62 -22 escape_text 166 136 -30 init_data_sock_params 81 - -81 ftpdataio_dispose_transfer_fd 87 - -87 write_dirstats 149 - -149 write_filestats 603 - -603 ------------------------------------------------------------------------------ (add/remove: 1/4 grow/shrink: 11/5 up/down: 384/-986) Total: -602 bytes text data bss dec hex filename 808804 476 7864 817144 c77f8 busybox_old 808156 476 7864 816496 c7570 busybox_unstripped