Skip to content
Snippets Groups Projects
Commit 42a9d96f authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

fixed conn->name error on connection re-use and enlarged the 'gname' array

to hold 512 bytes (for user+password+hostname)
parent 3edd9b4d
No related branches found
No related tags found
No related merge requests found
......@@ -1280,14 +1280,14 @@ static CURLcode CreateConnection(struct SessionHandle *data,
strcpy(conn->path, "/");
if (2 > sscanf(data->change.url,
"%64[^\n:]://%256[^\n/]%[^\n]",
"%64[^\n:]://%512[^\n/]%[^\n]",
conn->protostr, conn->gname, conn->path)) {
/*
* The URL was badly formatted, let's try the browser-style _without_
* protocol specified like 'http://'.
*/
if((1 > sscanf(data->change.url, "%256[^\n/]%[^\n]",
if((1 > sscanf(data->change.url, "%512[^\n/]%[^\n]",
conn->gname, conn->path)) ) {
/*
* We couldn't even get this format.
......@@ -1872,7 +1872,6 @@ static CURLcode CreateConnection(struct SessionHandle *data,
conn = conn_temp; /* use this connection from now on */
/* we need these pointers if we speak over a proxy */
conn->name = conn->gname;
conn->hostname = old_conn->gname;
free(conn->path); /* free the previously allocated path pointer */
......
......@@ -233,7 +233,7 @@ struct connectdata {
struct sockaddr_in serv_addr;
#endif
char protostr[64]; /* store the protocol string in this buffer */
char gname[257]; /* store the hostname in this buffer */
char gname[513]; /* store the hostname in this buffer */
char *name; /* host name pointer to fool around with */
char *path; /* allocated buffer to store the URL's path part in */
char *hostname; /* hostname to connect, as parsed from url */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment