Fix bug in last commit. Also, fix bug 231: authorities should never treat their own descriptor changes as cosmetic.

svn:r5755
This commit is contained in:
Nick Mathewson 2006-01-08 21:33:15 +00:00
parent e30516f33f
commit 5d709e8517

View File

@ -524,7 +524,8 @@ dirserv_add_descriptor(const char *desc, const char **msg)
* another authority has, so we all converge on the same one.) */
ri_old = router_get_by_digest(ri->cache_info.identity_digest);
if (ri_old && ri_old->cache_info.published_on < ri->cache_info.published_on
&& router_differences_are_cosmetic(ri_old, ri)) {
&& router_differences_are_cosmetic(ri_old, ri)
&& !router_is_me(ri)) {
info(LD_DIRSERV,
"Not replacing descriptor from '%s'; differences are cosmetic.",
ri->nickname);
@ -1007,8 +1008,6 @@ dirserv_set_cached_networkstatus_v2(const char *networkstatus,
if (networkstatus) {
if (published > d->published) {
set_cached_dir(d, tor_strdup(networkstatus), published);
} else {
networkstatus_free(networkstatus);
}
} else {
free_cached_dir(d);