diff options
author | Andrea Shepard <andrea@torproject.org> | 2012-10-01 20:05:03 -0700 |
---|---|---|
committer | Andrea Shepard <andrea@torproject.org> | 2012-10-10 00:44:46 -0700 |
commit | 8afe41b481caa984fa6b4a0fbbf626d4cd22ce59 (patch) | |
tree | d5bfc3e58d1c1b369fffa9fe0e0916ff66ae4904 | |
parent | 13972aee78542f654bcbbdaf09a49df9fed75738 (diff) | |
download | tor-8afe41b481caa984fa6b4a0fbbf626d4cd22ce59.tar tor-8afe41b481caa984fa6b4a0fbbf626d4cd22ce59.tar.gz |
Implement channel_set_cmux_policy_everywhere()
-rw-r--r-- | src/or/channel.c | 16 | ||||
-rw-r--r-- | src/or/channel.h | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/or/channel.c b/src/or/channel.c index 4ad5bf15f..880fa63ca 100644 --- a/src/or/channel.c +++ b/src/or/channel.c @@ -2696,6 +2696,22 @@ channel_listener_dumpstats(int severity) } /** + * Set the cmux policy on all active channels + */ + +void +channel_set_cmux_policy_everywhere(circuitmux_policy_t *pol) +{ + if (!active_channels) return; + + SMARTLIST_FOREACH_BEGIN(active_channels, channel_t *, curr) { + if (curr->cmux) { + circuitmux_set_policy(curr->cmux, pol); + } + } SMARTLIST_FOREACH_END(curr); +} + +/** * Clean up channels * * This gets called periodically from run_scheduled_events() in main.c; diff --git a/src/or/channel.h b/src/or/channel.h index 4d3db41ce..cb9835a9f 100644 --- a/src/or/channel.h +++ b/src/or/channel.h @@ -291,6 +291,9 @@ void channel_free_all(void); void channel_dumpstats(int severity); void channel_listener_dumpstats(int severity); +/* Set the cmux policy on all active channels */ +void channel_set_cmux_policy_everywhere(circuitmux_policy_t *pol); + #ifdef _TOR_CHANNEL_INTERNAL /* Channel operations for subclasses and internal use only */ |