aboutsummaryrefslogtreecommitdiff
path: root/src/or/or.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2004-07-16 23:05:40 +0000
committerNick Mathewson <nickm@torproject.org>2004-07-16 23:05:40 +0000
commit10407625312cb43e92ef68f9b98a6b0aaa23a22b (patch)
treeb597b3ab30ed7c66159d28f7d70f2c7fd2312c79 /src/or/or.h
parentbc36db351f735c6a7053443ac567b9cacd72b4cc (diff)
downloadtor-10407625312cb43e92ef68f9b98a6b0aaa23a22b.tar
tor-10407625312cb43e92ef68f9b98a6b0aaa23a22b.tar.gz
Remove 1024-router limit in routerparse.c; unify handling of running-routers lines in running-routers requests and in directories; set is_verified field of routerinfo_ts correctly; use most-recent-info rule to decide whether to change router-is-running status.
svn:r2051
Diffstat (limited to 'src/or/or.h')
-rw-r--r--src/or/or.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/or/or.h b/src/or/or.h
index 8fb3b45dd..d7d0fab49 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -584,6 +584,8 @@ typedef struct {
* to exit? */
/* local info */
int is_running; /**< As far as we know, is this OR currently running? */
+ time_t status_set_at; /**< When did we last update is_running? */
+ int is_verified; /**< Has a trusted dirserver validated this OR? */
int is_trusted_dir; /**< Do we trust this OR as a directory server? */
} routerinfo_t;
@@ -1381,6 +1383,9 @@ int router_exit_policy_rejects_all(routerinfo_t *router);
void running_routers_free(running_routers_t *rr);
void routerlist_update_from_runningrouters(routerlist_t *list,
running_routers_t *rr);
+void router_update_status_from_smartlist(routerinfo_t *r,
+ time_t list_time,
+ smartlist_t *running_list);
/********************************* routerparse.c ************************/
@@ -1397,9 +1402,8 @@ int router_get_router_hash(const char *s, char *digest);
int router_get_dir_hash(const char *s, char *digest);
int router_get_runningrouters_hash(const char *s, char *digest);
int router_parse_list_from_string(const char **s,
- routerlist_t **dest,
- int n_good_nicknames,
- const char **good_nickname_lst);
+ routerlist_t **dest,
+ smartlist_t *good_nickname_list);
int router_parse_routerlist_from_directory(const char *s,
routerlist_t **dest,
crypto_pk_env_t *pkey);