remove FILE protocol-specific checks

Also, convert the BANPROXY flag into NONETWORK for the protocols
(file:// only atm) that don't work over networks.
This commit is contained in:
Daniel Stenberg 2011-05-05 15:14:19 +02:00
parent 4508ea103f
commit 51075a6777
3 changed files with 7 additions and 8 deletions

View File

@ -129,7 +129,7 @@ const struct Curl_handler Curl_handler_file = {
ZERO_NULL, /* disconnect */ ZERO_NULL, /* disconnect */
0, /* defport */ 0, /* defport */
CURLPROTO_FILE, /* protocol */ CURLPROTO_FILE, /* protocol */
PROTOPT_BANPROXY /* flags */ PROTOPT_NONETWORK /* flags */
}; };

View File

@ -4768,9 +4768,9 @@ static CURLcode create_conn(struct SessionHandle *data,
else if(!proxy) else if(!proxy)
proxy = detect_proxy(conn); proxy = detect_proxy(conn);
if(proxy && (!*proxy || (conn->handler->flags & PROTOPT_BANPROXY))) { if(proxy && (!*proxy || (conn->handler->flags & PROTOPT_NONETWORK))) {
free(proxy); /* Don't bother with an empty proxy string or if the free(proxy); /* Don't bother with an empty proxy string or if the
protocol doesn't work with proxy */ protocol doesn't work with network */
proxy = NULL; proxy = NULL;
} }
@ -4828,7 +4828,7 @@ static CURLcode create_conn(struct SessionHandle *data,
* file: is a special case in that it doesn't need a network connection * file: is a special case in that it doesn't need a network connection
***********************************************************************/ ***********************************************************************/
#ifndef CURL_DISABLE_FILE #ifndef CURL_DISABLE_FILE
if(conn->handler->protocol & CURLPROTO_FILE) { if(conn->handler->flags & PROTOPT_NONETWORK) {
bool done; bool done;
/* this is supposed to be the connect function so we better at least check /* this is supposed to be the connect function so we better at least check
that the file is present here! */ that the file is present here! */
@ -4988,9 +4988,8 @@ CURLcode Curl_setup_conn(struct connectdata *conn,
Curl_pgrsTime(data, TIMER_NAMELOOKUP); Curl_pgrsTime(data, TIMER_NAMELOOKUP);
if(conn->handler->protocol & CURLPROTO_FILE) { if(conn->handler->flags & PROTOPT_NONETWORK) {
/* There's nothing in this function to setup if we're only doing /* nothing to setup when not using a network */
a file:// transfer */
*protocol_done = TRUE; *protocol_done = TRUE;
return result; return result;
} }

View File

@ -698,7 +698,7 @@ struct Curl_handler {
the send function might need to be called while uploading, or vice versa. the send function might need to be called while uploading, or vice versa.
*/ */
#define PROTOPT_DIRLOCK (1<<3) #define PROTOPT_DIRLOCK (1<<3)
#define PROTOPT_BANPROXY (1<<4) /* not allowed to use proxy */ #define PROTOPT_NONETWORK (1<<4) /* protocol doesn't use the network! */
/* return the count of bytes sent, or -1 on error */ /* return the count of bytes sent, or -1 on error */