All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Marek Marczykowski-Górecki" <marmarek@invisiblethingslab.com>
To: Demi Marie Obenour <demi@invisiblethingslab.com>
Cc: xen-devel@lists.xenproject.org,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v3 2/4] Build system: Replace git:// and http:// with https://
Date: Sat, 18 Feb 2023 15:22:49 +0100	[thread overview]
Message-ID: <Y/DfOph95KH+RHV2@mail-itl> (raw)
In-Reply-To: <Y/DcSVAokXuvM1Dv@mail-itl>

[-- Attachment #1: Type: text/plain, Size: 10126 bytes --]

On Sat, Feb 18, 2023 at 03:10:16PM +0100, Marek Marczykowski-Górecki wrote:
> On Fri, Feb 17, 2023 at 04:35:25PM -0500, Demi Marie Obenour wrote:
> > Obtaining code over an insecure transport is a terrible idea for
> > blatently obvious reasons.  Even for non-executable data, insecure
> > transports are considered deprecated.
> > 
> > This patch enforces the use of secure transports in the build system.
> > Some URLs returned 301 or 302 redirects, so I replaced them with the
> > URLs that were redirected to. 
> 
> https://gitlab.com/xen-project/patchew/xen/-/pipelines/781679811
> 
> I'm a bit confused about debian build errors:
> 
>     ERROR: The certificate of 'xenbits.xen.org' is not trusted.
>     ERROR: The certificate of 'xenbits.xen.org' has expired.
> 
> Is clock on gitlab runners (way) off?
> 
> >  I also found that the old zlib used in
> > the I/O emulator stubdomain can no longer be obtained from
> > https://www.zlib.net and that the TPM emulator and PolarSSL (used by the
> > vTPM and vTPM manager stubdomains) can no longer be obtained from their
> > respective original URLs.  Therefore, configure will now error out
> > instead of trying to download them.
> 
> First of all, such change definitely wants a separate patch,
> de-supporting some configurations do not belong to "Replace git:// and
> http:// with https://" patch. But then, I don't think that's correct
> approach. It is a bug to be fixes, instead of breaking it even more.
> configure script already supports Xen's mirror, and I think it's even
> enabled by default (see --enable-extfiles), and also supports providing
> alternative download location (via env variables). So it seems your
> change here in fact breaks something that was working before...

Ah, you do take --enable-extfiles into account. But still alternative
URL can be provided by env variable.

