[Dovecot] mbox inbox default

bhayden at umn.edu bhayden at umn.edu
Wed Aug 1 16:58:52 EEST 2007


HI Timo & all.

We're an mbox environment, inboxes in /var/mail/$USER (I'll include dovecot 
-n output at the bottom of this mail). mail_location is set accordingly for 
deliver.

I'd assumed that if the /var/mail/$USER file doesn't exist, dovecot would 
create it, but we've discovered from experience (and I verified it in 
mbox-storage.c) that if access(path, R_OK|W_OK) fails--as it does if the 
file doesn't exist--that dovecot defaults then to delivering in 
root_dir/inbox.

I'm curious why this is. It seems like if the configured INBOX file doesn't 
exist, dovecot should create it if possible; it's a different case than if, 
say, the user doesn't have write access to that directory, in which case it 
of course would be appropriate to fall back to some other location rather 
than rejecting mail.

Is there something I'm missing that makes my idea wrong? Thanks,

-Brian Hayden
OIT Internet Services
University of MN

 # ./dovecot -n
 # /etc/opt/dovecot/dovecot.conf
 syslog_facility: local6
 protocols: imap imaps pop3 pop3s
 listen(default): *:143
 listen(imap): *:143
 listen(pop3): *:110
 ssl_listen(default): *:993
 ssl_listen(imap): *:993
 ssl_listen(pop3): *:995
 ssl_cert_file: /etc/opt/openssl/certs/dovecot.pem
 ssl_key_file: /etc/opt/openssl/private/dovecot.pem
 shutdown_clients: no
 login_dir: /var/opt/dovecot/run/dovecot/login
 login_executable(default): /opt/dovecot/libexec/dovecot/imap-login
 login_executable(imap): /opt/dovecot/libexec/dovecot/imap-login
 login_executable(pop3): /opt/dovecot/libexec/dovecot/pop3-login
 login_log_format_elements: user=<%u> pid=<%p> method=%m rip=%r lip=%l %c
 login_processes_count: 32
 login_max_processes_count: 6000
 max_mail_processes: 8192
 first_valid_uid: 100
 mail_location: 
mbox:~:INBOX=/var/mail/%u:INDEX=/var/mail/.dovecot-index/%1u/%u/
 mail_debug: yes
 mbox_lazy_writes: no
 mail_executable(default): /opt/dovecot/libexec/dovecot/mail_path.sh
 mail_executable(imap): /opt/dovecot/libexec/dovecot/mail_path.sh
 mail_executable(pop3): /opt/dovecot/libexec/dovecot/pop3
 mail_plugins(default): acl
 mail_plugins(imap): acl
 mail_plugins(pop3): 
 mail_plugin_dir(default): /opt/dovecot/lib/dovecot/imap
 mail_plugin_dir(imap): /opt/dovecot/lib/dovecot/imap
 mail_plugin_dir(pop3): /opt/dovecot/lib/dovecot/pop3
 mail_log_prefix: [%p] %Us(%u): 
 mail_log_max_lines_per_sec: 0
 imap_client_workarounds(default): delay-newmail outlook-idle 
tb-extra-mailbox-sep
 imap_client_workarounds(imap): delay-newmail outlook-idle 
tb-extra-mailbox-sep
 imap_client_workarounds(pop3): outlook-idle
 pop3_uidl_format(default): 
 pop3_uidl_format(imap): 
 pop3_uidl_format(pop3): %08Xu%08Xv
 namespace:
  type: private
  separator: /
  location: mbox:~:INBOX=/var/mail/%u:INDEX=/var/mail/.dovecot-index/%1u/%u/
  inbox: yes
 namespace:
  type: private
  separator: /
  prefix: mail/
  location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
  hidden: yes
 namespace:
  type: private
  separator: /
  prefix: ~/mail/
  location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
  hidden: yes
 namespace:
  type: private
  separator: /
  prefix: ~%u/mail/
  location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
  hidden: yes
 namespace:
  type: private
  separator: /
  prefix: Shared/
  location: 
maildir:~/Maildir/Shared/:INDEX=/var/mail/.dovecot-index/%1u/%u/shared:CONTROL=/var/mail/.dovecot-index/%1u/%u/shared-control
 auth default:
  username_format: %Lu
  passdb:
    driver: pam
    args: session=yes *
  userdb:
    driver: passwd
 plugin:
  acl: vfile:



More information about the dovecot mailing list