Commit 991998cb authored by 's avatar
Browse files

removed the doc/ folder and added a .tgz version of it to avoid 4MB of documentation


git-svn-id: file:///home/svn/mapi/trunk@250 8d5bb341-7cf1-0310-8cf6-ba355fef3186
parent 2e2b5e90
This diff is collapsed.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): adm_ctrl.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>adm_ctrl.h</h1><a href="adm__ctrl_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="preprocessor">#ifndef ADM_CTRL_H</span>
00002 <span class="preprocessor"></span><span class="preprocessor">#define ADM_CTRL_H</span>
00003 <span class="preprocessor"></span>
00004 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
00005 <span class="preprocessor">#include &lt;regex.h&gt;</span>
00006 <span class="preprocessor">#include &lt;keynote.h&gt;</span>
00007
00008 <span class="comment">//#include "mapi.h"</span>
00009 <span class="preprocessor">#include "<a class="code" href="bytestream_8h.html">lib/bytestream.h</a>"</span>
00010 <span class="preprocessor">#include "<a class="code" href="config_8h.html">config.h</a>"</span>
00011
00018
<a name="l00019"></a><a class="code" href="adm__ctrl_8h.html#a0">00019</a> <span class="preprocessor">#define CHECK_KN_ERROR -1</span>
00020 <span class="preprocessor"></span>
<a name="l00021"></a><a class="code" href="adm__ctrl_8h.html#a1">00021</a> <span class="preprocessor">#define CHECK_SIGNATURE_ERROR -2</span>
00022 <span class="preprocessor"></span>
<a name="l00023"></a><a class="code" href="adm__ctrl_8h.html#a2">00023</a> <span class="preprocessor">#define CHECK_SYNTAX_ERROR -3</span>
00024 <span class="preprocessor"></span>
<a name="l00025"></a><a class="code" href="adm__ctrl_8h.html#a3">00025</a> <span class="preprocessor">#define CHECK_POLICY_ERROR -4</span>
00026 <span class="preprocessor"></span>
<a name="l00027"></a><a class="code" href="adm__ctrl_8h.html#a4">00027</a> <span class="preprocessor">#define CHECK_OTHER_ERROR -5</span>
00028 <span class="preprocessor"></span>
00029
00030 <span class="preprocessor">#if 0</span>
00031 <span class="preprocessor"></span>
00032 <span class="keyword">struct </span>authd_function_type_struct
00033 {
00034 <span class="keywordtype">char</span> *name;
00035 <span class="keywordtype">char</span> *processing;
00036 <span class="keywordtype">char</span> *memory;
00037 };
00039 <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="classauthd__function__type__struct.html">authd_function_type_struct</a> authd_function_type;
00040
00042
00043 <span class="keyword">struct </span>scampi_resources_struct
00044 {
00045 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> processing;
00046 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> memory;
00047 };
00049 <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="classscampi__resources__struct.html">scampi_resources_struct</a> scampi_resources;
00050 <span class="preprocessor">#endif</span>
00051 <span class="preprocessor"></span>
00052
<a name="l00054"></a><a class="code" href="structadm__ctrl__policy.html">00054</a> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__policy.html">adm_ctrl_policy</a>
00055 {
<a name="l00056"></a><a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo0">00056</a> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo0">data</a>[<a class="code" href="config_8h.html#a5">MAX_POLICY_SIZE</a>];
<a name="l00057"></a><a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo1">00057</a> <span class="keywordtype">char</span> **<a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo1">assertions</a>;
<a name="l00058"></a><a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo2">00058</a> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__policy.html#adm__ctrl__policyo2">assertions_num</a>;
00059 };
<a name="l00061"></a><a class="code" href="adm__ctrl_8h.html#a5">00061</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__policy.html">adm_ctrl_policy</a> <a class="code" href="adm__ctrl_8h.html#a5">adm_ctrl_policy_t</a>;
00062
00063
00065
<a name="l00066"></a><a class="code" href="structadm__ctrl__result.html">00066</a> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__result.html">adm_ctrl_result</a>
00067 {
<a name="l00068"></a><a class="code" href="structadm__ctrl__result.html#adm__ctrl__resulto0">00068</a> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__result.html#adm__ctrl__resulto0">PCV</a>;
<a name="l00069"></a><a class="code" href="structadm__ctrl__result.html#adm__ctrl__resulto1">00069</a> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__result.html#adm__ctrl__resulto1">db_update_cmd</a>[<a class="code" href="config_8h.html#a9">MAX_DB_UPDATE_CMD</a>];
00070 };
<a name="l00072"></a><a class="code" href="adm__ctrl_8h.html#a6">00072</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__result.html">adm_ctrl_result</a> <a class="code" href="adm__ctrl_8h.html#a6">adm_ctrl_result_t</a>;
00073
<a name="l00075"></a><a class="code" href="structadm__ctrl__pair.html">00075</a> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__pair.html">adm_ctrl_pair</a>
00076 {
<a name="l00077"></a><a class="code" href="structadm__ctrl__pair.html#adm__ctrl__pairo0">00077</a> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__pair.html#adm__ctrl__pairo0">name</a>[<a class="code" href="config_8h.html#a10">MAX_PAIR_NAME</a>];
<a name="l00078"></a><a class="code" href="structadm__ctrl__pair.html#adm__ctrl__pairo1">00078</a> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__pair.html#adm__ctrl__pairo1">value</a>[<a class="code" href="config_8h.html#a11">MAX_PAIR_VALUE</a>];
00079 };
<a name="l00081"></a><a class="code" href="adm__ctrl_8h.html#a7">00081</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__pair.html">adm_ctrl_pair</a> <a class="code" href="adm__ctrl_8h.html#a7">adm_ctrl_pair_t</a>;
00082
00084
<a name="l00086"></a><a class="code" href="structadm__ctrl__request.html">00086</a> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__request.html">adm_ctrl_request</a>
00087 {
<a name="l00089"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto0">00089</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto0">pubkey</a>[<a class="code" href="config_8h.html#a0">MAX_PUBKEY_SIZE</a>];
<a name="l00091"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto1">00091</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto1">credentials</a>[<a class="code" href="config_8h.html#a2">MAX_CREDENTIALS_SIZE</a>];
<a name="l00093"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto2">00093</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto2">nonce</a>;
<a name="l00095"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto3">00095</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto3">encrypted_nonce</a>[<a class="code" href="config_8h.html#a3">MAX_ENC_NONCE_SIZE</a>];
<a name="l00097"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto4">00097</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto4">encrypted_nonce_len</a>;
00098
00099 <span class="comment">// Replaced with name-value pair</span>
00101 <span class="comment"></span> <span class="comment">//char device_name[MAX_DEVICE_NAME_SIZE];</span>
00103 <span class="comment"></span> <span class="comment">//char app_domain[MAX_APP_DOMAIN_SIZE];</span>
00104
<a name="l00106"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto5">00106</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto5">pairs_num</a>;
<a name="l00108"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto6">00108</a> <a class="code" href="adm__ctrl_8h.html#a7">adm_ctrl_pair_t</a> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto6">pair_assertions</a>[<a class="code" href="config_8h.html#a12">MAX_PAIR_ASSERTIONS</a>];
00109
<a name="l00111"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto7">00111</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto7">functions_num</a>;
<a name="l00113"></a><a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto8">00113</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="structadm__ctrl__request.html#adm__ctrl__requesto8">function_list</a>[<a class="code" href="config_8h.html#a4">MAX_FUNCTION_LIST_SIZE</a>];
00114 };
<a name="l00116"></a><a class="code" href="adm__ctrl_8h.html#a8">00116</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structadm__ctrl__request.html">adm_ctrl_request</a> <a class="code" href="adm__ctrl_8h.html#a8">adm_ctrl_request_t</a>;;
00117
00118 <span class="keywordtype">int</span> <a class="code" href="adm__ctrl_8h.html#a9">adm_ctrl_load_policy</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *fn,adm_ctrl_policy_t *policy);
00119 <span class="keywordtype">int</span> <a class="code" href="adm__ctrl_8h.html#a10">adm_ctrl_decrypt_nonce</a>(<a class="code" href="structbytestream__struct.html">bytestream</a> *src,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *dst,<span class="keywordtype">char</span> *pub);
00120 <span class="keywordtype">int</span> <a class="code" href="adm__ctrl_8h.html#a11">adm_ctrl_check</a>(adm_ctrl_request_t *auth,adm_ctrl_policy_t *policy,adm_ctrl_result_t *res);
00121 <span class="keywordtype">int</span> <a class="code" href="adm__ctrl_8h.html#a12">adm_ctrl_authenticate</a>(adm_ctrl_request_t *auth);
00122 <span class="comment">//void scampi_set_function_types(authd_function_type *funcs,unsigned int num);</span>
00123 <span class="comment">//void scampi_clear_function_types();</span>
00124
00125 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jan 13 11:27:27 2004 for ADMISSION CONTROL DAEMON(authd) by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.5 </small></address>
</body>
</html>
This diff is collapsed.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): Annotated Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindexHL" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>ADMISSION CONTROL DAEMON(authd) Data Structures</h1>Here are the data structures with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__func.html">adm_ctrl_func</a></td><td class="indexvalue">Function type definition </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__func__instance.html">adm_ctrl_func_instance</a></td><td class="indexvalue">Function instance structure </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__funcarg.html">adm_ctrl_funcarg</a></td><td class="indexvalue">Function argument definition </td></tr>
<tr><td class="indexkey"><a class="el" href="unionadm__ctrl__funcarg__value.html">adm_ctrl_funcarg_value</a></td><td class="indexvalue">Function argument value </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__pair.html">adm_ctrl_pair</a></td><td class="indexvalue">Admission control name-value pair </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__policy.html">adm_ctrl_policy</a></td><td class="indexvalue">Admission control policy structure </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__request.html">adm_ctrl_request</a></td><td class="indexvalue">Admission control request structure </td></tr>
<tr><td class="indexkey"><a class="el" href="structadm__ctrl__result.html">adm_ctrl_result</a></td><td class="indexvalue">Admission control results structure </td></tr>
<tr><td class="indexkey"><a class="el" href="structbytestream__struct.html">bytestream_struct</a></td><td class="indexvalue">Bytestream stucture </td></tr>
<tr><td class="indexkey"><a class="el" href="structdarray__struct.html">darray_struct</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="unionsemun.html">semun</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="structslist.html">slist</a></td><td class="indexvalue">The definition of a single linked list </td></tr>
<tr><td class="indexkey"><a class="el" href="structslist__node.html">slist_node</a></td><td class="indexvalue">The definition of a single linked list node </td></tr>
<tr><td class="indexkey"><a class="el" href="structstack__struct.html">stack_struct</a></td><td class="indexvalue">The stack structure </td></tr>
<tr><td class="indexkey"><a class="el" href="structstring__buf__struct.html">string_buf_struct</a></td><td class="indexvalue">The string buffer structure </td></tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 13 11:27:27 2004 for ADMISSION CONTROL DAEMON(authd) by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.5 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): arith_parser.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>arith_parser.c File Reference</h1>Arithmetic expressions parsing library using unsigned long long numbers.
<a href="#_details">More...</a>
<p>
<code>#include &lt;stdlib.h&gt;</code><br>
<code>#include &lt;ctype.h&gt;</code><br>
<code>#include "<a class="el" href="stack_8h-source.html">lib/stack.h</a>"</code><br>
<code>#include "<a class="el" href="string__buf_8h-source.html">lib/string_buf.h</a>"</code><br>
<code>#include "<a class="el" href="arith__parser_8h-source.html">arith_parser.h</a>"</code><br>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="arith__parser_8c.html#a0">postfix_expr_parse</a> (const char *s, float *res)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse a postfix arithmetic expression. <a href="#a0"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="arith__parser_8c.html#a1">infix_expr_parse</a> (const char *s, float *res)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse an infix arithmetic expression. <a href="#a1"></a><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Arithmetic expressions parsing library using unsigned long long numbers.
<p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="a1" doxytag="arith_parser.c::infix_expr_parse" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> char infix_expr_parse </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>float *&nbsp;</td>
<td class="mdname" nowrap> <em>res</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Parse an infix arithmetic expression.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>s</em>&nbsp;</td><td>String containing the expression </td></tr>
<tr><td valign=top><em>res</em>&nbsp;</td><td>Unsigned long long pointer to place result</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 on success, or 1 on failure</dd></dl>
</td>
</tr>
</table>
<a class="anchor" name="a0" doxytag="arith_parser.c::postfix_expr_parse" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> char postfix_expr_parse </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>float *&nbsp;</td>
<td class="mdname" nowrap> <em>res</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Parse a postfix arithmetic expression.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>s</em>&nbsp;</td><td>String containing the expression </td></tr>
<tr><td valign=top><em>res</em>&nbsp;</td><td>Unsigned long long pointer to place result</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 on success, or 1 on failure</dd></dl>
</td>
</tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 13 11:27:27 2004 for ADMISSION CONTROL DAEMON(authd) by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.5 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): arith_parser.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>arith_parser.h</h1><a href="arith__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="preprocessor">#ifndef ARITH_PARSER_H</span>
00002 <span class="preprocessor"></span><span class="preprocessor">#define ARITH_PARSER_H</span>
00003 <span class="preprocessor"></span>
00009
<a name="l00010"></a><a class="code" href="arith__parser_8h.html#a0">00010</a> <span class="preprocessor">#define ARITH_PARSER_MAX_NUMBER_SIZE 64</span>
00011 <span class="preprocessor"></span>
00012 <span class="keywordtype">char</span> <a class="code" href="arith__parser_8h.html#a1">postfix_expr_parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *,<span class="keywordtype">float</span> *);
00013 <span class="keywordtype">char</span> <a class="code" href="arith__parser_8h.html#a2">infix_expr_parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *,<span class="keywordtype">float</span> *);
00014
00015 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jan 13 11:27:27 2004 for ADMISSION CONTROL DAEMON(authd) by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.5 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): arith_parser.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>arith_parser.h File Reference</h1>Definitions for the arithmetic expression library.
<a href="#_details">More...</a>
<p>
<p>
<a href="arith__parser_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="arith__parser_8h.html#a0">ARITH_PARSER_MAX_NUMBER_SIZE</a>&nbsp;&nbsp;&nbsp;64</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specifies the maximum length of supported numbers. <a href="#a0"></a><br><br></td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="arith__parser_8h.html#a1">postfix_expr_parse</a> (const char *, float *)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse a postfix arithmetic expression. <a href="#a1"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="arith__parser_8h.html#a2">infix_expr_parse</a> (const char *, float *)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse an infix arithmetic expression. <a href="#a2"></a><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Definitions for the arithmetic expression library.
<p>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="a0" doxytag="arith_parser.h::ARITH_PARSER_MAX_NUMBER_SIZE" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> #define ARITH_PARSER_MAX_NUMBER_SIZE&nbsp;&nbsp;&nbsp;64
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Specifies the maximum length of supported numbers.
<p>
</td>
</tr>
</table>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="a2" doxytag="arith_parser.h::infix_expr_parse" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> char infix_expr_parse </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>float *&nbsp;</td>
<td class="mdname" nowrap> <em>res</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Parse an infix arithmetic expression.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>s</em>&nbsp;</td><td>String containing the expression </td></tr>
<tr><td valign=top><em>res</em>&nbsp;</td><td>Unsigned long long pointer to place result</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 on success, or 1 on failure</dd></dl>
</td>
</tr>
</table>
<a class="anchor" name="a1" doxytag="arith_parser.h::postfix_expr_parse" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> char postfix_expr_parse </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>float *&nbsp;</td>
<td class="mdname" nowrap> <em>res</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Parse a postfix arithmetic expression.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>s</em>&nbsp;</td><td>String containing the expression </td></tr>
<tr><td valign=top><em>res</em>&nbsp;</td><td>Unsigned long long pointer to place result</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 on success, or 1 on failure</dd></dl>
</td>
</tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 13 11:27:27 2004 for ADMISSION CONTROL DAEMON(authd) by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.5 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ADMISSION CONTROL DAEMON(authd): authd.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>authd.c File Reference</h1>The authd admission control daemon.
<a href="#_details">More...</a>
<p>
<code>#include &lt;stdio.h&gt;</code><br>
<code>#include &lt;sys/types.h&gt;</code><br>
<code>#include &lt;sys/stat.h&gt;</code><br>
<code>#include &lt;sys/param.h&gt;</code><br>
<code>#include &lt;sys/ipc.h&gt;</code><br>
<code>#include &lt;unistd.h&gt;</code><br>
<code>#include &lt;signal.h&gt;</code><br>
<code>#include &lt;stdlib.h&gt;</code><br>
<code>#include &lt;string.h&gt;</code><br>
<code>#include "<a class="el" href="shm__sync_8h-source.html">shm_sync.h</a>"</code><br>
<code>#include "<a class="el" href="shm_8h-source.html">shm.h</a>"</code><br>
<code>#include "<a class="el" href="adm__ctrl_8h-source.html">adm_ctrl.h</a>"</code><br>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a6">print_msg</a> (int type, const char *s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Prints messages to syslog and additionally to stdout if the process isn't running as a daemon. <a href="#a6"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a7">shutdown</a> (int data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shutdown the process. <a href="#a7"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a8">main</a> (int argc, char **argv)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The main function of the process. <a href="#a8"></a><br><br></td></tr>
<tr><td colspan=2><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a0">shm_addr</a> = NULL</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pointer to the shared memory segment. <a href="#a0"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a1">shm_id</a> = -1</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shared memory segment id. <a href="#a1"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a2">sem_id</a> = -1</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Semaphore set id. <a href="#a2"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a3">isdaemon</a> = 1</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flag whether this process is a daemon. <a href="#a3"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structadm__ctrl__policy.html">adm_ctrl_policy_t</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a4">policy</a> = { "", NULL, 0 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The policy data. <a href="#a4"></a><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="authd_8c.html#a5">exec_name</a> = NULL</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The real name of the daemon. <a href="#a5"></a><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The authd admission control daemon.
<p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="a8" doxytag="authd.c::main" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> int main </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>argc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>char **&nbsp;</td>
<td class="mdname" nowrap> <em>argv</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
The main function of the process.
<p>
</td>
</tr>
</table>
<a class="anchor" name="a6" doxytag="authd.c::print_msg" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void print_msg </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>