From 51075a6777576a0676a77a49c250a8aba7ea3097 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 5 May 2011 15:14:19 +0200 Subject: remove FILE protocol-specific checks Also, convert the BANPROXY flag into NONETWORK for the protocols (file:// only atm) that don't work over networks. --- lib/file.c | 2 +- lib/url.c | 11 +++++------ lib/urldata.h | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/file.c b/lib/file.c index a3d80fbd7..6fe4c4979 100644 --- a/lib/file.c +++ b/lib/file.c @@ -129,7 +129,7 @@ const struct Curl_handler Curl_handler_file = { ZERO_NULL, /* disconnect */ 0, /* defport */ CURLPROTO_FILE, /* protocol */ - PROTOPT_BANPROXY /* flags */ + PROTOPT_NONETWORK /* flags */ }; diff --git a/lib/url.c b/lib/url.c index 22f8b3391..30c9d7c02 100644 --- a/lib/url.c +++ b/lib/url.c @@ -4768,9 +4768,9 @@ static CURLcode create_conn(struct SessionHandle *data, else if(!proxy) 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 - protocol doesn't work with proxy */ + protocol doesn't work with network */ 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 ***********************************************************************/ #ifndef CURL_DISABLE_FILE - if(conn->handler->protocol & CURLPROTO_FILE) { + if(conn->handler->flags & PROTOPT_NONETWORK) { bool done; /* this is supposed to be the connect function so we better at least check that the file is present here! */ @@ -4988,9 +4988,8 @@ CURLcode Curl_setup_conn(struct connectdata *conn, Curl_pgrsTime(data, TIMER_NAMELOOKUP); - if(conn->handler->protocol & CURLPROTO_FILE) { - /* There's nothing in this function to setup if we're only doing - a file:// transfer */ + if(conn->handler->flags & PROTOPT_NONETWORK) { + /* nothing to setup when not using a network */ *protocol_done = TRUE; return result; } diff --git a/lib/urldata.h b/lib/urldata.h index d6e126ceb..3f080520a 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -698,7 +698,7 @@ struct Curl_handler { the send function might need to be called while uploading, or vice versa. */ #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 */ -- cgit v1.2.3