404 lines
21 KiB
HTML
404 lines
21 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<!-------------------------------------------------------------->
|
|
<!-- qDecoder Project -->
|
|
<!-- -->
|
|
<!-- Copyright (c) The qDecoder Project -->
|
|
<!-- http://www.qdecoder.org -->
|
|
<!-------------------------------------------------------------->
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<title>qcgires.c File Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<center><h1>qDecoder API Reference</h1></center>
|
|
<!-- Generated by Doxygen 1.8.2 -->
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</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>
|
|
</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><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#func-members">Functions</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">qcgires.c File Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>CGI Response API. </p>
|
|
</div><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:a8792c1f4cbd158c5702d1dcef3a0e4f3"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3">qcgires_setcookie</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, const char *name, const char *value, int expire, const char *path, const char *domain, bool secure)</td></tr>
|
|
<tr class="memdesc:a8792c1f4cbd158c5702d1dcef3a0e4f3"><td class="mdescLeft"> </td><td class="mdescRight">Set cookie. <a href="#a8792c1f4cbd158c5702d1dcef3a0e4f3"></a><br/></td></tr>
|
|
<tr class="separator:a8792c1f4cbd158c5702d1dcef3a0e4f3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a764444bd0fc4f92c7aa3339a7c878335"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#a764444bd0fc4f92c7aa3339a7c878335">qcgires_removecookie</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, const char *name, const char *path, const char *domain, bool secure)</td></tr>
|
|
<tr class="memdesc:a764444bd0fc4f92c7aa3339a7c878335"><td class="mdescLeft"> </td><td class="mdescRight">Remove cookie. <a href="#a764444bd0fc4f92c7aa3339a7c878335"></a><br/></td></tr>
|
|
<tr class="separator:a764444bd0fc4f92c7aa3339a7c878335"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5f6be1dd6d4ffb9be553339d95b1de2b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#a5f6be1dd6d4ffb9be553339d95b1de2b">qcgires_setcontenttype</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, const char *mimetype)</td></tr>
|
|
<tr class="memdesc:a5f6be1dd6d4ffb9be553339d95b1de2b"><td class="mdescLeft"> </td><td class="mdescRight">Set responding content-type. <a href="#a5f6be1dd6d4ffb9be553339d95b1de2b"></a><br/></td></tr>
|
|
<tr class="separator:a5f6be1dd6d4ffb9be553339d95b1de2b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0c6b578908f2a2ddc444a51a6479ed16"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#a0c6b578908f2a2ddc444a51a6479ed16">qcgires_getcontenttype</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request)</td></tr>
|
|
<tr class="memdesc:a0c6b578908f2a2ddc444a51a6479ed16"><td class="mdescLeft"> </td><td class="mdescRight">Get content-type. <a href="#a0c6b578908f2a2ddc444a51a6479ed16"></a><br/></td></tr>
|
|
<tr class="separator:a0c6b578908f2a2ddc444a51a6479ed16"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aef96feb8226dbbf7a13e4ff9887520eb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#aef96feb8226dbbf7a13e4ff9887520eb">qcgires_redirect</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, const char *uri)</td></tr>
|
|
<tr class="memdesc:aef96feb8226dbbf7a13e4ff9887520eb"><td class="mdescLeft"> </td><td class="mdescRight">Send redirection header. <a href="#aef96feb8226dbbf7a13e4ff9887520eb"></a><br/></td></tr>
|
|
<tr class="separator:aef96feb8226dbbf7a13e4ff9887520eb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a72f8e712e6aec7c54a0c402f24f3a64f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#a72f8e712e6aec7c54a0c402f24f3a64f">qcgires_download</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, const char *filepath, const char *mimetype)</td></tr>
|
|
<tr class="memdesc:a72f8e712e6aec7c54a0c402f24f3a64f"><td class="mdescLeft"> </td><td class="mdescRight">Force to send(download) file to client in accordance with given mime type. <a href="#a72f8e712e6aec7c54a0c402f24f3a64f"></a><br/></td></tr>
|
|
<tr class="separator:a72f8e712e6aec7c54a0c402f24f3a64f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab69965680bb7905482ae30d75b53b622"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="qcgires_8c.html#ab69965680bb7905482ae30d75b53b622">qcgires_error</a> (<a class="el" href="structqentry__s.html">qentry_t</a> *request, char *format,...)</td></tr>
|
|
<tr class="memdesc:ab69965680bb7905482ae30d75b53b622"><td class="mdescLeft"> </td><td class="mdescRight">Print out HTML error page and exit program. <a href="#ab69965680bb7905482ae30d75b53b622"></a><br/></td></tr>
|
|
<tr class="separator:ab69965680bb7905482ae30d75b53b622"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<h2 class="groupheader">Function Documentation</h2>
|
|
<a class="anchor" id="a8792c1f4cbd158c5702d1dcef3a0e4f3"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool qcgires_setcookie </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>name</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>value</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>expire</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>path</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>domain</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool </td>
|
|
<td class="paramname"><em>secure</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Set cookie. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">name</td><td>cookie name </td></tr>
|
|
<tr><td class="paramname">value</td><td>cookie value </td></tr>
|
|
<tr><td class="paramname">expire</td><td>expire related time in seconds (0 means end of session) </td></tr>
|
|
<tr><td class="paramname">path</td><td>cookie path (NULL can current path) </td></tr>
|
|
<tr><td class="paramname">domain</td><td>cookie domain (NULL means current domain) </td></tr>
|
|
<tr><td class="paramname">secure</td><td>secure flag</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true in case of success, otherwise returns false</dd></dl>
|
|
<div class="fragment"><div class="line"><span class="comment">// Apply cookie in the current domain and directory for 1 day.</span></div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3" title="Set cookie.">qcgires_setcookie</a>(req, <span class="stringliteral">"NAME"</span>, <span class="stringliteral">"VALUE"</span>, 86400, NULL, NULL, <span class="keyword">false</span>);</div>
|
|
<div class="line"></div>
|
|
<div class="line"><span class="comment">// Apply cookie to the "/" directory of "*.qdecoder.org" until the</span></div>
|
|
<div class="line"><span class="comment">// browser is closed.</span></div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3" title="Set cookie.">qcgires_setcookie</a>(req, name, value, 0, <span class="stringliteral">"/"</span>, <span class="stringliteral">".qdecoder.org"</span>, <span class="keyword">false</span>);</div>
|
|
<div class="line"></div>
|
|
<div class="line"><span class="comment">// As for the followings, cookies will be set up only when security</span></div>
|
|
<div class="line"><span class="comment">// requirements are satisfied.</span></div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3" title="Set cookie.">qcgires_setcookie</a>(req, name, value, 0, NULL, NULL, <span class="keyword">true</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a764444bd0fc4f92c7aa3339a7c878335"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool qcgires_removecookie </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>name</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>path</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>domain</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool </td>
|
|
<td class="paramname"><em>secure</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove cookie. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">name</td><td>cookie name </td></tr>
|
|
<tr><td class="paramname">path</td><td>cookie path </td></tr>
|
|
<tr><td class="paramname">domain</td><td>cookie domain </td></tr>
|
|
<tr><td class="paramname">secure</td><td>secure flag</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true in case of success, otherwise returns false</dd></dl>
|
|
<div class="fragment"><div class="line"><a class="code" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3" title="Set cookie.">qcgires_setcookie</a>(req, <span class="stringliteral">"NAME"</span>, <span class="stringliteral">"VALUE"</span>, 0, NULL, NULL, NULL);</div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a764444bd0fc4f92c7aa3339a7c878335" title="Remove cookie.">qcgires_removecookie</a>(req, <span class="stringliteral">"NAME"</span>, NULL, NULL, NULL);</div>
|
|
<div class="line"></div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a8792c1f4cbd158c5702d1dcef3a0e4f3" title="Set cookie.">qcgires_setcookie</a>(req, <span class="stringliteral">"NAME"</span>, <span class="stringliteral">"VALUE"</span>, 0, <span class="stringliteral">"/"</span>, <span class="stringliteral">"www.qdecoder.org"</span>, NULL);</div>
|
|
<div class="line"><a class="code" href="qcgires_8c.html#a764444bd0fc4f92c7aa3339a7c878335" title="Remove cookie.">qcgires_removecookie</a>(req, <span class="stringliteral">"NAME"</span>, <span class="stringliteral">"/"</span>, <span class="stringliteral">"www.qdecoder.org"</span>, NULL);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a5f6be1dd6d4ffb9be553339d95b1de2b"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool qcgires_setcontenttype </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>mimetype</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Set responding content-type. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">mimetype</td><td>mimetype</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true in case of success, otherwise returns false</dd></dl>
|
|
<div class="fragment"><div class="line"><a class="code" href="qcgires_8c.html#a5f6be1dd6d4ffb9be553339d95b1de2b" title="Set responding content-type.">qcgires_setcontenttype</a>(req, <span class="stringliteral">"text/html"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a0c6b578908f2a2ddc444a51a6479ed16"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const char* qcgires_getcontenttype </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get content-type. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>a pointer of mimetype string in case of success, otherwise returns NULL</dd></dl>
|
|
<div class="fragment"><div class="line"><a class="code" href="qcgires_8c.html#a5f6be1dd6d4ffb9be553339d95b1de2b" title="Set responding content-type.">qcgires_setcontenttype</a>(req, <span class="stringliteral">"text/html"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aef96feb8226dbbf7a13e4ff9887520eb"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool qcgires_redirect </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>uri</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Send redirection header. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">uri</td><td>new URI</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>true in case of success, otherwise returns false</dd></dl>
|
|
<div class="fragment"><div class="line"><a class="code" href="qcgires_8c.html#aef96feb8226dbbf7a13e4ff9887520eb" title="Send redirection header.">qcgires_redirect</a>(req, <span class="stringliteral">"http://www.qdecoder.org/"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a72f8e712e6aec7c54a0c402f24f3a64f"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int qcgires_download </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>filepath</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>mimetype</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Force to send(download) file to client in accordance with given mime type. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">filepath</td><td>file to send </td></tr>
|
|
<tr><td class="paramname">mimetype</td><td>mimetype. NULL can be used for "application/octet-stream".</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>the number of bytes sent. otherwise(file not found) returns -1.</dd></dl>
|
|
<dl class="section note"><dt>Note</dt><dd>Do not call <a class="el" href="qcgires_8c.html#a0c6b578908f2a2ddc444a51a6479ed16" title="Get content-type.">qcgires_getcontenttype()</a> before. The results of this function are the same as those acquired when the corresponding files are directly linked to the Web. But this is especially useful in preprocessing files to be downloaded only with user certification and in enabling downloading those files, which cannot be opend on the Web, only through specific programs. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="ab69965680bb7905482ae30d75b53b622"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void qcgires_error </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structqentry__s.html">qentry_t</a> * </td>
|
|
<td class="paramname"><em>request</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"><em>format</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"> </td>
|
|
<td class="paramname"><em>...</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Print out HTML error page and exit program. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">request</td><td>a pointer of request structure </td></tr>
|
|
<tr><td class="paramname">format</td><td>error message</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>none</dd></dl>
|
|
<div class="fragment"><div class="line"><a class="code" href="qcgires_8c.html#ab69965680bb7905482ae30d75b53b622" title="Print out HTML error page and exit program.">qcgires_error</a>(req, <span class="stringliteral">"Error: can't find userid."</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
<a href="http://www.qdecoder.org/">The qDecoder Project</a>.
|
|
Sat Mar 22 2014 07:44:36
|
|
</small></address>
|
|
</body>
|
|
</html>
|