diff --git a/libi2pd/RouterInfo.cpp b/libi2pd/RouterInfo.cpp index 035b2c23..5cf83b46 100644 --- a/libi2pd/RouterInfo.cpp +++ b/libi2pd/RouterInfo.cpp @@ -1014,8 +1014,10 @@ namespace data bool RouterInfo::IsEligibleFloodfill () const { - // floodfill must have reachable ipv4, >= 0.9.59 and not DSA - return m_Version >= NETDB_MIN_FLOODFILL_VERSION && IsReachableBy (eNTCP2V4 | eSSU2V4) && + // floodfill must have published ipv4 or reachable ipv4 and published ipv6 + // >= 0.9.59 and not DSA + return m_Version >= NETDB_MIN_FLOODFILL_VERSION && (IsPublished (true) || + (IsReachableBy (eNTCP2V4 | eSSU2V4) && IsPublished (false))) && GetIdentity ()->GetSigningKeyType () != SIGNING_KEY_TYPE_DSA_SHA1; }