Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 85dff41758625c26d7c6097135c8f737 > files > 75

cone-doc-0.78-3.fc12.x86_64.rpm

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  
  <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"/>

  <title>mail::folder::getRights</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-getpath.html" title="mail::folder::getPath"/>
  <link rel="next" href="folder-hasmessages.html" title="mail::folder::hasMessages"/>
  <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::getRights</th>
      </tr>

      <tr>
        <td width="20%" align="left" rowspan="1" colspan="1">
        <a accesskey="p" href="folder-getpath.html" shape="rect">Prev</a>&#160;</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">
        &#160;<a accesskey="n" href="folder-hasmessages.html" shape="rect">Next</a></td>
      </tr>
    </table>
    <hr/>
  </div>

  <div class="refentry" lang="en" xml:lang="en">
    <a id="folder-getrights" shape="rect" name="folder-getrights"> </a>

    <div class="titlepage"/>

    <div class="refnamediv">
      <h2>Name</h2>

      <p>mail::folder::getRights &#8212; Read access control
      list</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&#160;&lt;libmail/mail.H&gt;<br clear="none"/>
        <br clear="none"/>
        <br clear="none"/>
        class&#160;myCallback&#160;:&#160;public&#160;mail::callback&#160;{<br clear="none"/>

        public:<br clear="none"/>
        &#160;&#160;&#160;&#160;void&#160;success(std::string&#160;msg);<br clear="none"/>

        &#160;&#160;&#160;&#160;void&#160;fail(std::string&#160;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-&gt;<b class="fsfunc">getRights</b>(</code></td>

            <td rowspan="1" colspan="1">myCallback &amp;&#160;</td>

            <td rowspan="1" colspan="1"><var class="pdparam">callback</var>,</td>
          </tr>

          <tr>
            <td rowspan="1" colspan="1">&#160;</td>

            <td rowspan="1" colspan="1">
            std::list&lt;std::pair&lt;std::string, std::string&gt;
            &gt; &amp;&#160;</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="id625771" shape="rect" name="id625771"> </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 obtains <em class="parameter"><code>folder</code></em>'s entire access control
      list. 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 to an array of <em class="replaceable"><code>identifier</code></em>/<em class="replaceable"><code>accessrights</code></em> tuples.</p>

      <div class="refsect2" lang="en" xml:lang="en">
        <a id="id625830" shape="rect" name="id625830"> </a>

        <h3>Identifier</h3>

        <p>Not all servers support every one of the following
        access control list identifiers. See the server's
        documentation to check which access control list
        identifiers are implemented by the server:</p>

        <div class="variablelist">
          <dl>
            <dt><span class="term">&#8220;<span class="quote"><code class="literal">anonymous</code></span>&#8221;, or
            &#8220;<span class="quote"><code class="literal">anyone</code></span>&#8221;</span></dt>

            <dd>
              <p>This identifier refers to universal access rights
              given to everyone, including anonymous users (if
              supported by server).</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">authuser</code></span>&#8221;</span></dt>

            <dd>
              <p>Same as &#8220;<span class="quote">anyone</span>&#8221;, except for anonymous
              users. If the server does not implement anonymous
              access, then &#8220;<span class="quote">anonymous</span>&#8221;, &#8220;<span class="quote">anyone</span>&#8221;, and &#8220;<span class="quote">authuser</span>&#8221; are equivalent.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">owner</code></span>&#8221;</span></dt>

            <dd>
              <p>The owner of the mailbox that contains the
              folder.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">administrators</code></span>&#8221;</span></dt>

            <dd>
              <p>Any member of a group that's defined as an
              administrator group, in an implementation-defined
              way.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">user=</code><em class="replaceable"><code>username</code></em></span>&#8221;</span></dt>

            <dd>
              <p>A single system user, identified by <em class="replaceable"><code>username</code></em>.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">group=</code><em class="replaceable"><code>groupname</code></em></span>&#8221;</span></dt>

            <dd>
              <p>Any system user that's part of a group identified
              by <em class="replaceable"><code>groupname</code></em>. Groups are
              created and managed by IMAP server-specific tools.
              See the server's documentation for information on
              creating and managing groups (if the groups are even
              implemented by the server in the first place).</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote">-<em class="replaceable"><code>identifier</code></em></span>&#8221;</span></dt>

            <dd>
              <p>An access control list identifier may be prefixed
              by a &#8220;<span class="quote">-</span>&#8221;,
              which refers to a &#8220;<span class="quote">negative
              right</span>&#8221;. Negative rights explicitly
              revoke the associated access rights from the
              <em class="replaceable"><code>identifier</code></em>
              instead of granting the right.</p>

              <p>Negative rights are not implemented by all
              servers. See the server's documentation to check if
              the server implements negative access rights.</p>
            </dd>
          </dl>
        </div>

        <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
          <h3 class="title">Note</h3>

          <p><em class="replaceable"><code>username</code></em> and
          <em class="replaceable"><code>groupname</code></em> must
          specified using the <code class="literal">UTF-8</code>
          character set.</p>
        </div>
      </div>

      <div class="refsect2" lang="en" xml:lang="en">
        <a id="id626075" shape="rect" name="id626075"> </a>

        <h3>Access rights</h3>

        <p>At this time, the following access rights are
        supported:</p>

        <div class="variablelist">
          <dl>
            <dt><span class="term">&#8220;<span class="quote"><code class="literal">a</code></span>&#8221;</span></dt>

            <dd>
              <p>Administrator access: view and change folder
              access control lists.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">c</code></span>&#8221;</span></dt>

            <dd>
              <p>Create subfolders.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">e</code></span>&#8221;</span></dt>

            <dd>
              <p>Expunge deleted messages from the folder.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">i</code></span>&#8221;</span></dt>

            <dd>
              <p>Insert, or add messages to the folder.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">l</code></span>&#8221;</span></dt>

            <dd>
              <p>List, or view the folder's existence. If a folder
              does not have the &#8220;<span class="quote"><code class="literal">l</code></span>&#8221;
              access right, the server will not include this folder
              when it's asked to list all folders in the folder
              directory. However, if the &#8220;<span class="quote"><code class="literal">r</code></span>&#8221;
              access right is present, the folder may be opened if
              the folder's name is known.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">r</code></span>&#8221;</span></dt>

            <dd>
              <p>Read, or open the folder. An attempt to open the
              folder will fail without the &#8220;<span class="quote"><code class="literal">r</code></span>&#8221;
              access right, even if the folder's name is known.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">p</code></span>&#8221;</span></dt>

            <dd>
              <p>&#8220;<span class="quote">Post
              messages</span>&#8221; 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">&#8220;<span class="quote"><code class="literal">s</code></span>&#8221;</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
              &#8220;<span class="quote"><code class="literal">s</code></span>&#8221; access right.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">t</code></span>&#8221;</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 &#8220;<span class="quote"><code class="literal">t</code></span>&#8221;
              access right.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">w</code></span>&#8221;</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
              &#8220;<span class="quote"><code class="literal">w</code></span>&#8221; access right.</p>
            </dd>

            <dt><span class="term">&#8220;<span class="quote"><code class="literal">x</code></span>&#8221;</span></dt>

            <dd>
              <p>Allow this folder to be removed. The server will
              not this folder to be deleted without the
              &#8220;<span class="quote"><code class="literal">x</code></span>&#8221; access right.</p>
            </dd>
          </dl>
        </div>
      </div>
    </div>

    <div class="refsect1" lang="en" xml:lang="en">
      <a id="id626393" shape="rect" name="id626393"> </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="id626485" shape="rect" name="id626485"> </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="folder-getmyrights.html" title="mail::folder::getMyRights" shape="rect"><span class="citerefentry"><span class="refentrytitle">mail::account::getMyRights</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-getpath.html" shape="rect">Prev</a>&#160;</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">
        &#160;<a accesskey="n" href="folder-hasmessages.html" shape="rect">Next</a></td>
      </tr>

      <tr>
        <td width="40%" align="left" valign="top" rowspan="1" colspan="1">mail::folder::getPath&#160;</td>

        <td width="20%" align="center" rowspan="1" colspan="1">
        <a accesskey="h" href="index.html" shape="rect">Home</a>&#160;|&#160;<a accesskey="t" href="bk01-toc.html" shape="rect">ToC</a></td>

        <td width="40%" align="right" valign="top" rowspan="1" colspan="1">&#160;mail::folder::hasMessages</td>
      </tr>
    </table>
  </div>
</body>
</html>