Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8384:c6482b5cdea1 HEAD
deliver -m: Assume the given mailbox name is in UTF-8 format.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 01 Nov 2008 22:49:14 +0200 |
parents | 8815fc1099c8 |
children | 63f7e1ad7646 |
files | src/deliver/Makefile.am src/deliver/deliver.c |
diffstat | 2 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/deliver/Makefile.am Sat Nov 01 22:32:04 2008 +0200 +++ b/src/deliver/Makefile.am Sat Nov 01 22:49:14 2008 +0200 @@ -7,6 +7,7 @@ -I$(top_srcdir)/src/lib-auth \ -I$(top_srcdir)/src/lib-dict \ -I$(top_srcdir)/src/lib-mail \ + -I$(top_srcdir)/src/lib-imap \ -I$(top_srcdir)/src/lib-index \ -I$(top_srcdir)/src/lib-settings \ -I$(top_srcdir)/src/lib-storage \
--- a/src/deliver/deliver.c Sat Nov 01 22:32:04 2008 +0200 +++ b/src/deliver/deliver.c Sat Nov 01 22:49:14 2008 +0200 @@ -24,6 +24,7 @@ #include "message-address.h" #include "mail-namespace.h" #include "raw-storage.h" +#include "imap-utf7.h" #include "dict.h" #include "auth-client.h" #include "mail-send.h" @@ -815,6 +816,7 @@ time_t mtime; int i, ret; pool_t userdb_pool = NULL; + string_t *str; i_set_failure_exit_callback(failure_exit_callback); @@ -873,8 +875,14 @@ i_fatal_status(EX_USAGE, "Missing -m argument"); /* Ignore -m "". This allows doing -m ${extension} in Postfix to handle user+mailbox */ - if (*argv[i] != '\0') - mailbox = argv[i]; + if (*argv[i] != '\0') { + str = t_str_new(256); + if (imap_utf8_to_utf7(argv[i], str) < 0) { + i_fatal("Mailbox name not UTF-8: %s", + mailbox); + } + mailbox = str_c(str); + } } else if (strcmp(argv[i], "-n") == 0) { deliver_set->mailbox_autocreate = FALSE; } else if (strcmp(argv[i], "-s") == 0) {