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