Commit fbc2b5278f1570e90f96045468f2084284cc788e

Authored by Georg Hopp
1 parent 445fc192

now just ignore doc dir, as it can be generated

Too many changes to show.

To preserve performance only 48 of 48+ files are displayed.

1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Structures</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
19   - <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>Data Structures</h1>Here are the data structures with brief descriptions:<table>
25   - <tr><td class="indexkey"><a class="el" href="structtAppConfig.html">tAppConfig</a></td><td class="indexvalue"></td></tr>
26   - <tr><td class="indexkey"><a class="el" href="structtClient.html">tClient</a></td><td class="indexvalue"></td></tr>
27   - <tr><td class="indexkey"><a class="el" href="structtHttpHeader.html">tHttpHeader</a></td><td class="indexvalue"></td></tr>
28   - <tr><td class="indexkey"><a class="el" href="structtHttpHeaderLine.html">tHttpHeaderLine</a></td><td class="indexvalue"></td></tr>
29   - <tr><td class="indexkey"><a class="el" href="structtHttpRequest.html">tHttpRequest</a></td><td class="indexvalue"></td></tr>
30   - <tr><td class="indexkey"><a class="el" href="structtRequestLine.html">tRequestLine</a></td><td class="indexvalue"></td></tr>
31   - <tr><td class="indexkey"><a class="el" href="structtServer.html">tServer</a></td><td class="indexvalue"></td></tr>
32   -</table>
33   -</div>
34   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
35   -<a href="http://www.doxygen.org/index.html">
36   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
37   -</body>
38   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/appConfig.h Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>include/appConfig.h</h1><a href="appConfig_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef __APP_CONFIG_H__</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define __APP_CONFIG_H__</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor"></span>
25   -<a name="l00004"></a><a class="code" href="appConfig_8h.html#f77ed3e65a7b1a9341603d152a1404df">00004</a> <span class="preprocessor">#define MAXPENDING 10 </span><span class="comment">/* Maximum outstanding connection requests */</span>
26   -<a name="l00005"></a><a class="code" href="appConfig_8h.html#ce5c08f66edfc6ae44edaeef6b6101b6">00005</a> <span class="preprocessor">#define MAXCLIENTS 1000 </span><span class="comment">/* Maximum connection handled in paralell */</span>
27   -<a name="l00006"></a><a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">00006</a> <span class="preprocessor">#define READBUFSIZE 2048 </span><span class="comment">/* Size of receive buffer */</span>
28   -<a name="l00007"></a><a class="code" href="appConfig_8h.html#3db4dba8d56385b62759b89c98cae447">00007</a> <span class="preprocessor">#define DEFAULTPORT 8801 </span><span class="comment">/* default port for service */</span>
29   -<a name="l00008"></a><a class="code" href="appConfig_8h.html#0672e2d34f3bbe2f6cdad6f307b9d1cf">00008</a> <span class="preprocessor">#define DEFAULTPATH "logfiles"</span>
30   -<a name="l00009"></a><a class="code" href="appConfig_8h.html#9a98b2d0f973e357020c1274ec5b56c0">00009</a> <span class="preprocessor"></span><span class="preprocessor">#define LOGNAMEPATTERN "log-%Y-%m-%d_%Hh"</span>
31   -<a name="l00010"></a>00010 <span class="preprocessor"></span>
32   -<a name="l00011"></a>00011 <span class="preprocessor">#undef MAX</span>
33   -<a name="l00012"></a><a class="code" href="appConfig_8h.html#acc3ee1a7f283f8ef65cea31f4436a95">00012</a> <span class="preprocessor"></span><span class="preprocessor">#define MAX(x,y) ((x) &gt; (y) ? (x) : (y))</span>
34   -<a name="l00013"></a>00013 <span class="preprocessor"></span>
35   -<a name="l00014"></a>00014 <span class="preprocessor">#undef MIN</span>
36   -<a name="l00015"></a><a class="code" href="appConfig_8h.html#74e75242132eaabbc1c512488a135926">00015</a> <span class="preprocessor"></span><span class="preprocessor">#define MIN(x,y) ((x) &lt; (y) ? (x) : (y))</span>
37   -<a name="l00016"></a>00016 <span class="preprocessor"></span>
38   -<a name="l00017"></a><a class="code" href="structtAppConfig.html">00017</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
39   -<a name="l00018"></a><a class="code" href="structtAppConfig.html#9a20fbb501c68675f88764f1dcb42684">00018</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>;
40   -<a name="l00019"></a><a class="code" href="structtAppConfig.html#d5d5f9bd2f4f0dd2cd259e50c4d149bf">00019</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> doDaemon;
41   -<a name="l00020"></a><a class="code" href="structtAppConfig.html#1bef5de806f77de1c307062e9fa84e4f">00020</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> maxPending;
42   -<a name="l00021"></a><a class="code" href="structtAppConfig.html#3e4960a8eb8e1eac506bd651453faecc">00021</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> port;
43   -<a name="l00022"></a><a class="code" href="structtAppConfig.html#1b87fb5e17055c70a233387374d8342e">00022</a> <span class="keywordtype">char</span> logPath[513];
44   -<a name="l00023"></a><a class="code" href="structtAppConfig.html#58b889074da91d9de3ef14aa34f97795">00023</a> <span class="keywordtype">char</span> namePat[513];
45   -<a name="l00024"></a>00024 } <a class="code" href="structtAppConfig.html">tAppConfig</a>;
46   -<a name="l00025"></a>00025
47   -<a name="l00026"></a>00026 <span class="keywordtype">int</span>
48   -<a name="l00027"></a>00027 <a class="code" href="appConfig_8h.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine</a>(<a class="code" href="structtAppConfig.html">tAppConfig</a> * config, <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[]);
49   -<a name="l00028"></a>00028
50   -<a name="l00029"></a>00029 <span class="preprocessor">#endif // __APP_CONFIG_H__</span>
51   -</pre></div></div>
52   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
53   -<a href="http://www.doxygen.org/index.html">
54   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
55   -</body>
56   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/appConfig.h File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>include/appConfig.h File Reference</h1>
25   -<p>
26   -<a href="appConfig_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
27   -<tr><td></td></tr>
28   -<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
29   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtAppConfig.html">tAppConfig</a></td></tr>
30   -
31   -<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
32   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#f77ed3e65a7b1a9341603d152a1404df">MAXPENDING</a>&nbsp;&nbsp;&nbsp;10</td></tr>
33   -
34   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#ce5c08f66edfc6ae44edaeef6b6101b6">MAXCLIENTS</a>&nbsp;&nbsp;&nbsp;1000</td></tr>
35   -
36   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>&nbsp;&nbsp;&nbsp;2048</td></tr>
37   -
38   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#3db4dba8d56385b62759b89c98cae447">DEFAULTPORT</a>&nbsp;&nbsp;&nbsp;8801</td></tr>
39   -
40   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#0672e2d34f3bbe2f6cdad6f307b9d1cf">DEFAULTPATH</a>&nbsp;&nbsp;&nbsp;&quot;logfiles&quot;</td></tr>
41   -
42   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#9a98b2d0f973e357020c1274ec5b56c0">LOGNAMEPATTERN</a>&nbsp;&nbsp;&nbsp;&quot;log-%Y-%m-%d_%Hh&quot;</td></tr>
43   -
44   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#acc3ee1a7f283f8ef65cea31f4436a95">MAX</a>(x, y)&nbsp;&nbsp;&nbsp;((x) &gt; (y) ? (x) : (y))</td></tr>
45   -
46   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#74e75242132eaabbc1c512488a135926">MIN</a>(x, y)&nbsp;&nbsp;&nbsp;((x) &lt; (y) ? (x) : (y))</td></tr>
47   -
48   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
49   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="appConfig_8h.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine</a> (<a class="el" href="structtAppConfig.html">tAppConfig</a> *config, int argc, char *argv[])</td></tr>
50   -
51   -</table>
52   -<hr><h2>Define Documentation</h2>
53   -<a class="anchor" name="0672e2d34f3bbe2f6cdad6f307b9d1cf"></a><!-- doxytag: member="appConfig.h::DEFAULTPATH" ref="0672e2d34f3bbe2f6cdad6f307b9d1cf" args="" -->
54   -<div class="memitem">
55   -<div class="memproto">
56   - <table class="memname">
57   - <tr>
58   - <td class="memname">#define DEFAULTPATH&nbsp;&nbsp;&nbsp;&quot;logfiles&quot; </td>
59   - </tr>
60   - </table>
61   -</div>
62   -<div class="memdoc">
63   -
64   -<p>
65   -
66   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00008">8</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
67   -
68   -</div>
69   -</div><p>
70   -<a class="anchor" name="3db4dba8d56385b62759b89c98cae447"></a><!-- doxytag: member="appConfig.h::DEFAULTPORT" ref="3db4dba8d56385b62759b89c98cae447" args="" -->
71   -<div class="memitem">
72   -<div class="memproto">
73   - <table class="memname">
74   - <tr>
75   - <td class="memname">#define DEFAULTPORT&nbsp;&nbsp;&nbsp;8801 </td>
76   - </tr>
77   - </table>
78   -</div>
79   -<div class="memdoc">
80   -
81   -<p>
82   -
83   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00007">7</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
84   -
85   -</div>
86   -</div><p>
87   -<a class="anchor" name="9a98b2d0f973e357020c1274ec5b56c0"></a><!-- doxytag: member="appConfig.h::LOGNAMEPATTERN" ref="9a98b2d0f973e357020c1274ec5b56c0" args="" -->
88   -<div class="memitem">
89   -<div class="memproto">
90   - <table class="memname">
91   - <tr>
92   - <td class="memname">#define LOGNAMEPATTERN&nbsp;&nbsp;&nbsp;&quot;log-%Y-%m-%d_%Hh&quot; </td>
93   - </tr>
94   - </table>
95   -</div>
96   -<div class="memdoc">
97   -
98   -<p>
99   -
100   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00009">9</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
101   -
102   -</div>
103   -</div><p>
104   -<a class="anchor" name="acc3ee1a7f283f8ef65cea31f4436a95"></a><!-- doxytag: member="appConfig.h::MAX" ref="acc3ee1a7f283f8ef65cea31f4436a95" args="(x, y)" -->
105   -<div class="memitem">
106   -<div class="memproto">
107   - <table class="memname">
108   - <tr>
109   - <td class="memname">#define MAX </td>
110   - <td>(</td>
111   - <td class="paramtype">x, <tr>
112   - <td class="paramkey"></td>
113   - <td></td>
114   - <td class="paramtype">y&nbsp;</td>
115   - <td class="paramname"> </td>
116   - <td>&nbsp;)&nbsp;</td>
117   - <td>&nbsp;&nbsp;&nbsp;((x) &gt; (y) ? (x) : (y))</td>
118   - </tr>
119   - </table>
120   -</div>
121   -<div class="memdoc">
122   -
123   -<p>
124   -
125   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00012">12</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
126   -
127   -</div>
128   -</div><p>
129   -<a class="anchor" name="ce5c08f66edfc6ae44edaeef6b6101b6"></a><!-- doxytag: member="appConfig.h::MAXCLIENTS" ref="ce5c08f66edfc6ae44edaeef6b6101b6" args="" -->
130   -<div class="memitem">
131   -<div class="memproto">
132   - <table class="memname">
133   - <tr>
134   - <td class="memname">#define MAXCLIENTS&nbsp;&nbsp;&nbsp;1000 </td>
135   - </tr>
136   - </table>
137   -</div>
138   -<div class="memdoc">
139   -
140   -<p>
141   -
142   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00005">5</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
143   -
144   -</div>
145   -</div><p>
146   -<a class="anchor" name="f77ed3e65a7b1a9341603d152a1404df"></a><!-- doxytag: member="appConfig.h::MAXPENDING" ref="f77ed3e65a7b1a9341603d152a1404df" args="" -->
147   -<div class="memitem">
148   -<div class="memproto">
149   - <table class="memname">
150   - <tr>
151   - <td class="memname">#define MAXPENDING&nbsp;&nbsp;&nbsp;10 </td>
152   - </tr>
153   - </table>
154   -</div>
155   -<div class="memdoc">
156   -
157   -<p>
158   -
159   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00004">4</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
160   -
161   -</div>
162   -</div><p>
163   -<a class="anchor" name="74e75242132eaabbc1c512488a135926"></a><!-- doxytag: member="appConfig.h::MIN" ref="74e75242132eaabbc1c512488a135926" args="(x, y)" -->
164   -<div class="memitem">
165   -<div class="memproto">
166   - <table class="memname">
167   - <tr>
168   - <td class="memname">#define MIN </td>
169   - <td>(</td>
170   - <td class="paramtype">x, <tr>
171   - <td class="paramkey"></td>
172   - <td></td>
173   - <td class="paramtype">y&nbsp;</td>
174   - <td class="paramname"> </td>
175   - <td>&nbsp;)&nbsp;</td>
176   - <td>&nbsp;&nbsp;&nbsp;((x) &lt; (y) ? (x) : (y))</td>
177   - </tr>
178   - </table>
179   -</div>
180   -<div class="memdoc">
181   -
182   -<p>
183   -
184   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00015">15</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
185   -
186   -</div>
187   -</div><p>
188   -<a class="anchor" name="a0534241791f23ec8098503582406166"></a><!-- doxytag: member="appConfig.h::READBUFSIZE" ref="a0534241791f23ec8098503582406166" args="" -->
189   -<div class="memitem">
190   -<div class="memproto">
191   - <table class="memname">
192   - <tr>
193   - <td class="memname">#define READBUFSIZE&nbsp;&nbsp;&nbsp;2048 </td>
194   - </tr>
195   - </table>
196   -</div>
197   -<div class="memdoc">
198   -
199   -<p>
200   -
201   -<p>Definition at line <a class="el" href="appConfig_8h-source.html#l00006">6</a> of file <a class="el" href="appConfig_8h-source.html">appConfig.h</a>.</p>
202   -
203   -</div>
204   -</div><p>
205   -<hr><h2>Function Documentation</h2>
206   -<a class="anchor" name="3755d793d10d6e5793ed5086a0b22964"></a><!-- doxytag: member="appConfig.h::handleCmdLine" ref="3755d793d10d6e5793ed5086a0b22964" args="(tAppConfig *config, int argc, char *argv[])" -->
207   -<div class="memitem">
208   -<div class="memproto">
209   - <table class="memname">
210   - <tr>
211   - <td class="memname">int handleCmdLine </td>
212   - <td>(</td>
213   - <td class="paramtype"><a class="el" href="structtAppConfig.html">tAppConfig</a> *&nbsp;</td>
214   - <td class="paramname"> <em>config</em>, </td>
215   - </tr>
216   - <tr>
217   - <td class="paramkey"></td>
218   - <td></td>
219   - <td class="paramtype">int&nbsp;</td>
220   - <td class="paramname"> <em>argc</em>, </td>
221   - </tr>
222   - <tr>
223   - <td class="paramkey"></td>
224   - <td></td>
225   - <td class="paramtype">char *&nbsp;</td>
226   - <td class="paramname"> <em>argv</em>[]</td><td>&nbsp;</td>
227   - </tr>
228   - <tr>
229   - <td></td>
230   - <td>)</td>
231   - <td></td><td></td><td></td>
232   - </tr>
233   - </table>
234   -</div>
235   -<div class="memdoc">
236   -
237   -<p>
238   -
239   -<p>Definition at line <a class="el" href="handleCmdLine_8c-source.html#l00010">10</a> of file <a class="el" href="handleCmdLine_8c-source.html">handleCmdLine.c</a>.</p>
240   -
241   -</div>
242   -</div><p>
243   -</div>
244   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
245   -<a href="http://www.doxygen.org/index.html">
246   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
247   -</body>
248   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Alphabetical List</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
19   - <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>Data Structure Index</h1><p><div class="qindex"><a class="qindex" href="#letter_T">T</a></div><p>
25   -<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
26   -<tr><td><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;T&nbsp;&nbsp;</div></td></tr></table>
27   -</td><td><a class="el" href="structtClient.html">tClient</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structtHttpHeaderLine.html">tHttpHeaderLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structtRequestLine.html">tRequestLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structtServer.html">tServer</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="structtAppConfig.html">tAppConfig</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structtHttpHeader.html">tHttpHeader</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structtHttpRequest.html">tHttpRequest</a>&nbsp;&nbsp;&nbsp;</td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_T">T</a></div><p>
28   -</div>
29   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
30   -<a href="http://www.doxygen.org/index.html">
31   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
32   -</body>
33   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/commonReader/clientClose.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>reader/commonReader/clientClose.c</h1><a href="clientClose_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">/* for free() */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;unistd.h&gt;</span> <span class="comment">/* for close() */</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span> <span class="comment">/* for shutdown() */</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;string.h&gt;</span> <span class="comment">/* for memset and stuff */</span>
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;expat.h&gt;</span>
28   -<a name="l00007"></a>00007
29   -<a name="l00008"></a>00008 <span class="preprocessor">#include "../../include/client.h"</span>
30   -<a name="l00009"></a>00009 <span class="preprocessor">#include "../../include/monitor.h"</span>
31   -<a name="l00010"></a>00010 <span class="preprocessor">#include "../../include/httpRequest.h"</span>
32   -<a name="l00011"></a>00011
33   -<a name="l00012"></a><a class="code" href="clientClose_8c.html#a9dad65338aa78062b23a924ae1d2b59">00012</a> <span class="keywordtype">void</span> <a class="code" href="client_8h.html#a9dad65338aa78062b23a924ae1d2b59">clientClose</a>(<a class="code" href="structtClient.html">tClient</a> * client)
34   -<a name="l00013"></a>00013 {
35   -<a name="l00014"></a>00014 <span class="keywordflow">if</span> (0 != <a class="code" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>) {
36   -<a name="l00015"></a>00015 syslog(LOG_INFO, <span class="stringliteral">"closing socket for %s"</span>, client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>);
37   -<a name="l00016"></a>00016 }
38   -<a name="l00017"></a>00017
39   -<a name="l00018"></a>00018 <span class="comment">/* close socket an remove from fd_set */</span>
40   -<a name="l00019"></a>00019 shutdown(client-&gt;<a class="code" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">socket</a>, SHUT_RDWR);
41   -<a name="l00020"></a>00020 close(client-&gt;<a class="code" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">socket</a>);
42   -<a name="l00021"></a>00021
43   -<a name="l00022"></a>00022 <span class="comment">/* free readBuffer */</span>
44   -<a name="l00023"></a>00023 <span class="keywordflow">if</span> (NULL != client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>) {
45   -<a name="l00024"></a>00024 free(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>);
46   -<a name="l00025"></a>00025 client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> = NULL;
47   -<a name="l00026"></a>00026 }
48   -<a name="l00027"></a>00027 <span class="keywordflow">if</span> (NULL != client-&gt;<a class="code" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">writeBuffer</a>) {
49   -<a name="l00028"></a>00028 free(client-&gt;<a class="code" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">writeBuffer</a>);
50   -<a name="l00029"></a>00029 client-&gt;<a class="code" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">writeBuffer</a> = NULL;
51   -<a name="l00030"></a>00030 }
52   -<a name="l00031"></a>00031 client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> = 0;
53   -<a name="l00032"></a>00032 client-&gt;<a class="code" href="structtClient.html#97da33ce83548b5900f11e29d5cec8d1">writePos</a> = 0;
54   -<a name="l00033"></a>00033
55   -<a name="l00034"></a>00034 <a class="code" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">freeHttpHeader</a>(&amp;(client-&gt;<a class="code" href="structtClient.html#33623f89815acd8a2822a1f04cafe844">httpHeader</a>));
56   -<a name="l00035"></a>00035
57   -<a name="l00036"></a>00036 XML_ParserFree(client-&gt;<a class="code" href="structtClient.html#b8f8ab3f31d6cf8fd4b3b527ef9c0107">parser</a>);
58   -<a name="l00037"></a>00037
59   -<a name="l00038"></a>00038 memset(client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>, 0, 16);
60   -<a name="l00039"></a>00039 }
61   -</pre></div></div>
62   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
63   -<a href="http://www.doxygen.org/index.html">
64   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
65   -</body>
66   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/commonReader/clientClose.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>reader/commonReader/clientClose.c File Reference</h1><code>#include &lt;stdlib.h&gt;</code><br>
25   -<code>#include &lt;unistd.h&gt;</code><br>
26   -<code>#include &lt;sys/socket.h&gt;</code><br>
27   -<code>#include &lt;string.h&gt;</code><br>
28   -<code>#include &lt;expat.h&gt;</code><br>
29   -<code>#include &quot;<a class="el" href="client_8h-source.html">../../include/client.h</a>&quot;</code><br>
30   -<code>#include &quot;<a class="el" href="monitor_8h-source.html">../../include/monitor.h</a>&quot;</code><br>
31   -<code>#include &quot;<a class="el" href="httpRequest_8h-source.html">../../include/httpRequest.h</a>&quot;</code><br>
32   -
33   -<p>
34   -<a href="clientClose_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
35   -<tr><td></td></tr>
36   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
37   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientClose_8c.html#a9dad65338aa78062b23a924ae1d2b59">clientClose</a> (<a class="el" href="structtClient.html">tClient</a> *client)</td></tr>
38   -
39   -</table>
40   -<hr><h2>Function Documentation</h2>
41   -<a class="anchor" name="a9dad65338aa78062b23a924ae1d2b59"></a><!-- doxytag: member="clientClose.c::clientClose" ref="a9dad65338aa78062b23a924ae1d2b59" args="(tClient *client)" -->
42   -<div class="memitem">
43   -<div class="memproto">
44   - <table class="memname">
45   - <tr>
46   - <td class="memname">void clientClose </td>
47   - <td>(</td>
48   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
49   - <td class="paramname"> <em>client</em> </td>
50   - <td>&nbsp;)&nbsp;</td>
51   - <td></td>
52   - </tr>
53   - </table>
54   -</div>
55   -<div class="memdoc">
56   -
57   -<p>
58   -
59   -<p>Definition at line <a class="el" href="clientClose_8c-source.html#l00012">12</a> of file <a class="el" href="clientClose_8c-source.html">clientClose.c</a>.</p>
60   -
61   -</div>
62   -</div><p>
63   -</div>
64   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
65   -<a href="http://www.doxygen.org/index.html">
66   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
67   -</body>
68   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/commonReader/clientRead.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>reader/commonReader/clientRead.c</h1><a href="clientRead_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;unistd.h&gt;</span> <span class="comment">/* for getopt */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">/* for exit */</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;string.h&gt;</span> <span class="comment">/* for memset and stuff */</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;errno.h&gt;</span> <span class="comment">/* for errno */</span>
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include "../../include/client.h"</span>
28   -<a name="l00007"></a>00007 <span class="preprocessor">#include "../../include/monitor.h"</span>
29   -<a name="l00008"></a>00008
30   -<a name="l00009"></a><a class="code" href="clientRead_8c.html#3baabeba3e06eb1b8761363a58f8391b">00009</a> <span class="preprocessor">#define GET_MULTIPLIER(size) (((size) - 1) / READBUFSIZE + 1)</span>
31   -<a name="l00010"></a>00010 <span class="preprocessor"></span>
32   -<a name="l00011"></a>00011 <span class="keyword">static</span> <span class="keywordtype">int</span>
33   -<a name="l00012"></a>00012 _clientReallocBuffer(<a class="code" href="structtClient.html">tClient</a> * client, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> newSize)
34   -<a name="l00013"></a>00013 {
35   -<a name="l00014"></a>00014 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> newMult = <a class="code" href="clientRead_8c.html#3baabeba3e06eb1b8761363a58f8391b">GET_MULTIPLIER</a>(newSize);
36   -<a name="l00015"></a>00015
37   -<a name="l00016"></a>00016 <span class="keywordflow">if</span> (<a class="code" href="client_8h.html#eefa2efc8515c7f8334de344e8a07fbf">CLIENTMULTMAX</a> &lt; newMult) {
38   -<a name="l00017"></a>00017 <span class="comment">/* line exceeds maximum line length */</span>
39   -<a name="l00018"></a>00018 <span class="keywordflow">return</span> 0;
40   -<a name="l00019"></a>00019 }
41   -<a name="l00020"></a>00020
42   -<a name="l00021"></a>00021 <span class="keywordflow">if</span> (client-&gt;<a class="code" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">readBufMult</a> &lt; newMult) {
43   -<a name="l00022"></a>00022
44   -<a name="l00023"></a>00023 <span class="keywordtype">char</span> * newBuffer = calloc(newMult * <a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
45   -<a name="l00024"></a>00024
46   -<a name="l00025"></a>00025 <span class="keywordflow">if</span> (NULL == newBuffer) {
47   -<a name="l00026"></a>00026 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_ERR, <a class="code" href="monitor_8h.html#b11b9abcce9ac28426ff81c206e28fc8">MON_CRITICAL</a>, <span class="stringliteral">"calloc"</span>,
48   -<a name="l00027"></a>00027 <span class="stringliteral">"calloc for readbuffer[%s] failed"</span>,
49   -<a name="l00028"></a>00028 client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>);
50   -<a name="l00029"></a>00029
51   -<a name="l00030"></a>00030 exit(EXIT_FAILURE);
52   -<a name="l00031"></a>00031 }
53   -<a name="l00032"></a>00032
54   -<a name="l00033"></a>00033 <span class="keywordflow">if</span> (NULL != client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>) {
55   -<a name="l00034"></a>00034 memcpy(newBuffer, client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>, client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a>);
56   -<a name="l00035"></a>00035 free(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>);
57   -<a name="l00036"></a>00036
58   -<a name="l00037"></a>00037 client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> = newBuffer;
59   -<a name="l00038"></a>00038 client-&gt;<a class="code" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">readBufMult</a> = newMult;
60   -<a name="l00039"></a>00039 } <span class="keywordflow">else</span> {
61   -<a name="l00040"></a>00040 <span class="comment">/*</span>
62   -<a name="l00041"></a>00041 <span class="comment"> * we can't get the resized buffer so return the</span>
63   -<a name="l00042"></a>00042 <span class="comment"> * old multiplier</span>
64   -<a name="l00043"></a>00043 <span class="comment"> */</span>
65   -<a name="l00044"></a>00044 newMult = client-&gt;<a class="code" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">readBufMult</a>;
66   -<a name="l00045"></a>00045 }
67   -<a name="l00046"></a>00046
68   -<a name="l00047"></a>00047 }
69   -<a name="l00048"></a>00048
70   -<a name="l00049"></a>00049 <span class="keywordflow">return</span> newMult;
71   -<a name="l00050"></a>00050 }
72   -<a name="l00051"></a>00051
73   -<a name="l00052"></a>00052 <span class="keywordtype">int</span>
74   -<a name="l00053"></a><a class="code" href="clientRead_8c.html#6504ff36553f8008b9ee1d52aa977740">00053</a> <a class="code" href="client_8h.html#6504ff36553f8008b9ee1d52aa977740">clientRead</a>(<a class="code" href="structtClient.html">tClient</a> * client)
75   -<a name="l00054"></a>00054 {
76   -<a name="l00055"></a>00055 <span class="keywordtype">int</span> readSize;
77   -<a name="l00056"></a>00056 <span class="keywordtype">char</span> readBuf[<a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>];
78   -<a name="l00057"></a>00057
79   -<a name="l00058"></a>00058 <span class="comment">/*</span>
80   -<a name="l00059"></a>00059 <span class="comment"> * initialize values // read data from socket</span>
81   -<a name="l00060"></a>00060 <span class="comment"> */</span>
82   -<a name="l00061"></a>00061 memset(readBuf, 0, <a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>);
83   -<a name="l00062"></a>00062 readSize = read(client-&gt;<a class="code" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">socket</a>, readBuf, <a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>);
84   -<a name="l00063"></a>00063
85   -<a name="l00064"></a>00064 <span class="keywordflow">switch</span> (readSize) {
86   -<a name="l00065"></a>00065 <span class="keywordflow">case</span> -1:
87   -<a name="l00066"></a>00066 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_WARNING, <a class="code" href="monitor_8h.html#8eabf82310c059cc80dceaa533a74182">MON_WARNING</a>, <span class="stringliteral">"socket.read"</span>,
88   -<a name="l00067"></a>00067 <span class="stringliteral">"read returns -1 for client[%s]: %s - connection closed"</span>,
89   -<a name="l00068"></a>00068 client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>, strerror(errno));
90   -<a name="l00069"></a>00069 <span class="keywordflow">break</span>;
91   -<a name="l00070"></a>00070
92   -<a name="l00071"></a>00071 <span class="keywordflow">case</span> 0:
93   -<a name="l00072"></a>00072 <span class="keywordflow">break</span>;
94   -<a name="l00073"></a>00073
95   -<a name="l00074"></a>00074 <span class="keywordflow">default</span>:
96   -<a name="l00075"></a>00075 <span class="keywordflow">if</span> (!_clientReallocBuffer(client, client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> + readSize)) {
97   -<a name="l00076"></a>00076 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_WARNING, <a class="code" href="monitor_8h.html#8eabf82310c059cc80dceaa533a74182">MON_WARNING</a>, <span class="stringliteral">"data.longline"</span>,
98   -<a name="l00077"></a>00077 <span class="stringliteral">"got to long line from client[%s] - connection closed"</span>,
99   -<a name="l00078"></a>00078 client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>);
100   -<a name="l00079"></a>00079
101   -<a name="l00080"></a>00080 <span class="keywordflow">return</span> <a class="code" href="client_8h.html#f150df8f008146f177d67862d2569834">READ_ERR_LONGLINE</a>;
102   -<a name="l00081"></a>00081 }
103   -<a name="l00082"></a>00082
104   -<a name="l00083"></a>00083 <span class="keywordflow">if</span> (client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> +readSize &gt; client-&gt;<a class="code" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">readBufMult</a> *<a class="code" href="appConfig_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>) {
105   -<a name="l00084"></a>00084 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_WARNING, <a class="code" href="monitor_8h.html#8eabf82310c059cc80dceaa533a74182">MON_WARNING</a>, <span class="stringliteral">"data.longline"</span>,
106   -<a name="l00085"></a>00085 <span class="stringliteral">"can't allocate enough memory for read on client[%s]"</span>
107   -<a name="l00086"></a>00086 <span class="stringliteral">" - connection closed"</span>,
108   -<a name="l00087"></a>00087 client-&gt;<a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">remoteAddr</a>);
109   -<a name="l00088"></a>00088
110   -<a name="l00089"></a>00089 <span class="keywordflow">return</span> <a class="code" href="client_8h.html#4f090ce41ed48b83e309d8fce71db4ab">READ_ERR_MEMORY</a>;
111   -<a name="l00090"></a>00090 }
112   -<a name="l00091"></a>00091
113   -<a name="l00092"></a>00092 memcpy(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>+client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a>, readBuf, readSize);
114   -<a name="l00093"></a>00093 client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> += readSize;
115   -<a name="l00094"></a>00094 <span class="keywordflow">break</span>;
116   -<a name="l00095"></a>00095 }
117   -<a name="l00096"></a>00096
118   -<a name="l00097"></a>00097 <span class="keywordflow">return</span> readSize;
119   -<a name="l00098"></a>00098 }
120   -<a name="l00099"></a>00099
121   -<a name="l00100"></a><a class="code" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">00100</a> <span class="preprocessor">#define EOB(client,addr) ((addr) -(client)-&gt;readBuffer &gt;= (client)-&gt;readPos)</span>
122   -<a name="l00101"></a><a class="code" href="clientRead_8c.html#b6f9cfea308c9f485d4b00b60fd2f6cd">00101</a> <span class="preprocessor"></span><span class="preprocessor">#define REMAINING(client,addr) ((client)-&gt;readPos - ((addr) - (client)-&gt;readBuffer))</span>
123   -<a name="l00102"></a>00102 <span class="preprocessor"></span>
124   -<a name="l00103"></a>00103 <span class="keyword">static</span> <span class="keywordtype">char</span> *
125   -<a name="l00104"></a>00104 _clientGetLineDelimiter(<a class="code" href="structtClient.html">tClient</a> * client, <span class="keyword">const</span> <span class="keywordtype">char</span> * delim, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len)
126   -<a name="l00105"></a>00105 {
127   -<a name="l00106"></a>00106 <span class="keywordtype">char</span> * foundDelim = memchr(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>, delim[0], client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a>);
128   -<a name="l00107"></a>00107
129   -<a name="l00108"></a>00108 <span class="keywordflow">while</span> (NULL != foundDelim &amp;&amp; !<a class="code" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">EOB</a>(client, foundDelim)) {
130   -<a name="l00109"></a>00109
131   -<a name="l00110"></a>00110 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;
132   -<a name="l00111"></a>00111
133   -<a name="l00112"></a>00112 <span class="keywordflow">while</span> (i &lt; len &amp;&amp; !<a class="code" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">EOB</a>(client, &amp;(foundDelim[i])) &amp;&amp; foundDelim[i] == delim[i]) i++;
134   -<a name="l00113"></a>00113
135   -<a name="l00114"></a>00114 <span class="keywordflow">if</span> (i == len) {
136   -<a name="l00115"></a>00115 <span class="keywordflow">return</span> foundDelim;
137   -<a name="l00116"></a>00116 } <span class="keywordflow">else</span> {
138   -<a name="l00117"></a>00117 <span class="keywordflow">if</span> (!<a class="code" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">EOB</a>(client, ++foundDelim)) {
139   -<a name="l00118"></a>00118 foundDelim = memchr(foundDelim, delim[0], <a class="code" href="clientRead_8c.html#b6f9cfea308c9f485d4b00b60fd2f6cd">REMAINING</a>(client, foundDelim));
140   -<a name="l00119"></a>00119 }
141   -<a name="l00120"></a>00120 }
142   -<a name="l00121"></a>00121 }
143   -<a name="l00122"></a>00122
144   -<a name="l00123"></a>00123 <span class="keywordflow">return</span> NULL;
145   -<a name="l00124"></a>00124 }
146   -<a name="l00125"></a>00125
147   -<a name="l00126"></a>00126 <span class="comment">/*</span>
148   -<a name="l00127"></a>00127 <span class="comment"> * this returns a newly allocate buffer, with the found line</span>
149   -<a name="l00128"></a>00128 <span class="comment"> * copied to it.</span>
150   -<a name="l00129"></a>00129 <span class="comment"> * The caller has to take care to free this buffer again,</span>
151   -<a name="l00130"></a>00130 <span class="comment"> * after he uses it.</span>
152   -<a name="l00131"></a>00131 <span class="comment"> */</span>
153   -<a name="l00132"></a>00132 <span class="keywordtype">char</span> *
154   -<a name="l00133"></a><a class="code" href="clientRead_8c.html#8363f6facea09bd36e288a51c983aed2">00133</a> <a class="code" href="clientRead_8c.html#8363f6facea09bd36e288a51c983aed2">clientConsumeLine</a>(<a class="code" href="structtClient.html">tClient</a> * client, <span class="keyword">const</span> <span class="keywordtype">char</span> * delim, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * len)
155   -<a name="l00134"></a>00134 {
156   -<a name="l00135"></a>00135 <span class="keywordtype">char</span> * found = <a class="code" href="client_8h.html#9741eb2a0853766868828c722e67c068">clientGetLine</a>(client, delim, len);
157   -<a name="l00136"></a>00136 <span class="keywordtype">char</span> * line = NULL;
158   -<a name="l00137"></a>00137
159   -<a name="l00138"></a>00138 <span class="keywordflow">if</span> (NULL != found) {
160   -<a name="l00139"></a>00139 line = calloc(*len +1, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
161   -<a name="l00140"></a>00140 <a class="code" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">clientRemoveLine</a>(client, delim, len);
162   -<a name="l00141"></a>00141 memcpy(line, found, *len);
163   -<a name="l00142"></a>00142 }
164   -<a name="l00143"></a>00143
165   -<a name="l00144"></a>00144 <span class="keywordflow">return</span> line;
166   -<a name="l00145"></a>00145 }
167   -<a name="l00146"></a>00146
168   -<a name="l00147"></a>00147 <span class="comment">/*</span>
169   -<a name="l00148"></a>00148 <span class="comment"> * as a side effect this gives sets length of the found line in len</span>
170   -<a name="l00149"></a>00149 <span class="comment"> */</span>
171   -<a name="l00150"></a>00150 <span class="keywordtype">char</span> *
172   -<a name="l00151"></a><a class="code" href="clientRead_8c.html#fbcefe4f20179c643fdff8007235325c">00151</a> <a class="code" href="client_8h.html#9741eb2a0853766868828c722e67c068">clientGetLine</a>(<a class="code" href="structtClient.html">tClient</a> * client, <span class="keyword">const</span> <span class="keywordtype">char</span> * delim, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * len)
173   -<a name="l00152"></a>00152 {
174   -<a name="l00153"></a>00153 <span class="keywordtype">char</span> * foundDelim = _clientGetLineDelimiter(client, delim, *len);
175   -<a name="l00154"></a>00154
176   -<a name="l00155"></a>00155 <span class="keywordflow">if</span> (NULL != foundDelim) {
177   -<a name="l00156"></a>00156 *len = foundDelim -client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> -1;
178   -<a name="l00157"></a>00157 <span class="keywordflow">return</span> client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>;
179   -<a name="l00158"></a>00158 }
180   -<a name="l00159"></a>00159
181   -<a name="l00160"></a>00160 <span class="keywordflow">return</span> NULL;
182   -<a name="l00161"></a>00161 }
183   -<a name="l00162"></a>00162
184   -<a name="l00163"></a>00163 <span class="keywordtype">char</span> *
185   -<a name="l00164"></a><a class="code" href="clientRead_8c.html#8cbd479139f4645f07ae0b7c18202fef">00164</a> <a class="code" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">clientRemoveLine</a>(<a class="code" href="structtClient.html">tClient</a> * client, <span class="keyword">const</span> <span class="keywordtype">char</span> * delim, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * len)
186   -<a name="l00165"></a>00165 {
187   -<a name="l00166"></a>00166 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> lineLen;
188   -<a name="l00167"></a>00167 <span class="keywordtype">char</span> * foundDelim = _clientGetLineDelimiter(client, delim, &amp;lineLen);
189   -<a name="l00168"></a>00168
190   -<a name="l00169"></a>00169 <span class="keywordflow">if</span> (NULL != foundDelim) {
191   -<a name="l00170"></a>00170 <span class="keywordtype">char</span> * actAddr = client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> +client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a>;
192   -<a name="l00171"></a>00171
193   -<a name="l00172"></a>00172 <span class="keywordflow">if</span> (actAddr == foundDelim +*len) {
194   -<a name="l00173"></a>00173
195   -<a name="l00174"></a>00174 memset(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>, 0, client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a>);
196   -<a name="l00175"></a>00175 *len = client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> = 0;
197   -<a name="l00176"></a>00176
198   -<a name="l00177"></a>00177 } <span class="keywordflow">else</span> {
199   -<a name="l00178"></a>00178
200   -<a name="l00179"></a>00179 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> moveSize = actAddr -foundDelim -*len;
201   -<a name="l00180"></a>00180 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> clearSize = actAddr -client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> -moveSize;
202   -<a name="l00181"></a>00181
203   -<a name="l00182"></a>00182 memmove(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>, foundDelim +*len, moveSize);
204   -<a name="l00183"></a>00183 memset(client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a> +moveSize, 0, clearSize);
205   -<a name="l00184"></a>00184 *len = client-&gt;<a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">readPos</a> = moveSize;
206   -<a name="l00185"></a>00185 }
207   -<a name="l00186"></a>00186
208   -<a name="l00187"></a>00187 <span class="keywordflow">return</span> client-&gt;<a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">readBuffer</a>;
209   -<a name="l00188"></a>00188 }
210   -<a name="l00189"></a>00189
211   -<a name="l00190"></a>00190 <span class="keywordflow">return</span> NULL;
212   -<a name="l00191"></a>00191 }
213   -<a name="l00192"></a>00192
214   -</pre></div></div>
215   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
216   -<a href="http://www.doxygen.org/index.html">
217   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
218   -</body>
219   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/commonReader/clientRead.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>reader/commonReader/clientRead.c File Reference</h1><code>#include &lt;unistd.h&gt;</code><br>
25   -<code>#include &lt;stdlib.h&gt;</code><br>
26   -<code>#include &lt;string.h&gt;</code><br>
27   -<code>#include &lt;errno.h&gt;</code><br>
28   -<code>#include &quot;<a class="el" href="client_8h-source.html">../../include/client.h</a>&quot;</code><br>
29   -<code>#include &quot;<a class="el" href="monitor_8h-source.html">../../include/monitor.h</a>&quot;</code><br>
30   -
31   -<p>
32   -<a href="clientRead_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
33   -<tr><td></td></tr>
34   -<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
35   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#3baabeba3e06eb1b8761363a58f8391b">GET_MULTIPLIER</a>(size)&nbsp;&nbsp;&nbsp;(((size) - 1) / READBUFSIZE + 1)</td></tr>
36   -
37   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">EOB</a>(client, addr)&nbsp;&nbsp;&nbsp;((addr) -(client)-&gt;readBuffer &gt;= (client)-&gt;readPos)</td></tr>
38   -
39   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#b6f9cfea308c9f485d4b00b60fd2f6cd">REMAINING</a>(client, addr)&nbsp;&nbsp;&nbsp;((client)-&gt;readPos - ((addr) - (client)-&gt;readBuffer))</td></tr>
40   -
41   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
42   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#6504ff36553f8008b9ee1d52aa977740">clientRead</a> (<a class="el" href="structtClient.html">tClient</a> *client)</td></tr>
43   -
44   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#8363f6facea09bd36e288a51c983aed2">clientConsumeLine</a> (<a class="el" href="structtClient.html">tClient</a> *client, const char *delim, unsigned int *len)</td></tr>
45   -
46   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#fbcefe4f20179c643fdff8007235325c">clientGetLine</a> (<a class="el" href="structtClient.html">tClient</a> *client, const char *delim, unsigned int *len)</td></tr>
47   -
48   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="clientRead_8c.html#8cbd479139f4645f07ae0b7c18202fef">clientRemoveLine</a> (<a class="el" href="structtClient.html">tClient</a> *client, const char *delim, unsigned int *len)</td></tr>
49   -
50   -</table>
51   -<hr><h2>Define Documentation</h2>
52   -<a class="anchor" name="47d745b24a58d0152c7b43db75387a79"></a><!-- doxytag: member="clientRead.c::EOB" ref="47d745b24a58d0152c7b43db75387a79" args="(client, addr)" -->
53   -<div class="memitem">
54   -<div class="memproto">
55   - <table class="memname">
56   - <tr>
57   - <td class="memname">#define EOB </td>
58   - <td>(</td>
59   - <td class="paramtype">client, <tr>
60   - <td class="paramkey"></td>
61   - <td></td>
62   - <td class="paramtype">addr&nbsp;</td>
63   - <td class="paramname"> </td>
64   - <td>&nbsp;)&nbsp;</td>
65   - <td>&nbsp;&nbsp;&nbsp;((addr) -(client)-&gt;readBuffer &gt;= (client)-&gt;readPos)</td>
66   - </tr>
67   - </table>
68   -</div>
69   -<div class="memdoc">
70   -
71   -<p>
72   -
73   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00100">100</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
74   -
75   -</div>
76   -</div><p>
77   -<a class="anchor" name="3baabeba3e06eb1b8761363a58f8391b"></a><!-- doxytag: member="clientRead.c::GET_MULTIPLIER" ref="3baabeba3e06eb1b8761363a58f8391b" args="(size)" -->
78   -<div class="memitem">
79   -<div class="memproto">
80   - <table class="memname">
81   - <tr>
82   - <td class="memname">#define GET_MULTIPLIER </td>
83   - <td>(</td>
84   - <td class="paramtype">size&nbsp;</td>
85   - <td class="paramname"> </td>
86   - <td>&nbsp;)&nbsp;</td>
87   - <td>&nbsp;&nbsp;&nbsp;(((size) - 1) / READBUFSIZE + 1)</td>
88   - </tr>
89   - </table>
90   -</div>
91   -<div class="memdoc">
92   -
93   -<p>
94   -
95   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00009">9</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
96   -
97   -</div>
98   -</div><p>
99   -<a class="anchor" name="b6f9cfea308c9f485d4b00b60fd2f6cd"></a><!-- doxytag: member="clientRead.c::REMAINING" ref="b6f9cfea308c9f485d4b00b60fd2f6cd" args="(client, addr)" -->
100   -<div class="memitem">
101   -<div class="memproto">
102   - <table class="memname">
103   - <tr>
104   - <td class="memname">#define REMAINING </td>
105   - <td>(</td>
106   - <td class="paramtype">client, <tr>
107   - <td class="paramkey"></td>
108   - <td></td>
109   - <td class="paramtype">addr&nbsp;</td>
110   - <td class="paramname"> </td>
111   - <td>&nbsp;)&nbsp;</td>
112   - <td>&nbsp;&nbsp;&nbsp;((client)-&gt;readPos - ((addr) - (client)-&gt;readBuffer))</td>
113   - </tr>
114   - </table>
115   -</div>
116   -<div class="memdoc">
117   -
118   -<p>
119   -
120   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00101">101</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
121   -
122   -</div>
123   -</div><p>
124   -<hr><h2>Function Documentation</h2>
125   -<a class="anchor" name="8363f6facea09bd36e288a51c983aed2"></a><!-- doxytag: member="clientRead.c::clientConsumeLine" ref="8363f6facea09bd36e288a51c983aed2" args="(tClient *client, const char *delim, unsigned int *len)" -->
126   -<div class="memitem">
127   -<div class="memproto">
128   - <table class="memname">
129   - <tr>
130   - <td class="memname">char* clientConsumeLine </td>
131   - <td>(</td>
132   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
133   - <td class="paramname"> <em>client</em>, </td>
134   - </tr>
135   - <tr>
136   - <td class="paramkey"></td>
137   - <td></td>
138   - <td class="paramtype">const char *&nbsp;</td>
139   - <td class="paramname"> <em>delim</em>, </td>
140   - </tr>
141   - <tr>
142   - <td class="paramkey"></td>
143   - <td></td>
144   - <td class="paramtype">unsigned int *&nbsp;</td>
145   - <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
146   - </tr>
147   - <tr>
148   - <td></td>
149   - <td>)</td>
150   - <td></td><td></td><td></td>
151   - </tr>
152   - </table>
153   -</div>
154   -<div class="memdoc">
155   -
156   -<p>
157   -
158   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00133">133</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
159   -
160   -</div>
161   -</div><p>
162   -<a class="anchor" name="fbcefe4f20179c643fdff8007235325c"></a><!-- doxytag: member="clientRead.c::clientGetLine" ref="fbcefe4f20179c643fdff8007235325c" args="(tClient *client, const char *delim, unsigned int *len)" -->
163   -<div class="memitem">
164   -<div class="memproto">
165   - <table class="memname">
166   - <tr>
167   - <td class="memname">char* clientGetLine </td>
168   - <td>(</td>
169   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
170   - <td class="paramname"> <em>client</em>, </td>
171   - </tr>
172   - <tr>
173   - <td class="paramkey"></td>
174   - <td></td>
175   - <td class="paramtype">const char *&nbsp;</td>
176   - <td class="paramname"> <em>delim</em>, </td>
177   - </tr>
178   - <tr>
179   - <td class="paramkey"></td>
180   - <td></td>
181   - <td class="paramtype">unsigned int *&nbsp;</td>
182   - <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
183   - </tr>
184   - <tr>
185   - <td></td>
186   - <td>)</td>
187   - <td></td><td></td><td></td>
188   - </tr>
189   - </table>
190   -</div>
191   -<div class="memdoc">
192   -
193   -<p>
194   -
195   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00151">151</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
196   -
197   -</div>
198   -</div><p>
199   -<a class="anchor" name="6504ff36553f8008b9ee1d52aa977740"></a><!-- doxytag: member="clientRead.c::clientRead" ref="6504ff36553f8008b9ee1d52aa977740" args="(tClient *client)" -->
200   -<div class="memitem">
201   -<div class="memproto">
202   - <table class="memname">
203   - <tr>
204   - <td class="memname">int clientRead </td>
205   - <td>(</td>
206   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
207   - <td class="paramname"> <em>client</em> </td>
208   - <td>&nbsp;)&nbsp;</td>
209   - <td></td>
210   - </tr>
211   - </table>
212   -</div>
213   -<div class="memdoc">
214   -
215   -<p>
216   -
217   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00053">53</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
218   -
219   -</div>
220   -</div><p>
221   -<a class="anchor" name="8cbd479139f4645f07ae0b7c18202fef"></a><!-- doxytag: member="clientRead.c::clientRemoveLine" ref="8cbd479139f4645f07ae0b7c18202fef" args="(tClient *client, const char *delim, unsigned int *len)" -->
222   -<div class="memitem">
223   -<div class="memproto">
224   - <table class="memname">
225   - <tr>
226   - <td class="memname">char* clientRemoveLine </td>
227   - <td>(</td>
228   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
229   - <td class="paramname"> <em>client</em>, </td>
230   - </tr>
231   - <tr>
232   - <td class="paramkey"></td>
233   - <td></td>
234   - <td class="paramtype">const char *&nbsp;</td>
235   - <td class="paramname"> <em>delim</em>, </td>
236   - </tr>
237   - <tr>
238   - <td class="paramkey"></td>
239   - <td></td>
240   - <td class="paramtype">unsigned int *&nbsp;</td>
241   - <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
242   - </tr>
243   - <tr>
244   - <td></td>
245   - <td>)</td>
246   - <td></td><td></td><td></td>
247   - </tr>
248   - </table>
249   -</div>
250   -<div class="memdoc">
251   -
252   -<p>
253   -
254   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00164">164</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
255   -
256   -</div>
257   -</div><p>
258   -</div>
259   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
260   -<a href="http://www.doxygen.org/index.html">
261   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
262   -</body>
263   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/client.h Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>include/client.h</h1><a href="client_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef __CLIENT_H__</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define __CLIENT_H__</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor"></span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">/* for FILE */</span>
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;expat.h&gt;</span>
28   -<a name="l00007"></a>00007
29   -<a name="l00008"></a>00008 <span class="preprocessor">#include "<a class="code" href="httpRequest_8h.html">httpRequest.h</a>"</span>
30   -<a name="l00009"></a>00009
31   -<a name="l00010"></a><a class="code" href="client_8h.html#a0534241791f23ec8098503582406166">00010</a> <span class="preprocessor">#define READBUFSIZE 2048 </span><span class="comment">/* Size of receive readBuffer */</span>
32   -<a name="l00011"></a><a class="code" href="client_8h.html#eefa2efc8515c7f8334de344e8a07fbf">00011</a> <span class="preprocessor">#define CLIENTMULTMAX 512U </span><span class="comment">/* 1MB maximum size the readbuffer may grow */</span>
33   -<a name="l00012"></a>00012
34   -<a name="l00013"></a><a class="code" href="client_8h.html#f150df8f008146f177d67862d2569834">00013</a> <span class="preprocessor">#define READ_ERR_LONGLINE -2</span>
35   -<a name="l00014"></a><a class="code" href="client_8h.html#4f090ce41ed48b83e309d8fce71db4ab">00014</a> <span class="preprocessor"></span><span class="preprocessor">#define READ_ERR_MEMORY -3</span>
36   -<a name="l00015"></a>00015 <span class="preprocessor"></span>
37   -<a name="l00016"></a>00016 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>;
38   -<a name="l00017"></a>00017
39   -<a name="l00018"></a><a class="code" href="structtClient.html">00018</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
40   -<a name="l00019"></a><a class="code" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">00019</a> <span class="keywordtype">int</span> socket;
41   -<a name="l00020"></a><a class="code" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">00020</a> <span class="keywordtype">char</span> * readBuffer;
42   -<a name="l00021"></a><a class="code" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">00021</a> <span class="keywordtype">char</span> * <a class="code" href="writeBuffer_8h.html#a947cab623514e5a9c9700bca074b77e">writeBuffer</a>;
43   -<a name="l00022"></a><a class="code" href="structtClient.html#0948ef13430298f28cb48199119136c1">00022</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> readPos;
44   -<a name="l00023"></a><a class="code" href="structtClient.html#97da33ce83548b5900f11e29d5cec8d1">00023</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> writePos;
45   -<a name="l00024"></a><a class="code" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">00024</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> readBufMult;
46   -<a name="l00025"></a><a class="code" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">00025</a> <span class="keywordtype">char</span> remoteAddr[16];
47   -<a name="l00026"></a>00026
48   -<a name="l00027"></a><a class="code" href="structtClient.html#33623f89815acd8a2822a1f04cafe844">00027</a> <a class="code" href="structtHttpHeader.html">tHttpHeader</a> httpHeader;
49   -<a name="l00028"></a><a class="code" href="structtClient.html#00e4a47041701700d5d9e418773b01a1">00028</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bodyLenRemaining;
50   -<a name="l00029"></a>00029
51   -<a name="l00030"></a><a class="code" href="structtClient.html#b8f8ab3f31d6cf8fd4b3b527ef9c0107">00030</a> XML_Parser parser;
52   -<a name="l00031"></a>00031 } <a class="code" href="structtClient.html">tClient</a>;
53   -<a name="l00032"></a>00032
54   -<a name="l00033"></a>00033
55   -<a name="l00034"></a>00034 <span class="keywordtype">void</span> <a class="code" href="client_8h.html#a9dad65338aa78062b23a924ae1d2b59">clientClose</a>(<a class="code" href="structtClient.html">tClient</a> * client);
56   -<a name="l00035"></a>00035 <span class="keywordtype">int</span> <a class="code" href="client_8h.html#6504ff36553f8008b9ee1d52aa977740">clientRead</a>(<a class="code" href="structtClient.html">tClient</a> * client);
57   -<a name="l00036"></a>00036 <span class="keywordtype">int</span> <a class="code" href="client_8h.html#ab1a321bfd432ac9ec8818ad3eb6e591">clientWrite</a>(<a class="code" href="structtClient.html">tClient</a> * client);
58   -<a name="l00037"></a>00037 <span class="keywordtype">char</span> * <a class="code" href="client_8h.html#9741eb2a0853766868828c722e67c068">clientGetLine</a>(<a class="code" href="structtClient.html">tClient</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *);
59   -<a name="l00038"></a>00038 <span class="keywordtype">char</span> * <a class="code" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">clientRemoveLine</a>(<a class="code" href="structtClient.html">tClient</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *);
60   -<a name="l00039"></a>00039
61   -<a name="l00040"></a>00040 <span class="preprocessor">#endif // __CLIENT_H__</span>
62   -</pre></div></div>
63   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
64   -<a href="http://www.doxygen.org/index.html">
65   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
66   -</body>
67   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/client.h File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>include/client.h File Reference</h1><code>#include &lt;stdio.h&gt;</code><br>
25   -<code>#include &lt;expat.h&gt;</code><br>
26   -<code>#include &quot;<a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>&quot;</code><br>
27   -
28   -<p>
29   -<a href="client_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
30   -<tr><td></td></tr>
31   -<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
32   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtClient.html">tClient</a></td></tr>
33   -
34   -<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
35   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#a0534241791f23ec8098503582406166">READBUFSIZE</a>&nbsp;&nbsp;&nbsp;2048</td></tr>
36   -
37   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#eefa2efc8515c7f8334de344e8a07fbf">CLIENTMULTMAX</a>&nbsp;&nbsp;&nbsp;512U</td></tr>
38   -
39   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#f150df8f008146f177d67862d2569834">READ_ERR_LONGLINE</a>&nbsp;&nbsp;&nbsp;-2</td></tr>
40   -
41   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#4f090ce41ed48b83e309d8fce71db4ab">READ_ERR_MEMORY</a>&nbsp;&nbsp;&nbsp;-3</td></tr>
42   -
43   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
44   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#a9dad65338aa78062b23a924ae1d2b59">clientClose</a> (<a class="el" href="structtClient.html">tClient</a> *client)</td></tr>
45   -
46   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#6504ff36553f8008b9ee1d52aa977740">clientRead</a> (<a class="el" href="structtClient.html">tClient</a> *client)</td></tr>
47   -
48   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#ab1a321bfd432ac9ec8818ad3eb6e591">clientWrite</a> (<a class="el" href="structtClient.html">tClient</a> *client)</td></tr>
49   -
50   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#9741eb2a0853766868828c722e67c068">clientGetLine</a> (<a class="el" href="structtClient.html">tClient</a> *, const char *, unsigned int *)</td></tr>
51   -
52   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">clientRemoveLine</a> (<a class="el" href="structtClient.html">tClient</a> *, const char *, unsigned int *)</td></tr>
53   -
54   -<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
55   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a></td></tr>
56   -
57   -</table>
58   -<hr><h2>Define Documentation</h2>
59   -<a class="anchor" name="eefa2efc8515c7f8334de344e8a07fbf"></a><!-- doxytag: member="client.h::CLIENTMULTMAX" ref="eefa2efc8515c7f8334de344e8a07fbf" args="" -->
60   -<div class="memitem">
61   -<div class="memproto">
62   - <table class="memname">
63   - <tr>
64   - <td class="memname">#define CLIENTMULTMAX&nbsp;&nbsp;&nbsp;512U </td>
65   - </tr>
66   - </table>
67   -</div>
68   -<div class="memdoc">
69   -
70   -<p>
71   -
72   -<p>Definition at line <a class="el" href="client_8h-source.html#l00011">11</a> of file <a class="el" href="client_8h-source.html">client.h</a>.</p>
73   -
74   -</div>
75   -</div><p>
76   -<a class="anchor" name="f150df8f008146f177d67862d2569834"></a><!-- doxytag: member="client.h::READ_ERR_LONGLINE" ref="f150df8f008146f177d67862d2569834" args="" -->
77   -<div class="memitem">
78   -<div class="memproto">
79   - <table class="memname">
80   - <tr>
81   - <td class="memname">#define READ_ERR_LONGLINE&nbsp;&nbsp;&nbsp;-2 </td>
82   - </tr>
83   - </table>
84   -</div>
85   -<div class="memdoc">
86   -
87   -<p>
88   -
89   -<p>Definition at line <a class="el" href="client_8h-source.html#l00013">13</a> of file <a class="el" href="client_8h-source.html">client.h</a>.</p>
90   -
91   -</div>
92   -</div><p>
93   -<a class="anchor" name="4f090ce41ed48b83e309d8fce71db4ab"></a><!-- doxytag: member="client.h::READ_ERR_MEMORY" ref="4f090ce41ed48b83e309d8fce71db4ab" args="" -->
94   -<div class="memitem">
95   -<div class="memproto">
96   - <table class="memname">
97   - <tr>
98   - <td class="memname">#define READ_ERR_MEMORY&nbsp;&nbsp;&nbsp;-3 </td>
99   - </tr>
100   - </table>
101   -</div>
102   -<div class="memdoc">
103   -
104   -<p>
105   -
106   -<p>Definition at line <a class="el" href="client_8h-source.html#l00014">14</a> of file <a class="el" href="client_8h-source.html">client.h</a>.</p>
107   -
108   -</div>
109   -</div><p>
110   -<a class="anchor" name="a0534241791f23ec8098503582406166"></a><!-- doxytag: member="client.h::READBUFSIZE" ref="a0534241791f23ec8098503582406166" args="" -->
111   -<div class="memitem">
112   -<div class="memproto">
113   - <table class="memname">
114   - <tr>
115   - <td class="memname">#define READBUFSIZE&nbsp;&nbsp;&nbsp;2048 </td>
116   - </tr>
117   - </table>
118   -</div>
119   -<div class="memdoc">
120   -
121   -<p>
122   -
123   -<p>Definition at line <a class="el" href="client_8h-source.html#l00010">10</a> of file <a class="el" href="client_8h-source.html">client.h</a>.</p>
124   -
125   -</div>
126   -</div><p>
127   -<hr><h2>Function Documentation</h2>
128   -<a class="anchor" name="a9dad65338aa78062b23a924ae1d2b59"></a><!-- doxytag: member="client.h::clientClose" ref="a9dad65338aa78062b23a924ae1d2b59" args="(tClient *client)" -->
129   -<div class="memitem">
130   -<div class="memproto">
131   - <table class="memname">
132   - <tr>
133   - <td class="memname">void clientClose </td>
134   - <td>(</td>
135   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
136   - <td class="paramname"> <em>client</em> </td>
137   - <td>&nbsp;)&nbsp;</td>
138   - <td></td>
139   - </tr>
140   - </table>
141   -</div>
142   -<div class="memdoc">
143   -
144   -<p>
145   -
146   -<p>Definition at line <a class="el" href="clientClose_8c-source.html#l00012">12</a> of file <a class="el" href="clientClose_8c-source.html">clientClose.c</a>.</p>
147   -
148   -</div>
149   -</div><p>
150   -<a class="anchor" name="9741eb2a0853766868828c722e67c068"></a><!-- doxytag: member="client.h::clientGetLine" ref="9741eb2a0853766868828c722e67c068" args="(tClient *, const char *, unsigned int *)" -->
151   -<div class="memitem">
152   -<div class="memproto">
153   - <table class="memname">
154   - <tr>
155   - <td class="memname">char* clientGetLine </td>
156   - <td>(</td>
157   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
158   - <td class="paramname">, </td>
159   - </tr>
160   - <tr>
161   - <td class="paramkey"></td>
162   - <td></td>
163   - <td class="paramtype">const char *&nbsp;</td>
164   - <td class="paramname">, </td>
165   - </tr>
166   - <tr>
167   - <td class="paramkey"></td>
168   - <td></td>
169   - <td class="paramtype">unsigned int *&nbsp;</td>
170   - <td class="paramname"></td><td>&nbsp;</td>
171   - </tr>
172   - <tr>
173   - <td></td>
174   - <td>)</td>
175   - <td></td><td></td><td></td>
176   - </tr>
177   - </table>
178   -</div>
179   -<div class="memdoc">
180   -
181   -<p>
182   -
183   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00151">151</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
184   -
185   -</div>
186   -</div><p>
187   -<a class="anchor" name="6504ff36553f8008b9ee1d52aa977740"></a><!-- doxytag: member="client.h::clientRead" ref="6504ff36553f8008b9ee1d52aa977740" args="(tClient *client)" -->
188   -<div class="memitem">
189   -<div class="memproto">
190   - <table class="memname">
191   - <tr>
192   - <td class="memname">int clientRead </td>
193   - <td>(</td>
194   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
195   - <td class="paramname"> <em>client</em> </td>
196   - <td>&nbsp;)&nbsp;</td>
197   - <td></td>
198   - </tr>
199   - </table>
200   -</div>
201   -<div class="memdoc">
202   -
203   -<p>
204   -
205   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00053">53</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
206   -
207   -</div>
208   -</div><p>
209   -<a class="anchor" name="a920588f9122184bad211ae912d1dbc4"></a><!-- doxytag: member="client.h::clientRemoveLine" ref="a920588f9122184bad211ae912d1dbc4" args="(tClient *, const char *, unsigned int *)" -->
210   -<div class="memitem">
211   -<div class="memproto">
212   - <table class="memname">
213   - <tr>
214   - <td class="memname">char* clientRemoveLine </td>
215   - <td>(</td>
216   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
217   - <td class="paramname">, </td>
218   - </tr>
219   - <tr>
220   - <td class="paramkey"></td>
221   - <td></td>
222   - <td class="paramtype">const char *&nbsp;</td>
223   - <td class="paramname">, </td>
224   - </tr>
225   - <tr>
226   - <td class="paramkey"></td>
227   - <td></td>
228   - <td class="paramtype">unsigned int *&nbsp;</td>
229   - <td class="paramname"></td><td>&nbsp;</td>
230   - </tr>
231   - <tr>
232   - <td></td>
233   - <td>)</td>
234   - <td></td><td></td><td></td>
235   - </tr>
236   - </table>
237   -</div>
238   -<div class="memdoc">
239   -
240   -<p>
241   -
242   -<p>Definition at line <a class="el" href="clientRead_8c-source.html#l00164">164</a> of file <a class="el" href="clientRead_8c-source.html">clientRead.c</a>.</p>
243   -
244   -</div>
245   -</div><p>
246   -<a class="anchor" name="ab1a321bfd432ac9ec8818ad3eb6e591"></a><!-- doxytag: member="client.h::clientWrite" ref="ab1a321bfd432ac9ec8818ad3eb6e591" args="(tClient *client)" -->
247   -<div class="memitem">
248   -<div class="memproto">
249   - <table class="memname">
250   - <tr>
251   - <td class="memname">int clientWrite </td>
252   - <td>(</td>
253   - <td class="paramtype"><a class="el" href="structtClient.html">tClient</a> *&nbsp;</td>
254   - <td class="paramname"> <em>client</em> </td>
255   - <td>&nbsp;)&nbsp;</td>
256   - <td></td>
257   - </tr>
258   - </table>
259   -</div>
260   -<div class="memdoc">
261   -
262   -<p>
263   -
264   -</div>
265   -</div><p>
266   -<hr><h2>Variable Documentation</h2>
267   -<a class="anchor" name="0b2caeb4b6f130be43e5a2f0267dd453"></a><!-- doxytag: member="client.h::verbose" ref="0b2caeb4b6f130be43e5a2f0267dd453" args="" -->
268   -<div class="memitem">
269   -<div class="memproto">
270   - <table class="memname">
271   - <tr>
272   - <td class="memname">int <a class="el" href="socket_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a> </td>
273   - </tr>
274   - </table>
275   -</div>
276   -<div class="memdoc">
277   -
278   -<p>
279   -
280   -</div>
281   -</div><p>
282   -</div>
283   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
284   -<a href="http://www.doxygen.org/index.html">
285   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
286   -</body>
287   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/daemonize.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>system/daemonize.c</h1><a href="daemonize_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">/* for printf() and fprintf() */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;unistd.h&gt;</span> <span class="comment">/* for getopt */</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
25   -<a name="l00004"></a>00004
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a><a class="code" href="daemonize_8c.html#29b0af1da2432bcc90721c0b62f4e660">00006</a> <span class="keywordtype">void</span> <a class="code" href="daemonize_8h.html#29b0af1da2432bcc90721c0b62f4e660">daemonize</a>(<span class="keywordtype">void</span>) {
28   -<a name="l00007"></a>00007 pid_t pid;
29   -<a name="l00008"></a>00008
30   -<a name="l00009"></a>00009 <span class="keywordflow">if</span> (0 &gt; ((pid = fork()))) {
31   -<a name="l00010"></a>00010 perror(<span class="stringliteral">"deamoinze[fork]"</span>);
32   -<a name="l00011"></a>00011 exit(EXIT_FAILURE);
33   -<a name="l00012"></a>00012 } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (0 != pid) {
34   -<a name="l00013"></a>00013 exit(EXIT_SUCCESS);
35   -<a name="l00014"></a>00014 }
36   -<a name="l00015"></a>00015
37   -<a name="l00016"></a>00016 <span class="comment">/* make new child session leader */</span>
38   -<a name="l00017"></a>00017 setsid();
39   -<a name="l00018"></a>00018
40   -<a name="l00019"></a>00019 <span class="comment">/* connect all standard streams to /dev/null */</span>
41   -<a name="l00020"></a>00020 freopen(<span class="stringliteral">"/dev/null"</span>, <span class="stringliteral">"w"</span>, stderr);
42   -<a name="l00021"></a>00021 freopen(<span class="stringliteral">"/dev/null"</span>, <span class="stringliteral">"r"</span>, stdin);
43   -<a name="l00022"></a>00022 freopen(<span class="stringliteral">"/dev/null"</span>, <span class="stringliteral">"w"</span>, stdout);
44   -<a name="l00023"></a>00023 }
45   -</pre></div></div>
46   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
47   -<a href="http://www.doxygen.org/index.html">
48   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
49   -</body>
50   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/daemonize.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>system/daemonize.c File Reference</h1><code>#include &lt;stdio.h&gt;</code><br>
25   -<code>#include &lt;unistd.h&gt;</code><br>
26   -<code>#include &lt;stdlib.h&gt;</code><br>
27   -
28   -<p>
29   -<a href="daemonize_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
30   -<tr><td></td></tr>
31   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
32   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="daemonize_8c.html#29b0af1da2432bcc90721c0b62f4e660">daemonize</a> (void)</td></tr>
33   -
34   -</table>
35   -<hr><h2>Function Documentation</h2>
36   -<a class="anchor" name="29b0af1da2432bcc90721c0b62f4e660"></a><!-- doxytag: member="daemonize.c::daemonize" ref="29b0af1da2432bcc90721c0b62f4e660" args="(void)" -->
37   -<div class="memitem">
38   -<div class="memproto">
39   - <table class="memname">
40   - <tr>
41   - <td class="memname">void daemonize </td>
42   - <td>(</td>
43   - <td class="paramtype">void&nbsp;</td>
44   - <td class="paramname"> </td>
45   - <td>&nbsp;)&nbsp;</td>
46   - <td></td>
47   - </tr>
48   - </table>
49   -</div>
50   -<div class="memdoc">
51   -
52   -<p>
53   -
54   -<p>Definition at line <a class="el" href="daemonize_8c-source.html#l00006">6</a> of file <a class="el" href="daemonize_8c-source.html">daemonize.c</a>.</p>
55   -
56   -</div>
57   -</div><p>
58   -</div>
59   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
60   -<a href="http://www.doxygen.org/index.html">
61   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
62   -</body>
63   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/daemonize.h Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>include/daemonize.h</h1><a href="daemonize_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef __DAEMONIZE_H__</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define __DAEMONIZE_H__</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor"></span>
25   -<a name="l00004"></a>00004 <span class="keywordtype">void</span> <a class="code" href="daemonize_8h.html#29b0af1da2432bcc90721c0b62f4e660">daemonize</a>(<span class="keywordtype">void</span>);
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#endif // __DAEMONIZE_H__</span>
28   -</pre></div></div>
29   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
30   -<a href="http://www.doxygen.org/index.html">
31   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
32   -</body>
33   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/daemonize.h File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>include/daemonize.h File Reference</h1>
25   -<p>
26   -<a href="daemonize_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
27   -<tr><td></td></tr>
28   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
29   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="daemonize_8h.html#29b0af1da2432bcc90721c0b62f4e660">daemonize</a> (void)</td></tr>
30   -
31   -</table>
32   -<hr><h2>Function Documentation</h2>
33   -<a class="anchor" name="29b0af1da2432bcc90721c0b62f4e660"></a><!-- doxytag: member="daemonize.h::daemonize" ref="29b0af1da2432bcc90721c0b62f4e660" args="(void)" -->
34   -<div class="memitem">
35   -<div class="memproto">
36   - <table class="memname">
37   - <tr>
38   - <td class="memname">void daemonize </td>
39   - <td>(</td>
40   - <td class="paramtype">void&nbsp;</td>
41   - <td class="paramname"> </td>
42   - <td>&nbsp;)&nbsp;</td>
43   - <td></td>
44   - </tr>
45   - </table>
46   -</div>
47   -<div class="memdoc">
48   -
49   -<p>
50   -
51   -<p>Definition at line <a class="el" href="daemonize_8c-source.html#l00006">6</a> of file <a class="el" href="daemonize_8c-source.html">daemonize.c</a>.</p>
52   -
53   -</div>
54   -</div><p>
55   -</div>
56   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
57   -<a href="http://www.doxygen.org/index.html">
58   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
59   -</body>
60   -</html>
1   -body, table, div, p, dl {
2   - font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
3   - font-size: 12px;
4   -}
5   -
6   -/* @group Heading Levels */
7   -
8   -h1 {
9   - text-align: center;
10   - font-size: 150%;
11   -}
12   -
13   -h2 {
14   - font-size: 120%;
15   -}
16   -
17   -h3 {
18   - font-size: 100%;
19   -}
20   -
21   -/* @end */
22   -
23   -caption {
24   - font-weight: bold;
25   -}
26   -
27   -div.qindex, div.navtab{
28   - background-color: #e8eef2;
29   - border: 1px solid #84b0c7;
30   - text-align: center;
31   - margin: 2px;
32   - padding: 2px;
33   -}
34   -
35   -div.qindex, div.navpath {
36   - width: 100%;
37   - line-height: 140%;
38   -}
39   -
40   -div.navtab {
41   - margin-right: 15px;
42   -}
43   -
44   -/* @group Link Styling */
45   -
46   -a {
47   - color: #153788;
48   - font-weight: normal;
49   - text-decoration: none;
50   -}
51   -
52   -.contents a:visited {
53   - color: #1b77c5;
54   -}
55   -
56   -a:hover {
57   - text-decoration: underline;
58   -}
59   -
60   -a.qindex {
61   - font-weight: bold;
62   -}
63   -
64   -a.qindexHL {
65   - font-weight: bold;
66   - background-color: #6666cc;
67   - color: #ffffff;
68   - border: 1px double #9295C2;
69   -}
70   -
71   -.contents a.qindexHL:visited {
72   - color: #ffffff;
73   -}
74   -
75   -a.el {
76   - font-weight: bold;
77   -}
78   -
79   -a.elRef {
80   -}
81   -
82   -a.code {
83   -}
84   -
85   -a.codeRef {
86   -}
87   -
88   -/* @end */
89   -
90   -dl.el {
91   - margin-left: -1cm;
92   -}
93   -
94   -.fragment {
95   - font-family: monospace, fixed;
96   - font-size: 105%;
97   -}
98   -
99   -pre.fragment {
100   - border: 1px solid #CCCCCC;
101   - background-color: #f5f5f5;
102   - padding: 4px 6px;
103   - margin: 4px 8px 4px 2px;
104   -}
105   -
106   -div.ah {
107   - background-color: black;
108   - font-weight: bold;
109   - color: #ffffff;
110   - margin-bottom: 3px;
111   - margin-top: 3px
112   -}
113   -
114   -div.groupHeader {
115   - margin-left: 16px;
116   - margin-top: 12px;
117   - margin-bottom: 6px;
118   - font-weight: bold;
119   -}
120   -
121   -div.groupText {
122   - margin-left: 16px;
123   - font-style: italic;
124   -}
125   -
126   -body {
127   - background: white;
128   - color: black;
129   - margin-right: 20px;
130   - margin-left: 20px;
131   -}
132   -
133   -td.indexkey {
134   - background-color: #e8eef2;
135   - font-weight: bold;
136   - border: 1px solid #CCCCCC;
137   - margin: 2px 0px 2px 0;
138   - padding: 2px 10px;
139   -}
140   -
141   -td.indexvalue {
142   - background-color: #e8eef2;
143   - border: 1px solid #CCCCCC;
144   - padding: 2px 10px;
145   - margin: 2px 0px;
146   -}
147   -
148   -tr.memlist {
149   - background-color: #f0f0f0;
150   -}
151   -
152   -p.formulaDsp {
153   - text-align: center;
154   -}
155   -
156   -img.formulaDsp {
157   -
158   -}
159   -
160   -img.formulaInl {
161   - vertical-align: middle;
162   -}
163   -
164   -/* @group Code Colorization */
165   -
166   -span.keyword {
167   - color: #008000
168   -}
169   -
170   -span.keywordtype {
171   - color: #604020
172   -}
173   -
174   -span.keywordflow {
175   - color: #e08000
176   -}
177   -
178   -span.comment {
179   - color: #800000
180   -}
181   -
182   -span.preprocessor {
183   - color: #806020
184   -}
185   -
186   -span.stringliteral {
187   - color: #002080
188   -}
189   -
190   -span.charliteral {
191   - color: #008080
192   -}
193   -
194   -span.vhdldigit {
195   - color: #ff00ff
196   -}
197   -
198   -span.vhdlchar {
199   - color: #000000
200   -}
201   -
202   -span.vhdlkeyword {
203   - color: #700070
204   -}
205   -
206   -span.vhdllogic {
207   - color: #ff0000
208   -}
209   -
210   -/* @end */
211   -
212   -.search {
213   - color: #003399;
214   - font-weight: bold;
215   -}
216   -
217   -form.search {
218   - margin-bottom: 0px;
219   - margin-top: 0px;
220   -}
221   -
222   -input.search {
223   - font-size: 75%;
224   - color: #000080;
225   - font-weight: normal;
226   - background-color: #e8eef2;
227   -}
228   -
229   -td.tiny {
230   - font-size: 75%;
231   -}
232   -
233   -.dirtab {
234   - padding: 4px;
235   - border-collapse: collapse;
236   - border: 1px solid #84b0c7;
237   -}
238   -
239   -th.dirtab {
240   - background: #e8eef2;
241   - font-weight: bold;
242   -}
243   -
244   -hr {
245   - height: 0;
246   - border: none;
247   - border-top: 1px solid #666;
248   -}
249   -
250   -/* @group Member Descriptions */
251   -
252   -.mdescLeft, .mdescRight,
253   -.memItemLeft, .memItemRight,
254   -.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
255   - background-color: #FAFAFA;
256   - border: none;
257   - margin: 4px;
258   - padding: 1px 0 0 8px;
259   -}
260   -
261   -.mdescLeft, .mdescRight {
262   - padding: 0px 8px 4px 8px;
263   - color: #555;
264   -}
265   -
266   -.memItemLeft, .memItemRight, .memTemplParams {
267   - border-top: 1px solid #ccc;
268   -}
269   -
270   -.memTemplParams {
271   - color: #606060;
272   -}
273   -
274   -/* @end */
275   -
276   -/* @group Member Details */
277   -
278   -/* Styles for detailed member documentation */
279   -
280   -.memtemplate {
281   - font-size: 80%;
282   - color: #606060;
283   - font-weight: normal;
284   - margin-left: 3px;
285   -}
286   -
287   -.memnav {
288   - background-color: #e8eef2;
289   - border: 1px solid #84b0c7;
290   - text-align: center;
291   - margin: 2px;
292   - margin-right: 15px;
293   - padding: 2px;
294   -}
295   -
296   -.memitem {
297   - padding: 0;
298   -}
299   -
300   -.memname {
301   - white-space: nowrap;
302   - font-weight: bold;
303   -}
304   -
305   -.memproto, .memdoc {
306   - border: 1px solid #84b0c7;
307   -}
308   -
309   -.memproto {
310   - padding: 0;
311   - background-color: #d5e1e8;
312   - font-weight: bold;
313   - -webkit-border-top-left-radius: 8px;
314   - -webkit-border-top-right-radius: 8px;
315   - -moz-border-radius-topleft: 8px;
316   - -moz-border-radius-topright: 8px;
317   -}
318   -
319   -.memdoc {
320   - padding: 2px 5px;
321   - background-color: #eef3f5;
322   - border-top-width: 0;
323   - -webkit-border-bottom-left-radius: 8px;
324   - -webkit-border-bottom-right-radius: 8px;
325   - -moz-border-radius-bottomleft: 8px;
326   - -moz-border-radius-bottomright: 8px;
327   -}
328   -
329   -.paramkey {
330   - text-align: right;
331   -}
332   -
333   -.paramtype {
334   - white-space: nowrap;
335   -}
336   -
337   -.paramname {
338   - color: #602020;
339   - white-space: nowrap;
340   -}
341   -.paramname em {
342   - font-style: normal;
343   -}
344   -
345   -/* @end */
346   -
347   -/* @group Directory (tree) */
348   -
349   -/* for the tree view */
350   -
351   -.ftvtree {
352   - font-family: sans-serif;
353   - margin: 0.5em;
354   -}
355   -
356   -/* these are for tree view when used as main index */
357   -
358   -.directory {
359   - font-size: 9pt;
360   - font-weight: bold;
361   -}
362   -
363   -.directory h3 {
364   - margin: 0px;
365   - margin-top: 1em;
366   - font-size: 11pt;
367   -}
368   -
369   -/*
370   -The following two styles can be used to replace the root node title
371   -with an image of your choice. Simply uncomment the next two styles,
372   -specify the name of your image and be sure to set 'height' to the
373   -proper pixel height of your image.
374   -*/
375   -
376   -/*
377   -.directory h3.swap {
378   - height: 61px;
379   - background-repeat: no-repeat;
380   - background-image: url("yourimage.gif");
381   -}
382   -.directory h3.swap span {
383   - display: none;
384   -}
385   -*/
386   -
387   -.directory > h3 {
388   - margin-top: 0;
389   -}
390   -
391   -.directory p {
392   - margin: 0px;
393   - white-space: nowrap;
394   -}
395   -
396   -.directory div {
397   - display: none;
398   - margin: 0px;
399   -}
400   -
401   -.directory img {
402   - vertical-align: -30%;
403   -}
404   -
405   -/* these are for tree view when not used as main index */
406   -
407   -.directory-alt {
408   - font-size: 100%;
409   - font-weight: bold;
410   -}
411   -
412   -.directory-alt h3 {
413   - margin: 0px;
414   - margin-top: 1em;
415   - font-size: 11pt;
416   -}
417   -
418   -.directory-alt > h3 {
419   - margin-top: 0;
420   -}
421   -
422   -.directory-alt p {
423   - margin: 0px;
424   - white-space: nowrap;
425   -}
426   -
427   -.directory-alt div {
428   - display: none;
429   - margin: 0px;
430   -}
431   -
432   -.directory-alt img {
433   - vertical-align: -30%;
434   -}
435   -
436   -/* @end */
437   -
438   -address {
439   - font-style: normal;
440   - color: #333;
441   -}
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: File Index</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li class="current"><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>File List</h1>Here is a list of all files with brief descriptions:<table>
25   - <tr><td class="indexkey">include/<a class="el" href="appConfig_8h.html">appConfig.h</a> <a href="appConfig_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
26   - <tr><td class="indexkey">include/<a class="el" href="client_8h.html">client.h</a> <a href="client_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
27   - <tr><td class="indexkey">include/<a class="el" href="daemonize_8h.html">daemonize.h</a> <a href="daemonize_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
28   - <tr><td class="indexkey">include/<a class="el" href="httpRequest_8h.html">httpRequest.h</a> <a href="httpRequest_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
29   - <tr><td class="indexkey">include/<a class="el" href="logRotate_8h.html">logRotate.h</a> <a href="logRotate_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
30   - <tr><td class="indexkey">include/<a class="el" href="monitor_8h.html">monitor.h</a> <a href="monitor_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
31   - <tr><td class="indexkey">include/<a class="el" href="server_8h.html">server.h</a> <a href="server_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
32   - <tr><td class="indexkey">include/<a class="el" href="signalHandling_8h.html">signalHandling.h</a> <a href="signalHandling_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
33   - <tr><td class="indexkey">include/<a class="el" href="socket_8h.html">socket.h</a> <a href="socket_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
34   - <tr><td class="indexkey">include/<a class="el" href="writeBuffer_8h.html">writeBuffer.h</a> <a href="writeBuffer_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
35   - <tr><td class="indexkey">reader/commonReader/<a class="el" href="clientClose_8c.html">clientClose.c</a> <a href="clientClose_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
36   - <tr><td class="indexkey">reader/commonReader/<a class="el" href="clientRead_8c.html">clientRead.c</a> <a href="clientRead_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
37   - <tr><td class="indexkey">reader/commonReader/<a class="el" href="writeBuffer_8c.html">writeBuffer.c</a> <a href="writeBuffer_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
38   - <tr><td class="indexkey">reader/httpReader/<a class="el" href="httpRequest_8c.html">httpRequest.c</a> <a href="httpRequest_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
39   - <tr><td class="indexkey">server/<a class="el" href="serverInit_8c.html">serverInit.c</a> <a href="serverInit_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
40   - <tr><td class="indexkey">server/<a class="el" href="serverRun_8c.html">serverRun.c</a> <a href="serverRun_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
41   - <tr><td class="indexkey">server/<a class="el" href="serverShutdown_8c.html">serverShutdown.c</a> <a href="serverShutdown_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
42   - <tr><td class="indexkey">system/<a class="el" href="daemonize_8c.html">daemonize.c</a> <a href="daemonize_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
43   - <tr><td class="indexkey">system/<a class="el" href="handleCmdLine_8c.html">handleCmdLine.c</a> <a href="handleCmdLine_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
44   - <tr><td class="indexkey">system/<a class="el" href="logRotate_8c.html">logRotate.c</a> <a href="logRotate_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
45   - <tr><td class="indexkey">system/<a class="el" href="monitor_8c.html">monitor.c</a> <a href="monitor_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
46   - <tr><td class="indexkey">system/<a class="el" href="signalHandling_8c.html">signalHandling.c</a> <a href="signalHandling_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
47   - <tr><td class="indexkey">system/<a class="el" href="socket_8c.html">socket.c</a> <a href="socket_8c-source.html">[code]</a></td><td class="indexvalue"></td></tr>
48   -</table>
49   -</div>
50   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
51   -<a href="http://www.doxygen.org/index.html">
52   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
53   -</body>
54   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
19   - <li class="current"><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li class="current"><a href="functions.html"><span>All</span></a></li>
25   - <li><a href="functions_vars.html"><span>Variables</span></a></li>
26   - </ul>
27   - </div>
28   - <div class="tabs">
29   - <ul>
30   - <li><a href="#index_b"><span>b</span></a></li>
31   - <li><a href="#index_c"><span>c</span></a></li>
32   - <li><a href="#index_d"><span>d</span></a></li>
33   - <li><a href="#index_h"><span>h</span></a></li>
34   - <li><a href="#index_k"><span>k</span></a></li>
35   - <li><a href="#index_l"><span>l</span></a></li>
36   - <li><a href="#index_m"><span>m</span></a></li>
37   - <li><a href="#index_n"><span>n</span></a></li>
38   - <li><a href="#index_p"><span>p</span></a></li>
39   - <li><a href="#index_r"><span>r</span></a></li>
40   - <li><a href="#index_s"><span>s</span></a></li>
41   - <li><a href="#index_v"><span>v</span></a></li>
42   - <li><a href="#index_w"><span>w</span></a></li>
43   - </ul>
44   - </div>
45   -</div>
46   -<div class="contents">
47   -Here is a list of all struct and union fields with links to the structures/unions they belong to:
48   -<p>
49   -<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
50   -<li>body
51   -: <a class="el" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">tHttpRequest</a>
52   -<li>bodyLength
53   -: <a class="el" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">tHttpHeader</a>
54   -<li>bodyLenRemaining
55   -: <a class="el" href="structtClient.html#00e4a47041701700d5d9e418773b01a1">tClient</a>
56   -</ul>
57   -<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
58   -<li>clients
59   -: <a class="el" href="structtServer.html#1c13c660dcf97444bdeee1f52bace303">tServer</a>
60   -</ul>
61   -<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
62   -<li>doDaemon
63   -: <a class="el" href="structtAppConfig.html#d5d5f9bd2f4f0dd2cd259e50c4d149bf">tAppConfig</a>
64   -</ul>
65   -<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
66   -<li>header
67   -: <a class="el" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">tHttpRequest</a>
68   -<li>headers
69   -: <a class="el" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">tHttpHeader</a>
70   -<li>headersCount
71   -: <a class="el" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">tHttpHeader</a>
72   -<li>httpHeader
73   -: <a class="el" href="structtClient.html#33623f89815acd8a2822a1f04cafe844">tClient</a>
74   -<li>httpVersion
75   -: <a class="el" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">tRequestLine</a>
76   -</ul>
77   -<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
78   -<li>key
79   -: <a class="el" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">tHttpHeaderLine</a>
80   -</ul>
81   -<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
82   -<li>length
83   -: <a class="el" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">tHttpRequest</a>
84   -<li>logPath
85   -: <a class="el" href="structtServer.html#17180f100090e101569a3a95934c38aa">tServer</a>
86   -, <a class="el" href="structtAppConfig.html#1b87fb5e17055c70a233387374d8342e">tAppConfig</a>
87   -</ul>
88   -<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
89   -<li>maxFd
90   -: <a class="el" href="structtServer.html#145a672dfaec08ce54c02dbc9f3b11ae">tServer</a>
91   -<li>maxPending
92   -: <a class="el" href="structtAppConfig.html#1bef5de806f77de1c307062e9fa84e4f">tAppConfig</a>
93   -<li>method
94   -: <a class="el" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">tRequestLine</a>
95   -</ul>
96   -<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
97   -<li>namePat
98   -: <a class="el" href="structtAppConfig.html#58b889074da91d9de3ef14aa34f97795">tAppConfig</a>
99   -, <a class="el" href="structtServer.html#c932a28b0613bb0276c1ceb6b3fee454">tServer</a>
100   -</ul>
101   -<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
102   -<li>parser
103   -: <a class="el" href="structtClient.html#b8f8ab3f31d6cf8fd4b3b527ef9c0107">tClient</a>
104   -<li>port
105   -: <a class="el" href="structtAppConfig.html#3e4960a8eb8e1eac506bd651453faecc">tAppConfig</a>
106   -</ul>
107   -<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
108   -<li>readBuffer
109   -: <a class="el" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">tClient</a>
110   -<li>readBufMult
111   -: <a class="el" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">tClient</a>
112   -<li>readPos
113   -: <a class="el" href="structtClient.html#0948ef13430298f28cb48199119136c1">tClient</a>
114   -<li>remoteAddr
115   -: <a class="el" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">tClient</a>
116   -<li>req
117   -: <a class="el" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">tHttpHeader</a>
118   -<li>requestUri
119   -: <a class="el" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">tRequestLine</a>
120   -</ul>
121   -<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
122   -<li>servSock
123   -: <a class="el" href="structtServer.html#0f35110b14ced93ae0c47173e37d707d">tServer</a>
124   -<li>socket
125   -: <a class="el" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">tClient</a>
126   -<li>socks
127   -: <a class="el" href="structtServer.html#f1e1c8e11bd347994ebc641bcac4c0fb">tServer</a>
128   -</ul>
129   -<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
130   -<li>value
131   -: <a class="el" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">tHttpHeaderLine</a>
132   -<li>verbose
133   -: <a class="el" href="structtAppConfig.html#9a20fbb501c68675f88764f1dcb42684">tAppConfig</a>
134   -</ul>
135   -<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
136   -<li>wHandle
137   -: <a class="el" href="structtServer.html#8fc3e5e54d17d86d21874d5987a080af">tServer</a>
138   -<li>writeBuffer
139   -: <a class="el" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">tClient</a>
140   -<li>writePos
141   -: <a class="el" href="structtClient.html#97da33ce83548b5900f11e29d5cec8d1">tClient</a>
142   -</ul>
143   -</div>
144   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
145   -<a href="http://www.doxygen.org/index.html">
146   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
147   -</body>
148   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields - Variables</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
19   - <li class="current"><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li><a href="functions.html"><span>All</span></a></li>
25   - <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
26   - </ul>
27   - </div>
28   - <div class="tabs">
29   - <ul>
30   - <li><a href="#index_b"><span>b</span></a></li>
31   - <li><a href="#index_c"><span>c</span></a></li>
32   - <li><a href="#index_d"><span>d</span></a></li>
33   - <li><a href="#index_h"><span>h</span></a></li>
34   - <li><a href="#index_k"><span>k</span></a></li>
35   - <li><a href="#index_l"><span>l</span></a></li>
36   - <li><a href="#index_m"><span>m</span></a></li>
37   - <li><a href="#index_n"><span>n</span></a></li>
38   - <li><a href="#index_p"><span>p</span></a></li>
39   - <li><a href="#index_r"><span>r</span></a></li>
40   - <li><a href="#index_s"><span>s</span></a></li>
41   - <li><a href="#index_v"><span>v</span></a></li>
42   - <li><a href="#index_w"><span>w</span></a></li>
43   - </ul>
44   - </div>
45   -</div>
46   -<div class="contents">
47   -&nbsp;
48   -<p>
49   -<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
50   -<li>body
51   -: <a class="el" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">tHttpRequest</a>
52   -<li>bodyLength
53   -: <a class="el" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">tHttpHeader</a>
54   -<li>bodyLenRemaining
55   -: <a class="el" href="structtClient.html#00e4a47041701700d5d9e418773b01a1">tClient</a>
56   -</ul>
57   -<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
58   -<li>clients
59   -: <a class="el" href="structtServer.html#1c13c660dcf97444bdeee1f52bace303">tServer</a>
60   -</ul>
61   -<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
62   -<li>doDaemon
63   -: <a class="el" href="structtAppConfig.html#d5d5f9bd2f4f0dd2cd259e50c4d149bf">tAppConfig</a>
64   -</ul>
65   -<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
66   -<li>header
67   -: <a class="el" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">tHttpRequest</a>
68   -<li>headers
69   -: <a class="el" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">tHttpHeader</a>
70   -<li>headersCount
71   -: <a class="el" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">tHttpHeader</a>
72   -<li>httpHeader
73   -: <a class="el" href="structtClient.html#33623f89815acd8a2822a1f04cafe844">tClient</a>
74   -<li>httpVersion
75   -: <a class="el" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">tRequestLine</a>
76   -</ul>
77   -<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
78   -<li>key
79   -: <a class="el" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">tHttpHeaderLine</a>
80   -</ul>
81   -<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
82   -<li>length
83   -: <a class="el" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">tHttpRequest</a>
84   -<li>logPath
85   -: <a class="el" href="structtServer.html#17180f100090e101569a3a95934c38aa">tServer</a>
86   -, <a class="el" href="structtAppConfig.html#1b87fb5e17055c70a233387374d8342e">tAppConfig</a>
87   -</ul>
88   -<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
89   -<li>maxFd
90   -: <a class="el" href="structtServer.html#145a672dfaec08ce54c02dbc9f3b11ae">tServer</a>
91   -<li>maxPending
92   -: <a class="el" href="structtAppConfig.html#1bef5de806f77de1c307062e9fa84e4f">tAppConfig</a>
93   -<li>method
94   -: <a class="el" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">tRequestLine</a>
95   -</ul>
96   -<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
97   -<li>namePat
98   -: <a class="el" href="structtAppConfig.html#58b889074da91d9de3ef14aa34f97795">tAppConfig</a>
99   -, <a class="el" href="structtServer.html#c932a28b0613bb0276c1ceb6b3fee454">tServer</a>
100   -</ul>
101   -<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
102   -<li>parser
103   -: <a class="el" href="structtClient.html#b8f8ab3f31d6cf8fd4b3b527ef9c0107">tClient</a>
104   -<li>port
105   -: <a class="el" href="structtAppConfig.html#3e4960a8eb8e1eac506bd651453faecc">tAppConfig</a>
106   -</ul>
107   -<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
108   -<li>readBuffer
109   -: <a class="el" href="structtClient.html#70a954f8e1e6df925d78b34b9f2f162a">tClient</a>
110   -<li>readBufMult
111   -: <a class="el" href="structtClient.html#c55c66265d03aec3d760a0ed54b08a1f">tClient</a>
112   -<li>readPos
113   -: <a class="el" href="structtClient.html#0948ef13430298f28cb48199119136c1">tClient</a>
114   -<li>remoteAddr
115   -: <a class="el" href="structtClient.html#e23a04145b9c0cc1262721432a43c947">tClient</a>
116   -<li>req
117   -: <a class="el" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">tHttpHeader</a>
118   -<li>requestUri
119   -: <a class="el" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">tRequestLine</a>
120   -</ul>
121   -<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
122   -<li>servSock
123   -: <a class="el" href="structtServer.html#0f35110b14ced93ae0c47173e37d707d">tServer</a>
124   -<li>socket
125   -: <a class="el" href="structtClient.html#fdcb6fae6d4162315adc430dc34e3df0">tClient</a>
126   -<li>socks
127   -: <a class="el" href="structtServer.html#f1e1c8e11bd347994ebc641bcac4c0fb">tServer</a>
128   -</ul>
129   -<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
130   -<li>value
131   -: <a class="el" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">tHttpHeaderLine</a>
132   -<li>verbose
133   -: <a class="el" href="structtAppConfig.html#9a20fbb501c68675f88764f1dcb42684">tAppConfig</a>
134   -</ul>
135   -<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
136   -<li>wHandle
137   -: <a class="el" href="structtServer.html#8fc3e5e54d17d86d21874d5987a080af">tServer</a>
138   -<li>writeBuffer
139   -: <a class="el" href="structtClient.html#99d73b0cba75199cb16952751fdcc52d">tClient</a>
140   -<li>writePos
141   -: <a class="el" href="structtClient.html#97da33ce83548b5900f11e29d5cec8d1">tClient</a>
142   -</ul>
143   -</div>
144   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
145   -<a href="http://www.doxygen.org/index.html">
146   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
147   -</body>
148   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li class="current"><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li class="current"><a href="globals.html"><span>All</span></a></li>
25   - <li><a href="globals_func.html"><span>Functions</span></a></li>
26   - <li><a href="globals_vars.html"><span>Variables</span></a></li>
27   - <li><a href="globals_defs.html"><span>Defines</span></a></li>
28   - </ul>
29   - </div>
30   - <div class="tabs">
31   - <ul>
32   - <li><a href="#index_a"><span>a</span></a></li>
33   - <li><a href="#index_c"><span>c</span></a></li>
34   - <li><a href="#index_d"><span>d</span></a></li>
35   - <li><a href="#index_e"><span>e</span></a></li>
36   - <li><a href="#index_f"><span>f</span></a></li>
37   - <li><a href="#index_g"><span>g</span></a></li>
38   - <li><a href="#index_h"><span>h</span></a></li>
39   - <li><a href="#index_i"><span>i</span></a></li>
40   - <li><a href="#index_l"><span>l</span></a></li>
41   - <li><a href="#index_m"><span>m</span></a></li>
42   - <li><a href="#index_r"><span>r</span></a></li>
43   - <li><a href="#index_s"><span>s</span></a></li>
44   - <li><a href="#index_t"><span>t</span></a></li>
45   - <li><a href="#index_v"><span>v</span></a></li>
46   - <li><a href="#index_w"><span>w</span></a></li>
47   - </ul>
48   - </div>
49   -</div>
50   -<div class="contents">
51   -Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
52   -<p>
53   -<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
54   -<li>acceptConnection()
55   -: <a class="el" href="socket_8h.html#f09ba488c48f40f8d1f133a4441deb25">socket.h</a>
56   -, <a class="el" href="socket_8c.html#f09ba488c48f40f8d1f133a4441deb25">socket.c</a>
57   -</ul>
58   -<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
59   -<li>clientClose()
60   -: <a class="el" href="client_8h.html#a9dad65338aa78062b23a924ae1d2b59">client.h</a>
61   -, <a class="el" href="clientClose_8c.html#a9dad65338aa78062b23a924ae1d2b59">clientClose.c</a>
62   -<li>clientConsumeLine()
63   -: <a class="el" href="clientRead_8c.html#8363f6facea09bd36e288a51c983aed2">clientRead.c</a>
64   -<li>clientGetLine()
65   -: <a class="el" href="client_8h.html#9741eb2a0853766868828c722e67c068">client.h</a>
66   -, <a class="el" href="clientRead_8c.html#fbcefe4f20179c643fdff8007235325c">clientRead.c</a>
67   -<li>CLIENTMULTMAX
68   -: <a class="el" href="client_8h.html#eefa2efc8515c7f8334de344e8a07fbf">client.h</a>
69   -<li>clientRead()
70   -: <a class="el" href="clientRead_8c.html#6504ff36553f8008b9ee1d52aa977740">clientRead.c</a>
71   -, <a class="el" href="client_8h.html#6504ff36553f8008b9ee1d52aa977740">client.h</a>
72   -<li>clientRemoveLine()
73   -: <a class="el" href="clientRead_8c.html#8cbd479139f4645f07ae0b7c18202fef">clientRead.c</a>
74   -, <a class="el" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">client.h</a>
75   -<li>clientWrite()
76   -: <a class="el" href="client_8h.html#ab1a321bfd432ac9ec8818ad3eb6e591">client.h</a>
77   -</ul>
78   -<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
79   -<li>daemonize()
80   -: <a class="el" href="daemonize_8h.html#29b0af1da2432bcc90721c0b62f4e660">daemonize.h</a>
81   -, <a class="el" href="daemonize_8c.html#29b0af1da2432bcc90721c0b62f4e660">daemonize.c</a>
82   -<li>DEFAULTPATH
83   -: <a class="el" href="appConfig_8h.html#0672e2d34f3bbe2f6cdad6f307b9d1cf">appConfig.h</a>
84   -<li>DEFAULTPORT
85   -: <a class="el" href="appConfig_8h.html#3db4dba8d56385b62759b89c98cae447">appConfig.h</a>
86   -<li>Depth
87   -: <a class="el" href="serverRun_8c.html#c66dbe0e082fd3cc29bc1572a4dccc09">serverRun.c</a>
88   -<li>doShutdown
89   -: <a class="el" href="signalHandling_8h.html#960e985a396acaabb1bbed4f15668ade">signalHandling.h</a>
90   -, <a class="el" href="signalHandling_8c.html#960e985a396acaabb1bbed4f15668ade">signalHandling.c</a>
91   -</ul>
92   -<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
93   -<li>end()
94   -: <a class="el" href="serverRun_8c.html#1e60190f250d3f699f3671c759e6fe36">serverRun.c</a>
95   -<li>EOB
96   -: <a class="el" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">clientRead.c</a>
97   -</ul>
98   -<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
99   -<li>freeHttpHeader()
100   -: <a class="el" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">httpRequest.h</a>
101   -, <a class="el" href="httpRequest_8c.html#86d86da69aefe2067f750c80e626de7c">httpRequest.c</a>
102   -<li>freeHttpRequest()
103   -: <a class="el" href="httpRequest_8h.html#1bba1865657c64c0e1971a45ee6117ab">httpRequest.h</a>
104   -, <a class="el" href="httpRequest_8c.html#d1d9e65b1761d1d5f809314b4b05e772">httpRequest.c</a>
105   -</ul>
106   -<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
107   -<li>GET_MULTIPLIER
108   -: <a class="el" href="clientRead_8c.html#3baabeba3e06eb1b8761363a58f8391b">clientRead.c</a>
109   -<li>getHttpRequest()
110   -: <a class="el" href="httpRequest_8c.html#9a6b00ad980ca9a2c5023ec1a802106b">httpRequest.c</a>
111   -, <a class="el" href="httpRequest_8h.html#59d765731e7d39f5583ef175950becb1">httpRequest.h</a>
112   -</ul>
113   -<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
114   -<li>handleCmdLine()
115   -: <a class="el" href="appConfig_8h.html#3755d793d10d6e5793ed5086a0b22964">appConfig.h</a>
116   -, <a class="el" href="handleCmdLine_8c.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine.c</a>
117   -<li>HTTP_REQ_CONNECT
118   -: <a class="el" href="httpRequest_8h.html#5e49980e0d7d4080e2cececd00796981">httpRequest.h</a>
119   -<li>HTTP_REQ_DELETE
120   -: <a class="el" href="httpRequest_8h.html#2894c25df3d2e54885cc414aa9731811">httpRequest.h</a>
121   -<li>HTTP_REQ_GET
122   -: <a class="el" href="httpRequest_8h.html#783bb94ef6eee3041b08244fcf43304f">httpRequest.h</a>
123   -<li>HTTP_REQ_HEAD
124   -: <a class="el" href="httpRequest_8h.html#99dd5b1289103eee62ebd66082f03e98">httpRequest.h</a>
125   -<li>HTTP_REQ_OPTIONS
126   -: <a class="el" href="httpRequest_8h.html#bcd1460716fe0d7d7bbfab4d8df7431b">httpRequest.h</a>
127   -<li>HTTP_REQ_POST
128   -: <a class="el" href="httpRequest_8h.html#b113eaf10da1f4291202f81bea630f5b">httpRequest.h</a>
129   -<li>HTTP_REQ_PUT
130   -: <a class="el" href="httpRequest_8h.html#af09691edc99a286c60427e1f390d7bd">httpRequest.h</a>
131   -<li>HTTP_REQ_TRACE
132   -: <a class="el" href="httpRequest_8h.html#21cd537dafe8cd458fbb1eeb1208f4a8">httpRequest.h</a>
133   -<li>httpHeaderGet()
134   -: <a class="el" href="httpRequest_8h.html#07afde622816238d4424591269f5616a">httpRequest.h</a>
135   -, <a class="el" href="httpRequest_8c.html#fd4f839160f6d97ad28e05ee1ce81188">httpRequest.c</a>
136   -<li>httpHeaderGetLine()
137   -: <a class="el" href="httpRequest_8c.html#c96f6dae9ced89eb2ae8ac556918e367">httpRequest.c</a>
138   -<li>httpHeaderIsComplete()
139   -: <a class="el" href="httpRequest_8c.html#d5d9232083e5890588d5e1840341a48b">httpRequest.c</a>
140   -, <a class="el" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpRequest.h</a>
141   -<li>httpHeaderIsStarted()
142   -: <a class="el" href="httpRequest_8h.html#99eb3b2c1e06ee773fd3bb7da7e98ece">httpRequest.h</a>
143   -, <a class="el" href="httpRequest_8c.html#29982601e2121cd75800202f5716c7f5">httpRequest.c</a>
144   -<li>httpHeaderParseRequestLine()
145   -: <a class="el" href="httpRequest_8h.html#b7ea84417c64cc894ef20f3fad58832f">httpRequest.h</a>
146   -, <a class="el" href="httpRequest_8c.html#e18ae9e899c3c951308bb2ec4bd810f5">httpRequest.c</a>
147   -<li>httpRequest
148   -: <a class="el" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">httpRequest.c</a>
149   -, <a class="el" href="httpRequest_8h.html#e7110ef069c94769a78296dc38ab86ca">httpRequest.h</a>
150   -</ul>
151   -<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
152   -<li>init_signals()
153   -: <a class="el" href="signalHandling_8h.html#1de31bdef82f181f8045b94ae0933916">signalHandling.h</a>
154   -, <a class="el" href="signalHandling_8c.html#1de31bdef82f181f8045b94ae0933916">signalHandling.c</a>
155   -<li>initServerSocket()
156   -: <a class="el" href="socket_8h.html#44dc8ffaedb1d6f7d4663f5cecaf4e70">socket.h</a>
157   -, <a class="el" href="socket_8c.html#44dc8ffaedb1d6f7d4663f5cecaf4e70">socket.c</a>
158   -</ul>
159   -<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
160   -<li>LOGNAMEPATTERN
161   -: <a class="el" href="appConfig_8h.html#9a98b2d0f973e357020c1274ec5b56c0">appConfig.h</a>
162   -<li>logRotate()
163   -: <a class="el" href="logRotate_8c.html#70a3ebded819019c99ad001f29e082de">logRotate.c</a>
164   -, <a class="el" href="logRotate_8h.html#82df920a9975d5484d681c6f9009da38">logRotate.h</a>
165   -</ul>
166   -<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
167   -<li>MAX
168   -: <a class="el" href="appConfig_8h.html#acc3ee1a7f283f8ef65cea31f4436a95">appConfig.h</a>
169   -<li>MAXCLIENTS
170   -: <a class="el" href="appConfig_8h.html#ce5c08f66edfc6ae44edaeef6b6101b6">appConfig.h</a>
171   -<li>MAXPENDING
172   -: <a class="el" href="appConfig_8h.html#f77ed3e65a7b1a9341603d152a1404df">appConfig.h</a>
173   -<li>MIN
174   -: <a class="el" href="appConfig_8h.html#74e75242132eaabbc1c512488a135926">appConfig.h</a>
175   -<li>MON_CRITICAL
176   -: <a class="el" href="monitor_8h.html#b11b9abcce9ac28426ff81c206e28fc8">monitor.h</a>
177   -<li>MON_FAILURE
178   -: <a class="el" href="monitor_8h.html#c41f84ee1d999369a9496a2c49c4181c">monitor.h</a>
179   -<li>MON_INFO
180   -: <a class="el" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">monitor.h</a>
181   -<li>MON_WARNING
182   -: <a class="el" href="monitor_8h.html#8eabf82310c059cc80dceaa533a74182">monitor.h</a>
183   -<li>monitor()
184   -: <a class="el" href="monitor_8h.html#afab1757e8c3bc9c5143490b256cb684">monitor.h</a>
185   -, <a class="el" href="monitor_8c.html#afab1757e8c3bc9c5143490b256cb684">monitor.c</a>
186   -<li>MONITORCMD
187   -: <a class="el" href="monitor_8c.html#d2e5f556fda8453832fa6b5f7c92bc85">monitor.c</a>
188   -<li>MONITORNAME
189   -: <a class="el" href="monitor_8c.html#d79291fa6d09c30b5ad1c10c8a5d647f">monitor.c</a>
190   -<li>MONITORTYPE
191   -: <a class="el" href="monitor_8c.html#630eb7604f0fe1161c6165cec5200b3d">monitor.c</a>
192   -</ul>
193   -<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
194   -<li>READ_ERR_LONGLINE
195   -: <a class="el" href="client_8h.html#f150df8f008146f177d67862d2569834">client.h</a>
196   -<li>READ_ERR_MEMORY
197   -: <a class="el" href="client_8h.html#4f090ce41ed48b83e309d8fce71db4ab">client.h</a>
198   -<li>READBUFSIZE
199   -: <a class="el" href="client_8h.html#a0534241791f23ec8098503582406166">client.h</a>
200   -, <a class="el" href="appConfig_8h.html#a0534241791f23ec8098503582406166">appConfig.h</a>
201   -<li>REMAINING
202   -: <a class="el" href="clientRead_8c.html#b6f9cfea308c9f485d4b00b60fd2f6cd">clientRead.c</a>
203   -<li>RESPONSE
204   -: <a class="el" href="serverRun_8c.html#98a2366f9ef44f0d3eee7d33981bbe8a">serverRun.c</a>
205   -</ul>
206   -<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
207   -<li>serverInit()
208   -: <a class="el" href="server_8h.html#68050069ed3a2e05cb02440090c89a1f">server.h</a>
209   -, <a class="el" href="serverInit_8c.html#68050069ed3a2e05cb02440090c89a1f">serverInit.c</a>
210   -<li>serverRun()
211   -: <a class="el" href="serverRun_8c.html#208ea34b5a69f6ff0d48ed85c9a6f9eb">serverRun.c</a>
212   -, <a class="el" href="server_8h.html#208ea34b5a69f6ff0d48ed85c9a6f9eb">server.h</a>
213   -<li>serverShutdown()
214   -: <a class="el" href="server_8h.html#50decfdd3550b2490a1b9448a313cbf9">server.h</a>
215   -, <a class="el" href="serverShutdown_8c.html#50decfdd3550b2490a1b9448a313cbf9">serverShutdown.c</a>
216   -<li>severity
217   -: <a class="el" href="monitor_8c.html#8142dc3c72610140dfcacc52de5881fd">monitor.c</a>
218   -<li>SPACE
219   -: <a class="el" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">httpRequest.c</a>
220   -<li>start()
221   -: <a class="el" href="serverRun_8c.html#73425567b97c64e9af77c626e0069f67">serverRun.c</a>
222   -<li>syslogMonitor()
223   -: <a class="el" href="monitor_8c.html#13e7bf0022db0d9f5dd6aeb82ec69999">monitor.c</a>
224   -, <a class="el" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">monitor.h</a>
225   -</ul>
226   -<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
227   -<li>terminate()
228   -: <a class="el" href="signalHandling_8h.html#64612b9588ed0fb05d70680db02b3630">signalHandling.h</a>
229   -, <a class="el" href="signalHandling_8c.html#64612b9588ed0fb05d70680db02b3630">signalHandling.c</a>
230   -</ul>
231   -<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
232   -<li>verbose
233   -: <a class="el" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">client.h</a>
234   -, <a class="el" href="socket_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">socket.c</a>
235   -, <a class="el" href="logRotate_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">logRotate.c</a>
236   -</ul>
237   -<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
238   -<li>writeBuffer()
239   -: <a class="el" href="writeBuffer_8h.html#a947cab623514e5a9c9700bca074b77e">writeBuffer.h</a>
240   -, <a class="el" href="writeBuffer_8c.html#a947cab623514e5a9c9700bca074b77e">writeBuffer.c</a>
241   -</ul>
242   -</div>
243   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
244   -<a href="http://www.doxygen.org/index.html">
245   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
246   -</body>
247   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li class="current"><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li><a href="globals.html"><span>All</span></a></li>
25   - <li><a href="globals_func.html"><span>Functions</span></a></li>
26   - <li><a href="globals_vars.html"><span>Variables</span></a></li>
27   - <li class="current"><a href="globals_defs.html"><span>Defines</span></a></li>
28   - </ul>
29   - </div>
30   - <div class="tabs">
31   - <ul>
32   - <li><a href="#index_c"><span>c</span></a></li>
33   - <li><a href="#index_d"><span>d</span></a></li>
34   - <li><a href="#index_e"><span>e</span></a></li>
35   - <li><a href="#index_g"><span>g</span></a></li>
36   - <li><a href="#index_h"><span>h</span></a></li>
37   - <li><a href="#index_l"><span>l</span></a></li>
38   - <li><a href="#index_m"><span>m</span></a></li>
39   - <li><a href="#index_r"><span>r</span></a></li>
40   - <li><a href="#index_s"><span>s</span></a></li>
41   - </ul>
42   - </div>
43   -</div>
44   -<div class="contents">
45   -&nbsp;
46   -<p>
47   -<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
48   -<li>CLIENTMULTMAX
49   -: <a class="el" href="client_8h.html#eefa2efc8515c7f8334de344e8a07fbf">client.h</a>
50   -</ul>
51   -<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
52   -<li>DEFAULTPATH
53   -: <a class="el" href="appConfig_8h.html#0672e2d34f3bbe2f6cdad6f307b9d1cf">appConfig.h</a>
54   -<li>DEFAULTPORT
55   -: <a class="el" href="appConfig_8h.html#3db4dba8d56385b62759b89c98cae447">appConfig.h</a>
56   -</ul>
57   -<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
58   -<li>EOB
59   -: <a class="el" href="clientRead_8c.html#47d745b24a58d0152c7b43db75387a79">clientRead.c</a>
60   -</ul>
61   -<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
62   -<li>GET_MULTIPLIER
63   -: <a class="el" href="clientRead_8c.html#3baabeba3e06eb1b8761363a58f8391b">clientRead.c</a>
64   -</ul>
65   -<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
66   -<li>HTTP_REQ_CONNECT
67   -: <a class="el" href="httpRequest_8h.html#5e49980e0d7d4080e2cececd00796981">httpRequest.h</a>
68   -<li>HTTP_REQ_DELETE
69   -: <a class="el" href="httpRequest_8h.html#2894c25df3d2e54885cc414aa9731811">httpRequest.h</a>
70   -<li>HTTP_REQ_GET
71   -: <a class="el" href="httpRequest_8h.html#783bb94ef6eee3041b08244fcf43304f">httpRequest.h</a>
72   -<li>HTTP_REQ_HEAD
73   -: <a class="el" href="httpRequest_8h.html#99dd5b1289103eee62ebd66082f03e98">httpRequest.h</a>
74   -<li>HTTP_REQ_OPTIONS
75   -: <a class="el" href="httpRequest_8h.html#bcd1460716fe0d7d7bbfab4d8df7431b">httpRequest.h</a>
76   -<li>HTTP_REQ_POST
77   -: <a class="el" href="httpRequest_8h.html#b113eaf10da1f4291202f81bea630f5b">httpRequest.h</a>
78   -<li>HTTP_REQ_PUT
79   -: <a class="el" href="httpRequest_8h.html#af09691edc99a286c60427e1f390d7bd">httpRequest.h</a>
80   -<li>HTTP_REQ_TRACE
81   -: <a class="el" href="httpRequest_8h.html#21cd537dafe8cd458fbb1eeb1208f4a8">httpRequest.h</a>
82   -</ul>
83   -<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
84   -<li>LOGNAMEPATTERN
85   -: <a class="el" href="appConfig_8h.html#9a98b2d0f973e357020c1274ec5b56c0">appConfig.h</a>
86   -</ul>
87   -<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
88   -<li>MAX
89   -: <a class="el" href="appConfig_8h.html#acc3ee1a7f283f8ef65cea31f4436a95">appConfig.h</a>
90   -<li>MAXCLIENTS
91   -: <a class="el" href="appConfig_8h.html#ce5c08f66edfc6ae44edaeef6b6101b6">appConfig.h</a>
92   -<li>MAXPENDING
93   -: <a class="el" href="appConfig_8h.html#f77ed3e65a7b1a9341603d152a1404df">appConfig.h</a>
94   -<li>MIN
95   -: <a class="el" href="appConfig_8h.html#74e75242132eaabbc1c512488a135926">appConfig.h</a>
96   -<li>MON_CRITICAL
97   -: <a class="el" href="monitor_8h.html#b11b9abcce9ac28426ff81c206e28fc8">monitor.h</a>
98   -<li>MON_FAILURE
99   -: <a class="el" href="monitor_8h.html#c41f84ee1d999369a9496a2c49c4181c">monitor.h</a>
100   -<li>MON_INFO
101   -: <a class="el" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">monitor.h</a>
102   -<li>MON_WARNING
103   -: <a class="el" href="monitor_8h.html#8eabf82310c059cc80dceaa533a74182">monitor.h</a>
104   -<li>MONITORCMD
105   -: <a class="el" href="monitor_8c.html#d2e5f556fda8453832fa6b5f7c92bc85">monitor.c</a>
106   -<li>MONITORNAME
107   -: <a class="el" href="monitor_8c.html#d79291fa6d09c30b5ad1c10c8a5d647f">monitor.c</a>
108   -<li>MONITORTYPE
109   -: <a class="el" href="monitor_8c.html#630eb7604f0fe1161c6165cec5200b3d">monitor.c</a>
110   -</ul>
111   -<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
112   -<li>READ_ERR_LONGLINE
113   -: <a class="el" href="client_8h.html#f150df8f008146f177d67862d2569834">client.h</a>
114   -<li>READ_ERR_MEMORY
115   -: <a class="el" href="client_8h.html#4f090ce41ed48b83e309d8fce71db4ab">client.h</a>
116   -<li>READBUFSIZE
117   -: <a class="el" href="client_8h.html#a0534241791f23ec8098503582406166">client.h</a>
118   -, <a class="el" href="appConfig_8h.html#a0534241791f23ec8098503582406166">appConfig.h</a>
119   -<li>REMAINING
120   -: <a class="el" href="clientRead_8c.html#b6f9cfea308c9f485d4b00b60fd2f6cd">clientRead.c</a>
121   -<li>RESPONSE
122   -: <a class="el" href="serverRun_8c.html#98a2366f9ef44f0d3eee7d33981bbe8a">serverRun.c</a>
123   -</ul>
124   -<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
125   -<li>SPACE
126   -: <a class="el" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">httpRequest.c</a>
127   -</ul>
128   -</div>
129   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
130   -<a href="http://www.doxygen.org/index.html">
131   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
132   -</body>
133   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li class="current"><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li><a href="globals.html"><span>All</span></a></li>
25   - <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
26   - <li><a href="globals_vars.html"><span>Variables</span></a></li>
27   - <li><a href="globals_defs.html"><span>Defines</span></a></li>
28   - </ul>
29   - </div>
30   - <div class="tabs">
31   - <ul>
32   - <li><a href="#index_a"><span>a</span></a></li>
33   - <li><a href="#index_c"><span>c</span></a></li>
34   - <li><a href="#index_d"><span>d</span></a></li>
35   - <li><a href="#index_e"><span>e</span></a></li>
36   - <li><a href="#index_f"><span>f</span></a></li>
37   - <li><a href="#index_g"><span>g</span></a></li>
38   - <li><a href="#index_h"><span>h</span></a></li>
39   - <li><a href="#index_i"><span>i</span></a></li>
40   - <li><a href="#index_l"><span>l</span></a></li>
41   - <li><a href="#index_m"><span>m</span></a></li>
42   - <li><a href="#index_s"><span>s</span></a></li>
43   - <li><a href="#index_t"><span>t</span></a></li>
44   - <li><a href="#index_w"><span>w</span></a></li>
45   - </ul>
46   - </div>
47   -</div>
48   -<div class="contents">
49   -&nbsp;
50   -<p>
51   -<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
52   -<li>acceptConnection()
53   -: <a class="el" href="socket_8h.html#f09ba488c48f40f8d1f133a4441deb25">socket.h</a>
54   -, <a class="el" href="socket_8c.html#f09ba488c48f40f8d1f133a4441deb25">socket.c</a>
55   -</ul>
56   -<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
57   -<li>clientClose()
58   -: <a class="el" href="client_8h.html#a9dad65338aa78062b23a924ae1d2b59">client.h</a>
59   -, <a class="el" href="clientClose_8c.html#a9dad65338aa78062b23a924ae1d2b59">clientClose.c</a>
60   -<li>clientConsumeLine()
61   -: <a class="el" href="clientRead_8c.html#8363f6facea09bd36e288a51c983aed2">clientRead.c</a>
62   -<li>clientGetLine()
63   -: <a class="el" href="client_8h.html#9741eb2a0853766868828c722e67c068">client.h</a>
64   -, <a class="el" href="clientRead_8c.html#fbcefe4f20179c643fdff8007235325c">clientRead.c</a>
65   -<li>clientRead()
66   -: <a class="el" href="clientRead_8c.html#6504ff36553f8008b9ee1d52aa977740">clientRead.c</a>
67   -, <a class="el" href="client_8h.html#6504ff36553f8008b9ee1d52aa977740">client.h</a>
68   -<li>clientRemoveLine()
69   -: <a class="el" href="client_8h.html#a920588f9122184bad211ae912d1dbc4">client.h</a>
70   -, <a class="el" href="clientRead_8c.html#8cbd479139f4645f07ae0b7c18202fef">clientRead.c</a>
71   -<li>clientWrite()
72   -: <a class="el" href="client_8h.html#ab1a321bfd432ac9ec8818ad3eb6e591">client.h</a>
73   -</ul>
74   -<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
75   -<li>daemonize()
76   -: <a class="el" href="daemonize_8h.html#29b0af1da2432bcc90721c0b62f4e660">daemonize.h</a>
77   -, <a class="el" href="daemonize_8c.html#29b0af1da2432bcc90721c0b62f4e660">daemonize.c</a>
78   -</ul>
79   -<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
80   -<li>end()
81   -: <a class="el" href="serverRun_8c.html#1e60190f250d3f699f3671c759e6fe36">serverRun.c</a>
82   -</ul>
83   -<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
84   -<li>freeHttpHeader()
85   -: <a class="el" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">httpRequest.h</a>
86   -, <a class="el" href="httpRequest_8c.html#86d86da69aefe2067f750c80e626de7c">httpRequest.c</a>
87   -<li>freeHttpRequest()
88   -: <a class="el" href="httpRequest_8h.html#1bba1865657c64c0e1971a45ee6117ab">httpRequest.h</a>
89   -, <a class="el" href="httpRequest_8c.html#d1d9e65b1761d1d5f809314b4b05e772">httpRequest.c</a>
90   -</ul>
91   -<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
92   -<li>getHttpRequest()
93   -: <a class="el" href="httpRequest_8h.html#59d765731e7d39f5583ef175950becb1">httpRequest.h</a>
94   -, <a class="el" href="httpRequest_8c.html#9a6b00ad980ca9a2c5023ec1a802106b">httpRequest.c</a>
95   -</ul>
96   -<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
97   -<li>handleCmdLine()
98   -: <a class="el" href="appConfig_8h.html#3755d793d10d6e5793ed5086a0b22964">appConfig.h</a>
99   -, <a class="el" href="handleCmdLine_8c.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine.c</a>
100   -<li>httpHeaderGet()
101   -: <a class="el" href="httpRequest_8c.html#fd4f839160f6d97ad28e05ee1ce81188">httpRequest.c</a>
102   -, <a class="el" href="httpRequest_8h.html#07afde622816238d4424591269f5616a">httpRequest.h</a>
103   -<li>httpHeaderGetLine()
104   -: <a class="el" href="httpRequest_8c.html#c96f6dae9ced89eb2ae8ac556918e367">httpRequest.c</a>
105   -<li>httpHeaderIsComplete()
106   -: <a class="el" href="httpRequest_8c.html#d5d9232083e5890588d5e1840341a48b">httpRequest.c</a>
107   -, <a class="el" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpRequest.h</a>
108   -<li>httpHeaderIsStarted()
109   -: <a class="el" href="httpRequest_8h.html#99eb3b2c1e06ee773fd3bb7da7e98ece">httpRequest.h</a>
110   -, <a class="el" href="httpRequest_8c.html#29982601e2121cd75800202f5716c7f5">httpRequest.c</a>
111   -<li>httpHeaderParseRequestLine()
112   -: <a class="el" href="httpRequest_8c.html#e18ae9e899c3c951308bb2ec4bd810f5">httpRequest.c</a>
113   -, <a class="el" href="httpRequest_8h.html#b7ea84417c64cc894ef20f3fad58832f">httpRequest.h</a>
114   -</ul>
115   -<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
116   -<li>init_signals()
117   -: <a class="el" href="signalHandling_8h.html#1de31bdef82f181f8045b94ae0933916">signalHandling.h</a>
118   -, <a class="el" href="signalHandling_8c.html#1de31bdef82f181f8045b94ae0933916">signalHandling.c</a>
119   -<li>initServerSocket()
120   -: <a class="el" href="socket_8h.html#44dc8ffaedb1d6f7d4663f5cecaf4e70">socket.h</a>
121   -, <a class="el" href="socket_8c.html#44dc8ffaedb1d6f7d4663f5cecaf4e70">socket.c</a>
122   -</ul>
123   -<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
124   -<li>logRotate()
125   -: <a class="el" href="logRotate_8h.html#82df920a9975d5484d681c6f9009da38">logRotate.h</a>
126   -, <a class="el" href="logRotate_8c.html#70a3ebded819019c99ad001f29e082de">logRotate.c</a>
127   -</ul>
128   -<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
129   -<li>monitor()
130   -: <a class="el" href="monitor_8h.html#afab1757e8c3bc9c5143490b256cb684">monitor.h</a>
131   -, <a class="el" href="monitor_8c.html#afab1757e8c3bc9c5143490b256cb684">monitor.c</a>
132   -</ul>
133   -<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
134   -<li>serverInit()
135   -: <a class="el" href="server_8h.html#68050069ed3a2e05cb02440090c89a1f">server.h</a>
136   -, <a class="el" href="serverInit_8c.html#68050069ed3a2e05cb02440090c89a1f">serverInit.c</a>
137   -<li>serverRun()
138   -: <a class="el" href="serverRun_8c.html#208ea34b5a69f6ff0d48ed85c9a6f9eb">serverRun.c</a>
139   -, <a class="el" href="server_8h.html#208ea34b5a69f6ff0d48ed85c9a6f9eb">server.h</a>
140   -<li>serverShutdown()
141   -: <a class="el" href="server_8h.html#50decfdd3550b2490a1b9448a313cbf9">server.h</a>
142   -, <a class="el" href="serverShutdown_8c.html#50decfdd3550b2490a1b9448a313cbf9">serverShutdown.c</a>
143   -<li>start()
144   -: <a class="el" href="serverRun_8c.html#73425567b97c64e9af77c626e0069f67">serverRun.c</a>
145   -<li>syslogMonitor()
146   -: <a class="el" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">monitor.h</a>
147   -, <a class="el" href="monitor_8c.html#13e7bf0022db0d9f5dd6aeb82ec69999">monitor.c</a>
148   -</ul>
149   -<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
150   -<li>terminate()
151   -: <a class="el" href="signalHandling_8h.html#64612b9588ed0fb05d70680db02b3630">signalHandling.h</a>
152   -, <a class="el" href="signalHandling_8c.html#64612b9588ed0fb05d70680db02b3630">signalHandling.c</a>
153   -</ul>
154   -<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
155   -<li>writeBuffer()
156   -: <a class="el" href="writeBuffer_8h.html#a947cab623514e5a9c9700bca074b77e">writeBuffer.h</a>
157   -, <a class="el" href="writeBuffer_8c.html#a947cab623514e5a9c9700bca074b77e">writeBuffer.c</a>
158   -</ul>
159   -</div>
160   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
161   -<a href="http://www.doxygen.org/index.html">
162   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
163   -</body>
164   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Data Fields</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li class="current"><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   - <div class="tabs">
23   - <ul>
24   - <li><a href="globals.html"><span>All</span></a></li>
25   - <li><a href="globals_func.html"><span>Functions</span></a></li>
26   - <li class="current"><a href="globals_vars.html"><span>Variables</span></a></li>
27   - <li><a href="globals_defs.html"><span>Defines</span></a></li>
28   - </ul>
29   - </div>
30   -</div>
31   -<div class="contents">
32   -&nbsp;
33   -<p>
34   -<ul>
35   -<li>Depth
36   -: <a class="el" href="serverRun_8c.html#c66dbe0e082fd3cc29bc1572a4dccc09">serverRun.c</a>
37   -<li>doShutdown
38   -: <a class="el" href="signalHandling_8c.html#960e985a396acaabb1bbed4f15668ade">signalHandling.c</a>
39   -, <a class="el" href="signalHandling_8h.html#960e985a396acaabb1bbed4f15668ade">signalHandling.h</a>
40   -<li>httpRequest
41   -: <a class="el" href="httpRequest_8h.html#e7110ef069c94769a78296dc38ab86ca">httpRequest.h</a>
42   -, <a class="el" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">httpRequest.c</a>
43   -<li>severity
44   -: <a class="el" href="monitor_8c.html#8142dc3c72610140dfcacc52de5881fd">monitor.c</a>
45   -<li>verbose
46   -: <a class="el" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">client.h</a>
47   -, <a class="el" href="socket_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">socket.c</a>
48   -, <a class="el" href="logRotate_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">logRotate.c</a>
49   -</ul>
50   -</div>
51   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
52   -<a href="http://www.doxygen.org/index.html">
53   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
54   -</body>
55   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/handleCmdLine.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>system/handleCmdLine.c</h1><a href="handleCmdLine_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;unistd.h&gt;</span> <span class="comment">/* for getopt */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;string.h&gt;</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include "../include/appConfig.h"</span>
28   -<a name="l00007"></a>00007
29   -<a name="l00008"></a>00008
30   -<a name="l00009"></a>00009 <span class="keywordtype">int</span>
31   -<a name="l00010"></a><a class="code" href="handleCmdLine_8c.html#3755d793d10d6e5793ed5086a0b22964">00010</a> <a class="code" href="appConfig_8h.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine</a>(<a class="code" href="structtAppConfig.html">tAppConfig</a> * config, <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[])
32   -<a name="l00011"></a>00011 {
33   -<a name="l00012"></a>00012 <span class="keywordtype">int</span> opt;
34   -<a name="l00013"></a>00013
35   -<a name="l00014"></a>00014 <span class="keywordflow">while</span> ((opt = getopt(argc, argv, <span class="stringliteral">"Dvp:l:n:b:"</span>)) != -1) {
36   -<a name="l00015"></a>00015 <span class="keywordflow">switch</span> (opt) {
37   -<a name="l00016"></a>00016 <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:
38   -<a name="l00017"></a>00017 <span class="comment">/* port */</span>
39   -<a name="l00018"></a>00018 config-&gt;<a class="code" href="structtAppConfig.html#3e4960a8eb8e1eac506bd651453faecc">port</a> = atoi(optarg);
40   -<a name="l00019"></a>00019 <span class="keywordflow">break</span>;
41   -<a name="l00020"></a>00020
42   -<a name="l00021"></a>00021 <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:
43   -<a name="l00022"></a>00022 <span class="comment">/* logPath */</span>
44   -<a name="l00023"></a>00023 strncpy(config-&gt;<a class="code" href="structtAppConfig.html#1b87fb5e17055c70a233387374d8342e">logPath</a>, optarg, <span class="keyword">sizeof</span>(config-&gt;<a class="code" href="structtAppConfig.html#1b87fb5e17055c70a233387374d8342e">logPath</a>)-1);
45   -<a name="l00024"></a>00024 <span class="keywordflow">break</span>;
46   -<a name="l00025"></a>00025
47   -<a name="l00026"></a>00026 <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:
48   -<a name="l00027"></a>00027 <span class="comment">/* logNamePattern */</span>
49   -<a name="l00028"></a>00028 strncpy(config-&gt;<a class="code" href="structtAppConfig.html#58b889074da91d9de3ef14aa34f97795">namePat</a>, optarg, <span class="keyword">sizeof</span>(config-&gt;<a class="code" href="structtAppConfig.html#58b889074da91d9de3ef14aa34f97795">namePat</a>)-1);
50   -<a name="l00029"></a>00029 <span class="keywordflow">break</span>;
51   -<a name="l00030"></a>00030
52   -<a name="l00031"></a>00031 <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:
53   -<a name="l00032"></a>00032 <span class="comment">/* maxPending (connection backlog) */</span>
54   -<a name="l00033"></a>00033 config-&gt;<a class="code" href="structtAppConfig.html#1bef5de806f77de1c307062e9fa84e4f">maxPending</a> = atoi(optarg);
55   -<a name="l00034"></a>00034 <span class="keywordflow">break</span>;
56   -<a name="l00035"></a>00035
57   -<a name="l00036"></a>00036 <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:
58   -<a name="l00037"></a>00037 <span class="comment">/* verbose */</span>
59   -<a name="l00038"></a>00038 config-&gt;<a class="code" href="structtAppConfig.html#9a20fbb501c68675f88764f1dcb42684">verbose</a> = 1;
60   -<a name="l00039"></a>00039 <span class="keywordflow">break</span>;
61   -<a name="l00040"></a>00040
62   -<a name="l00041"></a>00041 <span class="keywordflow">case</span> <span class="charliteral">'D'</span>:
63   -<a name="l00042"></a>00042 <span class="comment">/* verbose */</span>
64   -<a name="l00043"></a>00043 config-&gt;<a class="code" href="structtAppConfig.html#d5d5f9bd2f4f0dd2cd259e50c4d149bf">doDaemon</a> = 1;
65   -<a name="l00044"></a>00044 <span class="keywordflow">break</span>;
66   -<a name="l00045"></a>00045
67   -<a name="l00046"></a>00046 <span class="keywordflow">default</span>:
68   -<a name="l00047"></a>00047 <span class="comment">/* '?' */</span>
69   -<a name="l00048"></a>00048 fprintf(
70   -<a name="l00049"></a>00049 stderr,
71   -<a name="l00050"></a>00050 <span class="stringliteral">"Usage: %s [-p port] [-l logPath] [-n logNamePattern] [-c maxClient] [-b backlog] [-v] [-D]\n"</span>
72   -<a name="l00051"></a>00051 <span class="stringliteral">"Defaults:\n"</span>
73   -<a name="l00052"></a>00052 <span class="stringliteral">"\t%-20s: port this service will use [%d]\n"</span>
74   -<a name="l00053"></a>00053 <span class="stringliteral">"\t%-20s: path where the logfiles will be stored [%s/]\n"</span>
75   -<a name="l00054"></a>00054 <span class="stringliteral">"\t%-20s: patten used by strftime to create the log filename [%s]\n"</span>
76   -<a name="l00055"></a>00055 <span class="stringliteral">"\t%-20s: maximum connection backlog [%d]\n"</span>
77   -<a name="l00056"></a>00056 <span class="stringliteral">"\t%-20s: be more verbose in syslog [off]\n"</span>
78   -<a name="l00057"></a>00057 <span class="stringliteral">"\t%-20s: deamonize me\n"</span>,
79   -<a name="l00058"></a>00058 argv[0],
80   -<a name="l00059"></a>00059 <span class="stringliteral">"-p port"</span>, <a class="code" href="appConfig_8h.html#3db4dba8d56385b62759b89c98cae447">DEFAULTPORT</a>,
81   -<a name="l00060"></a>00060 <span class="stringliteral">"-l logPath"</span>, <a class="code" href="appConfig_8h.html#0672e2d34f3bbe2f6cdad6f307b9d1cf">DEFAULTPATH</a>,
82   -<a name="l00061"></a>00061 <span class="stringliteral">"-n logNamePattern"</span>, <a class="code" href="appConfig_8h.html#9a98b2d0f973e357020c1274ec5b56c0">LOGNAMEPATTERN</a>,
83   -<a name="l00062"></a>00062 <span class="stringliteral">"-b backlog"</span>, <a class="code" href="appConfig_8h.html#f77ed3e65a7b1a9341603d152a1404df">MAXPENDING</a>,
84   -<a name="l00063"></a>00063 <span class="stringliteral">"-v"</span>,
85   -<a name="l00064"></a>00064 <span class="stringliteral">"-D"</span>);
86   -<a name="l00065"></a>00065 exit(EXIT_FAILURE);
87   -<a name="l00066"></a>00066 }
88   -<a name="l00067"></a>00067 }
89   -<a name="l00068"></a>00068
90   -<a name="l00069"></a>00069 <span class="keywordflow">return</span> 0;
91   -<a name="l00070"></a>00070 }
92   -</pre></div></div>
93   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
94   -<a href="http://www.doxygen.org/index.html">
95   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
96   -</body>
97   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/handleCmdLine.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>system/handleCmdLine.c File Reference</h1><code>#include &lt;unistd.h&gt;</code><br>
25   -<code>#include &lt;stdlib.h&gt;</code><br>
26   -<code>#include &lt;string.h&gt;</code><br>
27   -<code>#include &lt;stdio.h&gt;</code><br>
28   -<code>#include &quot;<a class="el" href="appConfig_8h-source.html">../include/appConfig.h</a>&quot;</code><br>
29   -
30   -<p>
31   -<a href="handleCmdLine_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
32   -<tr><td></td></tr>
33   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
34   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="handleCmdLine_8c.html#3755d793d10d6e5793ed5086a0b22964">handleCmdLine</a> (<a class="el" href="structtAppConfig.html">tAppConfig</a> *config, int argc, char *argv[])</td></tr>
35   -
36   -</table>
37   -<hr><h2>Function Documentation</h2>
38   -<a class="anchor" name="3755d793d10d6e5793ed5086a0b22964"></a><!-- doxytag: member="handleCmdLine.c::handleCmdLine" ref="3755d793d10d6e5793ed5086a0b22964" args="(tAppConfig *config, int argc, char *argv[])" -->
39   -<div class="memitem">
40   -<div class="memproto">
41   - <table class="memname">
42   - <tr>
43   - <td class="memname">int handleCmdLine </td>
44   - <td>(</td>
45   - <td class="paramtype"><a class="el" href="structtAppConfig.html">tAppConfig</a> *&nbsp;</td>
46   - <td class="paramname"> <em>config</em>, </td>
47   - </tr>
48   - <tr>
49   - <td class="paramkey"></td>
50   - <td></td>
51   - <td class="paramtype">int&nbsp;</td>
52   - <td class="paramname"> <em>argc</em>, </td>
53   - </tr>
54   - <tr>
55   - <td class="paramkey"></td>
56   - <td></td>
57   - <td class="paramtype">char *&nbsp;</td>
58   - <td class="paramname"> <em>argv</em>[]</td><td>&nbsp;</td>
59   - </tr>
60   - <tr>
61   - <td></td>
62   - <td>)</td>
63   - <td></td><td></td><td></td>
64   - </tr>
65   - </table>
66   -</div>
67   -<div class="memdoc">
68   -
69   -<p>
70   -
71   -<p>Definition at line <a class="el" href="handleCmdLine_8c-source.html#l00010">10</a> of file <a class="el" href="handleCmdLine_8c-source.html">handleCmdLine.c</a>.</p>
72   -
73   -</div>
74   -</div><p>
75   -</div>
76   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
77   -<a href="http://www.doxygen.org/index.html">
78   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
79   -</body>
80   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/httpReader/httpRequest.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>reader/httpReader/httpRequest.c</h1><a href="httpRequest_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;string.h&gt;</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;ctype.h&gt;</span>
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include "../../include/appConfig.h"</span>
28   -<a name="l00007"></a>00007 <span class="preprocessor">#include "../../include/httpRequest.h"</span>
29   -<a name="l00008"></a>00008 <span class="preprocessor">#include "../../include/client.h"</span>
30   -<a name="l00009"></a>00009
31   -<a name="l00010"></a><a class="code" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">00010</a> <span class="preprocessor">#define SPACE 0x20</span>
32   -<a name="l00011"></a>00011 <span class="preprocessor"></span>
33   -<a name="l00012"></a>00012
34   -<a name="l00013"></a><a class="code" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">00013</a> <span class="keywordtype">char</span> <a class="code" href="httpRequest_8h.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a>[8][8] = {
35   -<a name="l00014"></a>00014 <span class="stringliteral">"OPTIONS"</span>,
36   -<a name="l00015"></a>00015 <span class="stringliteral">"GET"</span>,
37   -<a name="l00016"></a>00016 <span class="stringliteral">"HEAD"</span>,
38   -<a name="l00017"></a>00017 <span class="stringliteral">"POST"</span>,
39   -<a name="l00018"></a>00018 <span class="stringliteral">"PUT"</span>,
40   -<a name="l00019"></a>00019 <span class="stringliteral">"DELETE"</span>,
41   -<a name="l00020"></a>00020 <span class="stringliteral">"TRACE"</span>,
42   -<a name="l00021"></a>00021 <span class="stringliteral">"CONNECT"</span>
43   -<a name="l00022"></a>00022 };
44   -<a name="l00023"></a>00023
45   -<a name="l00024"></a>00024 <span class="comment">/*</span>
46   -<a name="l00025"></a>00025 <span class="comment"> * Gedanken zum request einlese:</span>
47   -<a name="l00026"></a>00026 <span class="comment"> * der client liest stumpf daten, außerdem implementiert er eine Methode um die</span>
48   -<a name="l00027"></a>00027 <span class="comment"> * erste Zeile aus dem readbuffer zu entfernen.</span>
49   -<a name="l00028"></a>00028 <span class="comment"> * Des weiteren eine Methode getLine die NULL zurück gibt wenn noch keine Zeile</span>
50   -<a name="l00029"></a>00029 <span class="comment"> * komplett ist, ansonsten einen Pointer auf diese.</span>
51   -<a name="l00030"></a>00030 <span class="comment"> * Der servercode triggert das Daten lesen des client, versucht dann die erste</span>
52   -<a name="l00031"></a>00031 <span class="comment"> * Zeile zu lesen und gibt diese im erfolgsfall an den httpCode weiter um</span>
53   -<a name="l00032"></a>00032 <span class="comment"> * dann wenn dieser ein OK gibt die erste Zeile über den clientCode wieder zu entfernen.</span>
54   -<a name="l00033"></a>00033 <span class="comment"> * Leere Zeile vor der request line werden ignoriert.</span>
55   -<a name="l00034"></a>00034 <span class="comment"> * Ebenso leere Zailen nachdem der request komplett eingelesen ist.</span>
56   -<a name="l00035"></a>00035 <span class="comment"> * Nachdem alle Header Zeile eingelesen wurden...d.H. sobald eine leere Header Zeile</span>
57   -<a name="l00036"></a>00036 <span class="comment"> * gelesen wurde wird exakt bodyLength vom client versucht zu lesen...hierbei</span>
58   -<a name="l00037"></a>00037 <span class="comment"> * können die Daten die von client kommen in den body buffer übertragen werden.</span>
59   -<a name="l00038"></a>00038 <span class="comment"> * Dabei kann im client code der buffer immer entsprechend zurück gesetzt werden.</span>
60   -<a name="l00039"></a>00039 <span class="comment"> */</span>
61   -<a name="l00040"></a>00040 <span class="keywordtype">int</span>
62   -<a name="l00041"></a><a class="code" href="httpRequest_8c.html#c96f6dae9ced89eb2ae8ac556918e367">00041</a> <a class="code" href="httpRequest_8c.html#c96f6dae9ced89eb2ae8ac556918e367">httpHeaderGetLine</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> * header, <span class="keywordtype">char</span> ** buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * readPos)
63   -<a name="l00042"></a>00042 {
64   -<a name="l00043"></a>00043 <span class="keywordflow">return</span> 1;
65   -<a name="l00044"></a>00044 }
66   -<a name="l00045"></a>00045
67   -<a name="l00046"></a>00046 <span class="keywordtype">void</span>
68   -<a name="l00047"></a><a class="code" href="httpRequest_8c.html#e18ae9e899c3c951308bb2ec4bd810f5">00047</a> <a class="code" href="httpRequest_8h.html#b7ea84417c64cc894ef20f3fad58832f">httpHeaderParseRequestLine</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> * header, <span class="keyword">const</span> <span class="keywordtype">char</span> * line, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len)
69   -<a name="l00048"></a>00048 {
70   -<a name="l00049"></a>00049 }
71   -<a name="l00050"></a>00050
72   -<a name="l00051"></a>00051 <span class="keywordtype">int</span>
73   -<a name="l00052"></a><a class="code" href="httpRequest_8c.html#d5d9232083e5890588d5e1840341a48b">00052</a> <a class="code" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpHeaderIsComplete</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> * header)
74   -<a name="l00053"></a>00053 {
75   -<a name="l00054"></a>00054 <span class="keywordflow">if</span> (NULL == header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>) {
76   -<a name="l00055"></a>00055 <span class="keywordflow">return</span> 0;
77   -<a name="l00056"></a>00056 }
78   -<a name="l00057"></a>00057
79   -<a name="l00058"></a>00058 <span class="keywordflow">return</span> 1;
80   -<a name="l00059"></a>00059 }
81   -<a name="l00060"></a>00060
82   -<a name="l00061"></a>00061 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>
83   -<a name="l00062"></a><a class="code" href="httpRequest_8c.html#29982601e2121cd75800202f5716c7f5">00062</a> <a class="code" href="httpRequest_8h.html#99eb3b2c1e06ee773fd3bb7da7e98ece">httpHeaderIsStarted</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> * header) {
84   -<a name="l00063"></a>00063 <span class="keywordflow">return</span> 1;
85   -<a name="l00064"></a>00064 }
86   -<a name="l00065"></a>00065
87   -<a name="l00066"></a>00066 <span class="keyword">static</span> <span class="keywordtype">void</span>
88   -<a name="l00067"></a>00067 httpRequestStrip(<span class="keywordtype">char</span> ** buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * readPos)
89   -<a name="l00068"></a>00068 {
90   -<a name="l00069"></a>00069 <span class="keywordtype">char</span> * <a class="code" href="serverRun_8c.html#1e60190f250d3f699f3671c759e6fe36">end</a> = *buffer;
91   -<a name="l00070"></a>00070
92   -<a name="l00071"></a>00071 <span class="comment">/* remove all surrounding CRLF */</span>
93   -<a name="l00072"></a>00072 <span class="keywordflow">while</span> ((<span class="charliteral">'\r'</span> == *end || <span class="charliteral">'\n'</span> == *end) &amp;&amp; *end) {
94   -<a name="l00073"></a>00073 end++;
95   -<a name="l00074"></a>00074 }
96   -<a name="l00075"></a>00075
97   -<a name="l00076"></a>00076 <span class="keywordflow">if</span> (end != *buffer) {
98   -<a name="l00077"></a>00077 memmove(*buffer, end, *readPos - (end - *buffer));
99   -<a name="l00078"></a>00078 memset(*buffer, 0, end - *buffer);
100   -<a name="l00079"></a>00079
101   -<a name="l00080"></a>00080 *readPos -= (end - * buffer);
102   -<a name="l00081"></a>00081 }
103   -<a name="l00082"></a>00082 }
104   -<a name="l00083"></a>00083
105   -<a name="l00084"></a>00084 <span class="keywordtype">int</span>
106   -<a name="l00085"></a><a class="code" href="httpRequest_8c.html#fd4f839160f6d97ad28e05ee1ce81188">00085</a> <a class="code" href="httpRequest_8h.html#07afde622816238d4424591269f5616a">httpHeaderGet</a>(<span class="keywordtype">char</span> ** buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * readPos, <a class="code" href="structtHttpHeader.html">tHttpHeader</a> * request)
107   -<a name="l00086"></a>00086 {
108   -<a name="l00087"></a>00087 <span class="keywordtype">char</span> * end = *buffer;
109   -<a name="l00088"></a>00088 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> readPosNew;
110   -<a name="l00089"></a>00089
111   -<a name="l00090"></a>00090 httpRequestStrip(buffer, readPos);
112   -<a name="l00091"></a>00091 end = strstr(*buffer, <span class="stringliteral">"\r\n\r\n"</span>);
113   -<a name="l00092"></a>00092
114   -<a name="l00093"></a>00093 <span class="comment">/* get header if not already read and complete */</span>
115   -<a name="l00094"></a>00094 <span class="keywordflow">if</span> (!<a class="code" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpHeaderIsComplete</a>(request) &amp;&amp; NULL != end) {
116   -<a name="l00095"></a>00095 <span class="comment">/* get request line */</span>
117   -<a name="l00096"></a>00096 <span class="keywordtype">char</span> * methodEnd = strchr(*buffer, <a class="code" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">SPACE</a>);
118   -<a name="l00097"></a>00097 <span class="keywordtype">char</span> * uriEnd = strchr(methodEnd + 1, <a class="code" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">SPACE</a>);
119   -<a name="l00098"></a>00098 <span class="keywordtype">char</span> * lineEnd = strstr(*buffer, <span class="stringliteral">"\r\n"</span>);
120   -<a name="l00099"></a>00099
121   -<a name="l00100"></a>00100 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a> =
122   -<a name="l00101"></a>00101 calloc(methodEnd-*buffer+1, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
123   -<a name="l00102"></a>00102 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a> =
124   -<a name="l00103"></a>00103 calloc(uriEnd-methodEnd, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
125   -<a name="l00104"></a>00104 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a> =
126   -<a name="l00105"></a>00105 calloc(lineEnd-uriEnd, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
127   -<a name="l00106"></a>00106
128   -<a name="l00107"></a>00107 sscanf(*buffer, <span class="stringliteral">"%s %s %s\r\n"</span>,
129   -<a name="l00108"></a>00108 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>,
130   -<a name="l00109"></a>00109 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a>,
131   -<a name="l00110"></a>00110 request-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a>);
132   -<a name="l00111"></a>00111
133   -<a name="l00112"></a>00112 readPosNew = (*buffer + *readPos) - lineEnd - 2;
134   -<a name="l00113"></a>00113 memmove(*buffer, lineEnd + 2, readPosNew);
135   -<a name="l00114"></a>00114 memset(*buffer + readPosNew, 0, *readPos - readPosNew);
136   -<a name="l00115"></a>00115 *readPos = readPosNew;
137   -<a name="l00116"></a>00116
138   -<a name="l00117"></a>00117 <span class="comment">/* get all header lines */</span>
139   -<a name="l00118"></a>00118 <span class="keywordflow">do</span> {
140   -<a name="l00119"></a>00119 <span class="keywordtype">char</span> * keyEnd = strchr(*buffer, <span class="charliteral">':'</span>);
141   -<a name="l00120"></a>00120
142   -<a name="l00121"></a>00121 lineEnd = strstr(*buffer, <span class="stringliteral">"\r\n"</span>);
143   -<a name="l00122"></a>00122
144   -<a name="l00123"></a>00123 <span class="keywordflow">if</span> (lineEnd != *buffer) {
145   -<a name="l00124"></a>00124 <a class="code" href="structtHttpHeaderLine.html">tHttpHeaderLine</a> * actHeader;
146   -<a name="l00125"></a>00125 <span class="keywordtype">char</span> * actKey = NULL;
147   -<a name="l00126"></a>00126
148   -<a name="l00127"></a>00127 request-&gt;<a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">headersCount</a> += 1;
149   -<a name="l00128"></a>00128
150   -<a name="l00129"></a>00129 request-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a> = realloc(request-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>,
151   -<a name="l00130"></a>00130 request-&gt;<a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">headersCount</a> * <span class="keyword">sizeof</span>(<a class="code" href="structtHttpHeaderLine.html">tHttpHeaderLine</a>));
152   -<a name="l00131"></a>00131 actHeader = &amp;(request-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[request-&gt;<a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">headersCount</a>-1]);
153   -<a name="l00132"></a>00132 memset(actHeader, 0, <span class="keyword">sizeof</span>(<a class="code" href="structtHttpHeaderLine.html">tHttpHeaderLine</a>));
154   -<a name="l00133"></a>00133
155   -<a name="l00134"></a>00134 actKey = actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a> = calloc(keyEnd-*buffer+1, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
156   -<a name="l00135"></a>00135 actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a> = calloc(lineEnd-keyEnd-1, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
157   -<a name="l00136"></a>00136
158   -<a name="l00137"></a>00137 sscanf(*buffer, <span class="stringliteral">"%[^:]:%s\r\n"</span>,
159   -<a name="l00138"></a>00138 actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>, actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>);
160   -<a name="l00139"></a>00139 <span class="comment">//while (NULL != actKey &amp;&amp; *actKey != '\0' &amp;&amp; (*actKey = tolower(*(actKey++)))); // strtolower</span>
161   -<a name="l00140"></a>00140 <span class="keywordflow">for</span> (; NULL != actKey &amp;&amp; *actKey != <span class="charliteral">'\0'</span>; actKey++) {
162   -<a name="l00141"></a>00141 *actKey = tolower(*actKey);
163   -<a name="l00142"></a>00142 }
164   -<a name="l00143"></a>00143
165   -<a name="l00144"></a>00144 <span class="keywordflow">if</span> (0 == strncmp(<span class="stringliteral">"content-length"</span>, actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>, strlen(actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>))) {
166   -<a name="l00145"></a>00145 request-&gt;<a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">bodyLength</a> = atoi(actHeader-&gt;<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>);
167   -<a name="l00146"></a>00146 }
168   -<a name="l00147"></a>00147 }
169   -<a name="l00148"></a>00148
170   -<a name="l00149"></a>00149 readPosNew = (*buffer + *readPos) - lineEnd - 2;
171   -<a name="l00150"></a>00150 memmove(*buffer, lineEnd + 2, readPosNew);
172   -<a name="l00151"></a>00151 memset(*buffer + readPosNew, 0, *readPos - readPosNew);
173   -<a name="l00152"></a>00152 *readPos = readPosNew;
174   -<a name="l00153"></a>00153 } <span class="keywordflow">while</span> (lineEnd != *buffer);
175   -<a name="l00154"></a>00154
176   -<a name="l00155"></a>00155 <span class="keywordflow">return</span> request-&gt;<a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">bodyLength</a>;
177   -<a name="l00156"></a>00156 }
178   -<a name="l00157"></a>00157
179   -<a name="l00158"></a>00158 <span class="keywordflow">return</span> 0;
180   -<a name="l00159"></a>00159 }
181   -<a name="l00160"></a>00160
182   -<a name="l00161"></a>00161 <span class="keywordtype">int</span>
183   -<a name="l00162"></a><a class="code" href="httpRequest_8c.html#9a6b00ad980ca9a2c5023ec1a802106b">00162</a> <a class="code" href="httpRequest_8h.html#59d765731e7d39f5583ef175950becb1">getHttpRequest</a>(<span class="keywordtype">char</span> ** buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * readPos, <a class="code" href="structtHttpRequest.html">tHttpRequest</a> * request)
184   -<a name="l00163"></a>00163 {
185   -<a name="l00164"></a>00164 <span class="comment">/* get body if header is read and body incomplete */</span>
186   -<a name="l00165"></a>00165 <span class="keywordflow">if</span> (request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">bodyLength</a> != request-&gt;<a class="code" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">length</a>) {
187   -<a name="l00166"></a>00166 <span class="keywordtype">size_t</span> size = <a class="code" href="appConfig_8h.html#74e75242132eaabbc1c512488a135926">MIN</a>(
188   -<a name="l00167"></a>00167 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">bodyLength</a> - request-&gt;<a class="code" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">length</a>,
189   -<a name="l00168"></a>00168 *readPos);
190   -<a name="l00169"></a>00169
191   -<a name="l00170"></a>00170 <span class="keywordflow">if</span> (0 != size) {
192   -<a name="l00171"></a>00171 <span class="keywordflow">if</span> (NULL == request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a>) {
193   -<a name="l00172"></a>00172 request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a> = calloc(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">bodyLength</a>, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>));
194   -<a name="l00173"></a>00173 }
195   -<a name="l00174"></a>00174
196   -<a name="l00175"></a>00175 memcpy(request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a> + request-&gt;<a class="code" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">length</a>, *buffer, size);
197   -<a name="l00176"></a>00176 memmove(*buffer, *buffer + size, *readPos - size);
198   -<a name="l00177"></a>00177 memset(*buffer + (*readPos - size), 0, size);
199   -<a name="l00178"></a>00178 *readPos -= size;
200   -<a name="l00179"></a>00179 request-&gt;<a class="code" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">length</a> += size;
201   -<a name="l00180"></a>00180 }
202   -<a name="l00181"></a>00181 }
203   -<a name="l00182"></a>00182
204   -<a name="l00183"></a>00183 <span class="keywordflow">return</span> 0;
205   -<a name="l00184"></a>00184 }
206   -<a name="l00185"></a>00185
207   -<a name="l00186"></a>00186 <span class="keywordtype">void</span>
208   -<a name="l00187"></a><a class="code" href="httpRequest_8c.html#86d86da69aefe2067f750c80e626de7c">00187</a> <a class="code" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">freeHttpHeader</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> * header) {
209   -<a name="l00188"></a>00188 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i;
210   -<a name="l00189"></a>00189
211   -<a name="l00190"></a>00190 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>) {
212   -<a name="l00191"></a>00191 free(header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>);
213   -<a name="l00192"></a>00192 }
214   -<a name="l00193"></a>00193 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a>) {
215   -<a name="l00194"></a>00194 free(header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a>);
216   -<a name="l00195"></a>00195 }
217   -<a name="l00196"></a>00196 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a>) {
218   -<a name="l00197"></a>00197 free(header-&gt;<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a>);
219   -<a name="l00198"></a>00198 }
220   -<a name="l00199"></a>00199
221   -<a name="l00200"></a>00200 <span class="keywordflow">for</span> (i=0; i&lt;header-&gt;<a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">headersCount</a>; i++) {
222   -<a name="l00201"></a>00201 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>) {
223   -<a name="l00202"></a>00202 free(header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>);
224   -<a name="l00203"></a>00203 }
225   -<a name="l00204"></a>00204 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>) {
226   -<a name="l00205"></a>00205 free(header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>);
227   -<a name="l00206"></a>00206 }
228   -<a name="l00207"></a>00207 }
229   -<a name="l00208"></a>00208
230   -<a name="l00209"></a>00209 <span class="keywordflow">if</span> (NULL != header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>) {
231   -<a name="l00210"></a>00210 free(header-&gt;<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>);
232   -<a name="l00211"></a>00211 }
233   -<a name="l00212"></a>00212
234   -<a name="l00213"></a>00213 memset (header, 0, <span class="keyword">sizeof</span> (<a class="code" href="structtHttpHeader.html">tHttpHeader</a>));
235   -<a name="l00214"></a>00214 }
236   -<a name="l00215"></a>00215
237   -<a name="l00216"></a>00216 <span class="keywordtype">void</span>
238   -<a name="l00217"></a><a class="code" href="httpRequest_8c.html#d1d9e65b1761d1d5f809314b4b05e772">00217</a> <a class="code" href="httpRequest_8h.html#1bba1865657c64c0e1971a45ee6117ab">freeHttpRequest</a>(<a class="code" href="structtHttpRequest.html">tHttpRequest</a> * request) {
239   -<a name="l00218"></a>00218 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i;
240   -<a name="l00219"></a>00219
241   -<a name="l00220"></a>00220 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>) {
242   -<a name="l00221"></a>00221 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a>);
243   -<a name="l00222"></a>00222 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">method</a> = NULL;
244   -<a name="l00223"></a>00223 }
245   -<a name="l00224"></a>00224 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a>) {
246   -<a name="l00225"></a>00225 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a>);
247   -<a name="l00226"></a>00226 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">requestUri</a> = NULL;
248   -<a name="l00227"></a>00227 }
249   -<a name="l00228"></a>00228 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a>) {
250   -<a name="l00229"></a>00229 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a>);
251   -<a name="l00230"></a>00230 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">req</a>.<a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">httpVersion</a> = NULL;
252   -<a name="l00231"></a>00231 }
253   -<a name="l00232"></a>00232
254   -<a name="l00233"></a>00233 <span class="keywordflow">for</span> (i=0; i&lt;request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">headersCount</a>; i++) {
255   -<a name="l00234"></a>00234 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>) {
256   -<a name="l00235"></a>00235 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a>);
257   -<a name="l00236"></a>00236 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">key</a> = NULL;
258   -<a name="l00237"></a>00237 }
259   -<a name="l00238"></a>00238 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>) {
260   -<a name="l00239"></a>00239 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a>);
261   -<a name="l00240"></a>00240 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>[i].<a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">value</a> = NULL;
262   -<a name="l00241"></a>00241 }
263   -<a name="l00242"></a>00242 }
264   -<a name="l00243"></a>00243
265   -<a name="l00244"></a>00244 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>) {
266   -<a name="l00245"></a>00245 free(request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a>);
267   -<a name="l00246"></a>00246 request-&gt;<a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">header</a>.<a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">headers</a> = NULL;
268   -<a name="l00247"></a>00247 }
269   -<a name="l00248"></a>00248
270   -<a name="l00249"></a>00249 <span class="keywordflow">if</span> (NULL != request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a>) {
271   -<a name="l00250"></a>00250 free(request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a>);
272   -<a name="l00251"></a>00251 request-&gt;<a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">body</a> = NULL;
273   -<a name="l00252"></a>00252 }
274   -<a name="l00253"></a>00253
275   -<a name="l00254"></a>00254 memset (request, 0, <span class="keyword">sizeof</span> (<a class="code" href="structtHttpRequest.html">tHttpRequest</a>));
276   -<a name="l00255"></a>00255 }
277   -</pre></div></div>
278   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
279   -<a href="http://www.doxygen.org/index.html">
280   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
281   -</body>
282   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: reader/httpReader/httpRequest.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>reader/httpReader/httpRequest.c File Reference</h1><code>#include &lt;string.h&gt;</code><br>
25   -<code>#include &lt;stdlib.h&gt;</code><br>
26   -<code>#include &lt;stdio.h&gt;</code><br>
27   -<code>#include &lt;ctype.h&gt;</code><br>
28   -<code>#include &quot;<a class="el" href="appConfig_8h-source.html">../../include/appConfig.h</a>&quot;</code><br>
29   -<code>#include &quot;<a class="el" href="httpRequest_8h-source.html">../../include/httpRequest.h</a>&quot;</code><br>
30   -<code>#include &quot;<a class="el" href="client_8h-source.html">../../include/client.h</a>&quot;</code><br>
31   -
32   -<p>
33   -<a href="httpRequest_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
34   -<tr><td></td></tr>
35   -<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
36   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#5ff6e798033f03e74730e99f01936f84">SPACE</a>&nbsp;&nbsp;&nbsp;0x20</td></tr>
37   -
38   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
39   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#c96f6dae9ced89eb2ae8ac556918e367">httpHeaderGetLine</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *header, char **buffer, unsigned int *readPos)</td></tr>
40   -
41   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#e18ae9e899c3c951308bb2ec4bd810f5">httpHeaderParseRequestLine</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *header, const char *line, unsigned int len)</td></tr>
42   -
43   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#d5d9232083e5890588d5e1840341a48b">httpHeaderIsComplete</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *header)</td></tr>
44   -
45   -<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#29982601e2121cd75800202f5716c7f5">httpHeaderIsStarted</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *header)</td></tr>
46   -
47   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#fd4f839160f6d97ad28e05ee1ce81188">httpHeaderGet</a> (char **buffer, unsigned int *readPos, <a class="el" href="structtHttpHeader.html">tHttpHeader</a> *request)</td></tr>
48   -
49   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#9a6b00ad980ca9a2c5023ec1a802106b">getHttpRequest</a> (char **buffer, unsigned int *readPos, <a class="el" href="structtHttpRequest.html">tHttpRequest</a> *request)</td></tr>
50   -
51   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#86d86da69aefe2067f750c80e626de7c">freeHttpHeader</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *header)</td></tr>
52   -
53   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#d1d9e65b1761d1d5f809314b4b05e772">freeHttpRequest</a> (<a class="el" href="structtHttpRequest.html">tHttpRequest</a> *request)</td></tr>
54   -
55   -<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
56   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a> [8][8]</td></tr>
57   -
58   -</table>
59   -<hr><h2>Define Documentation</h2>
60   -<a class="anchor" name="5ff6e798033f03e74730e99f01936f84"></a><!-- doxytag: member="httpRequest.c::SPACE" ref="5ff6e798033f03e74730e99f01936f84" args="" -->
61   -<div class="memitem">
62   -<div class="memproto">
63   - <table class="memname">
64   - <tr>
65   - <td class="memname">#define SPACE&nbsp;&nbsp;&nbsp;0x20 </td>
66   - </tr>
67   - </table>
68   -</div>
69   -<div class="memdoc">
70   -
71   -<p>
72   -
73   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00010">10</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
74   -
75   -</div>
76   -</div><p>
77   -<hr><h2>Function Documentation</h2>
78   -<a class="anchor" name="86d86da69aefe2067f750c80e626de7c"></a><!-- doxytag: member="httpRequest.c::freeHttpHeader" ref="86d86da69aefe2067f750c80e626de7c" args="(tHttpHeader *header)" -->
79   -<div class="memitem">
80   -<div class="memproto">
81   - <table class="memname">
82   - <tr>
83   - <td class="memname">void freeHttpHeader </td>
84   - <td>(</td>
85   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
86   - <td class="paramname"> <em>header</em> </td>
87   - <td>&nbsp;)&nbsp;</td>
88   - <td></td>
89   - </tr>
90   - </table>
91   -</div>
92   -<div class="memdoc">
93   -
94   -<p>
95   -
96   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00187">187</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
97   -
98   -</div>
99   -</div><p>
100   -<a class="anchor" name="d1d9e65b1761d1d5f809314b4b05e772"></a><!-- doxytag: member="httpRequest.c::freeHttpRequest" ref="d1d9e65b1761d1d5f809314b4b05e772" args="(tHttpRequest *request)" -->
101   -<div class="memitem">
102   -<div class="memproto">
103   - <table class="memname">
104   - <tr>
105   - <td class="memname">void freeHttpRequest </td>
106   - <td>(</td>
107   - <td class="paramtype"><a class="el" href="structtHttpRequest.html">tHttpRequest</a> *&nbsp;</td>
108   - <td class="paramname"> <em>request</em> </td>
109   - <td>&nbsp;)&nbsp;</td>
110   - <td></td>
111   - </tr>
112   - </table>
113   -</div>
114   -<div class="memdoc">
115   -
116   -<p>
117   -
118   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00217">217</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
119   -
120   -</div>
121   -</div><p>
122   -<a class="anchor" name="9a6b00ad980ca9a2c5023ec1a802106b"></a><!-- doxytag: member="httpRequest.c::getHttpRequest" ref="9a6b00ad980ca9a2c5023ec1a802106b" args="(char **buffer, unsigned int *readPos, tHttpRequest *request)" -->
123   -<div class="memitem">
124   -<div class="memproto">
125   - <table class="memname">
126   - <tr>
127   - <td class="memname">int getHttpRequest </td>
128   - <td>(</td>
129   - <td class="paramtype">char **&nbsp;</td>
130   - <td class="paramname"> <em>buffer</em>, </td>
131   - </tr>
132   - <tr>
133   - <td class="paramkey"></td>
134   - <td></td>
135   - <td class="paramtype">unsigned int *&nbsp;</td>
136   - <td class="paramname"> <em>readPos</em>, </td>
137   - </tr>
138   - <tr>
139   - <td class="paramkey"></td>
140   - <td></td>
141   - <td class="paramtype"><a class="el" href="structtHttpRequest.html">tHttpRequest</a> *&nbsp;</td>
142   - <td class="paramname"> <em>request</em></td><td>&nbsp;</td>
143   - </tr>
144   - <tr>
145   - <td></td>
146   - <td>)</td>
147   - <td></td><td></td><td></td>
148   - </tr>
149   - </table>
150   -</div>
151   -<div class="memdoc">
152   -
153   -<p>
154   -
155   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00162">162</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
156   -
157   -</div>
158   -</div><p>
159   -<a class="anchor" name="fd4f839160f6d97ad28e05ee1ce81188"></a><!-- doxytag: member="httpRequest.c::httpHeaderGet" ref="fd4f839160f6d97ad28e05ee1ce81188" args="(char **buffer, unsigned int *readPos, tHttpHeader *request)" -->
160   -<div class="memitem">
161   -<div class="memproto">
162   - <table class="memname">
163   - <tr>
164   - <td class="memname">int httpHeaderGet </td>
165   - <td>(</td>
166   - <td class="paramtype">char **&nbsp;</td>
167   - <td class="paramname"> <em>buffer</em>, </td>
168   - </tr>
169   - <tr>
170   - <td class="paramkey"></td>
171   - <td></td>
172   - <td class="paramtype">unsigned int *&nbsp;</td>
173   - <td class="paramname"> <em>readPos</em>, </td>
174   - </tr>
175   - <tr>
176   - <td class="paramkey"></td>
177   - <td></td>
178   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
179   - <td class="paramname"> <em>request</em></td><td>&nbsp;</td>
180   - </tr>
181   - <tr>
182   - <td></td>
183   - <td>)</td>
184   - <td></td><td></td><td></td>
185   - </tr>
186   - </table>
187   -</div>
188   -<div class="memdoc">
189   -
190   -<p>
191   -
192   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00085">85</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
193   -
194   -</div>
195   -</div><p>
196   -<a class="anchor" name="c96f6dae9ced89eb2ae8ac556918e367"></a><!-- doxytag: member="httpRequest.c::httpHeaderGetLine" ref="c96f6dae9ced89eb2ae8ac556918e367" args="(tHttpHeader *header, char **buffer, unsigned int *readPos)" -->
197   -<div class="memitem">
198   -<div class="memproto">
199   - <table class="memname">
200   - <tr>
201   - <td class="memname">int httpHeaderGetLine </td>
202   - <td>(</td>
203   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
204   - <td class="paramname"> <em>header</em>, </td>
205   - </tr>
206   - <tr>
207   - <td class="paramkey"></td>
208   - <td></td>
209   - <td class="paramtype">char **&nbsp;</td>
210   - <td class="paramname"> <em>buffer</em>, </td>
211   - </tr>
212   - <tr>
213   - <td class="paramkey"></td>
214   - <td></td>
215   - <td class="paramtype">unsigned int *&nbsp;</td>
216   - <td class="paramname"> <em>readPos</em></td><td>&nbsp;</td>
217   - </tr>
218   - <tr>
219   - <td></td>
220   - <td>)</td>
221   - <td></td><td></td><td></td>
222   - </tr>
223   - </table>
224   -</div>
225   -<div class="memdoc">
226   -
227   -<p>
228   -
229   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00041">41</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
230   -
231   -</div>
232   -</div><p>
233   -<a class="anchor" name="d5d9232083e5890588d5e1840341a48b"></a><!-- doxytag: member="httpRequest.c::httpHeaderIsComplete" ref="d5d9232083e5890588d5e1840341a48b" args="(tHttpHeader *header)" -->
234   -<div class="memitem">
235   -<div class="memproto">
236   - <table class="memname">
237   - <tr>
238   - <td class="memname">int httpHeaderIsComplete </td>
239   - <td>(</td>
240   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
241   - <td class="paramname"> <em>header</em> </td>
242   - <td>&nbsp;)&nbsp;</td>
243   - <td></td>
244   - </tr>
245   - </table>
246   -</div>
247   -<div class="memdoc">
248   -
249   -<p>
250   -
251   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00052">52</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
252   -
253   -</div>
254   -</div><p>
255   -<a class="anchor" name="29982601e2121cd75800202f5716c7f5"></a><!-- doxytag: member="httpRequest.c::httpHeaderIsStarted" ref="29982601e2121cd75800202f5716c7f5" args="(tHttpHeader *header)" -->
256   -<div class="memitem">
257   -<div class="memproto">
258   - <table class="memname">
259   - <tr>
260   - <td class="memname">unsigned char httpHeaderIsStarted </td>
261   - <td>(</td>
262   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
263   - <td class="paramname"> <em>header</em> </td>
264   - <td>&nbsp;)&nbsp;</td>
265   - <td></td>
266   - </tr>
267   - </table>
268   -</div>
269   -<div class="memdoc">
270   -
271   -<p>
272   -
273   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00062">62</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
274   -
275   -</div>
276   -</div><p>
277   -<a class="anchor" name="e18ae9e899c3c951308bb2ec4bd810f5"></a><!-- doxytag: member="httpRequest.c::httpHeaderParseRequestLine" ref="e18ae9e899c3c951308bb2ec4bd810f5" args="(tHttpHeader *header, const char *line, unsigned int len)" -->
278   -<div class="memitem">
279   -<div class="memproto">
280   - <table class="memname">
281   - <tr>
282   - <td class="memname">void httpHeaderParseRequestLine </td>
283   - <td>(</td>
284   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
285   - <td class="paramname"> <em>header</em>, </td>
286   - </tr>
287   - <tr>
288   - <td class="paramkey"></td>
289   - <td></td>
290   - <td class="paramtype">const char *&nbsp;</td>
291   - <td class="paramname"> <em>line</em>, </td>
292   - </tr>
293   - <tr>
294   - <td class="paramkey"></td>
295   - <td></td>
296   - <td class="paramtype">unsigned int&nbsp;</td>
297   - <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
298   - </tr>
299   - <tr>
300   - <td></td>
301   - <td>)</td>
302   - <td></td><td></td><td></td>
303   - </tr>
304   - </table>
305   -</div>
306   -<div class="memdoc">
307   -
308   -<p>
309   -
310   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00047">47</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
311   -
312   -</div>
313   -</div><p>
314   -<hr><h2>Variable Documentation</h2>
315   -<a class="anchor" name="e7110ef069c94769a78296dc38ab86ca"></a><!-- doxytag: member="httpRequest.c::httpRequest" ref="e7110ef069c94769a78296dc38ab86ca" args="[8][8]" -->
316   -<div class="memitem">
317   -<div class="memproto">
318   - <table class="memname">
319   - <tr>
320   - <td class="memname">char <a class="el" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a>[8][8] </td>
321   - </tr>
322   - </table>
323   -</div>
324   -<div class="memdoc">
325   -
326   -<p>
327   -<b>Initial value:</b><div class="fragment"><pre class="fragment"> {
328   - <span class="stringliteral">"OPTIONS"</span>,
329   - <span class="stringliteral">"GET"</span>,
330   - <span class="stringliteral">"HEAD"</span>,
331   - <span class="stringliteral">"POST"</span>,
332   - <span class="stringliteral">"PUT"</span>,
333   - <span class="stringliteral">"DELETE"</span>,
334   - <span class="stringliteral">"TRACE"</span>,
335   - <span class="stringliteral">"CONNECT"</span>
336   -}
337   -</pre></div>
338   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00013">13</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
339   -
340   -</div>
341   -</div><p>
342   -</div>
343   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
344   -<a href="http://www.doxygen.org/index.html">
345   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
346   -</body>
347   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/httpRequest.h Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>include/httpRequest.h</h1><a href="httpRequest_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef __HTTP_REQUEST_H__</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define __HTTP_REQUEST_H__</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor"></span>
25   -<a name="l00004"></a><a class="code" href="httpRequest_8h.html#bcd1460716fe0d7d7bbfab4d8df7431b">00004</a> <span class="preprocessor">#define HTTP_REQ_OPTIONS 0</span>
26   -<a name="l00005"></a><a class="code" href="httpRequest_8h.html#783bb94ef6eee3041b08244fcf43304f">00005</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_GET 1</span>
27   -<a name="l00006"></a><a class="code" href="httpRequest_8h.html#99dd5b1289103eee62ebd66082f03e98">00006</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_HEAD 2</span>
28   -<a name="l00007"></a><a class="code" href="httpRequest_8h.html#b113eaf10da1f4291202f81bea630f5b">00007</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_POST 3</span>
29   -<a name="l00008"></a><a class="code" href="httpRequest_8h.html#af09691edc99a286c60427e1f390d7bd">00008</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_PUT 4</span>
30   -<a name="l00009"></a><a class="code" href="httpRequest_8h.html#2894c25df3d2e54885cc414aa9731811">00009</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_DELETE 5</span>
31   -<a name="l00010"></a><a class="code" href="httpRequest_8h.html#21cd537dafe8cd458fbb1eeb1208f4a8">00010</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_TRACE 6</span>
32   -<a name="l00011"></a><a class="code" href="httpRequest_8h.html#5e49980e0d7d4080e2cececd00796981">00011</a> <span class="preprocessor"></span><span class="preprocessor">#define HTTP_REQ_CONNECT 7</span>
33   -<a name="l00012"></a>00012 <span class="preprocessor"></span>
34   -<a name="l00013"></a>00013 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="httpRequest_8h.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a>[8][8];
35   -<a name="l00014"></a>00014
36   -<a name="l00015"></a>00015
37   -<a name="l00016"></a><a class="code" href="structtRequestLine.html">00016</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
38   -<a name="l00017"></a><a class="code" href="structtRequestLine.html#418658e78fa3e0e0e5fbd8f693104558">00017</a> <span class="keywordtype">char</span> * method;
39   -<a name="l00018"></a><a class="code" href="structtRequestLine.html#5748787454dc1cc0dc06240e2890e025">00018</a> <span class="keywordtype">char</span> * requestUri;
40   -<a name="l00019"></a><a class="code" href="structtRequestLine.html#9e9dad5c7e7851b4a5e5b8ab8837a72b">00019</a> <span class="keywordtype">char</span> * httpVersion;
41   -<a name="l00020"></a>00020 } <a class="code" href="structtRequestLine.html">tRequestLine</a>;
42   -<a name="l00021"></a>00021
43   -<a name="l00022"></a><a class="code" href="structtHttpHeaderLine.html">00022</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
44   -<a name="l00023"></a><a class="code" href="structtHttpHeaderLine.html#0b7fdfe2d665663b34ab17f843bdd362">00023</a> <span class="keywordtype">char</span> * key;
45   -<a name="l00024"></a><a class="code" href="structtHttpHeaderLine.html#20a63b6ab6476fd27b5ec5438150dba9">00024</a> <span class="keywordtype">char</span> * value;
46   -<a name="l00025"></a>00025 } <a class="code" href="structtHttpHeaderLine.html">tHttpHeaderLine</a>;
47   -<a name="l00026"></a>00026
48   -<a name="l00027"></a><a class="code" href="structtHttpHeader.html">00027</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
49   -<a name="l00028"></a><a class="code" href="structtHttpHeader.html#d624a9ea5e703b2e8cd812415e28dfc7">00028</a> <a class="code" href="structtRequestLine.html">tRequestLine</a> req;
50   -<a name="l00029"></a><a class="code" href="structtHttpHeader.html#e44e0aa6e7494921acad1a07eaaecb3d">00029</a> <a class="code" href="structtHttpHeaderLine.html">tHttpHeaderLine</a> * headers;
51   -<a name="l00030"></a><a class="code" href="structtHttpHeader.html#40e3a997c2da1c432caef805ff150e42">00030</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> headersCount;
52   -<a name="l00031"></a>00031
53   -<a name="l00032"></a><a class="code" href="structtHttpHeader.html#4c362cb9ed28c3c0ee28371cb28c2460">00032</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> bodyLength;
54   -<a name="l00033"></a>00033 } <a class="code" href="structtHttpHeader.html">tHttpHeader</a>;
55   -<a name="l00034"></a>00034
56   -<a name="l00035"></a><a class="code" href="structtHttpRequest.html">00035</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
57   -<a name="l00036"></a><a class="code" href="structtHttpRequest.html#9936369fb110812f1a4b7fc31a0dc755">00036</a> <a class="code" href="structtHttpHeader.html">tHttpHeader</a> header;
58   -<a name="l00037"></a><a class="code" href="structtHttpRequest.html#208d984f6996b3b75579b9d7f9583231">00037</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length;
59   -<a name="l00038"></a><a class="code" href="structtHttpRequest.html#3bafedaca9066375ffc720da29235ae2">00038</a> <span class="keywordtype">char</span> * body;
60   -<a name="l00039"></a>00039 } <a class="code" href="structtHttpRequest.html">tHttpRequest</a>;
61   -<a name="l00040"></a>00040
62   -<a name="l00041"></a>00041
63   -<a name="l00042"></a>00042 <span class="keywordtype">int</span> <a class="code" href="httpRequest_8h.html#59d765731e7d39f5583ef175950becb1">getHttpRequest</a>(<span class="keywordtype">char</span> **, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *, <a class="code" href="structtHttpRequest.html">tHttpRequest</a> *);
64   -<a name="l00043"></a>00043 <span class="keywordtype">void</span> <a class="code" href="httpRequest_8h.html#1bba1865657c64c0e1971a45ee6117ab">freeHttpRequest</a>(<a class="code" href="structtHttpRequest.html">tHttpRequest</a> *);
65   -<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">freeHttpHeader</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> *);
66   -<a name="l00045"></a>00045 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="httpRequest_8h.html#99eb3b2c1e06ee773fd3bb7da7e98ece">httpHeaderIsStarted</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> *);
67   -<a name="l00046"></a>00046 <span class="keywordtype">int</span> <a class="code" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpHeaderIsComplete</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> *);
68   -<a name="l00047"></a>00047 <span class="keywordtype">int</span> <a class="code" href="httpRequest_8h.html#07afde622816238d4424591269f5616a">httpHeaderGet</a>(<span class="keywordtype">char</span> **, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *, <a class="code" href="structtHttpHeader.html">tHttpHeader</a> *);
69   -<a name="l00048"></a>00048 <span class="keywordtype">void</span> <a class="code" href="httpRequest_8h.html#b7ea84417c64cc894ef20f3fad58832f">httpHeaderParseRequestLine</a>(<a class="code" href="structtHttpHeader.html">tHttpHeader</a> *, <span class="keyword">const</span> <span class="keywordtype">char</span> *, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>);
70   -<a name="l00049"></a>00049
71   -<a name="l00050"></a>00050 <span class="preprocessor">#endif // __HTTP_REQUEST_H__</span>
72   -</pre></div></div>
73   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
74   -<a href="http://www.doxygen.org/index.html">
75   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
76   -</body>
77   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/httpRequest.h File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>include/httpRequest.h File Reference</h1>
25   -<p>
26   -<a href="httpRequest_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
27   -<tr><td></td></tr>
28   -<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
29   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtRequestLine.html">tRequestLine</a></td></tr>
30   -
31   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtHttpHeaderLine.html">tHttpHeaderLine</a></td></tr>
32   -
33   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtHttpHeader.html">tHttpHeader</a></td></tr>
34   -
35   -<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtHttpRequest.html">tHttpRequest</a></td></tr>
36   -
37   -<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
38   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#bcd1460716fe0d7d7bbfab4d8df7431b">HTTP_REQ_OPTIONS</a>&nbsp;&nbsp;&nbsp;0</td></tr>
39   -
40   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#783bb94ef6eee3041b08244fcf43304f">HTTP_REQ_GET</a>&nbsp;&nbsp;&nbsp;1</td></tr>
41   -
42   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#99dd5b1289103eee62ebd66082f03e98">HTTP_REQ_HEAD</a>&nbsp;&nbsp;&nbsp;2</td></tr>
43   -
44   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#b113eaf10da1f4291202f81bea630f5b">HTTP_REQ_POST</a>&nbsp;&nbsp;&nbsp;3</td></tr>
45   -
46   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#af09691edc99a286c60427e1f390d7bd">HTTP_REQ_PUT</a>&nbsp;&nbsp;&nbsp;4</td></tr>
47   -
48   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#2894c25df3d2e54885cc414aa9731811">HTTP_REQ_DELETE</a>&nbsp;&nbsp;&nbsp;5</td></tr>
49   -
50   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#21cd537dafe8cd458fbb1eeb1208f4a8">HTTP_REQ_TRACE</a>&nbsp;&nbsp;&nbsp;6</td></tr>
51   -
52   -<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#5e49980e0d7d4080e2cececd00796981">HTTP_REQ_CONNECT</a>&nbsp;&nbsp;&nbsp;7</td></tr>
53   -
54   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
55   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#59d765731e7d39f5583ef175950becb1">getHttpRequest</a> (char **, unsigned int *, <a class="el" href="structtHttpRequest.html">tHttpRequest</a> *)</td></tr>
56   -
57   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#1bba1865657c64c0e1971a45ee6117ab">freeHttpRequest</a> (<a class="el" href="structtHttpRequest.html">tHttpRequest</a> *)</td></tr>
58   -
59   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#b55d3458cc9e50ef2a22731d910c6385">freeHttpHeader</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *)</td></tr>
60   -
61   -<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#99eb3b2c1e06ee773fd3bb7da7e98ece">httpHeaderIsStarted</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *)</td></tr>
62   -
63   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#91e1c62216e1370b68a87ffc8b120f0d">httpHeaderIsComplete</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *)</td></tr>
64   -
65   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#07afde622816238d4424591269f5616a">httpHeaderGet</a> (char **, unsigned int *, <a class="el" href="structtHttpHeader.html">tHttpHeader</a> *)</td></tr>
66   -
67   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#b7ea84417c64cc894ef20f3fad58832f">httpHeaderParseRequestLine</a> (<a class="el" href="structtHttpHeader.html">tHttpHeader</a> *, const char *, unsigned int)</td></tr>
68   -
69   -<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
70   -<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpRequest_8h.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a> [8][8]</td></tr>
71   -
72   -</table>
73   -<hr><h2>Define Documentation</h2>
74   -<a class="anchor" name="5e49980e0d7d4080e2cececd00796981"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_CONNECT" ref="5e49980e0d7d4080e2cececd00796981" args="" -->
75   -<div class="memitem">
76   -<div class="memproto">
77   - <table class="memname">
78   - <tr>
79   - <td class="memname">#define HTTP_REQ_CONNECT&nbsp;&nbsp;&nbsp;7 </td>
80   - </tr>
81   - </table>
82   -</div>
83   -<div class="memdoc">
84   -
85   -<p>
86   -
87   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00011">11</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
88   -
89   -</div>
90   -</div><p>
91   -<a class="anchor" name="2894c25df3d2e54885cc414aa9731811"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_DELETE" ref="2894c25df3d2e54885cc414aa9731811" args="" -->
92   -<div class="memitem">
93   -<div class="memproto">
94   - <table class="memname">
95   - <tr>
96   - <td class="memname">#define HTTP_REQ_DELETE&nbsp;&nbsp;&nbsp;5 </td>
97   - </tr>
98   - </table>
99   -</div>
100   -<div class="memdoc">
101   -
102   -<p>
103   -
104   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00009">9</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
105   -
106   -</div>
107   -</div><p>
108   -<a class="anchor" name="783bb94ef6eee3041b08244fcf43304f"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_GET" ref="783bb94ef6eee3041b08244fcf43304f" args="" -->
109   -<div class="memitem">
110   -<div class="memproto">
111   - <table class="memname">
112   - <tr>
113   - <td class="memname">#define HTTP_REQ_GET&nbsp;&nbsp;&nbsp;1 </td>
114   - </tr>
115   - </table>
116   -</div>
117   -<div class="memdoc">
118   -
119   -<p>
120   -
121   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00005">5</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
122   -
123   -</div>
124   -</div><p>
125   -<a class="anchor" name="99dd5b1289103eee62ebd66082f03e98"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_HEAD" ref="99dd5b1289103eee62ebd66082f03e98" args="" -->
126   -<div class="memitem">
127   -<div class="memproto">
128   - <table class="memname">
129   - <tr>
130   - <td class="memname">#define HTTP_REQ_HEAD&nbsp;&nbsp;&nbsp;2 </td>
131   - </tr>
132   - </table>
133   -</div>
134   -<div class="memdoc">
135   -
136   -<p>
137   -
138   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00006">6</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
139   -
140   -</div>
141   -</div><p>
142   -<a class="anchor" name="bcd1460716fe0d7d7bbfab4d8df7431b"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_OPTIONS" ref="bcd1460716fe0d7d7bbfab4d8df7431b" args="" -->
143   -<div class="memitem">
144   -<div class="memproto">
145   - <table class="memname">
146   - <tr>
147   - <td class="memname">#define HTTP_REQ_OPTIONS&nbsp;&nbsp;&nbsp;0 </td>
148   - </tr>
149   - </table>
150   -</div>
151   -<div class="memdoc">
152   -
153   -<p>
154   -
155   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00004">4</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
156   -
157   -</div>
158   -</div><p>
159   -<a class="anchor" name="b113eaf10da1f4291202f81bea630f5b"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_POST" ref="b113eaf10da1f4291202f81bea630f5b" args="" -->
160   -<div class="memitem">
161   -<div class="memproto">
162   - <table class="memname">
163   - <tr>
164   - <td class="memname">#define HTTP_REQ_POST&nbsp;&nbsp;&nbsp;3 </td>
165   - </tr>
166   - </table>
167   -</div>
168   -<div class="memdoc">
169   -
170   -<p>
171   -
172   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00007">7</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
173   -
174   -</div>
175   -</div><p>
176   -<a class="anchor" name="af09691edc99a286c60427e1f390d7bd"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_PUT" ref="af09691edc99a286c60427e1f390d7bd" args="" -->
177   -<div class="memitem">
178   -<div class="memproto">
179   - <table class="memname">
180   - <tr>
181   - <td class="memname">#define HTTP_REQ_PUT&nbsp;&nbsp;&nbsp;4 </td>
182   - </tr>
183   - </table>
184   -</div>
185   -<div class="memdoc">
186   -
187   -<p>
188   -
189   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00008">8</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
190   -
191   -</div>
192   -</div><p>
193   -<a class="anchor" name="21cd537dafe8cd458fbb1eeb1208f4a8"></a><!-- doxytag: member="httpRequest.h::HTTP_REQ_TRACE" ref="21cd537dafe8cd458fbb1eeb1208f4a8" args="" -->
194   -<div class="memitem">
195   -<div class="memproto">
196   - <table class="memname">
197   - <tr>
198   - <td class="memname">#define HTTP_REQ_TRACE&nbsp;&nbsp;&nbsp;6 </td>
199   - </tr>
200   - </table>
201   -</div>
202   -<div class="memdoc">
203   -
204   -<p>
205   -
206   -<p>Definition at line <a class="el" href="httpRequest_8h-source.html#l00010">10</a> of file <a class="el" href="httpRequest_8h-source.html">httpRequest.h</a>.</p>
207   -
208   -</div>
209   -</div><p>
210   -<hr><h2>Function Documentation</h2>
211   -<a class="anchor" name="b55d3458cc9e50ef2a22731d910c6385"></a><!-- doxytag: member="httpRequest.h::freeHttpHeader" ref="b55d3458cc9e50ef2a22731d910c6385" args="(tHttpHeader *)" -->
212   -<div class="memitem">
213   -<div class="memproto">
214   - <table class="memname">
215   - <tr>
216   - <td class="memname">void freeHttpHeader </td>
217   - <td>(</td>
218   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
219   - <td class="paramname"> </td>
220   - <td>&nbsp;)&nbsp;</td>
221   - <td></td>
222   - </tr>
223   - </table>
224   -</div>
225   -<div class="memdoc">
226   -
227   -<p>
228   -
229   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00187">187</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
230   -
231   -</div>
232   -</div><p>
233   -<a class="anchor" name="1bba1865657c64c0e1971a45ee6117ab"></a><!-- doxytag: member="httpRequest.h::freeHttpRequest" ref="1bba1865657c64c0e1971a45ee6117ab" args="(tHttpRequest *)" -->
234   -<div class="memitem">
235   -<div class="memproto">
236   - <table class="memname">
237   - <tr>
238   - <td class="memname">void freeHttpRequest </td>
239   - <td>(</td>
240   - <td class="paramtype"><a class="el" href="structtHttpRequest.html">tHttpRequest</a> *&nbsp;</td>
241   - <td class="paramname"> </td>
242   - <td>&nbsp;)&nbsp;</td>
243   - <td></td>
244   - </tr>
245   - </table>
246   -</div>
247   -<div class="memdoc">
248   -
249   -<p>
250   -
251   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00217">217</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
252   -
253   -</div>
254   -</div><p>
255   -<a class="anchor" name="59d765731e7d39f5583ef175950becb1"></a><!-- doxytag: member="httpRequest.h::getHttpRequest" ref="59d765731e7d39f5583ef175950becb1" args="(char **, unsigned int *, tHttpRequest *)" -->
256   -<div class="memitem">
257   -<div class="memproto">
258   - <table class="memname">
259   - <tr>
260   - <td class="memname">int getHttpRequest </td>
261   - <td>(</td>
262   - <td class="paramtype">char **&nbsp;</td>
263   - <td class="paramname">, </td>
264   - </tr>
265   - <tr>
266   - <td class="paramkey"></td>
267   - <td></td>
268   - <td class="paramtype">unsigned int *&nbsp;</td>
269   - <td class="paramname">, </td>
270   - </tr>
271   - <tr>
272   - <td class="paramkey"></td>
273   - <td></td>
274   - <td class="paramtype"><a class="el" href="structtHttpRequest.html">tHttpRequest</a> *&nbsp;</td>
275   - <td class="paramname"></td><td>&nbsp;</td>
276   - </tr>
277   - <tr>
278   - <td></td>
279   - <td>)</td>
280   - <td></td><td></td><td></td>
281   - </tr>
282   - </table>
283   -</div>
284   -<div class="memdoc">
285   -
286   -<p>
287   -
288   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00162">162</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
289   -
290   -</div>
291   -</div><p>
292   -<a class="anchor" name="07afde622816238d4424591269f5616a"></a><!-- doxytag: member="httpRequest.h::httpHeaderGet" ref="07afde622816238d4424591269f5616a" args="(char **, unsigned int *, tHttpHeader *)" -->
293   -<div class="memitem">
294   -<div class="memproto">
295   - <table class="memname">
296   - <tr>
297   - <td class="memname">int httpHeaderGet </td>
298   - <td>(</td>
299   - <td class="paramtype">char **&nbsp;</td>
300   - <td class="paramname">, </td>
301   - </tr>
302   - <tr>
303   - <td class="paramkey"></td>
304   - <td></td>
305   - <td class="paramtype">unsigned int *&nbsp;</td>
306   - <td class="paramname">, </td>
307   - </tr>
308   - <tr>
309   - <td class="paramkey"></td>
310   - <td></td>
311   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
312   - <td class="paramname"></td><td>&nbsp;</td>
313   - </tr>
314   - <tr>
315   - <td></td>
316   - <td>)</td>
317   - <td></td><td></td><td></td>
318   - </tr>
319   - </table>
320   -</div>
321   -<div class="memdoc">
322   -
323   -<p>
324   -
325   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00085">85</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
326   -
327   -</div>
328   -</div><p>
329   -<a class="anchor" name="91e1c62216e1370b68a87ffc8b120f0d"></a><!-- doxytag: member="httpRequest.h::httpHeaderIsComplete" ref="91e1c62216e1370b68a87ffc8b120f0d" args="(tHttpHeader *)" -->
330   -<div class="memitem">
331   -<div class="memproto">
332   - <table class="memname">
333   - <tr>
334   - <td class="memname">int httpHeaderIsComplete </td>
335   - <td>(</td>
336   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
337   - <td class="paramname"> </td>
338   - <td>&nbsp;)&nbsp;</td>
339   - <td></td>
340   - </tr>
341   - </table>
342   -</div>
343   -<div class="memdoc">
344   -
345   -<p>
346   -
347   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00052">52</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
348   -
349   -</div>
350   -</div><p>
351   -<a class="anchor" name="99eb3b2c1e06ee773fd3bb7da7e98ece"></a><!-- doxytag: member="httpRequest.h::httpHeaderIsStarted" ref="99eb3b2c1e06ee773fd3bb7da7e98ece" args="(tHttpHeader *)" -->
352   -<div class="memitem">
353   -<div class="memproto">
354   - <table class="memname">
355   - <tr>
356   - <td class="memname">unsigned char httpHeaderIsStarted </td>
357   - <td>(</td>
358   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
359   - <td class="paramname"> </td>
360   - <td>&nbsp;)&nbsp;</td>
361   - <td></td>
362   - </tr>
363   - </table>
364   -</div>
365   -<div class="memdoc">
366   -
367   -<p>
368   -
369   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00062">62</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
370   -
371   -</div>
372   -</div><p>
373   -<a class="anchor" name="b7ea84417c64cc894ef20f3fad58832f"></a><!-- doxytag: member="httpRequest.h::httpHeaderParseRequestLine" ref="b7ea84417c64cc894ef20f3fad58832f" args="(tHttpHeader *, const char *, unsigned int)" -->
374   -<div class="memitem">
375   -<div class="memproto">
376   - <table class="memname">
377   - <tr>
378   - <td class="memname">void httpHeaderParseRequestLine </td>
379   - <td>(</td>
380   - <td class="paramtype"><a class="el" href="structtHttpHeader.html">tHttpHeader</a> *&nbsp;</td>
381   - <td class="paramname">, </td>
382   - </tr>
383   - <tr>
384   - <td class="paramkey"></td>
385   - <td></td>
386   - <td class="paramtype">const char *&nbsp;</td>
387   - <td class="paramname">, </td>
388   - </tr>
389   - <tr>
390   - <td class="paramkey"></td>
391   - <td></td>
392   - <td class="paramtype">unsigned&nbsp;</td>
393   - <td class="paramname"> <em>int</em></td><td>&nbsp;</td>
394   - </tr>
395   - <tr>
396   - <td></td>
397   - <td>)</td>
398   - <td></td><td></td><td></td>
399   - </tr>
400   - </table>
401   -</div>
402   -<div class="memdoc">
403   -
404   -<p>
405   -
406   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00047">47</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
407   -
408   -</div>
409   -</div><p>
410   -<hr><h2>Variable Documentation</h2>
411   -<a class="anchor" name="e7110ef069c94769a78296dc38ab86ca"></a><!-- doxytag: member="httpRequest.h::httpRequest" ref="e7110ef069c94769a78296dc38ab86ca" args="[8][8]" -->
412   -<div class="memitem">
413   -<div class="memproto">
414   - <table class="memname">
415   - <tr>
416   - <td class="memname">char <a class="el" href="httpRequest_8c.html#e7110ef069c94769a78296dc38ab86ca">httpRequest</a>[8][8] </td>
417   - </tr>
418   - </table>
419   -</div>
420   -<div class="memdoc">
421   -
422   -<p>
423   -
424   -<p>Definition at line <a class="el" href="httpRequest_8c-source.html#l00013">13</a> of file <a class="el" href="httpRequest_8c-source.html">httpRequest.c</a>.</p>
425   -
426   -</div>
427   -</div><p>
428   -</div>
429   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
430   -<a href="http://www.doxygen.org/index.html">
431   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
432   -</body>
433   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc</title></head>
4   -<frameset cols="250,*">
5   - <frame src="tree.html" name="treefrm">
6   - <frame src="main.html" name="basefrm">
7   - <noframes>
8   - <a href="main.html">Frames are disabled. Click here to go to the main page.</a>
9   - </noframes>
10   -</frameset>
11   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/logRotate.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>system/logRotate.c</h1><a href="logRotate_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;sys/select.h&gt;</span> <span class="comment">/* for select system call and related */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;time.h&gt;</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;unistd.h&gt;</span> <span class="comment">/* for fork and exec */</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
26   -<a name="l00005"></a>00005 <span class="preprocessor">#include &lt;sys/wait.h&gt;</span>
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">/* fopen and stuff */</span>
28   -<a name="l00007"></a>00007 <span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">/* exit */</span>
29   -<a name="l00008"></a>00008 <span class="preprocessor">#include &lt;string.h&gt;</span> <span class="comment">/* strncpy, memcpy, etc. */</span>
30   -<a name="l00009"></a>00009 <span class="preprocessor">#include &lt;syslog.h&gt;</span>
31   -<a name="l00010"></a>00010 <span class="preprocessor">#include &lt;errno.h&gt;</span>
32   -<a name="l00011"></a>00011
33   -<a name="l00012"></a>00012 <span class="preprocessor">#include "../include/monitor.h"</span>
34   -<a name="l00013"></a>00013
35   -<a name="l00014"></a>00014
36   -<a name="l00015"></a>00015 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>;
37   -<a name="l00016"></a>00016
38   -<a name="l00017"></a><a class="code" href="logRotate_8c.html#70a3ebded819019c99ad001f29e082de">00017</a> <span class="keywordtype">void</span> <a class="code" href="logRotate_8h.html#82df920a9975d5484d681c6f9009da38">logRotate</a>(FILE ** handle, <span class="keywordtype">char</span> * path, <span class="keywordtype">char</span> * pattern) {
39   -<a name="l00018"></a>00018 <span class="keyword">static</span> <span class="keywordtype">char</span> logName[1024] = <span class="stringliteral">""</span>;
40   -<a name="l00019"></a>00019
41   -<a name="l00020"></a>00020 <span class="keywordtype">char</span> strftimeName[128] = <span class="stringliteral">""</span>;
42   -<a name="l00021"></a>00021 <span class="keywordtype">char</span> newLogName[1024] = <span class="stringliteral">""</span>;
43   -<a name="l00022"></a>00022
44   -<a name="l00023"></a>00023 time_t t;
45   -<a name="l00024"></a>00024 <span class="keyword">struct </span>tm *tmp;
46   -<a name="l00025"></a>00025
47   -<a name="l00026"></a>00026 t = time(NULL);
48   -<a name="l00027"></a>00027 tmp = localtime(&amp;t);
49   -<a name="l00028"></a>00028 <span class="keywordflow">if</span> (tmp == NULL) {
50   -<a name="l00029"></a>00029 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_ERR, <a class="code" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">MON_INFO</a>, <span class="stringliteral">"logrotate.localtime"</span>,
51   -<a name="l00030"></a>00030 <span class="stringliteral">"can't get localtime for new logname. continue with old one"</span>);
52   -<a name="l00031"></a>00031 <span class="keywordflow">return</span>;
53   -<a name="l00032"></a>00032 }
54   -<a name="l00033"></a>00033
55   -<a name="l00034"></a>00034 <span class="keywordflow">if</span> (strftime(strftimeName, <span class="keyword">sizeof</span>(strftimeName)-1, pattern, tmp) == 0) {
56   -<a name="l00035"></a>00035 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_ERR, <a class="code" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">MON_INFO</a>, <span class="stringliteral">"logrotate.strftime"</span>,
57   -<a name="l00036"></a>00036 <span class="stringliteral">"strftime returned 0 for new logname. continue with old one"</span>);
58   -<a name="l00037"></a>00037 <span class="keywordflow">return</span>;
59   -<a name="l00038"></a>00038 }
60   -<a name="l00039"></a>00039
61   -<a name="l00040"></a>00040 snprintf(newLogName, <span class="keyword">sizeof</span>(newLogName)-1, <span class="stringliteral">"%s/%s"</span>, path, strftimeName);
62   -<a name="l00041"></a>00041
63   -<a name="l00042"></a>00042 <span class="keywordflow">if</span> (0 != strncmp(logName, newLogName, <span class="keyword">sizeof</span>(logName)-1)) {
64   -<a name="l00043"></a>00043 <span class="keywordflow">if</span> (0 != <a class="code" href="client_8h.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a>) {
65   -<a name="l00044"></a>00044 syslog(LOG_INFO, <span class="stringliteral">"actual logfile name: %s"</span>, logName);
66   -<a name="l00045"></a>00045 syslog(LOG_INFO, <span class="stringliteral">"new logfile name: %s"</span>, newLogName);
67   -<a name="l00046"></a>00046 }
68   -<a name="l00047"></a>00047
69   -<a name="l00048"></a>00048 <span class="keywordflow">if</span> (NULL != *handle) {
70   -<a name="l00049"></a>00049 fclose(*handle);
71   -<a name="l00050"></a>00050
72   -<a name="l00051"></a>00051 pid_t gzipPid = fork();
73   -<a name="l00052"></a>00052
74   -<a name="l00053"></a>00053 <span class="keywordflow">switch</span>(gzipPid) {
75   -<a name="l00054"></a>00054 pid_t tmpPid;
76   -<a name="l00055"></a>00055
77   -<a name="l00056"></a>00056 <span class="keywordflow">case</span> 0:
78   -<a name="l00057"></a>00057 <span class="comment">// We don't care about finishing of child, so decouple it</span>
79   -<a name="l00058"></a>00058 <span class="comment">// by using a second child that stop immediatly</span>
80   -<a name="l00059"></a>00059 tmpPid = fork();
81   -<a name="l00060"></a>00060 <span class="keywordflow">if</span> (0 == tmpPid) {
82   -<a name="l00061"></a>00061 syslog(LOG_INFO, <span class="stringliteral">"gzip: %s"</span>, logName);
83   -<a name="l00062"></a>00062 <span class="keywordflow">if</span> (-1 == execl(<span class="stringliteral">"/bin/gzip"</span>, <span class="stringliteral">"/bin/gzip"</span>, <span class="stringliteral">"-9"</span>, logName, (<span class="keywordtype">char</span> *) 0)) {
84   -<a name="l00063"></a>00063 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_ERR, <a class="code" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">MON_INFO</a>, <span class="stringliteral">"logrotate.gzip"</span>,
85   -<a name="l00064"></a>00064 <span class="stringliteral">"execl failed for gzip %s: %s"</span>, logName, strerror(errno));
86   -<a name="l00065"></a>00065 }
87   -<a name="l00066"></a>00066 }
88   -<a name="l00067"></a>00067 exit(EXIT_SUCCESS);
89   -<a name="l00068"></a>00068
90   -<a name="l00069"></a>00069 <span class="keywordflow">case</span> -1:
91   -<a name="l00070"></a>00070 <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(LOG_ERR, <a class="code" href="monitor_8h.html#d702c7f3311c0b76ee05d7efd27c87b2">MON_INFO</a>, <span class="stringliteral">"logrotate.fork"</span>,
92   -<a name="l00071"></a>00071 <span class="stringliteral">"fork failed for gzip %s: %s"</span>, logName, strerror(errno));
93   -<a name="l00072"></a>00072 <span class="keywordflow">break</span>;
94   -<a name="l00073"></a>00073
95   -<a name="l00074"></a>00074 <span class="keywordflow">default</span>:
96   -<a name="l00075"></a>00075 wait(NULL);
97   -<a name="l00076"></a>00076 <span class="keywordflow">break</span>;
98   -<a name="l00077"></a>00077 }
99   -<a name="l00078"></a>00078 }
100   -<a name="l00079"></a>00079
101   -<a name="l00080"></a>00080 strncpy(logName, newLogName, <span class="keyword">sizeof</span>(logName)-1);
102   -<a name="l00081"></a>00081 *handle = fopen(logName, <span class="stringliteral">"w"</span>);
103   -<a name="l00082"></a>00082 }
104   -<a name="l00083"></a>00083 }
105   -</pre></div></div>
106   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
107   -<a href="http://www.doxygen.org/index.html">
108   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
109   -</body>
110   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/logRotate.c File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>system/logRotate.c File Reference</h1><code>#include &lt;sys/select.h&gt;</code><br>
25   -<code>#include &lt;time.h&gt;</code><br>
26   -<code>#include &lt;unistd.h&gt;</code><br>
27   -<code>#include &lt;sys/types.h&gt;</code><br>
28   -<code>#include &lt;sys/wait.h&gt;</code><br>
29   -<code>#include &lt;stdio.h&gt;</code><br>
30   -<code>#include &lt;stdlib.h&gt;</code><br>
31   -<code>#include &lt;string.h&gt;</code><br>
32   -<code>#include &lt;syslog.h&gt;</code><br>
33   -<code>#include &lt;errno.h&gt;</code><br>
34   -<code>#include &quot;<a class="el" href="monitor_8h-source.html">../include/monitor.h</a>&quot;</code><br>
35   -
36   -<p>
37   -<a href="logRotate_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
38   -<tr><td></td></tr>
39   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
40   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="logRotate_8c.html#70a3ebded819019c99ad001f29e082de">logRotate</a> (FILE **handle, char *path, char *pattern)</td></tr>
41   -
42   -<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
43   -<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="logRotate_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a></td></tr>
44   -
45   -</table>
46   -<hr><h2>Function Documentation</h2>
47   -<a class="anchor" name="70a3ebded819019c99ad001f29e082de"></a><!-- doxytag: member="logRotate.c::logRotate" ref="70a3ebded819019c99ad001f29e082de" args="(FILE **handle, char *path, char *pattern)" -->
48   -<div class="memitem">
49   -<div class="memproto">
50   - <table class="memname">
51   - <tr>
52   - <td class="memname">void logRotate </td>
53   - <td>(</td>
54   - <td class="paramtype">FILE **&nbsp;</td>
55   - <td class="paramname"> <em>handle</em>, </td>
56   - </tr>
57   - <tr>
58   - <td class="paramkey"></td>
59   - <td></td>
60   - <td class="paramtype">char *&nbsp;</td>
61   - <td class="paramname"> <em>path</em>, </td>
62   - </tr>
63   - <tr>
64   - <td class="paramkey"></td>
65   - <td></td>
66   - <td class="paramtype">char *&nbsp;</td>
67   - <td class="paramname"> <em>pattern</em></td><td>&nbsp;</td>
68   - </tr>
69   - <tr>
70   - <td></td>
71   - <td>)</td>
72   - <td></td><td></td><td></td>
73   - </tr>
74   - </table>
75   -</div>
76   -<div class="memdoc">
77   -
78   -<p>
79   -
80   -<p>Definition at line <a class="el" href="logRotate_8c-source.html#l00017">17</a> of file <a class="el" href="logRotate_8c-source.html">logRotate.c</a>.</p>
81   -
82   -</div>
83   -</div><p>
84   -<hr><h2>Variable Documentation</h2>
85   -<a class="anchor" name="0b2caeb4b6f130be43e5a2f0267dd453"></a><!-- doxytag: member="logRotate.c::verbose" ref="0b2caeb4b6f130be43e5a2f0267dd453" args="" -->
86   -<div class="memitem">
87   -<div class="memproto">
88   - <table class="memname">
89   - <tr>
90   - <td class="memname">int <a class="el" href="socket_8c.html#0b2caeb4b6f130be43e5a2f0267dd453">verbose</a> </td>
91   - </tr>
92   - </table>
93   -</div>
94   -<div class="memdoc">
95   -
96   -<p>
97   -
98   -</div>
99   -</div><p>
100   -</div>
101   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:36 2010 for xmlrpc by&nbsp;
102   -<a href="http://www.doxygen.org/index.html">
103   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
104   -</body>
105   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/logRotate.h Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>include/logRotate.h</h1><a href="logRotate_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef __LOG_ROTATE_H__</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define __LOG_ROTATE_H__</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor"></span>
25   -<a name="l00004"></a>00004 <span class="keywordtype">void</span> <a class="code" href="logRotate_8h.html#82df920a9975d5484d681c6f9009da38">logRotate</a>(FILE ** handle, <span class="keywordtype">char</span> * logPath, <span class="keywordtype">char</span> * logNamePattern);
26   -<a name="l00005"></a>00005
27   -<a name="l00006"></a>00006 <span class="preprocessor">#endif </span><span class="comment">/* __LOG_ROTATE_H__ */</span>
28   -</pre></div></div>
29   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
30   -<a href="http://www.doxygen.org/index.html">
31   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
32   -</body>
33   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: include/logRotate.h File Reference</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -</div>
23   -<div class="contents">
24   -<h1>include/logRotate.h File Reference</h1>
25   -<p>
26   -<a href="logRotate_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
27   -<tr><td></td></tr>
28   -<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
29   -<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="logRotate_8h.html#82df920a9975d5484d681c6f9009da38">logRotate</a> (FILE **handle, char *logPath, char *logNamePattern)</td></tr>
30   -
31   -</table>
32   -<hr><h2>Function Documentation</h2>
33   -<a class="anchor" name="82df920a9975d5484d681c6f9009da38"></a><!-- doxytag: member="logRotate.h::logRotate" ref="82df920a9975d5484d681c6f9009da38" args="(FILE **handle, char *logPath, char *logNamePattern)" -->
34   -<div class="memitem">
35   -<div class="memproto">
36   - <table class="memname">
37   - <tr>
38   - <td class="memname">void logRotate </td>
39   - <td>(</td>
40   - <td class="paramtype">FILE **&nbsp;</td>
41   - <td class="paramname"> <em>handle</em>, </td>
42   - </tr>
43   - <tr>
44   - <td class="paramkey"></td>
45   - <td></td>
46   - <td class="paramtype">char *&nbsp;</td>
47   - <td class="paramname"> <em>logPath</em>, </td>
48   - </tr>
49   - <tr>
50   - <td class="paramkey"></td>
51   - <td></td>
52   - <td class="paramtype">char *&nbsp;</td>
53   - <td class="paramname"> <em>logNamePattern</em></td><td>&nbsp;</td>
54   - </tr>
55   - <tr>
56   - <td></td>
57   - <td>)</td>
58   - <td></td><td></td><td></td>
59   - </tr>
60   - </table>
61   -</div>
62   -<div class="memdoc">
63   -
64   -<p>
65   -
66   -<p>Definition at line <a class="el" href="logRotate_8c-source.html#l00017">17</a> of file <a class="el" href="logRotate_8c-source.html">logRotate.c</a>.</p>
67   -
68   -</div>
69   -</div><p>
70   -</div>
71   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
72   -<a href="http://www.doxygen.org/index.html">
73   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
74   -</body>
75   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: Main Page</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li class="current"><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   -</div>
17   -<div class="contents">
18   -<h1>xmlrpc Documentation</h1>
19   -<p>
20   -<h3 align="center">0.0.1 </h3></div>
21   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
22   -<a href="http://www.doxygen.org/index.html">
23   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
24   -</body>
25   -</html>
1   -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2   -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3   -<title>xmlrpc: system/monitor.c Source File</title>
4   -<link href="tabs.css" rel="stylesheet" type="text/css">
5   -<link href="doxygen.css" rel="stylesheet" type="text/css">
6   -</head><body>
7   -<!-- Generated by Doxygen 1.5.8 -->
8   -<div class="navigation" id="top">
9   - <div class="tabs">
10   - <ul>
11   - <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12   - <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13   - <li class="current"><a href="files.html"><span>Files</span></a></li>
14   - </ul>
15   - </div>
16   - <div class="tabs">
17   - <ul>
18   - <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19   - <li><a href="globals.html"><span>Globals</span></a></li>
20   - </ul>
21   - </div>
22   -<h1>system/monitor.c</h1><a href="monitor_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">/* for system() */</span>
23   -<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;sys/wait.h&gt;</span>
24   -<a name="l00003"></a>00003 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
25   -<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;string.h&gt;</span>
26   -<a name="l00005"></a>00005 <span class="preprocessor">#include &lt;errno.h&gt;</span>
27   -<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;signal.h&gt;</span>
28   -<a name="l00007"></a>00007 <span class="preprocessor">#include &lt;stdarg.h&gt;</span> <span class="comment">/* for ellipse handling */</span>
29   -<a name="l00008"></a>00008
30   -<a name="l00009"></a>00009 <span class="preprocessor">#include "../include/signalHandling.h"</span>
31   -<a name="l00010"></a>00010 <span class="preprocessor">#include "../include/monitor.h"</span>
32   -<a name="l00011"></a>00011
33   -<a name="l00012"></a>00012
34   -<a name="l00013"></a><a class="code" href="monitor_8c.html#d2e5f556fda8453832fa6b5f7c92bc85">00013</a> <span class="preprocessor">#define MONITORCMD "/usr/bin/monitor"</span>
35   -<a name="l00014"></a><a class="code" href="monitor_8c.html#630eb7604f0fe1161c6165cec5200b3d">00014</a> <span class="preprocessor"></span><span class="preprocessor">#define MONITORTYPE "test"</span>
36   -<a name="l00015"></a><a class="code" href="monitor_8c.html#d79291fa6d09c30b5ad1c10c8a5d647f">00015</a> <span class="preprocessor"></span><span class="preprocessor">#define MONITORNAME "virtualitemlogreceiver"</span>
37   -<a name="l00016"></a>00016 <span class="preprocessor"></span>
38   -<a name="l00017"></a><a class="code" href="monitor_8c.html#8142dc3c72610140dfcacc52de5881fd">00017</a> <span class="keyword">const</span> <span class="keywordtype">char</span> <a class="code" href="monitor_8c.html#8142dc3c72610140dfcacc52de5881fd">severity</a>[][10] = {
39   -<a name="l00018"></a>00018 <span class="stringliteral">"info"</span>,
40   -<a name="l00019"></a>00019 <span class="stringliteral">"warning"</span>,
41   -<a name="l00020"></a>00020 <span class="stringliteral">"critical"</span>,
42   -<a name="l00021"></a>00021 <span class="stringliteral">"failure"</span>
43   -<a name="l00022"></a>00022 };
44   -<a name="l00023"></a>00023
45   -<a name="l00024"></a>00024
46   -<a name="l00025"></a>00025 <span class="keywordtype">int</span>
47   -<a name="l00026"></a><a class="code" href="monitor_8c.html#afab1757e8c3bc9c5143490b256cb684">00026</a> <a class="code" href="monitor_8h.html#afab1757e8c3bc9c5143490b256cb684">monitor</a>(
48   -<a name="l00027"></a>00027 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sev,
49   -<a name="l00028"></a>00028 <span class="keyword">const</span> <span class="keywordtype">char</span> * pattern,
50   -<a name="l00029"></a>00029 <span class="keyword">const</span> <span class="keywordtype">char</span> * message
51   -<a name="l00030"></a>00030 ) {
52   -<a name="l00031"></a>00031 <span class="keywordtype">char</span> monCall[1024];
53   -<a name="l00032"></a>00032 <span class="keywordtype">int</span> ret;
54   -<a name="l00033"></a>00033
55   -<a name="l00034"></a>00034 snprintf(monCall, 1023,
56   -<a name="l00035"></a>00035 <span class="stringliteral">"%s %s %s.%s.%s \"%s\""</span>,
57   -<a name="l00036"></a>00036 <a class="code" href="monitor_8c.html#d2e5f556fda8453832fa6b5f7c92bc85">MONITORCMD</a>,
58   -<a name="l00037"></a>00037 <a class="code" href="monitor_8c.html#8142dc3c72610140dfcacc52de5881fd">severity</a>[sev],
59   -<a name="l00038"></a>00038 <a class="code" href="monitor_8c.html#630eb7604f0fe1161c6165cec5200b3d">MONITORTYPE</a>,
60   -<a name="l00039"></a>00039 <a class="code" href="monitor_8c.html#d79291fa6d09c30b5ad1c10c8a5d647f">MONITORNAME</a>,
61   -<a name="l00040"></a>00040 pattern,
62   -<a name="l00041"></a>00041 message);
63   -<a name="l00042"></a>00042
64   -<a name="l00043"></a>00043 ret = system(monCall);
65   -<a name="l00044"></a>00044
66   -<a name="l00045"></a>00045 <span class="keywordflow">if</span> (WIFSIGNALED(ret)) {
67   -<a name="l00046"></a>00046 <span class="keywordflow">switch</span> (WTERMSIG(ret)) {
68   -<a name="l00047"></a>00047 <span class="keywordflow">case</span> SIGINT:
69   -<a name="l00048"></a>00048 <span class="keywordflow">case</span> SIGQUIT:
70   -<a name="l00049"></a>00049 syslog(LOG_INFO, <span class="stringliteral">"interrupted in monitor call"</span>);
71   -<a name="l00050"></a>00050 <a class="code" href="signalHandling_8h.html#960e985a396acaabb1bbed4f15668ade">doShutdown</a>=1;
72   -<a name="l00051"></a>00051 }
73   -<a name="l00052"></a>00052 }
74   -<a name="l00053"></a>00053
75   -<a name="l00054"></a>00054 <span class="keywordflow">if</span> (-1 == ret || 0 != WEXITSTATUS(ret)) {
76   -<a name="l00055"></a>00055 syslog(LOG_ERR, <span class="stringliteral">"call monitoring failed: %s"</span>, strerror(errno));
77   -<a name="l00056"></a>00056 }
78   -<a name="l00057"></a>00057
79   -<a name="l00058"></a>00058 <span class="keywordflow">return</span> ret;
80   -<a name="l00059"></a>00059 }
81   -<a name="l00060"></a>00060
82   -<a name="l00061"></a>00061 <span class="comment">/* this handles simple %d and %s replacements,</span>
83   -<a name="l00062"></a>00062 <span class="comment"> * complexer stuff must be prepared via snprintf</span>
84   -<a name="l00063"></a>00063 <span class="comment"> * the complete message should not extend 1024</span>
85   -<a name="l00064"></a>00064 <span class="comment"> * Bytes, else it will be truncated silently */</span>
86   -<a name="l00065"></a>00065 <span class="keywordtype">int</span>
87   -<a name="l00066"></a><a class="code" href="monitor_8c.html#13e7bf0022db0d9f5dd6aeb82ec69999">00066</a> <a class="code" href="monitor_8h.html#5d332cf84a9d6dd9c77382a74960cccf">syslogMonitor</a>(
88   -<a name="l00067"></a>00067 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> logLvl,
89   -<a name="l00068"></a>00068 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sev,
90   -<a name="l00069"></a>00069 <span class="keyword">const</span> <span class="keywordtype">char</span> * pattern,
91   -<a name="l00070"></a>00070 <span class="keyword">const</span> <span class="keywordtype">char</span> * message,
92   -<a name="l00071"></a>00071 ...
93   -<a name="l00072"></a>00072 ) {
94   -<a name="l00073"></a>00073 va_list args;
95   -<a name="l00074"></a>00074 <span class="keywordtype">char</span> buffer[1025];
96   -<a name="l00075"></a>00075 <span class="keywordtype">int</span> maxBuf = <span class="keyword">sizeof</span>(buffer)/<span class="keyword">sizeof</span>(buffer[0]);
97   -<a name="l00076"></a>00076
98   -<a name="l00077"></a>00077 memset(buffer, 0, maxBuf);
99   -<a name="l00078"></a>00078
100   -<a name="l00079"></a>00079 va_start(args, message);
101   -<a name="l00080"></a>00080 vsnprintf(buffer, 1024, message, args);
102   -<a name="l00081"></a>00081 va_end(args);
103   -<a name="l00082"></a>00082
104   -<a name="l00083"></a>00083 syslog(logLvl, <span class="stringliteral">"%s"</span>, buffer);
105   -<a name="l00084"></a>00084 <a class="code" href="monitor_8h.html#afab1757e8c3bc9c5143490b256cb684">monitor</a>(sev, pattern, buffer);
106   -<a name="l00085"></a>00085
107   -<a name="l00086"></a>00086 <span class="keywordflow">return</span> 0;
108   -<a name="l00087"></a>00087 }
109   -</pre></div></div>
110   -<hr size="1"><address style="text-align: right;"><small>Generated on Sun Oct 10 01:24:35 2010 for xmlrpc by&nbsp;
111   -<a href="http://www.doxygen.org/index.html">
112   -<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
113   -</body>
114   -</html>
Please register or login to post a comment