<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"/> <title>mail::folder::getMyRights</title> <link rel="stylesheet" href="manpage.css" type="text/css"/> <link rel="start" href="index.html" title="Cone: COnsole Newsreader And Emailer"/> <link rel="up" href="libmail-folder.html" title="mail::folder Native API reference"/> <link rel="prev" href="folder-destroy.html" title="mail::folder::destroy"/> <link rel="next" href="folder-getname.html" title="mail::folder::getName"/> <link xmlns="" rel="icon" href="icon.gif" type="image/gif"/> <meta xmlns="" name="MSSmartTagsPreventParsing" content="TRUE"/> <!-- Copyright 2002 - 2007 Double Precision, Inc. See COPYING for distribution information. --> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center" rowspan="1"> mail::folder::getMyRights</th> </tr> <tr> <td width="20%" align="left" rowspan="1" colspan="1"> <a accesskey="p" href="folder-destroy.html" shape="rect">Prev</a> </td> <th width="60%" align="center" rowspan="1" colspan="1"> <span class="structname">mail::folder</span> Native API reference</th> <td width="20%" align="right" rowspan="1" colspan="1">  <a accesskey="n" href="folder-getname.html" shape="rect">Next</a></td> </tr> </table> <hr/> </div> <div class="refentry" lang="en" xml:lang="en"> <a id="folder-getmyrights" shape="rect" name="folder-getmyrights"> </a> <div class="titlepage"/> <div class="refnamediv"> <h2>Name</h2> <p>mail::folder::getMyRights — Compute my access rights on a folder</p> </div> <div class="refsynopsisdiv"> <h2>Synopsis</h2> <div class="literallayout"> <p><br clear="none"/> <br clear="none"/> <br clear="none"/> <br clear="none"/> #include <libmail/mail.H><br clear="none"/> <br clear="none"/> <br clear="none"/> class myCallback : public mail::callback {<br clear="none"/> public:<br clear="none"/>     void success(std::string msg);<br clear="none"/>     void fail(std::string msg);<br clear="none"/> };<br clear="none"/></p> </div> <div class="funcsynopsis"> <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"> <tr> <td rowspan="1" colspan="1"><code class="funcdef">folder-><b class="fsfunc">getMyRights</b>(</code></td> <td rowspan="1" colspan="1">myCallback & </td> <td rowspan="1" colspan="1"><var class="pdparam">callback</var>,</td> </tr> <tr> <td rowspan="1" colspan="1"> </td> <td rowspan="1" colspan="1">std::string & </td> <td rowspan="1" colspan="1"><var class="pdparam">rights</var><code>)</code>;</td> </tr> </table> </div> </div> <div class="refsect1" lang="en" xml:lang="en"> <a id="id622764" shape="rect" name="id622764"> </a> <h2>USAGE</h2> <p>This function implements folder access control lists (ACLs). Access control lists define who is allowed to do certain operations on a folder, or on messages in the folder. Folder ACLs are implement only for IMAP accounts on IMAP servers that implement access control lists. This function will fail if <em class="replaceable"><code>folder</code></em> is not a folder on an IMAP server that supports access control lists.</p> <p>This function computes application's access rights on the <em class="parameter"><code>folder</code></em>. If this function succeeds (this function may fail if the requesting client does not have the required access to the folder), <em class="parameter"><code>rights</code></em> will be initialized by a text string that contains a list of character which describe the requested client's access rights on the folder.</p> <p>At this time, the following access rights are supported:</p> <div class="variablelist"> <dl> <dt><span class="term">“<span class="quote"><code class="literal">a</code></span>”</span></dt> <dd> <p>Administrator access: view and change folder access control lists.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">c</code></span>”</span></dt> <dd> <p>Create subfolders.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">e</code></span>”</span></dt> <dd> <p>Expunge deleted messages from the folder.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">i</code></span>”</span></dt> <dd> <p>Insert, or add messages to the folder.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">l</code></span>”</span></dt> <dd> <p>List, or view the folder's existence. If a folder does not have the “<span class="quote"><code class="literal">l</code></span>” access right, the server will not include this folder when it's asked to list all folders in the folder directory. However, if the “<span class="quote"><code class="literal">r</code></span>” access right is present, the folder may be opened if the folder's name is known.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">r</code></span>”</span></dt> <dd> <p>Read, or open the folder. An attempt to open the folder will fail without the “<span class="quote"><code class="literal">r</code></span>” access right, even if the folder's name is known.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">p</code></span>”</span></dt> <dd> <p>“<span class="quote">Post messages</span>” to the folder. This access right is currently listed in the ACL specification; however its intention is not clear, and most servers do not do anything useful with this access right. It is listed here for information purposes only.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">s</code></span>”</span></dt> <dd> <p>Allow changing the read/unread status of messages in the folder. The server will not automatically clear the <em class="structfield"><code>unread</code></em> message status flag on messages after they are read, or let this status flag be explicitly changed, without the “<span class="quote"><code class="literal">s</code></span>” access right.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">t</code></span>”</span></dt> <dd> <p>Allow tagging of messages as deleted or undeleted. The server will prohibit changing the messages' <em class="structfield"><code>deleted</code></em> message status flag without the “<span class="quote"><code class="literal">t</code></span>” access right.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">w</code></span>”</span></dt> <dd> <p>Allow changing the <em class="structfield"><code>draft</code></em>, <em class="structfield"><code>replied</code></em>, and <em class="structfield"><code>marked</code></em> message status flags. The server will not allow changes to these flags without the “<span class="quote"><code class="literal">w</code></span>” access right.</p> </dd> <dt><span class="term">“<span class="quote"><code class="literal">x</code></span>”</span></dt> <dd> <p>Allow this folder to be removed. The server will not this folder to be deleted without the “<span class="quote"><code class="literal">x</code></span>” access right.</p> </dd> </dl> </div> </div> <div class="refsect1" lang="en" xml:lang="en"> <a id="id623128" shape="rect" name="id623128"> </a> <h2>RETURN CODES AND CALLBACKS</h2> <p>The application must wait until <em class="parameter"><code>callback</code></em>'s <code class="function">success</code> or <code class="function">fail</code> method is invoked. The <code class="function">success</code> method is invoked when this request is succesfully processed. The <code class="function">fail</code> method is invoked if this request cannot be processed. The application must not destroy <em class="parameter"><code>callback</code></em> until either the <code class="function">success</code> or <code class="function">fail</code> method is invoked.</p> <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Note</h3> <p><em class="parameter"><code>callback</code></em>'s <code class="function">fail</code> method may be invoked even after other callback methods were invoked. This indicates that the request was partially completed before the error was encountered.</p> </div> </div> <div class="refsect1" lang="en" xml:lang="en"> <a id="id623220" shape="rect" name="id623220"> </a> <h2>SEE ALSO</h2> <p><a class="link" href="folder-delrights.html" title="mail::folder::delRights" shape="rect"><span class="citerefentry"><span class="refentrytitle">mail::account::delRights</span>(3x)</span></a>, <a class="link" href="mail-getfolderindexinfo.html" title="mail::account::getFolderIndexInfo" shape="rect"><span class="citerefentry"><span class="refentrytitle">mail::account::getFolderIndexInfo</span>(3x)</span></a>, <a class="link" href="folder-getrights.html" title="mail::folder::getRights" shape="rect"><span class="citerefentry"><span class="refentrytitle">mail::account::getRights</span>(3x)</span></a>, <a class="link" href="folder-setrights.html" title="mail::folder::setRights" shape="rect"><span class="citerefentry"><span class="refentrytitle">mail::account::setRights</span>(3x)</span></a>.</p> </div> </div> <div class="navfooter"> <hr/> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left" rowspan="1" colspan="1"> <a accesskey="p" href="folder-destroy.html" shape="rect">Prev</a> </td> <td width="20%" align="center" rowspan="1" colspan="1"> <a accesskey="u" href="libmail-folder.html" shape="rect">Up</a></td> <td width="40%" align="right" rowspan="1" colspan="1">  <a accesskey="n" href="folder-getname.html" shape="rect">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top" rowspan="1" colspan="1">mail::folder::destroy </td> <td width="20%" align="center" rowspan="1" colspan="1"> <a accesskey="h" href="index.html" shape="rect">Home</a> | <a accesskey="t" href="bk01-toc.html" shape="rect">ToC</a></td> <td width="40%" align="right" valign="top" rowspan="1" colspan="1"> mail::folder::getName</td> </tr> </table> </div> </body> </html>