From: hniksic Date: Sat, 1 Dec 2001 17:39:07 +0000 (-0800) Subject: [svn] Use the full path when building the authorization line. X-Git-Tag: v1.13~1974 X-Git-Url: http://sjero.net/git/?p=wget;a=commitdiff_plain;h=569fd61c95f742cd57a3eef53098d477931c45d9 [svn] Use the full path when building the authorization line. Published in . --- diff --git a/src/ChangeLog b/src/ChangeLog index 61024813..e09a2c6c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2001-12-01 Hrvoje Niksic + + * url.c (url_full_path): Document better. + + * http.c (gethttp): Use the full path when creating digest + authorization. + 2001-12-01 Hrvoje Niksic * cookies.c (path_matches): Return 0 if PREFIX doesn't begin with diff --git a/src/http.c b/src/http.c index 500e4b9f..261b51e4 100644 --- a/src/http.c +++ b/src/http.c @@ -756,8 +756,13 @@ gethttp (struct url *u, struct http_stat *hs, int *dt, struct url *proxy) } else { + /* Use the full path, i.e. one that includes the leading + slash and the query string, but is independent of proxy + setting. */ + char *pth = url_full_path (u); wwwauth = create_authorization_line (authenticate_h, user, passwd, - command, u->path); + command, pth); + xfree (pth); } } @@ -812,6 +817,9 @@ gethttp (struct url *u, struct http_stat *hs, int *dt, struct url *proxy) if (proxy) full_path = xstrdup (u->url); else + /* Use the full path, i.e. one that includes the leading slash and + the query string. E.g. if u->path is "foo/bar" and u->query is + "param=value", full_path will be "/foo/bar?param=value". */ full_path = url_full_path (u); /* Allocate the memory for the request. */ diff --git a/src/url.c b/src/url.c index 38469418..44866bf6 100644 --- a/src/url.c +++ b/src/url.c @@ -886,7 +886,10 @@ full_path_write (const struct url *url, char *where) #undef FROB } -/* Public function for getting the "full path". */ +/* Public function for getting the "full path". E.g. if u->path is + "foo/bar" and u->query is "param=value", full_path will be + "/foo/bar?param=value". */ + char * url_full_path (const struct url *url) { @@ -900,6 +903,7 @@ url_full_path (const struct url *url) } /* Sync u->path and u->url with u->dir and u->file. */ + static void sync_path (struct url *url) {