diff options
author | Nick Mathewson <nickm@torproject.org> | 2008-12-11 19:12:48 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2008-12-11 19:12:48 +0000 |
commit | 043b4fc59e635015dc7fc758d44ba298b8278f4a (patch) | |
tree | d139f6f67af83b9cc5866415e0e2d0795b474aaa /src/or/or.h | |
parent | 29f5a65a166cd06879ef55b7b5a38ae88c40482f (diff) | |
download | tor-043b4fc59e635015dc7fc758d44ba298b8278f4a.tar tor-043b4fc59e635015dc7fc758d44ba298b8278f4a.tar.gz |
Add a PDS_ flag to exclude authorities from which we are fetching descs.
Yes, this is maybe a little overspecific. Part of a bug 366 fix.
svn:r17593
Diffstat (limited to 'src/or/or.h')
-rw-r--r-- | src/or/or.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/or/or.h b/src/or/or.h index 0335afef4..37eeaddc3 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -4191,9 +4191,26 @@ int router_reload_router_list(void); smartlist_t *router_get_trusted_dir_servers(void); /* Flags for pick_directory_server and pick_trusteddirserver. */ +/** Flag to indicate that we should not automatically be willing to use + * ourself to answer a directory request. + * Passed to router_pick_directory_server (et al).*/ #define PDS_ALLOW_SELF (1<<0) +/** Flag to indicate that if no servers seem to be up, we should mark all + * directory servers as up and try again. + * Passed to router_pick_directory_server (et al).*/ #define PDS_RETRY_IF_NO_SERVERS (1<<1) +/** Flag to indicate that we should not exclude directory servers that + * our ReachableAddress settings would exclude. This usually means that + * we're going to connect to the server over Tor, and so we don't need to + * worry about our firewall telling us we can't. + * Passed to router_pick_directory_server (et al).*/ #define PDS_IGNORE_FASCISTFIREWALL (1<<2) +/** Flag to indicate that we should not use any directory authority to which + * we have an existing directory connection for downloading server descriptors + * or extrainfo documents. [NOTE: Only implemented for + * router_pick_trusteddirserver, not router_pick_directory_server.] + * Passed to router_pick_directory_server (et al).*/ +#define PDS_NO_EXISTING_SERVERDESC_FETCH (1<<3) #define _PDS_PREFER_TUNNELED_DIR_CONNS (1<<16) routerstatus_t *router_pick_directory_server(authority_type_t type, int flags); trusted_dir_server_t *router_get_trusteddirserver_by_digest(const char *d); |