From 515893595dafd99d83c1603533524076742aaa51 Mon Sep 17 00:00:00 2001 From: Dan Fandrich Date: Wed, 24 Sep 2008 01:08:01 +0000 Subject: Make sure not to dereference the wrong UrlState proto union member when switching from one protocol to another in a single request (e.g. redirecting from HTTP to FTP as in test 1055) by resetting state.expect100header before every request. --- CHANGES | 8 +++++++- lib/url.c | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 9ea9f3b64..82ac6a1a6 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,12 @@ Changelog +Daniel Fandrich (23 Sep 2008) +- Make sure not to dereference the wrong UrlState proto union member when + switching from one protocol to another in a single request (e.g. + redirecting from HTTP to FTP as in test 1055) by resetting + state.expect100header before every request. + Daniel Stenberg (23 Sep 2008) - Introducing Jamie Lokier's function for date to epoch conversion used in the date parser function. This makes our function less dependent on system- @@ -37,7 +43,7 @@ Daniel Stenberg (22 Sep 2008) CURLE_RECV_ERROR to get returned. This made test case 160 fail so I've now disabled it until we can figure out another way to exercise that logic. -- Michael Goffioul filed bug report #2107377 "Problem with mutli + GnuTLS + +- Michael Goffioul filed bug report #2107377 "Problem with multi + GnuTLS + proxy" (http://curl.haxx.se/bug/view.cgi?id=2107377) that showed how a multi interface using program didn't work when built with GnuTLS and a CONNECT request was done over a proxy (basically test 502 over a proxy to a HTTPS diff --git a/lib/url.c b/lib/url.c index 7cfe7cc0a..352ec20c7 100644 --- a/lib/url.c +++ b/lib/url.c @@ -4682,6 +4682,7 @@ static CURLcode do_init(struct connectdata *conn) conn->bits.done = FALSE; /* Curl_done() is not called yet */ conn->bits.do_more = FALSE; /* by default there's no curl_do_more() to use */ + data->state.expect100header = FALSE; /* NB: the content encoding software depends on this initialization */ Curl_easy_initHandleData(data); -- cgit v1.2.3