Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > d9faa203c2b0b6fbb179d93daaea81b7 > files > 696

libdtn-devel-2.6.0-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DTN Reference Implementation: TCPConvergenceLayer.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<h1>TCPConvergenceLayer.h</h1><a href="TCPConvergenceLayer_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> *    Copyright 2004-2006 Intel Corporation</span>
<a name="l00003"></a>00003 <span class="comment"> * </span>
<a name="l00004"></a>00004 <span class="comment"> *    Licensed under the Apache License, Version 2.0 (the "License");</span>
<a name="l00005"></a>00005 <span class="comment"> *    you may not use this file except in compliance with the License.</span>
<a name="l00006"></a>00006 <span class="comment"> *    You may obtain a copy of the License at</span>
<a name="l00007"></a>00007 <span class="comment"> * </span>
<a name="l00008"></a>00008 <span class="comment"> *        http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00009"></a>00009 <span class="comment"> * </span>
<a name="l00010"></a>00010 <span class="comment"> *    Unless required by applicable law or agreed to in writing, software</span>
<a name="l00011"></a>00011 <span class="comment"> *    distributed under the License is distributed on an "AS IS" BASIS,</span>
<a name="l00012"></a>00012 <span class="comment"> *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00013"></a>00013 <span class="comment"> *    See the License for the specific language governing permissions and</span>
<a name="l00014"></a>00014 <span class="comment"> *    limitations under the License.</span>
<a name="l00015"></a>00015 <span class="comment"> */</span>
<a name="l00016"></a>00016 
<a name="l00017"></a>00017 <span class="preprocessor">#ifndef _TCP_CONVERGENCE_LAYER_H_</span>
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define _TCP_CONVERGENCE_LAYER_H_</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span>
<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;oasys/io/TCPClient.h&gt;</span>
<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;oasys/io/TCPServer.h&gt;</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;oasys/serialize/Serialize.h&gt;</span>
<a name="l00023"></a>00023 
<a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="StreamConvergenceLayer_8h.html">StreamConvergenceLayer.h</a>"</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="keyword">namespace </span>dtn {
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="keyword">class </span>IPAnnounce;
<a name="l00029"></a>00029 
<a name="l00033"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer.html">00033</a> <span class="keyword">class </span><a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a> : <span class="keyword">public</span> <a class="code" href="classdtn_1_1StreamConvergenceLayer.html" title="Another shared-implementation convergence layer class for use with reliable, in-order...">StreamConvergenceLayer</a> {
<a name="l00034"></a>00034 <span class="keyword">public</span>:
<a name="l00038"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer.html#10da73d1ce56da834d5b69543e6d0054">00038</a>     <span class="keyword">static</span> <span class="keyword">const</span> u_int8_t <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#10da73d1ce56da834d5b69543e6d0054" title="Current version of the protocol.">TCPCL_VERSION</a> = 0x03;
<a name="l00039"></a>00039 
<a name="l00043"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer.html#cebde3c0927aac1d486255abe224873b">00043</a>     <span class="keyword">static</span> <span class="keyword">const</span> u_int16_t <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#cebde3c0927aac1d486255abe224873b" title="Default port used by the tcp cl.">TCPCL_DEFAULT_PORT</a> = 4556;
<a name="l00044"></a>00044     
<a name="l00048"></a>00048     <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#39aeb9e6e1589ec0cf267154576a295a" title="Constructor.">TCPConvergenceLayer</a>();
<a name="l00049"></a>00049 
<a name="l00051"></a>00051     <span class="keywordtype">bool</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#4ecd6c64889d5bbf53c8cb2aff68ce8c" title="Virtual from ConvergenceLayer.">interface_up</a>(<a class="code" href="classdtn_1_1Interface.html" title="Abstraction of a local dtn interface.">Interface</a>* iface, <span class="keywordtype">int</span> argc, <span class="keyword">const</span> <span class="keywordtype">char</span>* argv[]);
<a name="l00052"></a>00052     <span class="keywordtype">bool</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#b3d6443a899039be44a222e7302c5980" title="Virtual from ConvergenceLayer.">interface_down</a>(<a class="code" href="classdtn_1_1Interface.html" title="Abstraction of a local dtn interface.">Interface</a>* iface);
<a name="l00053"></a>00053     <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#5896a1b682d6253b9ba93c529bc1160a" title="Virtual from ConvergenceLayer.">dump_interface</a>(<a class="code" href="classdtn_1_1Interface.html" title="Abstraction of a local dtn interface.">Interface</a>* iface, oasys::StringBuffer* <a class="code" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>);
<a name="l00055"></a>00055 
<a name="l00059"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html">00059</a>     <span class="keyword">class </span><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a> : <span class="keyword">public</span> StreamLinkParams {
<a name="l00060"></a>00060     <span class="keyword">public</span>:
<a name="l00061"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#f3c0aacb1f8004aca72c85d36d284b47">00061</a>         <span class="keywordtype">bool</span>      <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#f3c0aacb1f8004aca72c85d36d284b47" title="Log a hexdump of all traffic.">hexdump_</a>;             
<a name="l00062"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#ba384b87d9c686d6ce43419005565d11">00062</a>         in_addr_t <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#ba384b87d9c686d6ce43419005565d11" title="Local address to bind to.">local_addr_</a>;          
<a name="l00063"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#e60ac43dd518e24f69b61cafa9b1a0b1">00063</a>         in_addr_t <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#e60ac43dd518e24f69b61cafa9b1a0b1" title="Peer address used for rcvr-connect.">remote_addr_</a>;         
<a name="l00064"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#4fce01fb8807d2a288dc99a6ed5cf963">00064</a>         u_int16_t <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#4fce01fb8807d2a288dc99a6ed5cf963" title="Peer port used for rcvr-connect.">remote_port_</a>;         
<a name="l00065"></a>00065 
<a name="l00066"></a>00066     <span class="keyword">protected</span>:
<a name="l00067"></a>00067         <span class="comment">// See comment in LinkParams for why this is protected</span>
<a name="l00068"></a>00068         <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#b4388f827bc5cf7af3f33f15cdf3b436">TCPLinkParams</a>(<span class="keywordtype">bool</span> init_defaults);
<a name="l00069"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html#afb2b74734b984d76b7bbef80103fdb8">00069</a>         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>;
<a name="l00070"></a>00070     };
<a name="l00071"></a>00071 
<a name="l00075"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer.html#a95268fe0c974d75d832adbf5dd08be6">00075</a>     <span class="keyword">static</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#a95268fe0c974d75d832adbf5dd08be6" title="Default link parameters.">default_link_params_</a>;
<a name="l00076"></a>00076 
<a name="l00077"></a>00077 <span class="keyword">protected</span>:
<a name="l00078"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer.html#1fa38bc08f6dad9a3e94be1ad297950d">00078</a>     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classdtn_1_1IPAnnounce.html" title="Helper class that 1) formats outbound beacons to advertise this CL instance via neighbor...">IPAnnounce</a>;
<a name="l00079"></a>00079 
<a name="l00081"></a>00081     <span class="keywordtype">bool</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#3ee3568fa12071a07b183c7962c33fbe" title="Virtual from ConvergenceLayer.">set_link_defaults</a>(<span class="keywordtype">int</span> argc, <span class="keyword">const</span> <span class="keywordtype">char</span>* argv[],
<a name="l00082"></a>00082                            <span class="keyword">const</span> <span class="keywordtype">char</span>** invalidp);
<a name="l00083"></a>00083     <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#fb319b172f583a6457263adffa17a5d9" title="Virtual from ConvergenceLayer.">dump_link</a>(<span class="keyword">const</span> <a class="code" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e" title="Typedef for a reference on a link.">LinkRef</a>&amp; link, oasys::StringBuffer* <a class="code" href="num2sdnv_8c.html#a81cdcc7ff6987bc85c073253e32715f">buf</a>);
<a name="l00085"></a>00085     
<a name="l00087"></a>00087     <span class="keyword">virtual</span> <a class="code" href="classdtn_1_1ConnectionConvergenceLayer_1_1LinkParams.html" title="Tunable parameter structure stored in each Link&amp;#39;s CLInfo slot.">LinkParams</a>* <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#01e75cb050ede3ab5d552843dd90426b" title="Virtual from ConnectionConvergenceLayer.">new_link_params</a>();
<a name="l00088"></a>00088     <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#a06e06e7211a2f5cce814fc2e66fc233" title="Virtual from ConnectionConvergenceLayer.">parse_link_params</a>(<a class="code" href="classdtn_1_1ConnectionConvergenceLayer_1_1LinkParams.html" title="Tunable parameter structure stored in each Link&amp;#39;s CLInfo slot.">LinkParams</a>* params,
<a name="l00089"></a>00089                                    <span class="keywordtype">int</span> argc, <span class="keyword">const</span> <span class="keywordtype">char</span>** argv,
<a name="l00090"></a>00090                                    <span class="keyword">const</span> <span class="keywordtype">char</span>** invalidp);
<a name="l00091"></a>00091     <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#28eae8cabe910cd4210b49715f2d2470" title="Virtual from ConnectionConvergenceLayer.">parse_nexthop</a>(<span class="keyword">const</span> <a class="code" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e" title="Typedef for a reference on a link.">LinkRef</a>&amp; link, <a class="code" href="classdtn_1_1ConnectionConvergenceLayer_1_1LinkParams.html" title="Tunable parameter structure stored in each Link&amp;#39;s CLInfo slot.">LinkParams</a>* params);
<a name="l00092"></a>00092     <span class="keyword">virtual</span> <a class="code" href="classdtn_1_1CLConnection.html" title="Helper class (and thread) that manages an established connection with a peer daemon...">CLConnection</a>* <a class="code" href="classdtn_1_1TCPConvergenceLayer.html#bbaeaaf191c1c132e8940742cf3b9d67" title="Virtual from ConnectionConvergenceLayer.">new_connection</a>(<span class="keyword">const</span> <a class="code" href="namespacedtn.html#6efb37e503f8062c537b022eb755b94e" title="Typedef for a reference on a link.">LinkRef</a>&amp; link,
<a name="l00093"></a>00093                                          <a class="code" href="classdtn_1_1ConnectionConvergenceLayer_1_1LinkParams.html" title="Tunable parameter structure stored in each Link&amp;#39;s CLInfo slot.">LinkParams</a>* params);
<a name="l00095"></a>00095 
<a name="l00100"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html">00100</a>     <span class="keyword">class </span><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html" title="Helper class (and thread) that listens on a registered interface for new connections...">Listener</a> : <span class="keyword">public</span> <a class="code" href="classdtn_1_1CLInfo.html" title="Abstract base class for convergence layer specific state stored in an interface /...">CLInfo</a>, <span class="keyword">public</span> oasys::TCPServerThread {
<a name="l00101"></a>00101     <span class="keyword">public</span>:
<a name="l00102"></a>00102         <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html#51cf126886945f7db3eaf0f65e4a464a">Listener</a>(<a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>* cl);
<a name="l00103"></a>00103         <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html#c3018e3597692c9c7c95974471c19f0f">accepted</a>(<span class="keywordtype">int</span> <a class="code" href="dtnperf-client_8c.html#6f8059414f0228f0256115e024eeed4b">fd</a>, in_addr_t addr, u_int16_t port);
<a name="l00104"></a>00104 
<a name="l00106"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html#0080e93922d95effc2909463024308e6">00106</a>         <a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>* <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Listener.html#0080e93922d95effc2909463024308e6" title="The TCPCL instance.">cl_</a>;
<a name="l00107"></a>00107     };
<a name="l00108"></a>00108 
<a name="l00118"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html">00118</a>     <span class="keyword">class </span><a class="code" href="classdtn_1_1StreamConvergenceLayer_1_1Connection.html" title="Stream connection class.">Connection</a> : <span class="keyword">public</span> <a class="code" href="classdtn_1_1StreamConvergenceLayer.html" title="Another shared-implementation convergence layer class for use with reliable, in-order...">StreamConvergenceLayer</a>::<a class="code" href="classdtn_1_1StreamConvergenceLayer_1_1Connection.html" title="Stream connection class.">Connection</a> {
<a name="l00119"></a>00119     <span class="keyword">public</span>:
<a name="l00123"></a>00123         <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#549645e5470ef126e11cca1326bc0764" title="Constructor for the active connect side of a connection.">Connection</a>(<a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>* cl, <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a>* params);
<a name="l00124"></a>00124 
<a name="l00128"></a>00128         <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#549645e5470ef126e11cca1326bc0764" title="Constructor for the active connect side of a connection.">Connection</a>(<a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>* cl, <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a>* params,
<a name="l00129"></a>00129                    <span class="keywordtype">int</span> <a class="code" href="dtnperf-client_8c.html#6f8059414f0228f0256115e024eeed4b">fd</a>, in_addr_t addr, u_int16_t port);
<a name="l00130"></a>00130 
<a name="l00134"></a>00134         <span class="keyword">virtual</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#946113de613139be00262dd09c77c1cf" title="Destructor.">~Connection</a>();
<a name="l00135"></a>00135 
<a name="l00139"></a>00139         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#82d5d832261ba9343c947a3777d4217e" title="Virtual from SerializableObject.">serialize</a>(oasys::SerializeAction *a);
<a name="l00140"></a>00140 
<a name="l00141"></a>00141     <span class="keyword">protected</span>:
<a name="l00142"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#afb2b74734b984d76b7bbef80103fdb8">00142</a>         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classdtn_1_1TCPConvergenceLayer.html" title="The TCP Convergence Layer.">TCPConvergenceLayer</a>;
<a name="l00143"></a>00143 
<a name="l00145"></a>00145         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#e06116bcb474471776fde51fef25e652" title="Virtual from CLConnection.">connect</a>();
<a name="l00146"></a>00146         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#d96da328377685d9175aeec7338eed6f" title="Virtual from CLConnection.">accept</a>();
<a name="l00147"></a>00147         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#5f52ff490997e4ac02474c38d82da8dc" title="Virtual from CLConnection.">disconnect</a>();
<a name="l00148"></a>00148         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#6f0493c94239d91cdb731eef4f7578d9" title="Virtual from CLConnection.">initialize_pollfds</a>();
<a name="l00149"></a>00149         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#2fbaba8c1be46e5fb0ad1e1c98116fd7" title="Virtual from CLConnection.">handle_poll_activity</a>();
<a name="l00151"></a>00151 
<a name="l00153"></a>00153         <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#94af611dce8a014607f61b3e016b7b3d" title="virtual from StreamConvergenceLayer::Connection">send_data</a>();
<a name="l00155"></a>00155         
<a name="l00157"></a>00157         <span class="keywordtype">void</span> <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#a94918accfafdf42d196eea082950581" title="Hook for handle_poll_activity to receive data.">recv_data</a>();
<a name="l00158"></a>00158 
<a name="l00163"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#de321d14984e153208705392798e8978">00163</a>         <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a>* <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#de321d14984e153208705392798e8978" title="Utility function to downcast the params_ pointer that&amp;#39;s stored in the CLConnection...">tcp_lparams</a>()
<a name="l00164"></a>00164         {
<a name="l00165"></a>00165             <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a>* ret = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1TCPLinkParams.html" title="Tunable link parameter structure.">TCPLinkParams</a>*<span class="keyword">&gt;</span>(<a class="code" href="classdtn_1_1CLConnection.html#e3408a135a49d68ab36fd8de5805b1fe" title="Pointer to Link parameters, or to defaults until Link is bound.">params_</a>);
<a name="l00166"></a>00166             <a class="code" href="SDNV_8cc.html#ca68c0d4ac8df0838e209fb5300f7be3">ASSERT</a>(ret != NULL);
<a name="l00167"></a>00167             <span class="keywordflow">return</span> ret;
<a name="l00168"></a>00168         }
<a name="l00169"></a>00169         
<a name="l00170"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#8eb2fb4a8b62718f90450daf025746b5">00170</a>         oasys::TCPClient* <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#8eb2fb4a8b62718f90450daf025746b5" title="The socket.">sock_</a>;        
<a name="l00171"></a><a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#77606b87f9d05a9e56b95b10987aeb1e">00171</a>         <span class="keyword">struct </span>pollfd*    <a class="code" href="classdtn_1_1TCPConvergenceLayer_1_1Connection.html#77606b87f9d05a9e56b95b10987aeb1e" title="Poll structure for the socket.">sock_pollfd_</a>; 
<a name="l00172"></a>00172     };
<a name="l00173"></a>00173 };
<a name="l00174"></a>00174 
<a name="l00175"></a>00175 } <span class="comment">// namespace dtn</span>
<a name="l00176"></a>00176 
<a name="l00177"></a>00177 <span class="preprocessor">#endif </span><span class="comment">/* _TCP_CONVERGENCE_LAYER_H_ */</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:47 2008 for DTN Reference Implementation by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>