Mercurial > dovecot > original-hg > dovecot-1.2
changeset 1568:235f67c3cc9f HEAD
LIST and STATUS replies shouldn't strip tabs and spaces from mailbox names.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 23 Jun 2003 21:22:48 +0300 |
parents | 253967fa5b8a |
children | 059c82e833b2 |
files | src/imap/cmd-list.c src/imap/cmd-status.c src/lib-imap/imap-bodystructure.c src/lib-imap/imap-envelope.c src/lib-imap/imap-quote.c src/lib-imap/imap-quote.h |
diffstat | 6 files changed, 17 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/src/imap/cmd-list.c Mon Jun 23 20:10:01 2003 +0300 +++ b/src/imap/cmd-list.c Mon Jun 23 21:22:48 2003 +0300 @@ -166,7 +166,7 @@ str = t_str_new(256); str_printfa(str, "* %s (%s) \"%s\" ", ctx->response_name, flagstr, ctx->sep); - imap_quote_append_string(str, send_name); + imap_quote_append_string(str, send_name, FALSE); client_send_line(ctx->client, str_c(str)); t_pop(); } @@ -228,7 +228,7 @@ if (strcasecmp(list->name, "INBOX") == 0) str_append(str, "INBOX"); else - imap_quote_append_string(str, list->name); + imap_quote_append_string(str, list->name, FALSE); client_send_line(client, str_c(str)); t_pop(); }
--- a/src/imap/cmd-status.c Mon Jun 23 20:10:01 2003 +0300 +++ b/src/imap/cmd-status.c Mon Jun 23 21:22:48 2003 +0300 @@ -111,7 +111,7 @@ str = t_str_new(128); str_append(str, "* STATUS "); - imap_quote_append_string(str, mailbox); + imap_quote_append_string(str, mailbox, FALSE); str_append(str, " ("); if (items & STATUS_MESSAGES)
--- a/src/lib-imap/imap-bodystructure.c Mon Jun 23 20:10:01 2003 +0300 +++ b/src/lib-imap/imap-bodystructure.c Mon Jun 23 21:22:48 2003 +0300 @@ -74,9 +74,9 @@ if (name_len == 7 && memcasecmp(name, "charset", 7) == 0) data->charset_found = TRUE; - imap_quote_append(data->str, name, name_len); + imap_quote_append(data->str, name, name_len, TRUE); str_append_c(data->str, ' '); - imap_quote_append(data->str, value, value_len); + imap_quote_append(data->str, value, value_len, TRUE); } static void parse_content_transfer_encoding(const unsigned char *value,
--- a/src/lib-imap/imap-envelope.c Mon Jun 23 20:10:01 2003 +0300 +++ b/src/lib-imap/imap-envelope.c Mon Jun 23 21:22:48 2003 +0300 @@ -156,13 +156,13 @@ str_append_c(str, '('); while (addr != NULL) { str_append_c(str, '('); - imap_quote_append_string(str, addr->name); + imap_quote_append_string(str, addr->name, TRUE); str_append_c(str, ' '); - imap_quote_append_string(str, addr->route); + imap_quote_append_string(str, addr->route, TRUE); str_append_c(str, ' '); - imap_quote_append_string(str, addr->mailbox); + imap_quote_append_string(str, addr->mailbox, TRUE); str_append_c(str, ' '); - imap_quote_append_string(str, addr->domain); + imap_quote_append_string(str, addr->domain, TRUE); str_append_c(str, ')'); addr = addr->next;
--- a/src/lib-imap/imap-quote.c Mon Jun 23 20:10:01 2003 +0300 +++ b/src/lib-imap/imap-quote.c Mon Jun 23 21:22:48 2003 +0300 @@ -5,7 +5,7 @@ #include "imap-quote.h" void imap_quote_append(string_t *str, const unsigned char *value, - size_t value_len) + size_t value_len, int compress_lwsp) { size_t i, extra = 0; int last_lwsp = TRUE, literal = FALSE, modify = FALSE; @@ -28,7 +28,7 @@ break; case ' ': case '\t': - if (last_lwsp) { + if (last_lwsp && compress_lwsp) { modify = TRUE; extra++; } @@ -67,7 +67,7 @@ break; case ' ': case '\t': - if (!last_lwsp) + if (!last_lwsp || !compress_lwsp) str_append_c(str, ' '); last_lwsp = TRUE; break; @@ -98,7 +98,7 @@ t_push(); str = t_str_new(value_len + MAX_INT_STRLEN + 5); - imap_quote_append(str, value, value_len); + imap_quote_append(str, value, value_len, TRUE); ret = p_strndup(pool, str_data(str), str_len(str)); t_pop();
--- a/src/lib-imap/imap-quote.h Mon Jun 23 20:10:01 2003 +0300 +++ b/src/lib-imap/imap-quote.h Mon Jun 23 21:22:48 2003 +0300 @@ -8,9 +8,10 @@ /* Append to existing string. */ void imap_quote_append(string_t *str, const unsigned char *value, - size_t value_len); + size_t value_len, int compress_lwsp); -#define imap_quote_append_string(str, value) \ - imap_quote_append(str, (const unsigned char *) value, (size_t)-1) +#define imap_quote_append_string(str, value, compress_lwsp) \ + imap_quote_append(str, (const unsigned char *) value, \ + (size_t)-1, compress_lwsp) #endif