HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //usr/share/doc/dovecot/wiki/Design.Storage.MailUser.txt
Mail User
=========

'src/lib-storage/mail-user.h' describes mail user. The struct contains all
kinds of useful information about the user that can be accessed directly. Some
of the most useful things you can do with a user are:

 * 'user->username' gives you the actual username string (e.g.
   'user@domain.org').
 * 'user->set' gives you access to user's settings.
 * 'user->namespaces' points to a linked list of user's namespaces.
 * 'mail_user_get_home()' returns user's home directory, if there's one.
 * 'mail_user_home_expand()' expands '~/' at the beginning of given path to
   user's actual home directory.
 * 'mail_user_plugin_getenv()' returns value for a setting defined in 'plugin
   {}' section.

Typically each new IMAP/POP3/etc. connection creates a single mail user.
Currently multiple connections for same user don't even try to share the mail
user, but this may change in future. If a user has shared mailboxes from other
users (not public namespaces), a mail user is also created whenever necessary
to list/access the user's mailboxes. Again there is no attempt to share the
created mail user with other connections.

(This file was created from the wiki on 2019-06-19 12:42)