|
@@ -424,18 +424,21 @@ void Peer::redirect(void *tPtr,const int64_t localSocket,const InetAddress &remo
|
|
|
|
|
|
SharedPtr<Path> op;
|
|
|
SharedPtr<Path> np(RR->topology->getPath(localSocket,remoteAddress));
|
|
|
+ np->received(now);
|
|
|
attemptToContactAt(tPtr,localSocket,remoteAddress,now,true,np->nextOutgoingCounter());
|
|
|
|
|
|
{
|
|
|
Mutex::Lock _l(_paths_m);
|
|
|
if (remoteAddress.ss_family == AF_INET) {
|
|
|
op = _v4Path.p;
|
|
|
- _v4Path.p = np;
|
|
|
+ _v4Path.lr = now;
|
|
|
_v4Path.sticky = now;
|
|
|
+ _v4Path.p = np;
|
|
|
} else if (remoteAddress.ss_family == AF_INET6) {
|
|
|
op = _v6Path.p;
|
|
|
- _v6Path.p = np;
|
|
|
+ _v6Path.lr = now;
|
|
|
_v6Path.sticky = now;
|
|
|
+ _v6Path.p = np;
|
|
|
}
|
|
|
}
|
|
|
|