Set the userdb path to be /etc/courier/userdb.
[hcoop/debian/courier-authlib.git] / auth_getoption.html
CommitLineData
d9898ee8 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" href="style.css" type="text/css"/><meta name="generator" content="DocBook XSL Stylesheets V1.72.0"/><link rel="start" 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
4Copyright 1998 - 2007 Double Precision, Inc. See COPYING for distribution
5information.
6
7--></head><body><div class="refentry" lang="en" xml:lang="en"><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" summary="Function synopsis" cellspacing="0" cellpadding="0"><tr><td rowspan="1" colspan="1"><code class="funcdef">char *value=<b class="fsfunc">auth_getoption</b>(</code></td><td rowspan="1" colspan="1">const char * </td><td rowspan="1" colspan="1"><var class="pdparam">options</var>, </td></tr><tr><td rowspan="1" colspan="1"> </td><td rowspan="1" colspan="1">const char * </td><td rowspan="1" colspan="1"><var class="pdparam">keyword</var><code>)</code>;</td></tr></table></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="id281715" shape="rect"> </a><h2>DESCRIPTION</h2><p>
10This is a convenience function for parsing account options, as received
11by the callback function invoked by
12<a href="auth_generic.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_generic</span>(3)</span></a>,
13<a href="auth_login.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_login</span>(3)</span></a>,
14<a href="auth_getuserinfo.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_getuserinfo</span>(3)</span></a>,
15and
16<a 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>).
20As described in
21<a 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"><em class="replaceable"><code>keyword</code></em>=<em class="replaceable"><code>value</code></em></span>”
24pairs.</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" lang="en" xml:lang="en"><a id="id282620" shape="rect"> </a><h2>RETURNS</h2><p>
28If
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>.
33Otherwise
34<code class="function">auth_getoption</code> allocates a buffer for
35<em class="replaceable"><code>value</code></em>, and returns it.
36It is the caller's responsibility to
37<span class="citerefentry"><span class="refentrytitle">free</span>(3)</span>
38the 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
41allocate a buffer.</p></div><div class="refsect1" lang="en" xml:lang="en"><a id="id282705" shape="rect"> </a><h2>SEE ALSO</h2><p>
42<a href="authlib.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">authlib</span>(3)</span></a>,
43
44<a href="auth_generic.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_generic</span>(3)</span></a>,
45
46<a href="auth_login.html" target="_top" shape="rect"><span class="citerefentry"><span class="refentrytitle">auth_login</span>(3)</span></a>,
47
48<a 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>