Regenerate our local descriptor if it's dirty and some local

function asks for it. This may resolve bug 286.


svn:r6412
This commit is contained in:
Roger Dingledine 2006-04-23 23:09:03 +00:00
parent c74c24a989
commit 934e9c49bb

View File

@ -760,8 +760,8 @@ router_get_my_routerinfo(void)
if (!server_mode(get_options())) if (!server_mode(get_options()))
return NULL; return NULL;
if (!desc_routerinfo) { if (!desc_routerinfo || !desc_clean_since) {
if (router_rebuild_descriptor(1)) if (router_rebuild_descriptor(!desc_routerinfo))
return NULL; return NULL;
} }
return desc_routerinfo; return desc_routerinfo;
@ -774,10 +774,8 @@ const char *
router_get_my_descriptor(void) router_get_my_descriptor(void)
{ {
const char *body; const char *body;
if (!desc_routerinfo) { if (!router_get_my_routerinfo())
if (router_rebuild_descriptor(1))
return NULL; return NULL;
}
body = signed_descriptor_get_body(&desc_routerinfo->cache_info); body = signed_descriptor_get_body(&desc_routerinfo->cache_info);
log_debug(LD_GENERAL,"my desc is '%s'", body); log_debug(LD_GENERAL,"my desc is '%s'", body);
return body; return body;