Subject: bug#24466: closed (Re: bug#24466: `guix download` accepts expired TLS certificates)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 07 Nov 2016 22:46:02 +0000

Your bug report

#24466: `guix download` accepts expired TLS certificates

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
24466: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24466
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#24466: `guix download` accepts expired TLS certificates
From: [email-masked] (Ludovic Courtès)
To: Leo Famulari <[email-masked]>
Cc: [email-masked]
Date: Mon, 07 Nov 2016 23:45:23 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Leo Famulari <[email-masked]> skribis:

> While testing Nicolas's patch "Update giac-xcas", I found that `guix
> download` accepts expired TLS certificates.
>
> I tried visiting the upstream site in order to verify the hash of the
> updated package, and my browsers (Firefox and Chromium) warned me that
> the site's certificate had expired ~1 day ago.
>
> However, `guix build -S` did not warn me or prevent me from downloading
> the source code.
>
> Perhaps it doesn't matter for the case of `guix build -S`, since we
> already know what we expect to download. But, for `guix download`, this
> is a bug.

This is fixed by commit bc3c41ce36349ed4ec758c70b48a7059e363043a.

Now ‘guix download’ shows a message like this upon failure:

--8<---------------cut here---------------start------------->8---
$ SSL_CERT_DIR=/nowhere ./pre-inst-env guix download https://mirror.guixsd.org/index.html

Starting download of /tmp/guix-file.jT2WjA
>From https://mirror.guixsd.org/index.html...
ERROR: X.509 certificate of 'mirror.guixsd.org' could not be verified:
  signer-not-found
  invalid

failed to download "/tmp/guix-file.jT2WjA" from "https://mirror.guixsd.org/index.html"
--8<---------------cut here---------------end--------------->8---

The message is not optimal, but it convey the message that something is
wrong.

For fixed-output derivations (‘guix build -S’, etc.), the behavior is
unchanged: server certificates are happily ignored.  This is IMO the
right thing because (1) we know the hash of the expected content, which
is the only authentication method that matters, and (2) checking
certificates would require having fixed-output derivations depend on
‘nss’.

Thanks,
Ludo’.

Subject: `guix download` accepts expired TLS certificates
From: Leo Famulari <[email-masked]>
To: [email-masked]
Date: Sun, 18 Sep 2016 21:14:54 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

While testing Nicolas's patch "Update giac-xcas", I found that `guix
download` accepts expired TLS certificates.

I tried visiting the upstream site in order to verify the hash of the
updated package, and my browsers (Firefox and Chromium) warned me that
the site's certificate had expired ~1 day ago.

However, `guix build -S` did not warn me or prevent me from downloading
the source code.

Perhaps it doesn't matter for the case of `guix build -S`, since we
already know what we expect to download. But, for `guix download`, this
is a bug.

[0]
http://lists.gnu.org/archive/html/guix-devel/2016-09/msg01460.html