Andrea Shepard
|
8afe41b481
Implement channel_set_cmux_policy_everywhere()
|
12 years ago |
Andrea Shepard
|
13972aee78
Fix broken circuitmux_move_active_circ_to_tail(); don't assume n_chan is not NULL in circuitmux_detach_circuit()
|
12 years ago |
Andrea Shepard
|
903cc8acd1
Allow n_chan to be NULL in circuitmux_find_map_entry(); it can be but with non-NULL p_chan when extending a circuit
|
12 years ago |
Andrea Shepard
|
a0200c1f6e
Use circuit_get_by_circid_channel_even_if_marked() and fix some asserts in circuitmux.c
|
12 years ago |
Andrea Shepard
|
1498a6e84a
Fix some circuitmux-related asserts in relay.c
|
12 years ago |
Andrea Shepard
|
b28119e6a8
Fix detach when setting circuit ID to 0 bug in circuit_set_circid_chan_helper() and add circuit_get_by_circid_channel_even_if_marked()
|
12 years ago |
Andrea Shepard
|
c097fb33fc
Detach circuits from circuitmux early when freeing channel so they can find the channel by ID
|
12 years ago |
Andrea Shepard
|
3d092ffbdd
Handle closing circuits correctly with circuitmux_t
|
12 years ago |
Andrea Shepard
|
6830c9c232
Add a bunch of paranoid-mode expensive asserts incircuitmux.c
|
12 years ago |
Andrea Shepard
|
7598e669e8
Adjust the circuitmux_t counter correctly in circuitmux_notify_xmit_cells()
|
12 years ago |
Andrea Shepard
|
96a6eff8fe
Fix circuitmux attach/detach logic in circuit_set_circid_chan_helper(); it's possible for id to be zero (not assigned yet) and shouldn't be attached then
|
12 years ago |
Andrea Shepard
|
60ec46a2ec
Update circuitmux-related TODOs in channeltls.c
|
12 years ago |
Andrea Shepard
|
2565710fd7
Fix comment on circuit_t.n_hop and remove circuitmux TODO in or.h
|
12 years ago |
Andrea Shepard
|
bbb2c31d26
Move all EWMA code into circuitmux.c and implement circuitmux_policy_t methods using it
|
12 years ago |
Andrea Shepard
|
0af2eab9a2
Add circuitmux.h, circuitmux_ewma.h includes now necessary in networkstatus.c
|
12 years ago |
Andrea Shepard
|
d194b8602a
Remove cell_ewma_t from or.h and from circuit_t/or_circuit_t; all that goes to the new circuitmux_ewma.c now
|
12 years ago |
Andrea Shepard
|
5f9d37e74e
Add circuitmux.h, circuitmux_ewma.h includes now necessary in config.c
|
12 years ago |
Andrea Shepard
|
14fe0d5859
Remove EWMA code from relay.{c,h}; it goes to a circuitmux policy now
|
12 years ago |
Andrea Shepard
|
b7d5784c54
Remove ewma setup code in init_circuit_base()/or_circuit_new() of circuitlist.c; it gets allocated when the circuit is attached to a circuitmux_t with that policy now
|
12 years ago |
Andrea Shepard
|
e1de2f1437
Add upcasts for circuitmux_policy_data_t and circuitmux_policy_circ_data_t to circuitmux.h
|
12 years ago |
Andrea Shepard
|
184560c4f6
Add initial circuitmux_ewma.{c,h}
|
12 years ago |
Andrea Shepard
|
34591c61ef
Implement circuitmux_assert_okay() and helper functions in circuitmux.c
|
12 years ago |
Andrea Shepard
|
4a14c6aa67
Implement circuitmux_get_first_active_circuit() in circuitmux.c; add pick_active_circuit() to circuitmux_policy_t in circuitmux.h
|
12 years ago |
Andrea Shepard
|
c4e5e4727d
Add comment for circuitmux_notify_xmit_cells() in circuitmux.c
|
12 years ago |
Andrea Shepard
|
741bc97b24
Add comment for circuitmux_move_active_circ_to_tail() in circuitmux.c
|
12 years ago |
Andrea Shepard
|
aff77eb1a9
Implement circuitmux_notify_xmit_cells() and circuitmux_move_active_circ_to_tail() helper in circuitmux.c
|
12 years ago |
Andrea Shepard
|
debef8f0cd
Consistently allow policy alloc_cmux_data() and alloc_circ_data() functions to return NULL if the policy does not use this in circuitmux.c
|
12 years ago |
Andrea Shepard
|
86d9d85dfc
Implement circuitmux_clear_policy(), circuitmux_get_policy() and circuitmux_set_policy() in circuitmux.c
|
12 years ago |
Andrea Shepard
|
eade7a37cd
Add cmux policy notify_set_n_cells() and notify_xmit_cells() callbacks
|
12 years ago |
Andrea Shepard
|
930e3d611a
Allocate and free circuit-specific policy data in the right places
|
12 years ago |