wget,ftpd: shorten and reuse strings
No binary (build failed)
—
(log yok)
| @@ -1263,7 +1263,7 @@ int ftpd_main(int argc UNUSED_PARAM, char **argv) | |
| break; /* does not even ask for password */ | |
| } | |
| pw = getpwnam(G.ftp_arg); | |
| - | cmdio_write_raw(STR(FTP_GIVEPWORD)" Please specify password\r\n"); |
| + | cmdio_write_raw(STR(FTP_GIVEPWORD)" Specify password\r\n"); |
| } else if (cmdval == const_PASS) { | |
| if (check_password(pw, G.ftp_arg) > 0) { | |
| break; /* login success */ | |
| @@ -1274,7 +1274,7 @@ int ftpd_main(int argc UNUSED_PARAM, char **argv) | |
| WRITE_OK(FTP_GOODBYE); | |
| return 0; | |
| } else { | |
| - | cmdio_write_raw(STR(FTP_LOGINERR)" Login with USER and PASS\r\n"); |
| + | cmdio_write_raw(STR(FTP_LOGINERR)" Login with USER+PASS\r\n"); |
| } | |
| } | |
| WRITE_OK(FTP_LOGINOK); | |
| @@ -309,7 +309,7 @@ int ftpgetput_main(int argc UNUSED_PARAM, char **argv) | |
| INIT_G(); | |
| /* Set default values */ | |
| user = "anonymous"; | |
| - | password = "busybox@"; |
| + | password = "busybox"; |
| /* | |
| * Decipher the command line | |
| @@ -762,12 +762,9 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags) | |
| static FILE* prepare_ftp_session(FILE **dfpp, struct host_info *target, len_and_sockaddr *lsa) | |
| { | |
| FILE *sfp; | |
| - | char *str; |
| + | char *pass; |
| int port; | |
| - | if (!target->user) |
| - | target->user = xstrdup("anonymous:busybox@"); |
| - | |
| sfp = open_socket(lsa); | |
| #if ENABLE_FEATURE_WGET_HTTPS | |
| if (target->protocol == P_FTPS) | |
| @@ -778,18 +775,20 @@ static FILE* prepare_ftp_session(FILE **dfpp, struct host_info *target, len_and_ | |
| bb_error_msg_and_die("%s", G.wget_buf); | |
| /* note: ftpcmd() sanitizes G.wget_buf, ok to print */ | |
| - | /* |
| - | * Splitting username:password pair, |
| - | * trying to log in |
| - | */ |
| - | str = strchr(target->user, ':'); |
| - | if (str) |
| - | *str++ = '\0'; |
| - | switch (ftpcmd("USER ", target->user, sfp)) { |
| + | /* Split username:password pair */ |
| + | pass = (char*)"busybox"; /* password for "anonymous" */ |
| + | if (target->user) { |
| + | pass = strchr(target->user, ':'); |
| + | if (pass) |
| + | *pass++ = '\0'; |
| + | } |
| + | |
| + | /* Log in */ |
| + | switch (ftpcmd("USER ", target->user ?: "anonymous", sfp)) { |
| case 230: | |
| break; | |
| case 331: | |
| - | if (ftpcmd("PASS ", str, sfp) == 230) |
| + | if (ftpcmd("PASS ", pass, sfp) == 230) |
| break; | |
| /* fall through (failed login) */ | |
| default: | |
| @@ -798,9 +797,7 @@ static FILE* prepare_ftp_session(FILE **dfpp, struct host_info *target, len_and_ | |
| ftpcmd("TYPE I", NULL, sfp); | |
| - | /* |
| - | * Querying file size |
| - | */ |
| + | /* Query file size */ |
| if (ftpcmd("SIZE ", target->path, sfp) == 213) { | |
| G.content_len = BB_STRTOOFF(G.wget_buf + 4, NULL, 10); | |
| if (G.content_len < 0 || errno) { | |
| @@ -809,9 +806,7 @@ static FILE* prepare_ftp_session(FILE **dfpp, struct host_info *target, len_and_ | |
| G.got_clen = 1; | |
| } | |
| - | /* |
| - | * Entering passive mode |
| - | */ |
| + | /* Enter passive mode */ |
| if (ENABLE_FEATURE_IPV6 && ftpcmd("EPSV", NULL, sfp) == 229) { | |
| /* good */ | |
| } else | |