Module-level docs for ext_orport and router.c

This commit is contained in:
Nick Mathewson 2016-10-18 19:32:49 -04:00
parent 4396540129
commit 54fda6b98a
2 changed files with 28 additions and 3 deletions

View File

@ -4,7 +4,17 @@
/**
* \file ext_orport.c
* \brief Code implementing the Extended ORPort.
*/
*
* The Extended ORPort interface is used by pluggable transports to
* communicate additional information to a Tor bridge, including
* address information. For more information on this interface,
* see pt-spec.txt in torspec.git.
*
* There is no separate structure for extended ORPort connections; they use
* or_connection_t objects, and share most of their implementation with
* connection_or.c. Once the handshake is done, an extended ORPort connection
* turns into a regular OR connection, using connection_ext_or_transition().
*/
#define EXT_ORPORT_PRIVATE
#include "or.h"

View File

@ -37,8 +37,23 @@
/**
* \file router.c
* \brief OR functionality, including key maintenance, generating
* and uploading server descriptors, retrying OR connections.
* \brief Miscellaneous relay functionality, including RSA key maintenance,
* generating and uploading server descriptors, picking an address to
* advertise, and so on.
*
* This module handles the job of deciding whether we are a Tor relay, and if
* so what kind. (Mostly through functions like server_mode() that inspect an
* or_options_t, but in some cases based on our own capabilities, such as when
* we are deciding whether to be a directory cache in
* router_has_bandwidth_to_be_dirserver().)
*
* Also in this module are the functions to generate our own routerinfo_t and
* extrainfo_t, and to encode those to signed strings for upload to the
* directory authorities.
*
* This module also handles key maintenance for RSA and Curve25519-ntor keys,
* and for our TLS context. (These functions should eventually move to
* routerkeys.c along with the code that handles Ed25519 keys now.)
**/
/************************************************************/