diff options
-rw-r--r-- | src/dv/gnunet-service-dv.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/dv/gnunet-service-dv.c b/src/dv/gnunet-service-dv.c index 9132d2a34..7d5f24e6e 100644 --- a/src/dv/gnunet-service-dv.c +++ b/src/dv/gnunet-service-dv.c | |||
@@ -1812,12 +1812,21 @@ handle_dv_route_message (void *cls, const struct GNUNET_PeerIdentity *peer, | |||
1812 | &my_identity, | 1812 | &my_identity, |
1813 | sizeof (struct GNUNET_PeerIdentity))) | 1813 | sizeof (struct GNUNET_PeerIdentity))) |
1814 | { | 1814 | { |
1815 | if (NULL != GNUNET_CONTAINER_multipeermap_get (direct_neighbors, | ||
1816 | &rm->sender)) | ||
1817 | { | ||
1818 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | ||
1819 | "Discarding DV message, as %s is a direct neighbor\n", | ||
1820 | GNUNET_i2s (&rm->sender)); | ||
1821 | GNUNET_STATISTICS_update (stats, | ||
1822 | "# messages discarded (direct neighbor)", | ||
1823 | 1, GNUNET_NO); | ||
1824 | return GNUNET_OK; | ||
1825 | } | ||
1815 | /* message is for me, check reverse route! */ | 1826 | /* message is for me, check reverse route! */ |
1816 | route = GNUNET_CONTAINER_multipeermap_get (all_routes, | 1827 | route = GNUNET_CONTAINER_multipeermap_get (all_routes, |
1817 | &rm->sender); | 1828 | &rm->sender); |
1818 | if ( (NULL == route) && | 1829 | if ( (NULL == route) && |
1819 | (NULL == GNUNET_CONTAINER_multipeermap_get (direct_neighbors, | ||
1820 | &rm->sender)) && | ||
1821 | (distance < DEFAULT_FISHEYE_DEPTH) ) | 1830 | (distance < DEFAULT_FISHEYE_DEPTH) ) |
1822 | { | 1831 | { |
1823 | /* don't have reverse route yet, learn it! */ | 1832 | /* don't have reverse route yet, learn it! */ |