You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
979 lines
60 KiB
979 lines
60 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<title>Server: include/cbuf.h File Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(initResizable);
|
|
</script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body onload='searchBox.OnSelectItem(0);'>
|
|
<!-- Generated by Doxygen 1.7.3 -->
|
|
<script type="text/javascript"><!--
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
--></script>
|
|
<div id="top">
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td style="padding-left: 0.5em;">
|
|
<div id="projectname">Server <span id="projectnumber">0.0.1</span></div>
|
|
<div id="projectbrief">HTTP/REST server implementation</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
|
<li><a href="annotated.html"><span>Data Structures</span></a></li>
|
|
<li class="current"><a href="files.html"><span>Files</span></a></li>
|
|
<li id="searchli">
|
|
<div id="MSearchBox" class="MSearchBoxInactive">
|
|
<span class="left">
|
|
<img id="MSearchSelect" src="search/mag_sel.png"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
alt=""/>
|
|
<input type="text" id="MSearchField" value="Search" accesskey="S"
|
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
|
</span><span class="right">
|
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="navrow2" class="tabs2">
|
|
<ul class="tablist">
|
|
<li><a href="files.html"><span>File List</span></a></li>
|
|
<li><a href="globals.html"><span>Globals</span></a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
initNavTree('cbuf_8h.html','');
|
|
</script>
|
|
<div id="doc-content">
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#nested-classes">Data Structures</a> |
|
|
<a href="#define-members">Defines</a> |
|
|
<a href="#func-members">Functions</a> </div>
|
|
<div class="headertitle">
|
|
<h1>include/cbuf.h File Reference</h1> </div>
|
|
</div>
|
|
<div class="contents">
|
|
<div class="textblock"><code>#include <ctype.h></code><br/>
|
|
<code>#include <string.h></code><br/>
|
|
<code>#include <sys/types.h></code><br/>
|
|
<code>#include "<a class="el" href="class_8h_source.html">class.h</a>"</code><br/>
|
|
<code>#include "<a class="el" href="stream_8h_source.html">stream.h</a>"</code><br/>
|
|
<code>#include "<a class="el" href="commons_8h_source.html">commons.h</a>"</code><br/>
|
|
</div><div class="textblock"><div class="dynheader">
|
|
Include dependency graph for cbuf.h:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h__incl.png" border="0" usemap="#include_2cbuf_8h" alt=""/></div>
|
|
<map name="include_2cbuf_8h" id="include_2cbuf_8h">
|
|
<area shape="rect" id="node9" href="class_8h.html" title="class.h" alt="" coords="412,83,476,111"/><area shape="rect" id="node30" href="stream_8h.html" title="stream.h" alt="" coords="673,83,748,111"/><area shape="rect" id="node48" href="commons_8h.html" title="commons.h" alt="" coords="772,83,863,111"/><area shape="rect" id="node11" href="class_2class_8h.html" title="class/class.h" alt="" coords="337,161,436,189"/><area shape="rect" id="node21" href="interface_8h.html" title="class/interface.h" alt="" coords="460,161,577,189"/><area shape="rect" id="node24" href="class_2interface_2class_8h.html" title="class/interface/class.h" alt="" coords="161,161,313,189"/><area shape="rect" id="node32" href="stream_2stream_8h.html" title="stream/stream.h" alt="" coords="652,161,769,189"/><area shape="rect" id="node39" href="reader_8h.html" title="stream/interface/reader.h" alt="" coords="980,161,1151,189"/><area shape="rect" id="node44" href="stream_2interface_2writer_8h.html" title="stream/interface/writer.h" alt="" coords="793,161,956,189"/></map>
|
|
</div>
|
|
</div>
|
|
<p><a href="cbuf_8h_source.html">Go to the source code of this file.</a></p>
|
|
<table class="memberdecls">
|
|
<tr><td colspan="2"><h2><a name="nested-classes"></a>
|
|
Data Structures</h2></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structCbuf.html">Cbuf</a></td></tr>
|
|
<tr><td colspan="2"><h2><a name="define-members"></a>
|
|
Defines</h2></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a1588b380c8b4311e100058c0193b6d10">ECBUFOVFL</a>   100</td></tr>
|
|
<tr><td colspan="2"><h2><a name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a6e4de5096568ca24607ed25184f39621">cbufRead</a> (<a class="el" href="structCbuf.html">Cbuf</a>, <a class="el" href="structStream.html">Stream</a>)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#add0d09c7cdee8a8bdd00d3416e1ed062">cbufWrite</a> (<a class="el" href="structCbuf.html">Cbuf</a>, <a class="el" href="structStream.html">Stream</a>)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a60512cdcca11f127c26a8a30e42b8c5c">cbufGetLine</a> (<a class="el" href="structCbuf.html">Cbuf</a>, char **)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#abc3bb54c6a324c849b872823ec70ce62">cbufGetData</a> (<a class="el" href="structCbuf.html">Cbuf</a>, size_t)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#aee8e983250f1f7b58d98cc70b765493a">cbufSetData</a> (<a class="el" href="structCbuf.html">Cbuf</a>, const void *, size_t)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a730f1ee9079f327ecc8783a009793d6a">cbufEmpty</a> (<a class="el" href="structCbuf.html">Cbuf</a>)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#ae0e7a74c1e6c503c3cfd0ae5bc8702fd">cbufGetWrite</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a49cdbb3d52ada4cef5a6e88267aacad3">cbufMemchr</a> (<a class="el" href="structCbuf.html">Cbuf</a> this, int c)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#afea7754e8d68ccc6b7e21dc74d7c7226">cbufAddrIndex</a> (<a class="el" href="structCbuf.html">Cbuf</a> this, const void *c)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb">cbufIncRead</a> (<a class="el" href="structCbuf.html">Cbuf</a> this, size_t n)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a7afb7def79f9b383ac2ff39ffdbb6b7e">cbufIncWrite</a> (<a class="el" href="structCbuf.html">Cbuf</a> this, size_t n)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a68666a5ebddc6682b6786cc604072478">cbufGetFree</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#aa041996b32209a9b81a3e5db178c8339">cbufIsEmpty</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a1983134b7a26ad2ea077adcd343dca24">cbufSkipNonAlpha</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">Bool </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a87c05ad967d95ea590151e69af0ff4fe">cbufIsLocked</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#a9836b66494452a0b01511163285e2ba6">cbufLock</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cbuf_8h.html#aa6b501bd8016dfe1951f54dffe59262e">cbufRelease</a> (<a class="el" href="structCbuf.html">Cbuf</a> this)</td></tr>
|
|
</table>
|
|
<hr/><a name="_details"></a><h2>Detailed Description</h2>
|
|
<div class="textblock"><p>My implementation of a ringbuffer. It maps a shared memory object twice directly following thus make it possible to read and write from any position within the buffer without the nasty wrap calculations. This is achived because the same memory region is mapped at the two addresses.</p>
|
|
<dl class="author"><dt><b>Author:</b></dt><dd>Georg Hopp</dd></dl>
|
|
<p>Copyright © 2012 Georg Hopp</p>
|
|
<p>This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p>
|
|
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p>
|
|
<p>You should have received a copy of the GNU General Public License along with this program. If not, see <<a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>>. </p>
|
|
|
|
<p>Definition in file <a class="el" href="cbuf_8h_source.html">cbuf.h</a>.</p>
|
|
</div><hr/><h2>Define Documentation</h2>
|
|
<a class="anchor" id="a1588b380c8b4311e100058c0193b6d10"></a><!-- doxytag: member="cbuf.h::ECBUFOVFL" ref="a1588b380c8b4311e100058c0193b6d10" args="" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">#define ECBUFOVFL   100</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="cbuf_8h_source.html#l00042">42</a> of file <a class="el" href="cbuf_8h_source.html">cbuf.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/><h2>Function Documentation</h2>
|
|
<a class="anchor" id="afea7754e8d68ccc6b7e21dc74d7c7226"></a><!-- doxytag: member="cbuf.h::cbufAddrIndex" ref="afea7754e8d68ccc6b7e21dc74d7c7226" args="(Cbuf this, const void *c)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t cbufAddrIndex </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const void * </td>
|
|
<td class="paramname"><em>c</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="addr__index_8c_source.html#l00028">28</a> of file <a class="el" href="addr__index_8c_source.html">addr_index.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> c - (<span class="keyword">const</span> <span class="keywordtype">void</span> *)<a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>);
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_cgraph.png" border="0" usemap="#cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_cgraph" id="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="164,5,263,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_icgraph.png" border="0" usemap="#cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_icgraph" id="cbuf_8h_afea7754e8d68ccc6b7e21dc74d7c7226_icgraph">
|
|
<area shape="rect" id="node3" href="get__line_8c.html#a3b3ab88391b205a30a17885bec781928" title="cbufGetLine" alt="" coords="163,5,256,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="305,5,423,33"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="473,5,607,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a730f1ee9079f327ecc8783a009793d6a"></a><!-- doxytag: member="cbuf.h::cbufEmpty" ref="a730f1ee9079f327ecc8783a009793d6a" args="(Cbuf)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufEmpty </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="empty_8c_source.html#l00026">26</a> of file <a class="el" href="empty_8c_source.html">empty.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
this->bused = 0;
|
|
this->read = this->write;
|
|
}
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="abc3bb54c6a324c849b872823ec70ce62"></a><!-- doxytag: member="cbuf.h::cbufGetData" ref="abc3bb54c6a324c849b872823ec70ce62" args="(Cbuf, size_t)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufGetData </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="get__data_8c_source.html#l00029">29</a> of file <a class="el" href="get__data_8c_source.html">get_data.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordtype">char</span> * ret = <a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>);
|
|
|
|
<span class="keywordflow">if</span> (n > this->bused) {
|
|
<span class="keywordflow">return</span> (<span class="keywordtype">char</span> *)-1;
|
|
}
|
|
|
|
<a class="code" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb">cbufIncRead</a>(<span class="keyword">this</span>, n);
|
|
<span class="keywordflow">return</span> ret;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_cgraph.png" border="0" usemap="#cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_cgraph" id="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="153,5,252,33"/><area shape="rect" id="node5" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb" title="cbufIncRead" alt="" coords="155,55,251,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_icgraph.png" border="0" usemap="#cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_icgraph" id="cbuf_8h_abc3bb54c6a324c849b872823ec70ce62_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="153,5,271,33"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="321,5,455,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a68666a5ebddc6682b6786cc604072478"></a><!-- doxytag: member="cbuf.h::cbufGetFree" ref="a68666a5ebddc6682b6786cc604072478" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t cbufGetFree </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="get__free_8c_source.html#l00028">28</a> of file <a class="el" href="get__free_8c_source.html">get_free.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> this->bsize - this->bused;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a68666a5ebddc6682b6786cc604072478_icgraph.png" border="0" usemap="#cbuf_8h_a68666a5ebddc6682b6786cc604072478_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a68666a5ebddc6682b6786cc604072478_icgraph" id="cbuf_8h_a68666a5ebddc6682b6786cc604072478_icgraph">
|
|
<area shape="rect" id="node3" href="cbuf_2read_8c.html#a5582ca70b847b9dd308d8234055c1dde" title="cbufRead" alt="" coords="159,55,236,83"/><area shape="rect" id="node9" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="299,55,408,83"/><area shape="rect" id="node13" href="set__data_8c.html#a36cbbbaa48b1d59925a70d18d0f4f4cd" title="cbufSetData" alt="" coords="149,5,245,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="295,5,412,33"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="463,5,596,33"/><area shape="rect" id="node11" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="471,55,588,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a60512cdcca11f127c26a8a30e42b8c5c"></a><!-- doxytag: member="cbuf.h::cbufGetLine" ref="a60512cdcca11f127c26a8a30e42b8c5c" args="(Cbuf, char **)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufGetLine </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char ** </td>
|
|
<td class="paramname"> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="get__line_8c_source.html#l00030">30</a> of file <a class="el" href="get__line_8c_source.html">get_line.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordtype">char</span> * nl = <a class="code" href="cbuf_8h.html#a49cdbb3d52ada4cef5a6e88267aacad3">cbufMemchr</a>(<span class="keyword">this</span>, <span class="charliteral">'\n'</span>);
|
|
<span class="keywordtype">char</span> * ret = NULL;
|
|
|
|
<span class="keywordflow">if</span> (NULL != nl) {
|
|
<span class="keywordtype">size_t</span> len = <a class="code" href="cbuf_8h.html#afea7754e8d68ccc6b7e21dc74d7c7226">cbufAddrIndex</a>(<span class="keyword">this</span>, nl) + 1;
|
|
|
|
*line_end = nl - 1;
|
|
*nl = 0;
|
|
*(nl-1) = (<span class="charliteral">'\r'</span> == *(nl-1))? 0 : *(nl-1);
|
|
|
|
ret = <a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>);
|
|
<a class="code" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb">cbufIncRead</a>(<span class="keyword">this</span>, len);
|
|
}
|
|
|
|
<span class="keywordflow">return</span> ret;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_cgraph.png" border="0" usemap="#cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_cgraph" id="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#afea7754e8d68ccc6b7e21dc74d7c7226" title="cbufAddrIndex" alt="" coords="148,5,255,33"/><area shape="rect" id="node5" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="305,55,404,83"/><area shape="rect" id="node8" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb" title="cbufIncRead" alt="" coords="153,106,249,134"/><area shape="rect" id="node10" href="cbuf_8h.html#a49cdbb3d52ada4cef5a6e88267aacad3" title="cbufMemchr" alt="" coords="153,157,249,185"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_icgraph.png" border="0" usemap="#cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_icgraph" id="cbuf_8h_a60512cdcca11f127c26a8a30e42b8c5c_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="148,5,265,33"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="316,5,449,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a652d95658664b0658eceaa09e93a3252"></a><!-- doxytag: member="cbuf.h::cbufGetRead" ref="a652d95658664b0658eceaa09e93a3252" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufGetRead </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="get__read_8c_source.html#l00026">26</a> of file <a class="el" href="get__read_8c_source.html">get_read.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> this->data + this->read;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a652d95658664b0658eceaa09e93a3252_icgraph.png" border="0" usemap="#cbuf_8h_a652d95658664b0658eceaa09e93a3252_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a652d95658664b0658eceaa09e93a3252_icgraph" id="cbuf_8h_a652d95658664b0658eceaa09e93a3252_icgraph">
|
|
<area shape="rect" id="node3" href="addr__index_8c.html#afea7754e8d68ccc6b7e21dc74d7c7226" title="cbufAddrIndex" alt="" coords="156,5,263,33"/><area shape="rect" id="node5" href="get__line_8c.html#a3b3ab88391b205a30a17885bec781928" title="cbufGetLine" alt="" coords="332,81,425,109"/><area shape="rect" id="node7" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="495,182,612,210"/><area shape="rect" id="node11" href="get__data_8c.html#a45b464bf71d1ce027aa11f20fd5be4ab" title="cbufGetData" alt="" coords="331,207,427,235"/><area shape="rect" id="node15" href="memchr_8c.html#a49cdbb3d52ada4cef5a6e88267aacad3" title="cbufMemchr" alt="" coords="161,106,257,134"/><area shape="rect" id="node18" href="skip__non__alpha_8c.html#a1983134b7a26ad2ea077adcd343dca24" title="cbufSkipNonAlpha" alt="" coords="313,258,444,286"/><area shape="rect" id="node21" href="cbuf_2write_8c.html#a3872748b7d2c563a6e73eb3f2e1e7130" title="cbufWrite" alt="" coords="171,309,248,337"/><area shape="rect" id="node9" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="663,182,796,210"/><area shape="rect" id="node23" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="324,309,433,337"/><area shape="rect" id="node25" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="495,309,612,337"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="ae0e7a74c1e6c503c3cfd0ae5bc8702fd"></a><!-- doxytag: member="cbuf.h::cbufGetWrite" ref="ae0e7a74c1e6c503c3cfd0ae5bc8702fd" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufGetWrite </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="get__write_8c_source.html#l00026">26</a> of file <a class="el" href="get__write_8c_source.html">get_write.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> this->data + this->write;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_ae0e7a74c1e6c503c3cfd0ae5bc8702fd_icgraph.png" border="0" usemap="#cbuf_8h_ae0e7a74c1e6c503c3cfd0ae5bc8702fd_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_ae0e7a74c1e6c503c3cfd0ae5bc8702fd_icgraph" id="cbuf_8h_ae0e7a74c1e6c503c3cfd0ae5bc8702fd_icgraph">
|
|
<area shape="rect" id="node3" href="cbuf_2read_8c.html#a5582ca70b847b9dd308d8234055c1dde" title="cbufRead" alt="" coords="161,55,239,83"/><area shape="rect" id="node9" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="301,55,411,83"/><area shape="rect" id="node13" href="set__data_8c.html#a36cbbbaa48b1d59925a70d18d0f4f4cd" title="cbufSetData" alt="" coords="152,5,248,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="297,5,415,33"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="465,5,599,33"/><area shape="rect" id="node11" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="473,55,591,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="ac6a5c458373606ebadf44cb631a615cb"></a><!-- doxytag: member="cbuf.h::cbufIncRead" ref="ac6a5c458373606ebadf44cb631a615cb" args="(Cbuf this, size_t n)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufIncRead </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>n</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="inc__read_8c_source.html#l00028">28</a> of file <a class="el" href="inc__read_8c_source.html">inc_read.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
this->read += n;
|
|
this->read = (this->read >= this->bsize)?
|
|
this->read - this->bsize : this->read;
|
|
this->bused -= n;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_ac6a5c458373606ebadf44cb631a615cb_icgraph.png" border="0" usemap="#cbuf_8h_ac6a5c458373606ebadf44cb631a615cb_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_ac6a5c458373606ebadf44cb631a615cb_icgraph" id="cbuf_8h_ac6a5c458373606ebadf44cb631a615cb_icgraph">
|
|
<area shape="rect" id="node3" href="get__data_8c.html#a45b464bf71d1ce027aa11f20fd5be4ab" title="cbufGetData" alt="" coords="171,5,267,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="335,81,452,109"/><area shape="rect" id="node9" href="get__line_8c.html#a3b3ab88391b205a30a17885bec781928" title="cbufGetLine" alt="" coords="172,106,265,134"/><area shape="rect" id="node12" href="skip__non__alpha_8c.html#a1983134b7a26ad2ea077adcd343dca24" title="cbufSkipNonAlpha" alt="" coords="153,157,284,185"/><area shape="rect" id="node15" href="cbuf_2write_8c.html#a3872748b7d2c563a6e73eb3f2e1e7130" title="cbufWrite" alt="" coords="180,207,257,235"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="503,81,636,109"/><area shape="rect" id="node17" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="339,207,448,235"/><area shape="rect" id="node19" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="511,207,628,235"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a7afb7def79f9b383ac2ff39ffdbb6b7e"></a><!-- doxytag: member="cbuf.h::cbufIncWrite" ref="a7afb7def79f9b383ac2ff39ffdbb6b7e" args="(Cbuf this, size_t n)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufIncWrite </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>n</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="inc__write_8c_source.html#l00028">28</a> of file <a class="el" href="inc__write_8c_source.html">inc_write.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
this->write += n;
|
|
this->write = (this->write >= this->bsize)?
|
|
this->write - this->bsize : this->write;
|
|
this->bused += n;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a7afb7def79f9b383ac2ff39ffdbb6b7e_icgraph.png" border="0" usemap="#cbuf_8h_a7afb7def79f9b383ac2ff39ffdbb6b7e_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a7afb7def79f9b383ac2ff39ffdbb6b7e_icgraph" id="cbuf_8h_a7afb7def79f9b383ac2ff39ffdbb6b7e_icgraph">
|
|
<area shape="rect" id="node3" href="cbuf_2read_8c.html#a5582ca70b847b9dd308d8234055c1dde" title="cbufRead" alt="" coords="159,55,236,83"/><area shape="rect" id="node9" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="299,55,408,83"/><area shape="rect" id="node13" href="set__data_8c.html#a36cbbbaa48b1d59925a70d18d0f4f4cd" title="cbufSetData" alt="" coords="149,5,245,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="295,5,412,33"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="463,5,596,33"/><area shape="rect" id="node11" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="471,55,588,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aa041996b32209a9b81a3e5db178c8339"></a><!-- doxytag: member="cbuf.h::cbufIsEmpty" ref="aa041996b32209a9b81a3e5db178c8339" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char cbufIsEmpty </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="is__empty_8c_source.html#l00026">26</a> of file <a class="el" href="is__empty_8c_source.html">is_empty.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> (0 == this->bused);
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_aa041996b32209a9b81a3e5db178c8339_icgraph.png" border="0" usemap="#cbuf_8h_aa041996b32209a9b81a3e5db178c8339_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_aa041996b32209a9b81a3e5db178c8339_icgraph" id="cbuf_8h_aa041996b32209a9b81a3e5db178c8339_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="151,5,268,33"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="319,5,452,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a87c05ad967d95ea590151e69af0ff4fe"></a><!-- doxytag: member="cbuf.h::cbufIsLocked" ref="a87c05ad967d95ea590151e69af0ff4fe" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Bool cbufIsLocked </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="is__locked_8c_source.html#l00028">28</a> of file <a class="el" href="is__locked_8c_source.html">is_locked.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> this->lock;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a87c05ad967d95ea590151e69af0ff4fe_icgraph.png" border="0" usemap="#cbuf_8h_a87c05ad967d95ea590151e69af0ff4fe_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a87c05ad967d95ea590151e69af0ff4fe_icgraph" id="cbuf_8h_a87c05ad967d95ea590151e69af0ff4fe_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="156,5,273,33"/><area shape="rect" id="node7" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="160,55,269,83"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="324,5,457,33"/><area shape="rect" id="node9" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="332,55,449,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a9836b66494452a0b01511163285e2ba6"></a><!-- doxytag: member="cbuf.h::cbufLock" ref="a9836b66494452a0b01511163285e2ba6" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufLock </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="lock_8c_source.html#l00026">26</a> of file <a class="el" href="lock_8c_source.html">lock.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
this->lock = <a class="code" href="commons_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a9836b66494452a0b01511163285e2ba6_icgraph.png" border="0" usemap="#cbuf_8h_a9836b66494452a0b01511163285e2ba6_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a9836b66494452a0b01511163285e2ba6_icgraph" id="cbuf_8h_a9836b66494452a0b01511163285e2ba6_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="132,5,249,33"/><area shape="rect" id="node7" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="136,55,245,83"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="300,5,433,33"/><area shape="rect" id="node9" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="308,55,425,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a49cdbb3d52ada4cef5a6e88267aacad3"></a><!-- doxytag: member="cbuf.h::cbufMemchr" ref="a49cdbb3d52ada4cef5a6e88267aacad3" args="(Cbuf this, int c)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufMemchr </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>c</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="memchr_8c_source.html#l00028">28</a> of file <a class="el" href="memchr_8c_source.html">memchr.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">return</span> memchr(<a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>), c, this->bused);
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_cgraph.png" border="0" usemap="#cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_cgraph" id="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="151,5,249,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_icgraph.png" border="0" usemap="#cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_icgraph" id="cbuf_8h_a49cdbb3d52ada4cef5a6e88267aacad3_icgraph">
|
|
<area shape="rect" id="node3" href="get__line_8c.html#a3b3ab88391b205a30a17885bec781928" title="cbufGetLine" alt="" coords="149,5,243,33"/><area shape="rect" id="node5" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="292,5,409,33"/><area shape="rect" id="node7" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="460,5,593,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a6e4de5096568ca24607ed25184f39621"></a><!-- doxytag: member="cbuf.h::cbufRead" ref="a6e4de5096568ca24607ed25184f39621" args="(Cbuf, Stream)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t cbufRead </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="structStream.html">Stream</a> </td>
|
|
<td class="paramname"> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="cbuf_2read_8c_source.html#l00032">32</a> of file <a class="el" href="cbuf_2read_8c_source.html">read.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
ssize_t rrsize = 0;
|
|
<span class="keywordtype">size_t</span> rsize = <a class="code" href="cbuf_8h.html#a68666a5ebddc6682b6786cc604072478">cbufGetFree</a>(<span class="keyword">this</span>);
|
|
|
|
<span class="keywordflow">if</span> (0 == rsize) {
|
|
errno = <a class="code" href="cbuf_8h.html#a1588b380c8b4311e100058c0193b6d10">ECBUFOVFL</a>;
|
|
<span class="keywordflow">return</span> -1;
|
|
}
|
|
|
|
rrsize = <a class="code" href="stream_2stream_8h.html#a8201bfbd89d6721bd1e5aac63970e890">streamRead</a>(st, <a class="code" href="cbuf_8h.html#ae0e7a74c1e6c503c3cfd0ae5bc8702fd">cbufGetWrite</a>(<span class="keyword">this</span>), rsize);
|
|
|
|
<span class="keywordflow">switch</span> (rrsize) {
|
|
<span class="keywordflow">case</span> 0:
|
|
rrsize = -2;
|
|
<span class="comment">// DROP THROUGH</span>
|
|
|
|
<span class="keywordflow">case</span> -1:
|
|
<span class="keywordflow">break</span>;
|
|
|
|
<span class="keywordflow">default</span>:
|
|
<a class="code" href="cbuf_8h.html#a7afb7def79f9b383ac2ff39ffdbb6b7e">cbufIncWrite</a>(<span class="keyword">this</span>, rrsize);
|
|
<span class="keywordflow">break</span>;
|
|
}
|
|
|
|
<span class="keywordflow">return</span> rrsize;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a6e4de5096568ca24607ed25184f39621_cgraph.png" border="0" usemap="#cbuf_8h_a6e4de5096568ca24607ed25184f39621_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a6e4de5096568ca24607ed25184f39621_cgraph" id="cbuf_8h_a6e4de5096568ca24607ed25184f39621_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a68666a5ebddc6682b6786cc604072478" title="cbufGetFree" alt="" coords="135,5,231,33"/><area shape="rect" id="node5" href="cbuf_8h.html#ae0e7a74c1e6c503c3cfd0ae5bc8702fd" title="cbufGetWrite" alt="" coords="133,55,232,83"/><area shape="rect" id="node7" href="cbuf_8h.html#a7afb7def79f9b383ac2ff39ffdbb6b7e" title="cbufIncWrite" alt="" coords="135,106,231,134"/><area shape="rect" id="node9" href="stream_2stream_8h.html#a8201bfbd89d6721bd1e5aac63970e890" title="streamRead" alt="" coords="136,157,229,185"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a6e4de5096568ca24607ed25184f39621_icgraph.png" border="0" usemap="#cbuf_8h_a6e4de5096568ca24607ed25184f39621_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a6e4de5096568ca24607ed25184f39621_icgraph" id="cbuf_8h_a6e4de5096568ca24607ed25184f39621_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="135,5,252,33"/><area shape="rect" id="node7" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="139,55,248,83"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="303,5,436,33"/><area shape="rect" id="node9" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="311,55,428,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aa6b501bd8016dfe1951f54dffe59262e"></a><!-- doxytag: member="cbuf.h::cbufRelease" ref="aa6b501bd8016dfe1951f54dffe59262e" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufRelease </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="release_8c_source.html#l00026">26</a> of file <a class="el" href="release_8c_source.html">release.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
this->lock = <a class="code" href="commons_8h.html#aa93f0eb578d23995850d61f7d61c55c1">FALSE</a>;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_aa6b501bd8016dfe1951f54dffe59262e_icgraph.png" border="0" usemap="#cbuf_8h_aa6b501bd8016dfe1951f54dffe59262e_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_aa6b501bd8016dfe1951f54dffe59262e_icgraph" id="cbuf_8h_aa6b501bd8016dfe1951f54dffe59262e_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="151,5,268,33"/><area shape="rect" id="node7" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="155,55,264,83"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="319,5,452,33"/><area shape="rect" id="node9" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="327,55,444,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aee8e983250f1f7b58d98cc70b765493a"></a><!-- doxytag: member="cbuf.h::cbufSetData" ref="aee8e983250f1f7b58d98cc70b765493a" args="(Cbuf, const void *, size_t)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* cbufSetData </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const void * </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="set__data_8c_source.html#l00030">30</a> of file <a class="el" href="set__data_8c_source.html">set_data.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordtype">char</span> * addr;
|
|
|
|
<span class="keywordflow">if</span> (n > <a class="code" href="cbuf_8h.html#a68666a5ebddc6682b6786cc604072478">cbufGetFree</a>(<span class="keyword">this</span>)) {
|
|
errno = <a class="code" href="cbuf_8h.html#a1588b380c8b4311e100058c0193b6d10">ECBUFOVFL</a>;
|
|
<span class="keywordflow">return</span> (<span class="keywordtype">char</span> *)-1;
|
|
}
|
|
|
|
addr = memcpy(<a class="code" href="cbuf_8h.html#ae0e7a74c1e6c503c3cfd0ae5bc8702fd">cbufGetWrite</a>(<span class="keyword">this</span>), src, n);
|
|
<a class="code" href="cbuf_8h.html#a7afb7def79f9b383ac2ff39ffdbb6b7e">cbufIncWrite</a>(<span class="keyword">this</span>, n);
|
|
|
|
<span class="keywordflow">return</span> addr;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_cgraph.png" border="0" usemap="#cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_cgraph" id="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a68666a5ebddc6682b6786cc604072478" title="cbufGetFree" alt="" coords="151,5,247,33"/><area shape="rect" id="node5" href="cbuf_8h.html#ae0e7a74c1e6c503c3cfd0ae5bc8702fd" title="cbufGetWrite" alt="" coords="149,55,248,83"/><area shape="rect" id="node7" href="cbuf_8h.html#a7afb7def79f9b383ac2ff39ffdbb6b7e" title="cbufIncWrite" alt="" coords="151,106,247,134"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_icgraph.png" border="0" usemap="#cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_icgraph" id="cbuf_8h_aee8e983250f1f7b58d98cc70b765493a_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="151,5,268,33"/><area shape="rect" id="node7" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="155,55,264,83"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="319,5,452,33"/><area shape="rect" id="node9" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="327,55,444,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a1983134b7a26ad2ea077adcd343dca24"></a><!-- doxytag: member="cbuf.h::cbufSkipNonAlpha" ref="a1983134b7a26ad2ea077adcd343dca24" args="(Cbuf this)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void cbufSkipNonAlpha </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname"><em>this</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="skip__non__alpha_8c_source.html#l00028">28</a> of file <a class="el" href="skip__non__alpha_8c_source.html">skip_non_alpha.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
<span class="keywordflow">while</span>(0 < this->bused && !isalpha(*<a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>)))
|
|
<a class="code" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb">cbufIncRead</a>(<span class="keyword">this</span>, 1);
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_cgraph.png" border="0" usemap="#cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_cgraph" id="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="188,5,287,33"/><area shape="rect" id="node5" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb" title="cbufIncRead" alt="" coords="189,55,285,83"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_icgraph.png" border="0" usemap="#cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_icgraph" id="cbuf_8h_a1983134b7a26ad2ea077adcd343dca24_icgraph">
|
|
<area shape="rect" id="node3" href="parse_8c.html#a1aa3a9f8959238057fe18ca5bda180db" title="httpParserParse" alt="" coords="188,5,305,33"/><area shape="rect" id="node5" href="process_8c.html#a05882322d98d5710a5512c9255e03d71" title="httpWorkerProcess" alt="" coords="356,5,489,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="add0d09c7cdee8a8bdd00d3416e1ed062"></a><!-- doxytag: member="cbuf.h::cbufWrite" ref="add0d09c7cdee8a8bdd00d3416e1ed062" args="(Cbuf, Stream)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">ssize_t cbufWrite </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structCbuf.html">Cbuf</a> </td>
|
|
<td class="paramname">, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="structStream.html">Stream</a> </td>
|
|
<td class="paramname"> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Definition at line <a class="el" href="cbuf_2write_8c_source.html#l00031">31</a> of file <a class="el" href="cbuf_2write_8c_source.html">write.c</a>.</p>
|
|
<div class="fragment"><pre class="fragment">{
|
|
ssize_t wwsize = 0;
|
|
<span class="keywordtype">size_t</span> wsize = this->bused;
|
|
|
|
<span class="keywordflow">if</span> (0 == wsize) <span class="keywordflow">return</span> 0;
|
|
|
|
wwsize = <a class="code" href="stream_2stream_8h.html#aa06d63428a8a1a7c60680b28e7c51862">streamWrite</a>(st, <a class="code" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252">cbufGetRead</a>(<span class="keyword">this</span>), wsize);
|
|
|
|
<span class="keywordflow">switch</span> (wwsize) {
|
|
<span class="keywordflow">case</span> -1:
|
|
<span class="keywordflow">break</span>;
|
|
|
|
<span class="keywordflow">default</span>:
|
|
<a class="code" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb">cbufIncRead</a>(<span class="keyword">this</span>, wwsize);
|
|
<span class="keywordflow">break</span>;
|
|
}
|
|
|
|
<span class="keywordflow">return</span> wwsize;
|
|
}
|
|
</pre></div>
|
|
<p><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_cgraph.png" border="0" usemap="#cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_cgraph" alt=""/></div>
|
|
<map name="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_cgraph" id="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_cgraph">
|
|
<area shape="rect" id="node3" href="cbuf_8h.html#a652d95658664b0658eceaa09e93a3252" title="cbufGetRead" alt="" coords="132,5,231,33"/><area shape="rect" id="node5" href="cbuf_8h.html#ac6a5c458373606ebadf44cb631a615cb" title="cbufIncRead" alt="" coords="133,55,229,83"/><area shape="rect" id="node7" href="stream_2stream_8h.html#aa06d63428a8a1a7c60680b28e7c51862" title="streamWrite" alt="" coords="135,106,228,134"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
<p><div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><img src="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_icgraph.png" border="0" usemap="#cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_icgraph" alt=""/></div>
|
|
<map name="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_icgraph" id="cbuf_8h_add0d09c7cdee8a8bdd00d3416e1ed062_icgraph">
|
|
<area shape="rect" id="node3" href="http_2writer_2write_8c.html#accd7a3cfe29607d72a35fe3e3d187c48" title="httpWriterWrite" alt="" coords="131,5,240,33"/><area shape="rect" id="node5" href="answer_8c.html#add3fe105c4e782e5b1387cb596792bbe" title="httpWorkerWrite" alt="" coords="288,5,405,33"/></map>
|
|
</div>
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="cbuf_8h.html">cbuf.h</a> </li>
|
|
<li class="footer">Generated on Wed Mar 28 2012 10:39:44 for Server by 
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
|
|
</ul>
|
|
</div>
|
|
<!--- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Defines</a></div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
|
|
</body>
|
|
</html>
|