From 51075a6777576a0676a77a49c250a8aba7ea3097 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Thu, 5 May 2011 15:14:19 +0200
Subject: [PATCH] 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 a3d80fbd70..6fe4c4979e 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 22f8b33914..30c9d7c021 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 d6e126ceb8..3f080520af 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 */
-- 
GitLab