aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Dronnikov <dronnikov@gmail.com>2009-10-05 02:18:01 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2009-10-05 02:18:01 +0200
commitbe168b119750beacc0d0212607c6fa3ee87f238c (patch)
tree95240a7661366674fd9cdf2741e8ab1bfe823ba5
parent301f5ecb8d5fc1ed85942dd85d58f27a0c9a518a (diff)
downloadbusybox-w32-be168b119750beacc0d0212607c6fa3ee87f238c.tar.gz
busybox-w32-be168b119750beacc0d0212607c6fa3ee87f238c.tar.bz2
busybox-w32-be168b119750beacc0d0212607c6fa3ee87f238c.zip
wget: fix for code 302; mount: support -o union
Signed-off-by: Vladimir Dronnikov <dronnikov@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--networking/wget.c5
-rw-r--r--util-linux/mount.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/networking/wget.c b/networking/wget.c
index b8cd54964..0f99e8d13 100644
--- a/networking/wget.c
+++ b/networking/wget.c
@@ -370,8 +370,10 @@ static void parse_url(char *src_url, struct host_info *h)
370 h->path = sp; 370 h->path = sp;
371 } 371 }
372 372
373 // We used to set h->user to NULL here, but this interferes
374 // with handling of code 302 ("object was moved")
375
373 sp = strrchr(h->host, '@'); 376 sp = strrchr(h->host, '@');
374 h->user = NULL;
375 if (sp != NULL) { 377 if (sp != NULL) {
376 h->user = h->host; 378 h->user = h->host;
377 *sp = '\0'; 379 *sp = '\0';
@@ -692,6 +694,7 @@ int wget_main(int argc UNUSED_PARAM, char **argv)
692 694
693 /* TODO: compat issue: should handle "wget URL1 URL2..." */ 695 /* TODO: compat issue: should handle "wget URL1 URL2..." */
694 696
697 target.user = NULL;
695 parse_url(argv[optind], &target); 698 parse_url(argv[optind], &target);
696 699
697 /* Use the proxy if necessary */ 700 /* Use the proxy if necessary */
diff --git a/util-linux/mount.c b/util-linux/mount.c
index 9f465f131..1c5137376 100644
--- a/util-linux/mount.c
+++ b/util-linux/mount.c
@@ -19,6 +19,9 @@
19#include <mntent.h> 19#include <mntent.h>
20#include <syslog.h> 20#include <syslog.h>
21#include <sys/mount.h> 21#include <sys/mount.h>
22#ifndef MS_UNION
23# define MS_UNION (1 << 8)
24#endif
22#ifndef MS_BIND 25#ifndef MS_BIND
23# define MS_BIND (1 << 12) 26# define MS_BIND (1 << 12)
24#endif 27#endif
@@ -177,6 +180,7 @@ static const int32_t mount_options[] = {
177 /* "loud" */ ~MS_SILENT, 180 /* "loud" */ ~MS_SILENT,
178 181
179 // action flags 182 // action flags
183 /* "union" */ MS_UNION,
180 /* "bind" */ MS_BIND, 184 /* "bind" */ MS_BIND,
181 /* "move" */ MS_MOVE, 185 /* "move" */ MS_MOVE,
182 /* "shared" */ MS_SHARED, 186 /* "shared" */ MS_SHARED,
@@ -231,6 +235,7 @@ static const char mount_option_str[] =
231 "loud\0" 235 "loud\0"
232 236
233 // action flags 237 // action flags
238 "union\0"
234 "bind\0" 239 "bind\0"
235 "move\0" 240 "move\0"
236 "shared\0" 241 "shared\0"