diff options
author | Nick Mathewson <nickm@torproject.org> | 2012-01-11 10:28:20 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2012-01-11 10:28:20 -0500 |
commit | c5b58df77588fd1307d248e75d360eb27023033c (patch) | |
tree | f623990af1f5dcbd975b2390250fa42dc3cf5ecc /src/or | |
parent | 0e911abf27c7a7ede6dea81167c6e8b12b53174c (diff) | |
download | tor-c5b58df77588fd1307d248e75d360eb27023033c.tar tor-c5b58df77588fd1307d248e75d360eb27023033c.tar.gz |
Add clarity/typesafety wrappers for control_event_circuit_status_minor
Diffstat (limited to 'src/or')
-rw-r--r-- | src/or/circuituse.c | 8 | ||||
-rw-r--r-- | src/or/control.c | 32 | ||||
-rw-r--r-- | src/or/control.h | 8 |
3 files changed, 39 insertions, 9 deletions
diff --git a/src/or/circuituse.c b/src/or/circuituse.c index 55ec88a33..442798dbb 100644 --- a/src/or/circuituse.c +++ b/src/or/circuituse.c @@ -1228,8 +1228,7 @@ circuit_launch_by_extend_info(uint8_t purpose, * began. */ tor_gettimeofday(&circ->_base.timestamp_created); - control_event_circuit_status_minor(circ, CIRC_MINOR_EVENT_CANNIBALIZED, - (int)old_purpose, + control_event_circuit_cannibalized(circ, old_purpose, &old_timestamp_created); switch (purpose) { @@ -1965,9 +1964,8 @@ circuit_change_purpose(circuit_t *circ, uint8_t new_purpose) circ->purpose = new_purpose; if (CIRCUIT_IS_ORIGIN(circ)) { - control_event_circuit_status_minor(TO_ORIGIN_CIRCUIT(circ), - CIRC_MINOR_EVENT_PURPOSE_CHANGED, - (int)old_purpose, NULL); + control_event_circuit_purpose_changed(TO_ORIGIN_CIRCUIT(circ), + old_purpose); } } diff --git a/src/or/control.c b/src/or/control.c index 9cbb8cd04..e15adbd8e 100644 --- a/src/or/control.c +++ b/src/or/control.c @@ -3376,7 +3376,7 @@ control_event_circuit_status(origin_circuit_t *circ, circuit_status_event_t tp, /** Something minor has happened to circuit <b>circ</b>: tell any * interested control connections. */ -int +static int control_event_circuit_status_minor(origin_circuit_t *circ, circuit_status_minor_event_t e, int purpose, const struct timeval *tv) @@ -3444,6 +3444,36 @@ control_event_circuit_status_minor(origin_circuit_t *circ, return 0; } +/** + * <b>circ</b> has changed its purpose from <b>old_purpose</b>: tell any + * interested controllers. + */ +int +control_event_circuit_purpose_changed(origin_circuit_t *circ, + int old_purpose) +{ + return control_event_circuit_status_minor(circ, + CIRC_MINOR_EVENT_PURPOSE_CHANGED, + old_purpose, + NULL); +} + +/** + * <b>circ</b> has changed its purpose from <b>old_purpose</b>, and its + * created-time from <b>old_tv_created</b>: tell any interested controllers. + */ +int +control_event_circuit_cannibalized(origin_circuit_t *circ, + int old_purpose, + const struct timeval *old_tv_created) +{ + return control_event_circuit_status_minor(circ, + CIRC_MINOR_EVENT_CANNIBALIZED, + old_purpose, + old_tv_created); +} + + /** Given an AP connection <b>conn</b> and a <b>len</b>-character buffer * <b>buf</b>, determine the address:port combination requested on * <b>conn</b>, and write it to <b>buf</b>. Return 0 on success, -1 on diff --git a/src/or/control.h b/src/or/control.h index d7127f4ac..7af4449d4 100644 --- a/src/or/control.h +++ b/src/or/control.h @@ -37,9 +37,11 @@ int control_event_is_interesting(int event); int control_event_circuit_status(origin_circuit_t *circ, circuit_status_event_t e, int reason); -int control_event_circuit_status_minor(origin_circuit_t *circ, - circuit_status_minor_event_t e, - int purpose, const struct timeval *tv); +int control_event_circuit_purpose_changed(origin_circuit_t *circ, + int old_purpose); +int control_event_circuit_cannibalized(origin_circuit_t *circ, + int old_purpose, + const struct timeval *old_tv_created); int control_event_stream_status(entry_connection_t *conn, stream_status_event_t e, int reason); |