Hop ports when missing E2E2E connectivity, even if downlink working.

This commit is contained in:
Keith Winstein
2012-08-13 14:26:53 +03:00
parent 89da6105aa
commit 82830344ca
+3 -1
View File
@@ -360,6 +360,8 @@ string Connection::recv( void )
uint16_t now = timestamp16(); uint16_t now = timestamp16();
double R = timestamp_diff( now, p.timestamp_reply ); double R = timestamp_diff( now, p.timestamp_reply );
last_heard = timestamp(); /* trigger on end-to-end-to-end connectivity */
if ( R < 5000 ) { /* ignore large values, e.g. server was Ctrl-Zed */ if ( R < 5000 ) { /* ignore large values, e.g. server was Ctrl-Zed */
if ( !RTT_hit ) { /* first measurement */ if ( !RTT_hit ) { /* first measurement */
SRTT = R; SRTT = R;
@@ -377,7 +379,7 @@ string Connection::recv( void )
/* auto-adjust to remote host */ /* auto-adjust to remote host */
has_remote_addr = true; has_remote_addr = true;
last_heard = last_association = timestamp(); last_association = timestamp();
if ( server ) { /* only client can roam */ if ( server ) { /* only client can roam */
if ( (remote_addr.sin_addr.s_addr != packet_remote_addr.sin_addr.s_addr) if ( (remote_addr.sin_addr.s_addr != packet_remote_addr.sin_addr.s_addr)