-
-
Notifications
You must be signed in to change notification settings - Fork 7k
Description
I did this
I am playing around with the ECH support in curl. I did the build steps described in https://github.com/curl/curl/blob/master/docs/ECH.md using a Docker container:
Dockerfile:
FROM alpine:latest
RUN apk add --no-cache \
git \
perl \
build-base \
linux-headers \
autoconf \
automake \
libtool \
libpsl \
libpsl-dev
ENV HOME=/root
WORKDIR $HOME/code
RUN git clone https://github.com/defo-project/openssl \
&& cd openssl \
&& ./config --libdir=lib --prefix=$HOME/code/openssl-local-inst \
&& make -j8 \
&& make install_sw
RUN git clone https://github.com/curl/curl \
&& cd curl \
&& autoreconf -fi \
&& LDFLAGS="-Wl,-rpath,$HOME/code/openssl-local-inst/lib/" ./configure --with-ssl=$HOME/code/openssl-local-inst --enable-ech \
&& make
Doing a curl ECH request using DoH works as expected:
LD_LIBRARY_PATH=$HOME/code/openssl ./src/curl --ech true --doh-url https://one.one.one.one/dns-query https://defo.ie/ech-check.php
Result
...
SSL_ECH_STATUS: success <img src="greentick-small.png" alt="good" /> <br/>
...
But supplying an ECH config via command line argument does NOT work:
LD_LIBRARY_PATH=$HOME/code/openssl ./src/curl --ech ecl:AED+DQA8VgAgACBoEIuIZJ77bgesiZ/k3tarHlAKzNSlmPosivmPykpwBgAEAAEAAQANY292ZXIuZGVmby5pZQAA https
://defo.ie/ech-check.php
Result
...
SSL_ECH_STATUS: not attempted <img src="redx-small.png" alt="bummer" /> <br/>
...
I expected the following
SSL_ECH_STATUS: success when using --ech ecl:...
curl/libcurl version
curl 8.12.0-DEV (aarch64-unknown-linux-musl) libcurl/8.12.0-DEV OpenSSL/3.5.0 libidn2/2.3.7 libpsl/0.21.5
Release-Date: [unreleased]
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS ECH HSTS HTTPS-proxy IDN IPv6 Largefile NTLM PSL SSL threadsafe TLS-SRP UnixSockets
operating system
Alpine Linux in Docker container (running on macOS 15.3):
Linux 118d1cdf363b 6.10.14-linuxkit #1 SMP Fri Nov 29 17:22:03 UTC 2024 aarch64 Linux