summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2019-07-23 17:33:41 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2019-07-23 21:58:55 +0100
commite9957b2d5326b0bdce0e5ca314fde99e213f53d8 (patch)
treeff768289fdd61871c664efb825b483bf2677e2fc
parent86613b3222ebbe16464ce10b0a1a734ceb1eabba (diff)
dgit: url_fetch: Honour new CurlOpts
No functional change with the existing callers. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rwxr-xr-xdgit5
1 files changed, 5 insertions, 0 deletions
diff --git a/dgit b/dgit
index 714d6b4..0f801a3 100755
--- a/dgit
+++ b/dgit
@@ -1196,6 +1196,7 @@ sub url_fetch ($;@) {
my ($url, %xopts) = @_;
# Ok404 => 1 means give undef for 404
# AccessBase => 'archive-query' (eg)
+ # CurlOpts => { key => value }
use WWW::Curl::Easy;
@@ -1212,6 +1213,10 @@ sub url_fetch ($;@) {
$setopt->(CURLOPT_NOSIGNAL, 1);
$setopt->(CURLOPT_WRITEDATA, \$response_body);
+ my $xcurlopts = $xopts{CurlOpts} // { };
+ keys %$xcurlopts;
+ while (my ($k,$v) = each %$xcurlopts) { $setopt->($k,$v); }
+
if ($xopts{AccessBase} && $url =~ m#^https://([-.0-9a-z]+)/#) {
foreach my $k ("$xopts{AccessBase}-tls-key",
"$xopts{AccessBase}-tls-curl-ca-args") {