diff options
author | Dan Winship <danw@src.gnome.org> | 2002-04-09 20:51:22 +0000 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2002-04-09 20:51:22 +0000 |
commit | b54e8c05d09a174da70fb2a5629cd2ea33b87fc2 (patch) | |
tree | fbe015eeb4826cc644f19647cc989722a872859b /libsoup/soup-auth.c | |
parent | 839e0bdc0c42a5125b7cab7e20190225de14c9e5 (diff) | |
download | libsoup-soup-0-7-1.tar.gz |
pull up a few changes from 0.7.2 and call it 0.7.1.1soup-0-7-1
Diffstat (limited to 'libsoup/soup-auth.c')
-rw-r--r-- | libsoup/soup-auth.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/libsoup/soup-auth.c b/libsoup/soup-auth.c index dd282925..1ffc8b83 100644 --- a/libsoup/soup-auth.c +++ b/libsoup/soup-auth.c @@ -673,7 +673,8 @@ static AuthScheme known_auth_schemes [] = { }; SoupAuth * -soup_auth_new_from_header_list (const GSList *vals) +soup_auth_new_from_header_list (const SoupUri *uri, + const GSList *vals) { gchar *header = NULL; AuthScheme *scheme = NULL, *iter; @@ -682,9 +683,14 @@ soup_auth_new_from_header_list (const GSList *vals) g_return_val_if_fail (vals != NULL, NULL); while (vals) { - for (iter = known_auth_schemes; iter->scheme; iter++) { - gchar *tryheader = vals->data; + gchar *tryheader = vals->data; + for (iter = known_auth_schemes; iter->scheme; iter++) { + if (uri->authmech && + g_strncasecmp (uri->authmech, + iter->scheme, + strlen (iter->scheme)) != 0) + continue; if (!g_strncasecmp (tryheader, iter->scheme, strlen (iter->scheme))) { |