diff options
Diffstat (limited to 'node/Network.cpp')
-rw-r--r-- | node/Network.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/node/Network.cpp b/node/Network.cpp index d8e3b07a..1319df4e 100644 --- a/node/Network.cpp +++ b/node/Network.cpp @@ -888,16 +888,12 @@ bool Network::_isAllowed(const SharedPtr<Peer> &peer) const // Assumes _lock is locked try { if (_config) { - if (_config.isPublic()) { - return true; - } else { - const Membership *m = _memberships.get(peer->address()); - if (m) - return _config.com.agreesWith(m->com()); - } + const Membership *const m = _memberships.get(peer->address()); + if (m) + return m->isAllowedOnNetwork(_config); } } catch ( ... ) { - TRACE("isAllowed() check failed for peer %s: unexpected exception: unexpected exception",peer->address().toString().c_str()); + TRACE("isAllowed() check failed for peer %s: unexpected exception",peer->address().toString().c_str()); } return false; } |