+2001-08-20 Joe Shaw <joe@ximian.com>
+
+ * configure.in: Bump up version to 0.4.4
+ * src/soup-core/soup-private.h: Ditto.
+
+ * src/soup-core/soup-auth.c (compute_response, digest_auth_func):
+ Instead of just passing uri->path, pass
+ uri->path + '?' + uri->querystring if present.
+
2001-08-17 Alex Graveley <alex@ximian.com>
* build/libsoup.def: Update for DAV methods.
guchar hex_a1[33], hex_a2[33], o[33];
guchar d[16];
MD5Context ctx;
+ char *url;
uri = soup_context_get_uri (auth->context);
+ if (uri->querystring)
+ url = g_strdup_printf ("%s?%s", uri->path, uri->querystring);
+ else
+ url = g_strdup (uri->path);
/* compute A1 */
md5_init (&ctx);
md5_init (&ctx);
md5_update (&ctx, msg->method, strlen (msg->method));
md5_update (&ctx, ":", 1);
- md5_update (&ctx, uri->path, strlen (uri->path));
+ md5_update (&ctx, url, strlen (url));
+ g_free (url);
if (digest->qop == QOP_AUTH_INT) {
/* FIXME: Actually implement. Ugh. */
char *response;
char *qop = NULL;
char *nc;
+ char *url;
char *out;
g_return_val_if_fail (auth->context, NULL);
g_assert_not_reached ();
uri = soup_context_get_uri (auth->context);
+ if (uri->querystring)
+ url = g_strdup_printf ("%s?%s", uri->path, uri->querystring);
+ else
+ url = g_strdup (uri->path);
nc = g_strdup_printf ("%.8x", digest->nc);
digest->qop ? qop : "",
digest->qop ? "," : "",
- uri->path,
+ url,
response);
+ g_free (url);
g_free (nc);
digest->nc++;