aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | Use U64_FORMAT/U64_PRINTF_ARG rather than %lu for channel_tAndrea Shepard2012-10-08
| | |
| * | Check return value from connection_or_connect() in channel_tls_connect()Andrea Shepard2012-10-08
| | | | | | | | | | | | | | | | | | It's possible for connection_or_connect() to fail and return NULL after it sets tlschan->conn, so not checking leaves a channel hanging around in CHANNEL_STATE_OPENING with a pointer to a freed or_connection_t forever.
| * | Keep better statistics about channels and dump them from dumpstats() on SIGUSR1Andrea Shepard2012-10-08
| | |
| * | Call channel_tls_free_all() and channel_free_all() from tor_free_all in main.cAndrea Shepard2012-10-08
| | |
| * | Call connection_or_close_normally() rather than using ↵Andrea Shepard2012-10-08
| | | | | | | | | | | | connection_mark_for_close()/connection_mark_and_flush() in run_connection_housekeeping() of main.c so that channels get sent to the CLOSING state correctly (avoids an assert otherwise)
| * | Call channel_run_cleanup() in main.c, and include a comment explaining how ↵Andrea Shepard2012-10-08
| | | | | | | | | | | | closing or_connections related to channels
| * | Add LD_CHANNEL log domain in log.cAndrea Shepard2012-10-08
| | |
| * | Use channel_is_bad_for_new_circs(), connection_or_get_num_circs() in main.cAndrea Shepard2012-10-08
| | |
| * | Use connection_or_get_num_circuits() in control.cAndrea Shepard2012-10-08
| | |
| * | Convert rendmid.c to channel_tAndrea Shepard2012-10-08
| | |
| * | Use dirreq_id from channel_t when appropriateAndrea Shepard2012-10-08
| | |
| * | Switch onion.c over to channel_tAndrea Shepard2012-10-08
| | |
| * | Use channel_t in cpuworker.cAndrea Shepard2012-10-08
| | | | | | | | | | | | | | | | | | | | | Note: this is a squashed commit; see branch bug6465_rebased_v2 of user/andrea/tor.git for full history of the following 2 commits: Use channel_t in cpuworker.c Fix bug in channel_t usage in cpuworker.c that was killing relaying on channel_t-ized Tor. The tags passed to the worker now have a channel ID, not a connection ID.
| * | Query circuit count from associated channel of or_conn in control.cAndrea Shepard2012-10-08
| | |
| * | Make reachabiity test in dirserv.c use channel_tAndrea Shepard2012-10-08
| | |
| * | Convert relay.c/relay.h to channel_tAndrea Shepard2012-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note: this is a squashed commit; see branch bug6465_rebased_v2 of user/andrea/tor.git for full history of the following 10 commits: Convert relay.c/relay.h to channel_t Updating the timestamp if n_flushed > 0 at the end of channel_flush_from_first_active_circuit() was redundant since channel_write_cell() et al. do it themselves. Get rid of now-unnecessary time parameter in channel_flush_from_first_active_circuit() Get rid of now-unnecessary time parameter in channel_flush_from_first_active_circuit() in connection_or.c Add non-inlined external call for channeltls.c to free a packed_cell_t Appease make check-spaces in relay.c Replace channel_get_write_queue_len() with sufficient and easier to implement channel_has_queued_writes() in relay.c Rename channel_touched_by_client() and client_used field for consistency with other timestamps in relay.c Don't double-free packed cells in relay.c (channel_t Tor now bootstraps and works as a client) Rearrange channel_t struct to use a union distinguishing listener from cell-bearing channels in relay.c
| * | Support channel_t in connection_edge.cAndrea Shepard2012-10-08
| | |
| * | Use channel_t in cmd.cAndrea Shepard2012-10-08
| | |
| * | Use channel_t rather than or_connection_t for circuitsAndrea Shepard2012-10-08
| | |
| * | Initial channeltls.c/channeltls.h for bug 6465Andrea Shepard2012-10-08
| | |
| * | Fix make check-spaces in circuitbuild.c and router.hAndrea Shepard2012-10-08
| | |
| * | Add channel.c/channel.h for bug 6465Andrea Shepard2012-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note: this is a squashed commit; see branch bug6465_rebased_v2 of user/andrea/tor.git for full history of the following 90 commits: Add channel.c/channel.h for bug 6465 Fix make check-spaces in new channel.c/channel.h Make sure new channel.h is in nodist_HEADERS and Makefile.nmake is up to date too Add channel_state_t and state utility functions Add channel_change_state() Better comments in channel.h Add CHANNEL_STATE_LISTENING for channel_t Fix wide line in channel.c Add structures/prototypes for incoming cell handling Implement channel_queue_cell() and channel_queue_var_cell() Implement channel_process_cells() Fix asserts in channel_queue_cell() and channel_queue_var_cell() Add descriptive comments for channel_queue_cell() and channel_queue_var_cell() Implement channel cell handler getters/setters Queue outgoing writes when not in writeable state Drain queues and test assertions when changing channel_t state Add log_debug() messages for channel_t stuff Add log_debug() messages for channel_t stuff Add some channel_t metadata Add time_t client_used to channel_t Add channel_touched_by_client() Declare a few channel_t metadata queries we'll have to implement later for use by circuitbuild.c Add next_circ_id/circ_id_type to channel_t for use by circuitbuild.c Count n_circuits in channel_t Channel timestamp calls Add create timestamp for channel.h Declare some new metadata queries on channel_t Add get_real_remote_descr() prototype Move active_circuits stuff to channel_t, some other or.h and channel.h changes Make channel_t refcounted and use global lists of active channels Update channel_request_close() and channel_change_state() for channel_t registration mechanism Handle closing channels sensibly Add global_identifier for channels, channel_init() internal use function Add timestamp_last_added_nonpadding to channel_t Better comments in channel_init() Correctly handle next_circ_id in channel_init() Correctly handle next_circ_id in channel_init() and even compile this time Appease make check-spaces Update timestamps when writing cells to channel_t Add channel_flush_some_cells() to call channel_flush_from_first_active_circuit() Add registered channel lookup functions Get rid of client_used in or_connection_t; it's in channel_t now Get rid of circ_id_type in or_connection_t; implement channel_set_circ_id_type() Eliminate is_bad_for_new_circs in or_connection_t; implement getter/setter for it in channel_t Eliminate next_circ_id in or_connection_t in favor of channel_t Handle packed cells in channel_t for relay.c Add channel_identity_map and related functions Handle add/remove from channel identity map on state transitions Implement channel_is_local() and channel_mark_local() Implement channel_is_client() and channel_mark_client() Implement channel_is_outgoing() and channel_mark_outgoing() Eliminate declaration for redundant channel_nonopen_was_started_here() Add channel timestamps Add channel timestamps, fix some make-check-spaces complaints Remove redundant channel_was_started_here() function and initiated_remotely bit Rename channel_get_remote_descr()/channel_get_real_remote_descr() to something clearer in channel.h Replace channel_get_write_queue_len() with sufficient and easier to implement channel_has_queued_writes() in channel.h Change return type of channel_is_bad_for_new_circs() to int for consistency Implement channel_has_queued_writes() Rename channel_touched_by_client() and client_used field for consistency with other timestamps in channel.{c,h} Implement channel_get_actual_remote_descr() and channel_get_canonical_remote_descr() in channel.{c,h} Implement channel_matches_extend_info() in channel.{c,h} Implement channel_get_for_extend() and channel_is_better() in channel.{c,h} Make channel_is_better() public in channel.{c,h} Implement channel_matches_target_addr_for_extend() in channel.{c,h} Implement channel_is_canonical_is_reliable() in channel.{c,h} Demoronize get_remote_descr() method prototype - what the hell was I thinking there? Timestamp channels in the right places in channel.c Add missing tor_assert() in channel.c Check if the lower layer accepted a cell in channel_write_cell() et al. of channel.c Implement channel_flush_cells() in channel.c (w00t, it builds at last) Call channel_timestamp_drained() at the right places in channel.c Implement channel_run_cleanup() Support optional channel_get_remote_addr() method and use it for GeoIP in channel_do_open_actions() Get rid of channel refcounting; it'll be too complicated to handle it properly with all the pointers from circuits to channels, and closing from channel_run_cleanup() will work okay just like with connections Doxygenate channel.c Appease make check-spaces in channel.c Fix superfluous semicolons in channel.c Add/remove channels from identity digest map in all the right places in channel.c The cell queues on channel_t must be empty when going to a CLOSED or ERROR state Appease make check-spaces in channel.c Add channel_clear/set_identity_digest() and some better logging to channel.{c,h} Fix better logging to channel.c Avoid SIGSEGV testing for queue emptiness in channel_flush_some_cells_from_outgoing_queue() Remove TODO about checking cell queue in channel_free(); no need for it Appease make check-spaces in channel.c Add channel_free_all() and support functions Check nullness of active_circuit_pqueue in channel_free() Fix SMARTLIST_FOREACH_END usage in channel_process_cells() Rearrange channel_t struct to use a union distinguishing listener from cell-bearing channels in channel.{c,h}
* | | Don't call fmt_addr() twice in a parameter list.George Kadianakis2012-10-09
| | |
* | | Downgrade "Failed to hand off onionskin" messagesRoger Dingledine2012-10-05
|/ / | | | | | | | | | | | | They're typically redundant with the "Your computer is too slow" messages. Fixes bug 7038; bugfix on 0.2.2.16-alpha. (In retrospect, we should have fixed this bug back in ticket 1042.)
* | Merge remote-tracking branch 'public/openssl_1_is_best'Nick Mathewson2012-10-04
|\ \
| * | Log a notice if we're running with OpenSSL before 1.0.0.Nick Mathewson2012-09-12
| | | | | | | | | | | | | | | These versions have some dubious, slow crypto implementations; 1.0.0 is a great improvement, and at this point is pretty mature.
| * | Drop support for openssl 0.9.7Nick Mathewson2012-09-12
| | | | | | | | | | | | | | | | | | | | | 097 hasn't seen a new version since 2007; we can drop support too. This lets us remove our built-in sha256 implementation, and some checks for old bugs.
* | | Merge remote-tracking branch 'origin/maint-0.2.3'Nick Mathewson2012-10-04
|\ \ \
| * \ \ Merge remote-tracking branch 'arma/bug7037' into maint-0.2.3Nick Mathewson2012-10-04
| |\ \ \
| | * | | Refuse extra create cells with reason "resource limit"Roger Dingledine2012-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | In the past we had used reason "internal", which is more vague than it needs to be. Resolves bug 7037.
* | | | | Fix tabs in config.cNick Mathewson2012-10-04
| | | | |
* | | | | Merge remote-tracking branch 'linus/bug6757'Nick Mathewson2012-10-04
|\ \ \ \ \
| * | | | | Have node_get_pref_orport() return an IPv6 OR port when UseBridges is set.Linus Nordberg2012-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to never return an IPv6 address unless ClientUseIPv6 was set. We should allow clients running with bridges use IPv6 OR ports even without setting ClientUseIPv6. Configuring an IPv6 address in a Bridge line should imply that. Fixes th second part of #6757.
| * | | | | Set (and reset) node_t.ipv6_preferred for bridges based on Bridge lines.Linus Nordberg2012-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to set it only when ClientPreferIPv6ORPort was set which seems wrong. Fixes one part of #6757.
* | | | | | Merge remote-tracking branch 'origin/maint-0.2.3'Nick Mathewson2012-10-04
|\ \ \ \ \ \ | | |/ / / / | |/| | | |
| * | | | | properly free the return values of rate_limit_log()Roger Dingledine2012-10-03
| | |/ / / | |/| | | | | | | | | | | | | resolves bug 7022.
* | | | | pass the reason from the truncated cell to the controllerRoger Dingledine2012-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (rather than just always declaring that the reason is END_CIRC_REASON_OR_CONN_CLOSED) resolves bug 7039.
* | | | | actually use the rate-limiting stringRoger Dingledine2012-10-03
| |_|_|/ |/| | | | | | | | | | | previously we just allocated the string and then freed it.
* | | | reformat; no actual changesRoger Dingledine2012-10-02
| | | |
* | | | and make the last commit compileRoger Dingledine2012-10-02
| | | |
* | | | Fix compilation error left over from 1cbf45bed1. (Bug 7021)Nick Mathewson2012-10-02
| | | |
* | | | more consistently use [gs]et_uint8Roger Dingledine2012-10-02
| | | |
* | | | The --version option should imply --quiet.Nick Mathewson2012-10-01
| | | | | | | | | | | | | | | | Patch from 'maker'.
* | | | Add missing declaration so 6876 compilesNick Mathewson2012-09-28
| | | |
* | | | Merge remote-tracking branch 'linus/enh6876_2'Nick Mathewson2012-09-28
|\ \ \ \
| * | | | Make option OutboundBindAddress accept IPv6 addresses too.Linus Nordberg2012-09-20
| | |/ / | |/| | | | | | | | | | Implements ticket 6786.
* | | | Merge remote-tracking branch 'rransom/warn-about-hses-without-guards'Nick Mathewson2012-09-25
|\ \ \ \
| * | | | Fix comment typoRobert Ransom2012-09-18
| | | | |
| * | | | Warn if HSes are configured on a client with UseEntryGuards disabledRobert Ransom2012-09-18
| |/ / /
* | | | Merge branch 'maint-0.2.3'Roger Dingledine2012-09-22
|\ \ \ \ | | |/ / | |/| |