debian release
[hcoop/debian/courier-authlib.git] / auth_getoption.html
1 <?xml version="1.0"?>
2 <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>auth_getoption</title><link rel="stylesheet" type="text/css" href="style.css"/><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"/><link rel="home" href="#auth-getoption" title="auth_getoption"/><link xmlns="" rel="stylesheet" type="text/css" href="manpage.css"/><meta xmlns="" name="MSSmartTagsPreventParsing" content="TRUE"/><link xmlns="" rel="icon" href="icon.gif" type="image/gif"/><!--
3
4 Copyright 1998 - 2009 Double Precision, Inc. See COPYING for distribution
5 information.
6
7 --></head><body><div class="refentry"><a id="auth-getoption" shape="rect"> </a><div class="titlepage"/><div class="refnamediv"><h2>Name</h2><p>auth_getoption — Search an option string</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="literallayout"><p><br clear="none"/>
8 #include &lt;courierauth.h&gt;<br clear="none"/>
9 </p></div><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td rowspan="1" colspan="1"><code class="funcdef">char *value=<strong>auth_getoption</strong>(</code></td><td rowspan="1" colspan="1">const char *<var class="pdparam">options</var>, </td></tr><tr><td rowspan="1" colspan="1"> </td><td rowspan="1" colspan="1">const char *<var class="pdparam">keyword</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a id="idm247876926096" shape="rect"> </a><h2>DESCRIPTION</h2><p>
10 This is a convenience function for parsing account options, as received
11 by the callback function invoked by
12 <a class="ulink" href="auth_generic.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_generic</span>(3)</span></a>,
13 <a class="ulink" href="auth_login.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_login</span>(3)</span></a>,
14 <a class="ulink" href="auth_getuserinfo.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_getuserinfo</span>(3)</span></a>,
15 and
16 <a class="ulink" href="auth_passwd.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_passwd</span>(3)</span></a>.</p><p>
17 <em class="parameter"><code>options</code></em> is the
18 <em class="structfield"><code>options</code></em> field from
19 <span class="structname">authinfo</span> (which can be <code class="literal">NULL</code>).
20 As described in
21 <a class="ulink" href="auth_generic.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_generic</span>(3)</span></a>
22 (and the others), it is a comma-separated list of
23 <span class="quote"><span class="quote"><em class="replaceable"><code>keyword</code></em>=<em class="replaceable"><code>value</code></em></span></span>
24 pairs.</p><p>
25 <code class="function">auth_getoption</code> searches
26 <em class="parameter"><code>options</code></em> for a
27 <em class="parameter"><code>keyword</code></em>.</p></div><div class="refsect1"><a id="idm247876127376" shape="rect"> </a><h2>RETURNS</h2><p>
28 If
29 <em class="parameter"><code>options</code></em> does not have the
30 <em class="parameter"><code>keyword</code></em>,
31 <code class="function">auth_getoption</code> returns <code class="literal">NULL</code> with
32 <code class="varname">errno</code> set to <code class="literal">ENOENT</code>.
33 Otherwise
34 <code class="function">auth_getoption</code> allocates a buffer for
35 <em class="replaceable"><code>value</code></em>, and returns it.
36 It is the caller's responsibility to
37 <span class="citerefentry"><span class="refentrytitle">free</span>(3)</span>
38 the returned buffer.</p><p>
39 <code class="function">auth_getoption</code> returns <code class="literal">NULL</code> with
40 <code class="varname">errno</code> set to <code class="literal">ENOMEM</code> if it cannot
41 allocate a buffer.</p></div><div class="refsect1"><a id="idm247880368912" shape="rect"> </a><h2>SEE ALSO</h2><p>
42 <a class="ulink" href="authlib.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">authlib</span>(3)</span></a>,
43
44 <a class="ulink" href="auth_generic.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_generic</span>(3)</span></a>,
45
46 <a class="ulink" href="auth_login.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_login</span>(3)</span></a>,
47
48 <a class="ulink" href="auth_getuserinfo.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_getuserinfo</span>(3)</span></a>.</p></div></div></body></html>