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 addUser Add a user to this domain by adding an entry in the authentication database and initializing the user's mail directory.
Method getCredentialsCheckers Return credentials checkers for this domain.
Method requestAvatar Get the mailbox for an authenticated user.
Method userDirectory 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 setAliasGroup Set the group of defined aliases for this domain.
Method startMessage Create a maildir message for a user.
Method willRelay 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
avatarId: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