]> granicus.if.org Git - curl/commitdiff
Jean Jacques Drouin pointed out that you could only have a user name or
authorDaniel Stenberg <daniel@haxx.se>
Fri, 16 Dec 2005 14:52:16 +0000 (14:52 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 16 Dec 2005 14:52:16 +0000 (14:52 +0000)
password of 127 bytes or less embedded in a URL, where actually the code
uses a 255 byte buffer for it! Modified now to use the full buffer size.

CHANGES
RELEASE-NOTES
lib/url.c

diff --git a/CHANGES b/CHANGES
index 5a8496d6fbaa0699280fcd75e89539136be1a0a0..c98d4707ed9b8078c4ec8cdfd23786bd08af2e09 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -8,6 +8,14 @@
 
 
 
+Daniel (16 December 2005)
+- Jean Jacques Drouin pointed out that you could only have a user name or
+  password of 127 bytes or less embedded in a URL, where actually the code
+  uses a 255 byte buffer for it! Modified now to use the full buffer size.
+
+Daniel (12 December 2005)
+- Dov Murik corrected the HTTP_ONLY define to disable the TFTP support properly
+
 Version 7.15.1 (7 December 2005)
 
 Daniel (6 December 2005)
index bbbda0fe421962d20bcbda611560b59ad74ec2ab..503ec75b1b581d641a13da613ffdf2e420a56445 100644 (file)
@@ -15,14 +15,16 @@ This release includes the following changes:
 
 This release includes the following bugfixes:
 
- o 
+ o supports name and passwords up to 255 bytes long, embedded in URLs
+ o the HTTP_ONLY define disables the TFTP support
 
 Other curl-related news since the previous public release:
 
- o 
+ o http://curl.hkmirror.org/ is a new curl web mirror in Hong Kong
 
 This release would not have looked like this without help, code, reports and
 advice from friends like these:
 
+ Dov Murik, Jean Jacques Drouin
  
         Thanks! (and sorry if I forgot to mention someone)
index 3715b10cafdeb95b480e50d1435b88e6a3e8d8e9..781d1d11d5c5664e97b1f3e8852bc289dbd70608 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -3166,12 +3166,13 @@ static CURLcode CreateConnection(struct SessionHandle *data,
 
         if(*userpass != ':') {
           /* the name is given, get user+password */
-          sscanf(userpass, "%127[^:@]:%127[^@]",
+          sscanf(userpass, "%" MAX_CURL_USER_LENGTH_TXT "[^:@]:"
+                 "%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]",
                  user, passwd);
         }
         else
           /* no name given, get the password only */
-          sscanf(userpass, ":%127[^@]", passwd);
+          sscanf(userpass, ":%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]", passwd);
 
         if(user[0]) {
           char *newname=curl_unescape(user, 0);