<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:"Lucida Console";
        panose-1:2 11 6 9 4 5 4 2 2 4;}
@font-face
        {font-family:"Lucida Sans Typewriter Regular";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal style='text-autospace:none'><font size=2
face="Lucida Console"><span style='font-size:10.0pt;font-family:"Lucida Console"'>Hi,
Dizan explained the following as a method for a sender to determine when a reliable
packet has arrived at its destination (and been acknowledged).<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2
face="Lucida Console"><span style='font-size:10.0pt;font-family:"Lucida Console"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2
face="Lucida Console"><span style='font-size:10.0pt;font-family:"Lucida Console"'>&#8220;Pease
take what I say with a bit of salt. I think that you should look into the
corresponding peer's sentReliableCommands and outgoingReliableCommands lists.
Those lists contain EnetOutgoingCommand elements having a packet field. If your
packet appears in one of those lists then it hasn't been acknowledged yet.&#8221;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Lucida Console"><span style='font-size:
10.0pt;font-family:"Lucida Console"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Lucida Console"><span style='font-size:
10.0pt;font-family:"Lucida Console"'>I looked into the routine </span></font><font
size=1 face="Lucida Console"><span style='font-size:8.0pt;font-family:"Lucida Console"'>enet_protocol_handle_acknowledge
in protocol.c, and it appears that this routine removes a command from a (sending)
peer&#8217;s &#8220;</span></font><font size=1
face="Lucida Sans Typewriter Regular"><span style='font-size:8.0pt;font-family:
"Lucida Sans Typewriter Regular"'>sentReliableCommands&#8221; when the destination
has ack&#8217;ed the packet. &nbsp;At this point I can be sure that the packet has
arrived.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'>I can&#8217;t
seem to find a corresponding location where the command is removed if it has
timed out or otherwise failed to reach its destination.&nbsp; Can someone with more
knowledge of enet internals advise me on where I could &#8220;trap&#8221; to
determine that a message has failed to reach its destination (after the last attempt
times out)?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'>Thanks!<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=1 face="Lucida Sans Typewriter Regular"><span
style='font-size:8.0pt;font-family:"Lucida Sans Typewriter Regular"'>Greg<o:p></o:p></span></font></p>

</div>

</body>

</html>