diff options
author | Ori Avtalion <ori@avtalion.name> | 2011-06-21 01:33:32 +0300 |
---|---|---|
committer | Ori Avtalion <ori@avtalion.name> | 2011-06-21 18:12:05 +0300 |
commit | af6dcc92d56c8913a49a4c8b776f65c717f242d6 (patch) | |
tree | 96160a7b51074ed947159bd95727b354d64ded1d | |
parent | 57064e4a0d426eeb0f82e7831214caaf9300bc2a (diff) |
[pop3] remove extra space in LIST command
Some servers, e.g. mail.bezeqint.net:110, consider it a syntax error
-rw-r--r-- | lib/pop3.c | 7 | ||||
-rw-r--r-- | tests/data/test810 | 2 | ||||
-rw-r--r-- | tests/data/test811 | 2 |
3 files changed, 7 insertions, 4 deletions
diff --git a/lib/pop3.c b/lib/pop3.c index 0581c58b0..dc5a1c2fa 100644 --- a/lib/pop3.c +++ b/lib/pop3.c @@ -481,11 +481,14 @@ static CURLcode pop3_list(struct connectdata *conn) CURLcode result = CURLE_OK; struct pop3_conn *pop3c = &conn->proto.pop3c; - result = Curl_pp_sendf(&conn->proto.pop3c.pp, "LIST %s", pop3c->mailbox); + if(pop3c->mailbox[0] != '\0') + result = Curl_pp_sendf(&conn->proto.pop3c.pp, "LIST %s", pop3c->mailbox); + else + result = Curl_pp_sendf(&conn->proto.pop3c.pp, "LIST"); if(result) return result; - if(strlen(pop3c->mailbox)) + if(pop3c->mailbox[0] != '\0') state(conn, POP3_LIST_SINGLE); else state(conn, POP3_LIST); diff --git a/tests/data/test810 b/tests/data/test810 index d4f75972a..1c31042b6 100644 --- a/tests/data/test810 +++ b/tests/data/test810 @@ -38,7 +38,7 @@ pop3://%HOSTIP:%POP3PORT/ -u user:secret <protocol> USER user
PASS secret
-LIST
+LIST
QUIT
</protocol> </verify> diff --git a/tests/data/test811 b/tests/data/test811 index 850e5e27d..ca107abcc 100644 --- a/tests/data/test811 +++ b/tests/data/test811 @@ -36,7 +36,7 @@ pop3://%HOSTIP:%POP3PORT/ -u user:secret <protocol> USER user
PASS secret
-LIST
+LIST
QUIT
</protocol> </verify> |