#include <setacljob.h>

Inheritance diagram for KIMAP::SetAclJob:

Public Member Functions

 SetAclJob (Session *session)
QByteArray identifier ()
void setIdentifier (const QByteArray &identifier)
void setRights (AclModifier modifier, Acl::Rights rights)
- Public Member Functions inherited from KIMAP::AclJobBase
 AclJobBase (Session *session)
QString mailBox () const
void setMailBox (const QString &mailBox)

Protected Member Functions

void doStart () override
- Protected Member Functions inherited from KIMAP::AclJobBase
 AclJobBase (JobPrivate &dd)

Additional Inherited Members

- Public Types inherited from KIMAP::AclJobBase
enum  AclModifier { Add = 0, Remove, Change }

Detailed Description

Sets the rights that correspond to an identifier on a mailbox.

This job can only be run when the session is in the authenticated (or selected) state.

This job requires that the server supports the ACL capability, defined in RFC 4314.

Definition at line 31 of file setacljob.h.

Member Function Documentation

QByteArray SetAclJob::identifier ( )

The identifier that rights will be associated with.

Definition at line 61 of file setacljob.cpp.

void SetAclJob::setIdentifier ( const QByteArray identifier)

Sets the identifier the rights will be modified for.

The meaning of identifiers depends on the server implementation, with the following restrictions:

  • "anyone" means any authenticated user, including anonymous
  • an identifier starting with a minus sign ('-') indicates "negative rights": rights that should be taken away from matching users

Other than the above restrictions, ACL identifiers are usually IMAP usernames, but could potentially be group names as well.

Note that negative rights override positive rights: if "fred" and "-fred" are both assigned the 'w' right, the user "fred" will not have the 'w' right.

identifierthe identifier to set

Definition at line 55 of file setacljob.cpp.

void SetAclJob::setRights ( AclModifier  modifier,
Acl::Rights  rights 

Sets the rights that will be changed for the identifier.

Note that multiple calls to this method will have a non-intuitive effect: the modifier value of the most recent call will be used, but the OR'd-together values of all calls to setRights() will be used.

If the server does not recognise any of the rights, the job will fail and the ACL for the mailbox will remain unchanged.

Note that some rights may be tied together, and must be set or removed as a group. See ListRightsJob::possibleRights() for more details. The server will only set a tied group of rights if you have requested that all the rights in that group should be set.

modifierdetermines whether the rights will be added to the identifier, removed from the identifier or will replace any existing rights assigned to the identifier
rightsthe rights to be added, removed or set

Definition at line 49 of file setacljob.cpp.

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Nov 30 2020 23:12:58 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.