> > Signed-off-by: Demi Marie Obenour <demi@invisiblethingslab.com>
> > ---
> >  Config.mk                         |  2 +-
> >  stubdom/configure                 | 24 +++++++++++++++---------
> >  stubdom/configure.ac              | 24 +++++++++++++++---------
> >  tools/firmware/etherboot/Makefile |  6 +-----
> >  4 files changed, 32 insertions(+), 24 deletions(-)
> > 
> > diff --git a/Config.mk b/Config.mk
> > index 75f1975e5e78af44d36c2372cba6e89b425267a5..b2bef45b059976d5a6320eabada6073004eb22ee 100644
> > --- a/Config.mk
> > +++ b/Config.mk
> > @@ -191,7 +191,7 @@ APPEND_CFLAGS += $(foreach i, $(APPEND_INCLUDES), -I$(i))
> >  EMBEDDED_EXTRA_CFLAGS := -fno-pie -fno-stack-protector -fno-stack-protector-all
> >  EMBEDDED_EXTRA_CFLAGS += -fno-exceptions -fno-asynchronous-unwind-tables
> >  
> > -XEN_EXTFILES_URL ?= http://xenbits.xen.org/xen-extfiles
> > +XEN_EXTFILES_URL ?= https://xenbits.xen.org/xen-extfiles
> >  # All the files at that location were downloaded from elsewhere on
> >  # the internet.  The original download URL is preserved as a comment
> >  # near the place in the Xen Makefiles where the file is used.
> > diff --git a/stubdom/configure b/stubdom/configure
> > index b8bffceafdd46181e26a79b85405aefb8bc3ff7d..e40aca9afd0de2c5074978d654d4e78f4f63e3d2 100755
> > --- a/stubdom/configure
> > +++ b/stubdom/configure
> > @@ -3535,7 +3535,7 @@ if test "x$ZLIB_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    ZLIB_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  ZLIB_URL="http://www.zlib.net"
> > +  ZLIB_URL="https://www.zlib.net"
> >  fi
> >  
> >  fi
> > @@ -3550,7 +3550,7 @@ if test "x$LIBPCI_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    LIBPCI_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  LIBPCI_URL="http://www.kernel.org/pub/software/utils/pciutils"
> > +  LIBPCI_URL="https://mirrors.edge.kernel.org/pub/software/utils/pciutils"
> >  fi
> >  
> >  fi
> > @@ -3565,7 +3565,7 @@ if test "x$NEWLIB_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    NEWLIB_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  NEWLIB_URL="ftp://sources.redhat.com/pub/newlib"
> > +  NEWLIB_URL="https://sourceware.org/ftp/newlib"
> >  fi
> >  
> >  fi
> > @@ -3580,7 +3580,7 @@ if test "x$LWIP_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    LWIP_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  LWIP_URL="http://download.savannah.gnu.org/releases/lwip"
> > +  LWIP_URL="https://download.savannah.gnu.org/releases/lwip"
> >  fi
> >  
> >  fi
> > @@ -3595,7 +3595,7 @@ if test "x$GRUB_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    GRUB_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  GRUB_URL="http://alpha.gnu.org/gnu/grub"
> > +  GRUB_URL="https://alpha.gnu.org/gnu/grub"
> >  fi
> >  
> >  fi
> > @@ -3607,7 +3607,7 @@ GRUB_VERSION="0.97"
> >  
> >  if test "x$OCAML_URL" = "x"; then :
> >  
> > -	OCAML_URL="http://caml.inria.fr/pub/distrib/ocaml-4.02"
> > +	OCAML_URL="https://caml.inria.fr/pub/distrib/ocaml-4.02"
> >  
> >  fi
> >  OCAML_VERSION="4.02.0"
> > @@ -3621,7 +3621,7 @@ if test "x$GMP_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    GMP_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  GMP_URL="ftp://ftp.gmplib.org/pub/gmp-4.3.2"
> > +  GMP_URL="https://gmplib.org/download/gmp/archive"
> >  fi
> >  
> >  fi
> > @@ -3636,7 +3636,7 @@ if test "x$POLARSSL_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    POLARSSL_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  POLARSSL_URL="http://polarssl.org/code/releases"
> > +  POLARSSL_URL="https://polarssl.org/code/releases"
> >  fi
> >  
> >  fi
> > @@ -3651,7 +3651,7 @@ if test "x$TPMEMU_URL" = "x"; then :
> >  	if test "x$extfiles" = "xy"; then :
> >    TPMEMU_URL=\$\(XEN_EXTFILES_URL\)
> >  else
> > -  TPMEMU_URL="http://download.berlios.de/tpm-emulator"
> > +  TPMEMU_URL="https://download.berlios.de/tpm-emulator"
> >  fi
> >  
> >  fi
> > @@ -3669,6 +3669,12 @@ vtpmmgr="n"
> >  fi
> >  
> >  
> > +if test "x$vtpm" != xn || test "x$vtpmmgr" != xn || test "x$ioemu" != xn; then
> > +    if test "x$extfiles" != xy; then
> > +        as_fn_error $? "Sources needed for the vTPM, vTPM manager, and IO emulator stubdomains are no longer at their original URLs" "$LINENO" 5
> > +    fi
> > +fi
> > +
> >  #Conditionally enable these stubdoms based on the presense of dependencies
> >  
> >  if test "x$vtpm" = "xy" || test "x$vtpm" = "x"; then :
> > diff --git a/stubdom/configure.ac b/stubdom/configure.ac
> > index e20d99edac0da88098f4806333edde9f31dbc1a7..d27f2bc1f17140ab41a687e1e8faaa66e2b4483b 100644
> > --- a/stubdom/configure.ac
> > +++ b/stubdom/configure.ac
> > @@ -55,19 +55,25 @@ AC_PROG_INSTALL
> >  AX_DEPENDS_PATH_PROG([vtpm], [CMAKE], [cmake])
> >  
> >  # Stubdom libraries version and url setup
> > -AX_STUBDOM_LIB([ZLIB], [zlib], [1.2.3], [http://www.zlib.net])
> > -AX_STUBDOM_LIB([LIBPCI], [libpci], [2.2.9], [http://www.kernel.org/pub/software/utils/pciutils])
> > -AX_STUBDOM_LIB([NEWLIB], [newlib], [1.16.0], [ftp://sources.redhat.com/pub/newlib])
> > -AX_STUBDOM_LIB([LWIP], [lwip], [1.3.0], [http://download.savannah.gnu.org/releases/lwip])
> > -AX_STUBDOM_LIB([GRUB], [grub], [0.97], [http://alpha.gnu.org/gnu/grub])
> > -AX_STUBDOM_LIB_NOEXT([OCAML], [ocaml], [4.02.0], [http://caml.inria.fr/pub/distrib/ocaml-4.02])
> > -AX_STUBDOM_LIB([GMP], [libgmp], [4.3.2], [ftp://ftp.gmplib.org/pub/gmp-4.3.2])
> > -AX_STUBDOM_LIB([POLARSSL], [polarssl], [1.1.4], [http://polarssl.org/code/releases])
> > -AX_STUBDOM_LIB([TPMEMU], [berlios tpm emulator], [0.7.4], [http://download.berlios.de/tpm-emulator])
> > +AX_STUBDOM_LIB([ZLIB], [zlib], [1.2.3], [https://www.zlib.net])
> > +AX_STUBDOM_LIB([LIBPCI], [libpci], [2.2.9], [https://mirrors.edge.kernel.org/pub/software/utils/pciutils])
> > +AX_STUBDOM_LIB([NEWLIB], [newlib], [1.16.0], [https://sourceware.org/ftp/newlib])
> > +AX_STUBDOM_LIB([LWIP], [lwip], [1.3.0], [https://download.savannah.gnu.org/releases/lwip])
> > +AX_STUBDOM_LIB([GRUB], [grub], [0.97], [https://alpha.gnu.org/gnu/grub])
> > +AX_STUBDOM_LIB_NOEXT([OCAML], [ocaml], [4.02.0], [https://caml.inria.fr/pub/distrib/ocaml-4.02])
> > +AX_STUBDOM_LIB([GMP], [libgmp], [4.3.2], [https://gmplib.org/download/gmp/archive])
> > +AX_STUBDOM_LIB([POLARSSL], [polarssl], [1.1.4], [https://polarssl.org/code/releases])
> > +AX_STUBDOM_LIB([TPMEMU], [berlios tpm emulator], [0.7.4], [https://download.berlios.de/tpm-emulator])
> >  
> >  #These stubdoms should be enabled if the dependent one is
> >  AX_STUBDOM_AUTO_DEPENDS([vtpmmgr], [vtpm])
> >  
> > +if test "x$vtpm" != xn || test "x$vtpmmgr" != xn || test "x$ioemu" != xn; then
> > +    if test "x$extfiles" != xy; then
> > +        AC_MSG_ERROR([Sources needed for the vTPM, vTPM manager, and IO emulator stubdomains are no longer at their original URLs])
> > +    fi
> > +fi
> > +
> >  #Conditionally enable these stubdoms based on the presense of dependencies
> >  AX_STUBDOM_CONDITIONAL_FINISH([vtpm-stubdom], [vtpm])
> >  AX_STUBDOM_CONDITIONAL_FINISH([vtpmmgr-stubdom], [vtpmmgr])
> > diff --git a/tools/firmware/etherboot/Makefile b/tools/firmware/etherboot/Makefile
> > index 4bc3633ba3d67ff9f52a9cb7923afea73c861da9..6ab9e5bc6b4cc750f2e802128fbc71e9150397b1 100644
> > --- a/tools/firmware/etherboot/Makefile
> > +++ b/tools/firmware/etherboot/Makefile
> > @@ -4,11 +4,7 @@ XEN_ROOT = $(CURDIR)/../../..
> >  include $(XEN_ROOT)/tools/Rules.mk
> >  include Config
> >  
> > -ifeq ($(GIT_HTTP),y)
> > -IPXE_GIT_URL ?= http://git.ipxe.org/ipxe.git
> > -else
> > -IPXE_GIT_URL ?= git://git.ipxe.org/ipxe.git
> > -endif
> > +IPXE_GIT_URL ?= https://github.com/ipxe/ipxe.git
> >  
> >  # put an updated tar.gz on xenbits after changes to this variable
> >  IPXE_GIT_TAG := 3c040ad387099483102708bb1839110bc788cefb
> > -- 
> > Sincerely,
> > Demi Marie Obenour (she/her/hers)
> > Invisible Things Lab
> > 
> 
> -- 
> Best Regards,
> Marek Marczykowski-Górecki
> Invisible Things Lab



-- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2023-02-18 14:23 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-08 20:58 [PATCH v2 0/4] Stop using insecure transports Demi Marie Obenour
2023-02-08 20:58 ` [PATCH v2 1/4] Build system: Replace git:// and http:// with https:// Demi Marie Obenour
2023-02-09 14:01   ` George Dunlap
2023-02-09 15:05     ` Anthony PERARD
2023-02-09 16:04       ` George Dunlap
2023-02-09 17:30     ` Demi Marie Obenour
2023-02-08 20:58 ` [PATCH v2 2/4] Automation and CI: " Demi Marie Obenour
2023-02-09 14:03   ` George Dunlap
2023-02-09 17:33     ` Demi Marie Obenour
2023-02-08 20:58 ` [PATCH v2 3/4] Miscellaneous and documentation: Only use TLS-protected transports Demi Marie Obenour
2023-02-09 14:25   ` George Dunlap
2023-02-09 17:51     ` Demi Marie Obenour
2023-02-10 10:02       ` George Dunlap
2023-02-08 20:58 ` [PATCH v2 4/4] GPL License Boilerplate: Switch from HTTP to HTTPS Demi Marie Obenour
2023-02-08 22:58   ` Stefano Stabellini
2023-02-08 23:21     ` Demi Marie Obenour
2023-02-09 14:16       ` George Dunlap
2023-02-09 14:55       ` Anthony PERARD
2023-02-09 14:58         ` Julien Grall
2023-02-09  9:09 ` [PATCH v2 0/4] Stop using insecure transports Jan Beulich
2023-02-17 21:35 ` [PATCH v3 " Demi Marie Obenour
2023-02-17 21:35   ` [PATCH v3 1/4] Use HTTPS for all xenbits.xen.org Git repos Demi Marie Obenour
2023-02-17 21:35   ` [PATCH v3 2/4] Build system: Replace git:// and http:// with https:// Demi Marie Obenour
2023-02-18 14:10     ` Marek Marczykowski-Górecki
2023-02-18 14:22       ` Marek Marczykowski-Górecki [this message]
2023-02-18 19:11       ` Andrew Cooper
2023-02-17 21:35   ` [PATCH v3 3/4] Automation and CI: " Demi Marie Obenour
2023-02-17 21:35   ` [PATCH v3 4/4] Rip out HyperTransport Demi Marie Obenour
2023-02-19  2:46   ` [PATCH v4 0/3] Stop using insecure transports Demi Marie Obenour
2023-02-19  2:46     ` [PATCH v4 1/3] Use HTTPS for all xenbits.xen.org Git repos Demi Marie Obenour
2023-02-19  2:46     ` [PATCH v4 2/3] Build system: Replace git:// and http:// with https:// Demi Marie Obenour
2023-02-21 10:07       ` Jan Beulich
2023-02-24 22:55         ` Demi Marie Obenour
2023-02-27  8:25           ` Jan Beulich
2023-02-27 20:18             ` Demi Marie Obenour
2023-02-19  2:46     ` [PATCH v4 3/3] Automation and CI: " Demi Marie Obenour
2023-02-25 20:37     ` [PATCH v5 0/5] Stop using insecure transports Demi Marie Obenour
2023-02-25 20:37       ` [PATCH v5 1/5] Use HTTPS for all xenbits.xen.org Git repos Demi Marie Obenour
2023-02-25 22:34         ` Marek Marczykowski-Górecki
2023-02-27 14:26           ` Anthony PERARD
2023-02-25 20:37       ` [PATCH v5 2/5] Change remaining xenbits.xen.org links to HTTPS Demi Marie Obenour
2023-02-27  8:35         ` Jan Beulich
2023-02-27 18:46           ` Demi Marie Obenour
2023-03-20 11:47             ` George Dunlap
2023-02-25 20:37       ` [PATCH v5 3/5] Build system: Do not try to use broken links Demi Marie Obenour
2023-02-25 20:37       ` [PATCH v5 4/5] Build system: Replace git:// and http:// with https:// Demi Marie Obenour
2023-02-27  8:42         ` Jan Beulich
2023-02-27 20:53           ` Demi Marie Obenour
2023-02-25 20:37       ` [PATCH v5 5/5] Automation and CI: " Demi Marie Obenour
2023-03-20 11:14       ` [PATCH v5 0/5] Stop using insecure transports Anthony PERARD
2023-03-20 11:28         ` George Dunlap
2023-03-21 17:33       ` [PATCH v6 " Demi Marie Obenour
2023-03-21 17:33         ` [PATCH v6 1/5] Use HTTPS for all xenbits.xen.org Git repos Demi Marie Obenour
2023-03-22  8:32           ` Jan Beulich
2023-03-22 10:15             ` Marek Marczykowski-Górecki
2023-03-22  8:44           ` Andrew Cooper
2023-03-21 17:33         ` [PATCH v6 2/5] Change remaining xenbits.xen.org link to HTTPS Demi Marie Obenour
2023-03-22  8:36           ` Jan Beulich
2023-03-21 17:33         ` [PATCH v6 3/5] Build system: Do not try to use broken links Demi Marie Obenour
2023-03-21 17:33         ` [PATCH v6 4/5] Build system: Replace git:// and http:// with https:// Demi Marie Obenour
2023-03-22  8:50           ` Andrew Cooper
2023-03-21 17:33         ` [PATCH v6 5/5] Automation and CI: " Demi Marie Obenour
2023-03-22  8:37         ` [PATCH v6 0/5] Stop using insecure transports Andrew Cooper
2023-03-24 16:37           ` Anthony PERARD
2023-03-24 16:38             ` Andrew Cooper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y/DfOph95KH+RHV2@mail-itl \
    --to=marmarek@invisiblethingslab.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=anthony.perard@citrix.com \
    --cc=demi@invisiblethingslab.com \
    --cc=george.dunlap@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=julien@xen.org \
    --cc=samuel.thibault@ens-lyon.org \
    --cc=sstabellini@kernel.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.