Skip to content

Commit

Permalink
FTP+proxy: macrofied functions when proxy disabled
Browse files Browse the repository at this point in the history
In my attempts to reduce #ifdefs in code, the SOCKS functions are now
macros when libcurl is built without proxy support and therefore the FTP
code could avoid some #ifs.
  • Loading branch information
bagder committed Apr 5, 2011
1 parent 8e9e19b commit 8321a36
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 8 deletions.
4 changes: 0 additions & 4 deletions lib/ftp.c
Expand Up @@ -1719,7 +1719,6 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
ftp_pasv_verbose(conn, conninfo, newhost, connectport);

switch(data->set.proxytype) {
#ifndef CURL_DISABLE_PROXY
/* FIX: this MUST wait for a proper connect first if 'connected' is
* FALSE */
case CURLPROXY_SOCKS5:
Expand All @@ -1735,7 +1734,6 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
result = Curl_SOCKS4(conn->proxyuser, newhost, newport,
SECONDARYSOCKET, conn, TRUE);
break;
#endif /* CURL_DISABLE_PROXY */
case CURLPROXY_HTTP:
case CURLPROXY_HTTP_1_0:
/* do nothing here. handled later. */
Expand Down Expand Up @@ -2924,7 +2922,6 @@ static CURLcode ftp_connect(struct connectdata *conn,
pp->endofresp = ftp_endofresp;
pp->conn = conn;

#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
/* for FTP over HTTP proxy */
struct HTTP http_proxy;
Expand All @@ -2951,7 +2948,6 @@ static CURLcode ftp_connect(struct connectdata *conn,
if(CURLE_OK != result)
return result;
}
#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */

if(conn->handler->protocol & CURLPROTO_FTPS) {
/* BLOCKING */
Expand Down
16 changes: 12 additions & 4 deletions lib/socks.h
@@ -1,13 +1,13 @@
#ifndef __SOCKS_H
#define __SOCKS_H
#ifndef __CURL_SOCKS_H
#define __CURL_SOCKS_H
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
Expand All @@ -22,6 +22,12 @@
*
***************************************************************************/

#include "setup.h"

#ifdef CURL_DISABLE_PROXY
#define Curl_SOCKS4(a,b,c,d,e,f) CURLE_FAILED_INIT
#define Curl_SOCKS5(a,b,c,d,e,f) CURLE_FAILED_INIT
#else
/*
* Helper read-from-socket functions. Does the same as Curl_read() but it
* blocks until all bytes amount of buffersize will be read. No more, no less.
Expand Down Expand Up @@ -66,4 +72,6 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
struct connectdata *conn);
#endif

#endif /* __SOCKS_H */
#endif /* CURL_DISABLE_PROXY */

#endif /* __CURL_SOCKS_H */

0 comments on commit 8321a36

Please sign in to comment.