Curl to ftp.gnu.org gets "RETR response: 425"

e.g. https://travis-ci.com/palfrey/aports/builds/136021088

>>> libtool: Fetching ftp://ftp.gnu.org/pub/gnu/libtool/libtool-2.4.6.tar.gz

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

  0 1764k    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0

curl: (19) RETR response: 425

Also https://travis-ci.com/palfrey/wait-for-db/jobs/255343124

Both of these work fine locally and in at least the aports case have previously worked on Travis

According to https://bugzilla.redhat.com/show_bug.cgi?id=1002815 and https://github.com/curl/curl/commit/7cc00d9a, this was a bug in Curl which was fixed in 7.32.0.

The version in Trusty has the fix but you are running in a Docker image – could it be using an older version?

A workaround for that bug is to pass --disable-epsv to curl.

I’m pretty sure it’s using a new enough curl - should be around 7.66.0. I made it go into verbose mode (see https://travis-ci.com/palfrey/wait-for-db/builds/136381651) and that gave me some more info

< 425 Security: Bad IP connecting.

  • RETR response: 425

Also some bits noting about EPSV being used. In the end I just stopped using the ftp options and got to the file via HTTPS instead, which works fine!

1 Like

Great info! This means that the reason is IP Addresses - Travis CI.

GNU needs to configure their FTP servers to allow data connections from other IPs, at least for Travis’ IP ranges.