diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2000-07-25 07:31:35 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2000-07-25 07:31:35 +0000 | 
| commit | bb3fa8855c80bec0c6c72abf2772c0188dfe86d1 (patch) | |
| tree | 7316322914bb3e3debbe3f8125d1e98e82456787 /lib | |
| parent | caf8c01e85d3ceeabd8cce132009854ec5f327d5 (diff) | |
Added CURLOPT_PROXYPORT support
Added a missing free() in curl_disconnect()
Made (https) connect errors abort better and earlier
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/url.c | 15 | 
1 files changed, 11 insertions, 4 deletions
| @@ -431,11 +431,9 @@ CURLcode curl_setopt(CURL *curl, CURLoption option, ...)      data->proxy = va_arg(param, char *);      data->bits.httpproxy = data->proxy?1:0;      break; -#if 0 -  case CURLOPT_FLAGS: -    conf_to_internal(data, va_arg(param, long)); +  case CURLOPT_PROXYPORT: +    data->proxyport = va_arg(param, long);      break; -#endif    case CURLOPT_TIMEOUT:      data->timeout = va_arg(param, long);      break; @@ -607,6 +605,8 @@ CURLcode curl_disconnect(CURLconnect *c_connect)    struct UrlData *data = conn->data; +  free(conn); /* free the connection oriented data */ +    /* clean up the sockets and SSL stuff from the previous "round" */    urlfree(data, FALSE); @@ -1104,6 +1104,11 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)        /* now set the local port number */        data->port = atoi(prox_portno);      } +    else if(data->proxyport) { +      /* None given in the proxy string, then get the default one if it is +         given */ +      data->port = data->proxyport; +    }      /* connect to proxy */      if(!(conn->hp = GetHost(data, proxyptr, hostent_buf, sizeof(hostent_buf)))) { @@ -1163,6 +1168,8 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)    if(conn->curl_connect) {      /* is there a post-connect() procedure? */      result = conn->curl_connect(conn); +    if(result != CURLE_OK) +      return result; /* pass back errors */    }    pgrsTime(data, TIMER_CONNECT); | 
