diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2006-09-20 21:49:41 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2006-09-20 21:49:41 +0000 | 
| commit | ec4a16f2e01b0b92e16fc841bc676394f37022f1 (patch) | |
| tree | 7abb7dfa87e76e05c216a6d0196ed5236c82c8bf | |
| parent | ca5de26f50ae3c02db92592cd0aec1ff4fcc9785 (diff) | |
Armel Asselin fixed problems when you gave a proxy URL with user name and
empty password or no password at all. Test case 278 and 279 were added to
verify.
| -rw-r--r-- | CHANGES | 5 | ||||
| -rw-r--r-- | RELEASE-NOTES | 1 | ||||
| -rw-r--r-- | lib/url.c | 3 | ||||
| -rw-r--r-- | tests/data/Makefile.am | 2 | ||||
| -rw-r--r-- | tests/data/test278 | 47 | ||||
| -rw-r--r-- | tests/data/test279 | 47 | 
6 files changed, 103 insertions, 2 deletions
@@ -6,6 +6,11 @@                                    Changelog +Daniel (20 September 2006) +- Armel Asselin fixed problems when you gave a proxy URL with user name and +  empty password or no password at all. Test case 278 and 279 were added to +  verify. +  Daniel (12 September 2006)  - Added docs/examples/10-at-a-time.c by Michael Wallner diff --git a/RELEASE-NOTES b/RELEASE-NOTES index cebb6b614..19c994079 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -21,6 +21,7 @@ This release includes the following changes:  This release includes the following bugfixes: + o proxy URL with user name and empty password or no password at all now work   o fixed a socket state problem with *multi_socket()   o (HTTP) NTLM hostname fix   o getsockname usage fixes @@ -3698,8 +3698,9 @@ static CURLcode CreateConnection(struct SessionHandle *data,      if(atsign) {        char proxyuser[MAX_CURL_USER_LENGTH];        char proxypasswd[MAX_CURL_PASSWORD_LENGTH]; +      proxypasswd[0] = 0; -      if(2 == sscanf(proxyptr, +      if(1 <= sscanf(proxyptr,                       "%" MAX_CURL_USER_LENGTH_TXT"[^:]:"                       "%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]",                       proxyuser, proxypasswd)) { diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index 64218bac1..9a397e1b6 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -35,5 +35,5 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46	   \   test256 test257 test258 test259 test260 test261 test262 test263 test264   \   test265 test266 test267 test268 test269 test270 test271 test272 test273   \   test274 test275 test524 test525 test276 test277 test526 test527 test528   \ - test530 DISABLED + test530 DISABLED test278 test279 diff --git a/tests/data/test278 b/tests/data/test278 new file mode 100644 index 000000000..77e80456a --- /dev/null +++ b/tests/data/test278 @@ -0,0 +1,47 @@ +<info>
 +<keywords>
 +HTTP
 +HTTP GET
 +HTTP proxy
 +HTTP proxy Basic auth
 +</keywords>
 +</info>
 +# Server-side
 +<reply>
 +<data>
 +HTTP/1.1 200 OK swsclose
 +Date: Thu, 09 Nov 2010 14:49:00 GMT
 +Content-Type: text/html
 +
 +the content would go here
 +</data>
 +</reply>
 +
 +# Client-side
 +<client>
 +<server>
 +http
 +</server>
 + <name>
 +HTTP with proxy string including http:// and user+empty password
 + </name>
 + <command>
 +http://we.want.that.site.com/278 -x http://f%61ke:@%HOSTIP:%HTTPPORT
 +</command>
 +</client>
 +
 +# Verify data after the test has been "shot"
 +<verify>
 +<strip>
 +^User-Agent:.*
 +</strip>
 +<protocol>
 +GET http://we.want.that.site.com/278 HTTP/1.1
 +Proxy-Authorization: Basic ZmFrZTo=
 +Host: we.want.that.site.com
 +Pragma: no-cache
 +Accept: */*
 +Proxy-Connection: Keep-Alive
 +
 +</protocol>
 +</verify>
 diff --git a/tests/data/test279 b/tests/data/test279 new file mode 100644 index 000000000..716a99ea6 --- /dev/null +++ b/tests/data/test279 @@ -0,0 +1,47 @@ +<info>
 +<keywords>
 +HTTP
 +HTTP GET
 +HTTP proxy
 +HTTP proxy Basic auth
 +</keywords>
 +</info>
 +# Server-side
 +<reply>
 +<data>
 +HTTP/1.1 200 OK swsclose
 +Date: Thu, 09 Nov 2010 14:49:00 GMT
 +Content-Type: text/html
 +
 +the content would go here
 +</data>
 +</reply>
 +
 +# Client-side
 +<client>
 +<server>
 +http
 +</server>
 + <name>
 +HTTP with proxy string including http:// and user only
 + </name>
 + <command>
 +http://we.want.that.site.com/279 -x http://f%61ke@%HOSTIP:%HTTPPORT
 +</command>
 +</client>
 +
 +# Verify data after the test has been "shot"
 +<verify>
 +<strip>
 +^User-Agent:.*
 +</strip>
 +<protocol>
 +GET http://we.want.that.site.com/279 HTTP/1.1
 +Proxy-Authorization: Basic ZmFrZUAxMjcuMC4wLjE6ODk5MA0=
 +Host: we.want.that.site.com
 +Pragma: no-cache
 +Accept: */*
 +Proxy-Connection: Keep-Alive
 +
 +</protocol>
 +</verify>
  | 
