|
@@ -2945,6 +2945,7 @@ MOCK_IMPL(STATIC was_router_added_t,
|
|
|
extrainfo_insert,(routerlist_t *rl, extrainfo_t *ei))
|
|
|
{
|
|
|
was_router_added_t r;
|
|
|
+ const char *compatibility_error_msg;
|
|
|
routerinfo_t *ri = rimap_get(rl->identity_map,
|
|
|
ei->cache_info.identity_digest);
|
|
|
signed_descriptor_t *sd =
|
|
@@ -2961,9 +2962,14 @@ extrainfo_insert,(routerlist_t *rl, extrainfo_t *ei))
|
|
|
r = ROUTER_NOT_IN_CONSENSUS;
|
|
|
goto done;
|
|
|
}
|
|
|
- if (routerinfo_incompatible_with_extrainfo(ri, ei, sd, NULL)) {
|
|
|
+ if (routerinfo_incompatible_with_extrainfo(ri, ei, sd,
|
|
|
+ &compatibility_error_msg)) {
|
|
|
r = (ri->cache_info.extrainfo_is_bogus) ?
|
|
|
ROUTER_BAD_EI : ROUTER_NOT_IN_CONSENSUS;
|
|
|
+
|
|
|
+ log_warn(LD_DIR,"router info incompatible with extra info (reason: %s)",
|
|
|
+ compatibility_error_msg);
|
|
|
+
|
|
|
goto done;
|
|
|
}
|
|
|
|