Fix: call circuit_has_opened() for rendezvous circuit

In circuit_get_open_circ_or_launch(), for a rendezvous circuit,
rend_client_rendcirc_has_opened() but circuit_has_opened() is preferred here
since it will call the right function for a specific circuit purpose.

Furthermore, a controller event is triggered where the former did not.

Signed-off-by: David Goulet <dgoulet@ev0ke.net>
This commit is contained in:
David Goulet 2014-12-10 13:05:41 -05:00
parent 5b55778c86
commit 3d83907ab1
2 changed files with 7 additions and 1 deletions

6
changes/bug13936 Normal file
View File

@ -0,0 +1,6 @@
o Minor bugfixes:
- Use circuit_has_opened() instead of rend_client_rendcirc_has_opened()
when a rendezvous circuit is opened because circuit_has_opened() jobs
is to call a specialized function depending on the circuit purpose.
Furthermore, a controller event will be triggered here where the
former did not.

View File

@ -2016,7 +2016,7 @@ circuit_get_open_circ_or_launch(entry_connection_t *conn,
circ->rend_data = rend_data_dup(ENTRY_TO_EDGE_CONN(conn)->rend_data);
if (circ->base_.purpose == CIRCUIT_PURPOSE_C_ESTABLISH_REND &&
circ->base_.state == CIRCUIT_STATE_OPEN)
rend_client_rendcirc_has_opened(circ);
circuit_has_opened(circ);
}
}
} /* endif (!circ) */