busybox 1.18.3: add wget and build system patches

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Gustavo Zacarias 2011-02-10 11:19:08 -03:00 committed by Peter Korsgaard
parent 835357388f
commit 85a9a4d01e
2 changed files with 79 additions and 0 deletions

View File

@ -0,0 +1,10 @@
--- busybox-1.18.3/Config.in
+++ busybox-1.18.3-buildsys/Config.in
@@ -126,7 +126,6 @@ config FEATURE_INSTALLER
config INSTALL_NO_USR
bool "Don't use /usr"
default n
- depends on FEATURE_INSTALLER
help
Disable use of /usr. busybox --install and "make install"
will install applets only to /bin and /sbin,

View File

@ -0,0 +1,69 @@
--- 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);