1mail::folder::delRights(m3axi)l::folder Native API refermeanicle::folder::delRights(3x)
2
3
4
6 mail::folder::delRights - Delete an access control list identifier
7
9 #include <libmail/mail.H>
10
11
12 class myCallback : public mail::callback {
13 public:
14 void success(std::string msg);
15 void fail(std::string msg);
16 };
17
18
19
20 folder->delRights (myCallback &callback, std::string &errorIdentifier,
21 std::vector<std::string> &errorRights, std::string identifier);
22
24 This function implements folder access control lists (ACLs). Access
25 control lists define who is allowed to do certain operations on a
26 folder, or on messages in the folder. Folder ACLs are implement only
27 for IMAP accounts on IMAP servers that implement access control lists.
28 This function will fail if folder is not a folder on an IMAP server
29 that supports access control lists.
30
31 This function removes identifier from folder's access control list.
32
33 IDENTIFIER
34 Not all servers support every one of the following access control list
35 identifiers. See the server's documentation to check which access con‐
36 trol list identifiers are implemented by the server:
37
38 ``anonymous'', or ``anyone''
39 This identifier refers to universal access rights given to
40 everyone, including anonymous users (if supported by server).
41
42 ``authuser''
43 Same as ``anyone'', except for anonymous users. If the server
44 does not implement anonymous access, then ``anonymous'', ``any‐
45 one'', and ``authuser'' are equivalent.
46
47 ``owner''
48 The owner of the mailbox that contains the folder.
49
50 ``administrators''
51 Any member of a group that's defined as an administrator group,
52 in an implementation-defined way.
53
54 ``user=username''
55 A single system user, identified by username.
56
57 ``group=groupname''
58 Any system user that's part of a group identified by groupname.
59 Groups are created and managed by IMAP server-specific tools.
60 See the server's documentation for information on creating and
61 managing groups (if the groups are even implemented by the
62 server in the first place).
63
64 ``-identifier''
65 An access control list identifier may be prefixed by a ``-'',
66 which refers to a ``negative right''. Negative rights explic‐
67 itly revoke the associated access rights from the identifier
68 instead of granting the right.
69
70 Negative rights are not implemented by all servers. See the
71 server's documentation to check if the server implements nega‐
72 tive access rights.
73
74 Note: username and groupname must specified using the UTF-8
75 character set.
76
77 ACCESS RIGHTS
78 At this time, the following access rights are supported:
79
80 ``a'' Administrator access: view and change folder access control
81 lists.
82
83 ``c'' Create subfolders.
84
85 ``e'' Expunge deleted messages from the folder.
86
87 ``i'' Insert, or add messages to the folder.
88
89 ``l'' List, or view the folder's existence. If a folder does not have
90 the ``l'' access right, the server will not include this folder
91 when it's asked to list all folders in the folder directory.
92 However, if the ``r'' access right is present, the folder may be
93 opened if the folder's name is known.
94
95 ``r'' Read, or open the folder. An attempt to open the folder will
96 fail without the ``r'' access right, even if the folder's name
97 is known.
98
99 ``p'' ``Post messages'' to the folder. This access right is currently
100 listed in the ACL specification; however its intention is not
101 clear, and most servers do not do anything useful with this
102 access right. It is listed here for information purposes only.
103
104 ``s'' Allow changing the read/unread status of messages in the folder.
105 The server will not automatically clear the unread message sta‐
106 tus flag on messages after they are read, or let this status
107 flag be explicitly changed, without the ``s'' access right.
108
109 ``t'' Allow tagging of messages as deleted or undeleted. The server
110 will prohibit changing the messages' deleted message status flag
111 without the ``t'' access right.
112
113 ``w'' Allow changing the draft, replied, and marked message status
114 flags. The server will not allow changes to these flags without
115 the ``w'' access right.
116
117 ``x'' Allow this folder to be removed. The server will not this
118 folder to be deleted without the ``x'' access right.
119
120 EXTENDED ERROR REPORTING
121 Most IMAP servers have restrictions on which combinations of access
122 rights are valid for which folders. See the IMAP server's documenta‐
123 tion to check for any access rights restrictions. The most common
124 restriction is that the ``e'', ``t'', and ``x'' access rights must
125 either be set together, as a group, or not. The server will reject or
126 ignore an attempt to set prohibited combinations of access rights for a
127 given folder.
128
129 Some IMAP servers implement an extended form of the access control list
130 protocol which makes it possible to obtain the server's restrictions.
131 When an attempt to set an invalid access right combination is rejected,
132 errorIdentifier will be set to indicate which identifier's access right
133 combination was rejected (usually it will be set to the same value as
134 identifier.
135
136 errorRights will be set to an array of strings, each strings consisting
137 of one or more access rights. The first array element, errorRights[0]
138 will contain the minimum access rights required for this folder (which
139 may be an empty string if the folder does not require any minimum
140 access rights for the identifier). Each remaining string lists an
141 optional access right allowed for this folder. If a string contains
142 more than one access right, it means that these access rights must be
143 added or removed from the access control list together, as a group.
144
146 The application must wait until callback's success or fail method is
147 invoked. The success method is invoked when this request is succes‐
148 fully processed. The fail method is invoked if this request cannot be
149 processed. The application must not destroy callback until either the
150 success or fail method is invoked.
151
152 Note: callback's fail method may be invoked even after other
153 callback methods were invoked. This indicates that the request
154 was partially completed before the error was encountered.
155
157 mail::account::getMyRights(3x), mail::account::getRights(3x),
158 mail::account::setRights(3x).
159
160
161
162 10 April 2006 mail::folder::delRights(3x)