From f8081133c528e8c91b533b4fab6f56ae42d51ecb Mon Sep 17 00:00:00 2001 From: Arch Librarian Date: Mon, 20 Sep 2004 16:56:39 +0000 Subject: Alfredo's no_proxy patch Author: jgg Date: 2001-02-23 05:45:27 GMT Alfredo's no_proxy patch --- methods/ftp.cc | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'methods/ftp.cc') diff --git a/methods/ftp.cc b/methods/ftp.cc index 0d617dd8f..e0f71239f 100644 --- a/methods/ftp.cc +++ b/methods/ftp.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: ftp.cc,v 1.21 2001/02/20 07:03:18 jgg Exp $ +// $Id: ftp.cc,v 1.22 2001/02/23 05:45:27 jgg Exp $ /* ###################################################################### HTTP Aquire Method - This is the FTP aquire method for APT. @@ -125,6 +125,13 @@ bool FTPConn::Open(pkgAcqMethod *Owner) else Proxy = getenv("ftp_proxy"); + // Parse no_proxy, a , separated list of domains + if (getenv("no_proxy") != 0) + { + if (CheckDomainList(ServerName.Host,getenv("no_proxy")) == true) + Proxy = ""; + } + // Determine what host and port to use based on the proxy settings int Port = 0; string Host; @@ -1071,6 +1078,15 @@ int main(int argc,const char *argv[]) if (getenv("ftp_proxy") != 0) { URI Proxy = string(getenv("ftp_proxy")); + + // Parse no_proxy, a , separated list of domains + if (getenv("no_proxy") != 0) + { + if (CheckDomainList(Proxy.Host,getenv("no_proxy")) == true) + Proxy.Access = ""; + } + + // Run the HTTP method if (Proxy.Access == "http") { // Copy over the environment setting -- cgit v1.2.3