Public Member Functions
| ||HT_ENTRY (node_t) ht_ent|
| ||Used to look up the node_t by its identity digest. |
| ||Position of the node within the list of nodes. |
|char ||identity [DIGEST_LEN]|
| ||The identity digest of this node_t. |
|microdesc_t * ||md|
|routerinfo_t * ||ri|
|routerstatus_t * ||rs|
|unsigned int ||is_running:1|
| ||As far as we know, is this OR currently running? |
|unsigned int ||is_valid:1|
| ||Has a trusted dirserver validated this OR? (For Authdir: Have we validated this OR?) |
|unsigned int ||is_fast:1|
|unsigned int ||is_stable:1|
| ||Do we think this is a fast OR? |
|unsigned int ||is_possible_guard:1|
| ||Do we think this is a stable OR? |
|unsigned int ||is_exit:1|
| ||Do we think this is an OK exit? |
|unsigned int ||is_bad_exit:1|
| ||Do we think this exit is censored, borked, or otherwise nasty? |
|unsigned int ||is_bad_directory:1|
| ||Do we think this directory is junky, underpowered, or otherwise useless? |
|unsigned int ||is_hs_dir:1|
| ||True iff this router is a hidden service directory according to the authorities. |
|unsigned int ||name_lookup_warned:1|
| ||Have we warned the user for referring to this (unnamed) router by nickname? |
|unsigned int ||rejects_all:1|
| ||Local info: we treat this node as if it rejects everything. |
| ||According to the geoip db what country is this router in? |
A node_t represents a Tor router.
Specifically, a node_t is a Tor router as we are using it: a router that we are considering for circuits, connections, and so on. A node_t is a thin wrapper around the routerstatus, routerinfo, and microdesc for a single wrapper, and provides a consistent interface for all of them.
Also, a node_t has mutable state. While a routerinfo, a routerstatus, and a microdesc have[*] only the information read from a router descriptor, a consensus entry, and a microdescriptor (respectively)... a node_t has flags based on our own current opinion of the node.
[*] Actually, there is some leftover information in each that is mutable. We should try to excise that.
Definition at line 1992 of file or.h.