From 517b06d657aceb11a234b05cc891170c367ab80d Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Thu, 20 Feb 2014 23:51:36 +0000 Subject: url: Fixed connection re-use when using different log-in credentials In addition to FTP, other connection based protocols such as IMAP, POP3, SMTP, SCP, SFTP and LDAP require a new connection when different log-in credentials are specified. Fixed the detection logic to include these other protocols. Bug: http://curl.haxx.se/docs/adv_20140326A.html --- lib/url.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'lib/url.c') diff --git a/lib/url.c b/lib/url.c index 2240f1132..0e420c7a3 100644 --- a/lib/url.c +++ b/lib/url.c @@ -3060,9 +3060,10 @@ ConnectionExists(struct SessionHandle *data, continue; } - if((needle->handler->protocol & CURLPROTO_FTP) || wantNTLMhttp) { - /* This is FTP or HTTP+NTLM, verify that we're using the same name - and password as well */ + if((!(needle->handler->flags & PROTOPT_CREDSPERREQUEST)) || + wantNTLMhttp) { + /* This protocol requires credentials per connection or is HTTP+NTLM, + so verify that we're using the same name and password as well */ if(!strequal(needle->user, check->user) || !strequal(needle->passwd, check->passwd)) { /* one of them was different */ -- cgit v1.2.3