Was touching all the sessions rather than the one that had an solicitation request causing none of the sessions to really expire

This commit is contained in:
John Sharratt 2017-07-02 21:50:23 +02:00
parent f2d5804959
commit f6ef3fe494

View File

@ -75,9 +75,10 @@ void proxy::handle_solicit(const address& saddr, const address& daddr,
for (std::list<ptr<session> >::iterator sit = _sessions.begin(); for (std::list<ptr<session> >::iterator sit = _sessions.begin();
sit != _sessions.end(); sit++) { sit != _sessions.end(); sit++) {
(*sit)->touch(); if ((*sit)->taddr() == taddr)
{
if ((*sit)->taddr() == taddr) { (*sit)->touch();
switch ((*sit)->status()) { switch ((*sit)->status()) {
case session::WAITING: case session::WAITING:
case session::INVALID: case session::INVALID: