[squid-users] squid 5.7 FTP upload fails
Alex Rousskov
rousskov at measurement-factory.com
Wed Aug 7 18:31:09 UTC 2024
On 2024-08-07 13:05, Matus UHLAR - fantomas wrote:
> after we upgraded squid 4.13 to squid 5.7 (debian 11 to 12)
> our user reported that attempring to uploading bigger files fails.
Thank you for sharing access.log records. Any relevant messages in
cache.log?
There were a few bug fixes related to FTP and uploads, but I do not see
some of them in (unsupported) v5. Does your test work with Squid v6+?
Alex.
> I was able to reproduce this behaviour:
>
> # time curl --no-progress-meter -x 10.X.Y.Z:port -T
> gnome-cards-data_3.22.23-1_all.deb -u "anonymous:proxy1 at example.com"
> ftp://example.net/incoming/
> curl: (56) Recv failure: Connection reset by peer
>
> real 0m1.041s
> user 0m0.008s
> sys 0m0.008s
>
> -rw-r----- 1 ftpd ftpd 1468896 Aug 7 18:21
> gnome-cards-data_3.22.23-1_all.deb
>
> # time curl --no-progress-meter -x 10.X.Y.Z:port -T
> gnome-cards-data_3.22.23-1_all.deb -u "anonymous:proxy1 at example.com"
> ftp://example.net/incoming/
> curl: (56) Recv failure: Connection reset by peer
>
> real 0m1.044s
> user 0m0.008s
> sys 0m0.008s
>
> -rw-r----- 1 ftpd ftpd 1768488 Aug 7 18:21
> gnome-cards-data_3.22.23-1_all.deb
>
> Using squid 4.13 (same network, debian 11 server) works.
>
> 1723047707.274 1031 10.X.Y.W TCP_MISS_ABORTED/000 0 PUT
> ftp://anonymous:proxy1%40example.com@example.net/incoming/gnome-cards-data_3.22.23-1_all.deb - HIER_DIRECT/192.0.2.1 - "curl/7.74.0"
>
>
> I tried verbose curl output did not help:
>
> # time curl -v --no-progress-meter -x 10.X.Y.Z:port -T
> gnome-cards-data_3.22.23-1_all.deb -u "anonymous:proxy1 at example.com"
> ftp://example.net/incoming/
> * Trying 10.X.Y.Z:port...
> * Connected to 10.X.Y.Z (10.X.Y.Z) port port (#0)
> * Server auth using Basic with user 'anonymous'
>> PUT
>> ftp://anonymous:proxy1%40example.com@example.net/incoming/gnome-cards-data_3.22.23-1_all.deb HTTP/1.1
>> Host: example.net:21
>> Authorization: Basic YW5vbnltb3VzOnByb3h5MUB2c3pwLnNr
>> User-Agent: curl/7.74.0
>> Accept: */*
>> Proxy-Connection: Keep-Alive
>> Content-Length: 10526800
>> Expect: 100-continue
>>
> * Done waiting for 100-continue
> } [65536 bytes data]
> * Recv failure: Connection reset by peer
> * Closing connection 0
> curl: (56) Recv failure: Connection reset by peer
>
> real 0m1.043s
> user 0m0.004s
> sys 0m0.012s
>
>
>
> I have tried to extend the 100-continue timeout for curl, no change.
> (approximately same file sizes, same error only after 10 seconds)
>
> configuring "force_request_body_continuation allow all" did not help,
> the error occured immediately:
>
> # time curl -v --no-progress-meter -x 10.X.Y.Z:port -T
> gnome-cards-data_3.22.23-1_all.deb -u "anonymous:proxy1 at example.com"
> ftp://example.net/incoming/
> * Trying 10.X.Y.Z:port...
> * Connected to 10.X.Y.Z (10.X.Y.Z) port port (#0)
> * Server auth using Basic with user 'anonymous'
>> PUT
>> ftp://anonymous:proxy1%40example.com@example.net/incoming/gnome-cards-data_3.22.23-1_all.deb HTTP/1.1
>> Host: example.net:21
>> Authorization: Basic YW5vbnltb3VzOnByb3h5MUB2c3pwLnNr
>> User-Agent: curl/7.74.0
>> Accept: */*
>> Proxy-Connection: Keep-Alive
>> Content-Length: 10526800
>> Expect: 100-continue
>>
> * Mark bundle as not supporting multiuse
> < HTTP/1.1 100 Continue
> < Connection: keep-alive
> } [65536 bytes data]
> * Send failure: Broken pipe
> * Closing connection 0
> curl: (55) Send failure: Broken pipe
>
> real 0m0.152s
> user 0m0.005s
> sys 0m0.009s
>
> 1723050086.883 139 10.X.Y.W TCP_MISS_ABORTED/100 0 PUT
> ftp://anonymous:proxy1%40example.com@example.net/incoming/gnome-cards-data_3.22.23-1_all.deb - HIER_DIRECT/192.0.2.1 - "curl/7.74.0"
>
> Any idea what can be wrong?
> CURL 8.8.0 from debian backports did not help as well.
>
More information about the squid-users
mailing list