|
@@ -1,69 +0,0 @@
|
|
|
---- busybox-1.18.3/networking/wget.c
|
|
|
-+++ busybox-1.18.3-wget/networking/wget.c
|
|
|
-@@ -446,7 +446,7 @@ static FILE* prepare_ftp_session(FILE **
|
|
|
-
|
|
|
- static void NOINLINE retrieve_file_data(FILE *dfp, int output_fd)
|
|
|
- {
|
|
|
-- char buf[512];
|
|
|
-+ char buf[4*1024]; /* made bigger to speed up local xfers */
|
|
|
- #if ENABLE_FEATURE_WGET_STATUSBAR || ENABLE_FEATURE_WGET_TIMEOUT
|
|
|
- # if ENABLE_FEATURE_WGET_TIMEOUT
|
|
|
- unsigned second_cnt;
|
|
|
-@@ -506,8 +506,11 @@ static void NOINLINE retrieve_file_data(
|
|
|
- G.transferred += n;
|
|
|
- progress_meter(PROGRESS_BUMP);
|
|
|
- #endif
|
|
|
-- if (G.got_clen)
|
|
|
-+ if (G.got_clen) {
|
|
|
- G.content_len -= n;
|
|
|
-+ if (G.content_len == 0)
|
|
|
-+ break;
|
|
|
-+ }
|
|
|
- }
|
|
|
-
|
|
|
- if (!G.chunked)
|
|
|
-@@ -706,6 +709,11 @@ int wget_main(int argc UNUSED_PARAM, cha
|
|
|
- fprintf(sfp, "Host: %s\r\nUser-Agent: %s\r\n",
|
|
|
- target.host, user_agent);
|
|
|
-
|
|
|
-+ /* Ask server to close the connection as soon as we are done
|
|
|
-+ * (IOW: we do not intend to send more requests)
|
|
|
-+ */
|
|
|
-+ fprintf(sfp, "Connection: close\r\n");
|
|
|
-+
|
|
|
- #if ENABLE_FEATURE_WGET_AUTHENTICATION
|
|
|
- if (target.user) {
|
|
|
- fprintf(sfp, "Proxy-Authorization: Basic %s\r\n"+6,
|
|
|
-@@ -719,22 +727,25 @@ int wget_main(int argc UNUSED_PARAM, cha
|
|
|
-
|
|
|
- if (G.beg_range)
|
|
|
- fprintf(sfp, "Range: bytes=%"OFF_FMT"u-\r\n", G.beg_range);
|
|
|
-+
|
|
|
- #if ENABLE_FEATURE_WGET_LONG_OPTIONS
|
|
|
- if (extra_headers)
|
|
|
- fputs(extra_headers, sfp);
|
|
|
-
|
|
|
- if (opt & WGET_OPT_POST_DATA) {
|
|
|
- char *estr = URL_escape(post_data);
|
|
|
-- fprintf(sfp, "Content-Type: application/x-www-form-urlencoded\r\n");
|
|
|
-- fprintf(sfp, "Content-Length: %u\r\n" "\r\n" "%s",
|
|
|
-- (int) strlen(estr), estr);
|
|
|
-- /*fprintf(sfp, "Connection: Keep-Alive\r\n\r\n");*/
|
|
|
-- /*fprintf(sfp, "%s\r\n", estr);*/
|
|
|
-+ fprintf(sfp,
|
|
|
-+ "Content-Type: application/x-www-form-urlencoded\r\n"
|
|
|
-+ "Content-Length: %u\r\n"
|
|
|
-+ "\r\n"
|
|
|
-+ "%s",
|
|
|
-+ (int) strlen(estr), estr
|
|
|
-+ );
|
|
|
- free(estr);
|
|
|
- } else
|
|
|
- #endif
|
|
|
-- { /* If "Connection:" is needed, document why */
|
|
|
-- fprintf(sfp, /* "Connection: close\r\n" */ "\r\n");
|
|
|
-+ {
|
|
|
-+ fprintf(sfp, "\r\n");
|
|
|
- }
|
|
|
-
|
|
|
- fflush(sfp);
|