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) h->path = sp; } + // We used to set h->user to NULL here, but this interferes + // with handling of code 302 ("object was moved") + sp = strrchr(h->host, '@'); - h->user = NULL; if (sp != NULL) { h->user = h->host; *sp = '\0'; @@ -692,6 +694,7 @@ int wget_main(int argc UNUSED_PARAM, char **argv) /* TODO: compat issue: should handle "wget URL1 URL2..." */ + target.user = NULL; parse_url(argv[optind], &target); /* 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 @@ #include #include #include +#ifndef MS_UNION +# define MS_UNION (1 << 8) +#endif #ifndef MS_BIND # define MS_BIND (1 << 12) #endif @@ -177,6 +180,7 @@ static const int32_t mount_options[] = { /* "loud" */ ~MS_SILENT, // action flags + /* "union" */ MS_UNION, /* "bind" */ MS_BIND, /* "move" */ MS_MOVE, /* "shared" */ MS_SHARED, @@ -231,6 +235,7 @@ static const char mount_option_str[] = "loud\0" // action flags + "union\0" "bind\0" "move\0" "shared\0"