document rewrite_result_t and export for testing

This commit is contained in:
Nick Mathewson 2015-01-10 20:14:55 -05:00
parent cd6a57e3d5
commit 715fdfcb7b
2 changed files with 28 additions and 15 deletions

View File

@ -908,21 +908,10 @@ connection_ap_rewrite_and_attach_if_allowed(entry_connection_t *conn,
return connection_ap_handshake_rewrite_and_attach(conn, circ, cpath); return connection_ap_handshake_rewrite_and_attach(conn, circ, cpath);
} }
typedef struct { /* Try to perform any map-based rewriting of the target address in <b>conn</b>,
char orig_address[MAX_SOCKS_ADDR_LEN]; * filling in the fields of <b>out</b> as we go.
/* We set this to true if this is an address we should automatically */
* remap to a local address in VirtualAddrNetwork */ STATIC void
int automap;
addressmap_entry_source_t exit_source;
time_t map_expires;
int end_reason;
int should_close;
} rewrite_result_t;
/* DOCDOC
*/
static void
connection_ap_handshake_rewrite(entry_connection_t *conn, connection_ap_handshake_rewrite(entry_connection_t *conn,
rewrite_result_t *out) rewrite_result_t *out)
{ {

View File

@ -143,6 +143,30 @@ STATIC int begin_cell_parse(const cell_t *cell, begin_cell_t *bcell,
STATIC int connected_cell_format_payload(uint8_t *payload_out, STATIC int connected_cell_format_payload(uint8_t *payload_out,
const tor_addr_t *addr, const tor_addr_t *addr,
uint32_t ttl); uint32_t ttl);
typedef struct {
/** Original address, after we lowercased it but before we started
* mapping it.
*/
char orig_address[MAX_SOCKS_ADDR_LEN];
/** True iff the address has been automatically remapped to a local
* address in VirtualAddrNetwork */
int automap;
/** If this connection has a .exit address, who put it there? */
addressmap_entry_source_t exit_source;
/** If we've rewritten the address, when does this map expire? */
time_t map_expires;
/** If we should close the connection, this is the end_reason to pass
* to connection_mark_unattached_ap */
int end_reason;
/** True iff we should close the connection, either because of error or
* because of successful early RESOLVED reply. */
int should_close;
} rewrite_result_t;
STATIC void connection_ap_handshake_rewrite(entry_connection_t *conn,
rewrite_result_t *out);
#endif #endif
#endif #endif