1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7<title>GetHeaderAll</title>
8  </head>
9  <body>
10<h1><CODE>nn::http::Connection::GetHeaderAll</CODE> Member Function</h1>
11<h2>Syntax</h2>
12    <div class="section">
13      <pre class="definition">
14<a href="../../../nn/Result/Overview.html">nn::Result</a> GetHeaderAll(
15     char * pHeaderBuf,
16     size_t bufSize,
17     size_t * pLengthCourier = NULL
18) const;
19
20<a href="../../../nn/Result/Overview.html">nn::Result</a> GetHeaderAll(
21     char * pHeaderBuf,
22     size_t bufSize,
23     const <a href="../../../nn/fnd/TimeSpan/Overview.html">nn::fnd::TimeSpan</a> & timeout,
24     size_t * pLengthCourier = NULL
25) const;
26</pre>
27    </div>
28<h2>List of Overloaded Member Functions</h2>
29    <div class="section">
30      <table class="members">
31        <tr>
32          <td>
33<a href="./GetHeaderAll(0).html"><CODE>GetHeaderAll(char *, size_t, size_t *)</CODE> </a>
34          </td>
35<td>Gets the message header for the HTTP response that was received.</td>
36        </tr>
37        <tr>
38          <td>
39<a href="./GetHeaderAll(1).html"><CODE>GetHeaderAll(char *, size_t, const nn::fnd::TimeSpan &, size_t *)</CODE> </a>
40          </td>
41<td>This version of <a href="../../../nn/http/Connection/GetHeaderAll.html"><CODE>GetHeaderAll</CODE></a> has a timeout.</td>
42        </tr> </table>
43    </div>
44<h2>Description of <CODE>GetHeaderAll(char *, size_t, size_t *)</CODE></h2>
45<div class="section"><p>This function blocks until the header is completely received. See the description of <a href="../../../nn/http/Connection/GetHeaderField.html"><CODE>GetHeaderField</CODE></a> for more details about this specification.<br /><BR><B>Note:</B> If the <SPAN class="argument">pHeaderBuf</SPAN> size is smaller than the header size, as much data is stored in <SPAN class="argument">pHeaderBuf</SPAN> as will fit, and the header size is stored in <SPAN class="argument">pLengthCourier</SPAN>.<br /><BR><B>Note:</B> If <SPAN class="argument">pHeaderBuf</SPAN><CODE>==NULL</CODE> or <SPAN class="argument">bufSize</SPAN><CODE>==0</CODE>, and if <SPAN class="argument">pLengthCourier</SPAN><CODE>!=NULL</CODE>, the field length is stored in <SPAN class="argument">pLengthCourier</SPAN>. <BR><BR><B>Note:</B> Unlike the version of <CODE><a href="../../../nn/http/Connection/GetHeaderAll.html">GetHeaderAll</a></CODE> that includes a timeout, this function does not time out. In other words, control will not return from this function until processing has ended. In environments where communications are slow you can expect a long time to pass before processing ends and control returns from this function.<br /></p><!-- write here --></div>
46<h2>Description of <CODE>GetHeaderAll(char *, size_t, const nn::fnd::TimeSpan &, size_t *)</CODE></h2>
47<div class="section"><p>Other than the ability to specify a timeout, this version functions identically to <a href="../../../nn/http/Connection/GetHeaderAll.html"><CODE>GetHeaderAll</CODE></a>. For feature details, see the function reference for the version without a timeout. Returns <a href="../../../nn/http/ResultTimeout/Overview.html"><CODE>ResultTimeout</CODE></a> if no HTTP response header has been fully received within the timeout period. If <CODE>ResultTimeout</CODE> is returned, the connection is automatically canceled. (In other words, the function internally implements <a href="../../../nn/http/Connection/Cancel.html"><CODE>Cancel</CODE></a>.)<br /></p><!-- write here --></div>
48  <hr><p>CONFIDENTIAL</p></body>
49</html>