class documentation

class MaildirDirdbmDomain(AbstractMaildirDomain): (source)

Implements interfaces: twisted.cred.portal.IRealm

View In Hierarchy

A maildir-backed domain where membership is checked with a DirDBM database.

The directory structure of a MaildirDirdbmDomain is:

/passwd <-- a DirDBM directory

/USER/{cur, new, del} <-- each user has these three directories

Method __init__
Method add​User Add a user to this domain by adding an entry in the authentication database and initializing the user's mail directory.
Method get​Credentials​Checkers Return credentials checkers for this domain.
Method request​Avatar Get the mailbox for an authenticated user.
Method user​Directory Return the path to a user's mail directory.
Class Variable portal Undocumented
Instance Variable dbm The authentication database for the domain.
Instance Variable postmaster See __init__.
Instance Variable _credcheckers Undocumented

Inherited from AbstractMaildirDomain:

Method exists Check whether a user exists in this domain or an alias of it.
Method set​Alias​Group Set the group of defined aliases for this domain.
Method start​Message Create a maildir message for a user.
Method will​Relay Check whether this domain will relay.
Instance Variable alias A mapping of username to alias.
Instance Variable root See __init__.
def __init__(self, service, root, postmaster=0): (source)
Parameters
service:MailServiceAn email service.
root:bytesThe maildir root directory.
postmaster:boolA flag indicating whether non-existent addresses should be forwarded to the postmaster (True) or bounced (False).
def addUser(self, user, password): (source)
Add a user to this domain by adding an entry in the authentication database and initializing the user's mail directory.
Parameters
user:bytesA username.
password:bytesA password.
def getCredentialsCheckers(self): (source)
Return credentials checkers for this domain.
Returns
list of ICredentialsChecker providerCredentials checkers for this domain.
def requestAvatar(self, avatarId, mind, *interfaces): (source)

Get the mailbox for an authenticated user.

The mailbox for the authenticated user will be returned only if the given interfaces include IMailbox. Requests for anonymous access will be met with a mailbox containing a message indicating that an internal error has occurred.

Parameters
avatar​Id:bytes or twisted.cred.checkers.ANONYMOUSA string which identifies a user or an object which signals a request for anonymous access.
mind:NoneUnused.
*interfaces:n-tuple of zope.interface.InterfaceA group of interfaces, one of which the avatar must support.
Returns
3-tuple of (0) IMailbox, (1) IMailbox provider, (2) no-argument callableA tuple of the supported interface, a mailbox, and a logout function.
Raises
NotImplementedErrorWhen the given interfaces do not include IMailbox.
def userDirectory(self, name): (source)
Return the path to a user's mail directory.
Parameters
name:bytesA username.
Returns
bytes or NoneThe path to the user's mail directory for a valid user. For an invalid user, the path to the postmaster's mailbox if bounces are redirected there. Otherwise, None.
portal = (source)

Undocumented

The authentication database for the domain.
postmaster = (source)
See __init__.
_credcheckers = (source)

Undocumented