mirror of
https://github.com/curl/curl.git
synced 2026-08-07 01:08:48 +03:00
url: call protocol handler's disconnect in Curl_conn_free
For the case when the connection struct is all setup, the protocol handler allocates data in its setup_connection function, but the connection struct is discarded again before used further because a connection reuse is prefered. Then the handler's disconnect function was not previously called, which then would lead to a memory leak. I added test case 698 that reproduces the leak and the fix. Reported-by: Philippe Antoine Closes #16604
This commit is contained in:
parent
0d1e43af8d
commit
f4831daa9b
3 changed files with 63 additions and 1 deletions
58
tests/data/test698
Normal file
58
tests/data/test698
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
<testcase>
|
||||
<info>
|
||||
<keywords>
|
||||
FTP
|
||||
ACCT
|
||||
</keywords>
|
||||
</info>
|
||||
# Server-side
|
||||
<reply>
|
||||
<data>
|
||||
data
|
||||
to
|
||||
see
|
||||
that FTP
|
||||
works
|
||||
so does it?
|
||||
</data>
|
||||
<servercmd>
|
||||
REPLY PASS 332 please provide account name
|
||||
REPLY ACCT 230 thank you
|
||||
</servercmd>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
ftp
|
||||
</server>
|
||||
<name>
|
||||
FTP with ACCT and connection reuse
|
||||
</name>
|
||||
<command>
|
||||
ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-account "one count" ftp://%HOSTIP:%FTPPORT/%TESTNUMBER
|
||||
</command>
|
||||
</client>
|
||||
|
||||
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<strip>
|
||||
QUIT
|
||||
</strip>
|
||||
<protocol>
|
||||
USER anonymous
|
||||
PASS ftp@example.com
|
||||
ACCT one count
|
||||
PWD
|
||||
EPSV
|
||||
TYPE I
|
||||
SIZE %TESTNUMBER
|
||||
RETR %TESTNUMBER
|
||||
EPSV
|
||||
SIZE %TESTNUMBER
|
||||
RETR %TESTNUMBER
|
||||
QUIT
|
||||
</protocol>
|
||||
</verify>
|
||||
</testcase>
|
||||
Loading…
Add table
Add a link
Reference in a new issue