diff options
author | Michael Vogt <mvo@ubuntu.com> | 2014-09-05 14:47:22 +0200 |
---|---|---|
committer | Michael Vogt <mvo@ubuntu.com> | 2014-09-05 14:47:22 +0200 |
commit | 30b683f4f3021cd191ffef04bfaf2deb65820a52 (patch) | |
tree | b58771461581111f7bbbfd8d3e8eba012dc776ff /cmdline/apt-helper.cc | |
parent | e6e893903869635ab7ee3200f654129b08717ded (diff) | |
parent | 8c782efd93342c6119e8ba2ff6989b7a164b7f3d (diff) |
Merge remote-tracking branch 'upstream/debian/experimental' into feature/acq-trans
Diffstat (limited to 'cmdline/apt-helper.cc')
-rw-r--r-- | cmdline/apt-helper.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/cmdline/apt-helper.cc b/cmdline/apt-helper.cc index b0edafcbd..dd43ea1bc 100644 --- a/cmdline/apt-helper.cc +++ b/cmdline/apt-helper.cc @@ -16,6 +16,7 @@ #include <apt-pkg/fileutl.h> #include <apt-pkg/acquire.h> #include <apt-pkg/acquire-item.h> +#include <apt-pkg/proxy.h> #include <apt-private/acqprogress.h> #include <apt-private/private-output.h> @@ -29,6 +30,19 @@ #include <apti18n.h> /*}}}*/ +static bool DoAutoDetectProxy(CommandLine &CmdL) +{ + if (CmdL.FileSize() != 2) + return _error->Error(_("Need one URL as argument")); + URI ServerURL(CmdL.FileList[1]); + AutoDetectProxy(ServerURL); + std::string SpecificProxy = _config->Find("Acquire::"+ServerURL.Access+"::Proxy::" + ServerURL.Host); + ioprintf(std::cout, "Using proxy '%s' for URL '%s'\n", + SpecificProxy.c_str(), std::string(ServerURL).c_str()); + + return true; +} + static bool DoDownloadFile(CommandLine &CmdL) { if (CmdL.FileSize() <= 2) @@ -70,6 +84,7 @@ static bool ShowHelp(CommandLine &) "\n" "Commands:\n" " download-file - download the given uri to the target-path\n" + " auto-detect-proxy - detect proxy using apt.conf\n" "\n" " This APT helper has Super Meep Powers.\n"); return true; @@ -80,6 +95,7 @@ int main(int argc,const char *argv[]) /*{{{*/ { CommandLine::Dispatch Cmds[] = {{"help",&ShowHelp}, {"download-file", &DoDownloadFile}, + {"auto-detect-proxy", &DoAutoDetectProxy}, {0,0}}; std::vector<CommandLine::Args> Args = getCommandArgs( |