diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2010-03-02 13:26:23 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2010-03-02 13:26:23 +0000 | 
| commit | 13ac29382f9087d410a96f7ca943b16d39a10afb (patch) | |
| tree | 8f9e682189c858add5696fba067a7ac8abe6dda0 /lib/smtp.c | |
| parent | 8719398d052b9b52a6f75b6b0e4ab5de13896a4e (diff) | |
- Made the pingpong timeout code properly deal with the response timeout AND
  the global timeout if set. Also, as was reported in the bug report #2956437
  by Ryan Chan, the time stamp to use as basis for the per command timeout was
  not set properly in the DONE phase for FTP (and not for SMTP) so I fixed
  that just now. This was a regression compared to 7.19.7 due to the
  conversion of FTP code over to the generic pingpong concepts.
  http://curl.haxx.se/bug/view.cgi?id=2956437
Diffstat (limited to 'lib/smtp.c')
| -rw-r--r-- | lib/smtp.c | 6 | 
1 files changed, 5 insertions, 1 deletions
| diff --git a/lib/smtp.c b/lib/smtp.c index 2587934cf..f7757f057 100644 --- a/lib/smtp.c +++ b/lib/smtp.c @@ -637,7 +637,7 @@ static CURLcode smtp_init(struct connectdata *conn)   * a part of the easy interface, it will always be TRUE.   */  static CURLcode smtp_connect(struct connectdata *conn, -                                 bool *done) /* see description above */ +                             bool *done) /* see description above */  {    CURLcode result;    struct smtp_conn *smtpc = &conn->proto.smtpc; @@ -784,6 +784,10 @@ static CURLcode smtp_done(struct connectdata *conn, CURLcode status,    if(status == CURLE_OK) { +    struct smtp_conn *smtpc = &conn->proto.smtpc; +    struct pingpong *pp= &smtpc->pp; +    pp->response = Curl_tvnow(); /* timeout relative now */ +      state(conn, SMTP_POSTDATA);      /* run the state-machine | 
