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
Родитель 4508ea103f
Коммит 51075a6777
3 изменённых файлов: 7 добавлений и 8 удалений

Просмотреть файл

@ -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 */
};

Просмотреть файл

@ -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;
}

Просмотреть файл

@ -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 */