… | |
… | |
889 | { |
889 | { |
890 | for (conns_vector::iterator i = conns.begin (); i != conns.end (); ++i) |
890 | for (conns_vector::iterator i = conns.begin (); i != conns.end (); ++i) |
891 | { |
891 | { |
892 | connection *o = *i; |
892 | connection *o = *i; |
893 | |
893 | |
894 | if (!o->is_direct |
|
|
895 | && o->si.valid () |
894 | if (o->si.valid () |
896 | && c->si != o->si |
895 | && c->si != o->si |
897 | && c == find_router_for (o)) |
896 | && c == find_router_for (o) |
|
|
897 | && !can_direct (THISNODE, o->conf)) |
898 | { |
898 | { |
899 | slog (L_DEBUG, _("%s: can now route packets via %s, re-keying connection."), |
899 | slog (L_DEBUG, _("%s: can now route packets via %s, re-keying connection."), |
900 | o->conf->nodename, c->conf->nodename); |
900 | o->conf->nodename, c->conf->nodename); |
901 | o->rekey (); |
901 | o->rekey (); |
902 | } |
902 | } |