summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2002-04-09 20:51:22 +0000
committerDan Winship <danw@src.gnome.org>2002-04-09 20:51:22 +0000
commitb54e8c05d09a174da70fb2a5629cd2ea33b87fc2 (patch)
treefbe015eeb4826cc644f19647cc989722a872859b
parent839e0bdc0c42a5125b7cab7e20190225de14c9e5 (diff)
downloadlibsoup-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
-rw-r--r--ChangeLog19
-rw-r--r--configure.in2
-rw-r--r--libsoup/soup-auth.c12
-rw-r--r--libsoup/soup-auth.h3
-rw-r--r--libsoup/soup-message.c2
-rw-r--r--libsoup/soup-private.h2
6 files changed, 33 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 39ab9ccb..8b32e005 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+2002-04-09 Dan Winship <danw@ximian.com>
+
+ * configure.in, src/libsoup/soup-private.h: Bump version to
+ 0.7.1.1.
+
+2002-04-02 Dan Winship <danw@ximian.com>
+
+ * src/libsoup/soup-auth.c (soup_auth_new_from_header_list): Oops.
+ Fix this. It was working for "Basic" but not "NTLM".
+
+2002-04-01 Dan Winship <danw@ximian.com>
+
+ * src/libsoup/soup-auth.c (soup_auth_new_from_header_list): Make
+ this take a SoupUri, and if the uri specifies an authmech, use
+ that regardless of strength.
+
+ * src/libsoup/soup-message.c (authorize_handler): Pass the
+ context's uri to soup_auth_new_from_header_list
+
2002-03-20 Alex Graveley <alex@ximian.com>
* configure.in, src/libsoup/soup-private.h: Bump version to 0.7.1.
diff --git a/configure.in b/configure.in
index 3e320d5b..b5fd8615 100644
--- a/configure.in
+++ b/configure.in
@@ -18,7 +18,7 @@ AC_SUBST(SOUP_REVISION)
AC_SUBST(SOUP_AGE)
# Update in src/libsoup/soup-private.h for Windows
-AM_INIT_AUTOMAKE(soup, 0.7.1)
+AM_INIT_AUTOMAKE(soup, 0.7.1.1)
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
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))) {
diff --git a/libsoup/soup-auth.h b/libsoup/soup-auth.h
index 75a49459..c2e75c7a 100644
--- a/libsoup/soup-auth.h
+++ b/libsoup/soup-auth.h
@@ -40,7 +40,8 @@ SoupAuth *soup_auth_lookup (SoupContext *ctx);
void soup_auth_set_context (SoupAuth *auth,
SoupContext *ctx);
-SoupAuth *soup_auth_new_from_header_list (const GSList *header);
+SoupAuth *soup_auth_new_from_header_list (const SoupUri *uri,
+ const GSList *header);
void soup_auth_initialize (SoupAuth *auth,
const SoupUri *uri);
diff --git a/libsoup/soup-message.c b/libsoup/soup-message.c
index 1614a041..77d8f054 100644
--- a/libsoup/soup-message.c
+++ b/libsoup/soup-message.c
@@ -780,7 +780,7 @@ authorize_handler (SoupMessage *msg, gboolean proxy)
"WWW-Authenticate");
if (!vals) goto THROW_CANT_AUTHENTICATE;
- auth = soup_auth_new_from_header_list (vals);
+ auth = soup_auth_new_from_header_list (uri, vals);
if (!auth) {
soup_message_set_error_full (
msg,
diff --git a/libsoup/soup-private.h b/libsoup/soup-private.h
index ce583da2..ed19d35f 100644
--- a/libsoup/soup-private.h
+++ b/libsoup/soup-private.h
@@ -48,7 +48,7 @@
#endif
#ifdef SOUP_WIN32
-#define VERSION "Win/0.7.1"
+#define VERSION "Win/0.7.1.1"
#include <windows.h>
#include <winbase.h>
#include <winuser.h>