aboutsummaryrefslogtreecommitdiff
path: root/src/or/control.c
Commit message (Collapse)AuthorAge
* Merge remote-tracking branch 'public/bug9963_v2_024'Nick Mathewson2014-04-18
|\
| * Log descriptor-download bootstrapping messages less verboselyNick Mathewson2014-03-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a fix for 9963. I say this is a feature, but if it's a bugfix, it's a bugfix on 0.2.4.18-rc. Old behavior: Mar 27 11:02:19.000 [notice] Bootstrapped 50%: Loading relay descriptors. Mar 27 11:02:20.000 [notice] Bootstrapped 51%: Loading relay descriptors. Mar 27 11:02:20.000 [notice] Bootstrapped 52%: Loading relay descriptors. ... [Many lines omitted] ... Mar 27 11:02:29.000 [notice] Bootstrapped 78%: Loading relay descriptors. Mar 27 11:02:33.000 [notice] We now have enough directory information to build circuits. New behavior: Mar 27 11:16:17.000 [notice] Bootstrapped 50%: Loading relay descriptors Mar 27 11:16:19.000 [notice] Bootstrapped 55%: Loading relay descriptors Mar 27 11:16:21.000 [notice] Bootstrapped 60%: Loading relay descriptors Mar 27 11:16:21.000 [notice] Bootstrapped 65%: Loading relay descriptors Mar 27 11:16:21.000 [notice] Bootstrapped 70%: Loading relay descriptors Mar 27 11:16:21.000 [notice] Bootstrapped 75%: Loading relay descriptors Mar 27 11:16:21.000 [notice] We now have enough directory information to build circuits.
* | Merge remote-tracking branch 'public/bug10431'Nick Mathewson2014-04-09
|\ \
| * | Report only the first bootstrap failure from an orconnNick Mathewson2014-03-27
| | | | | | | | | | | | | | | | | | | | | Otherwise, when we report "identity mismatch", we then later report DONE when the connection gets closed. Fixes bug 10431; bugfix on 0.2.1.1-alpha.
* | | Merge branch 'bug7952_final'Nick Mathewson2014-04-08
|\ \ \ | |/ / |/| | | | | | | | | | | Conflicts: src/test/include.am src/test/test.c
| * | Making entire exit policy available to Tor controller.rl19872014-04-08
| | |
* | | Merge remote-tracking branch 'asn/bug11069_take2'Nick Mathewson2014-03-11
|\ \ \
| * | | Throw control port warning if we failed to connect to all our bridges.George Kadianakis2014-03-10
| | | |
* | | | ATTR_NORETURN is needed on lost_owning_controller nowNick Mathewson2014-03-03
|/ / / | | | | | | | | | | | | | | | | | | This should fixes some "hey, that function could have __attribute__((noreturn))" warnings introduced by f96400d9. Bug not in any released version of Tor.
* | | Merge remote-tracking branch 'public/bug10449'Nick Mathewson2014-02-25
|\ \ \
| * | | bug10449: a dying owning controller makes Tor exit immediatelyNick Mathewson2014-02-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you want a slow shutdown, send SIGNAL SHUTDOWN. (Why not just have the default be SIGNAL QUIT? Because this case should only happen when an owning controller has crashed, and a crashed controller won't be able to give the user any "tor is shutting down" feedback, and so the user gets confused for a while. See bug 10449 for more info)
* | | | fix longname returned in HS_DESC control eventsQingping Hou2014-02-06
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | According to control spec, longname should not contain any spaces and is consists only of identy_digest + nickname added two functions: * node_get_verbose_nickname_by_id() * node_describe_longname_by_id()
* | | Defensive programming in control_event_hs_descriptor_*Nick Mathewson2014-02-03
| | | | | | | | | | | | | | | It looks to me like these functions can never get called with NULL arguments, but better safe than sorry.
* | | Merge remote-tracking branch 'houqp/hs_control'Nick Mathewson2014-02-03
|\ \ \
| * | | add hidden service descriptor async control eventQingping Hou2014-01-29
| | | |
* | | | Rip out all of the v2 directory code.Nick Mathewson2014-01-29
|/ / / | | | | | | | | | | | | | | | The remaining vestige is that we continue to publish the V2dir flag, and that, for the controller, we continue to emit v2 directory formats when requested.
* | | Merge branch 'morestats4' into morestats5Karsten Loesing2013-10-28
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/tor.1.txt src/or/config.c src/or/connection.h src/or/control.c src/or/control.h src/or/or.h src/or/relay.c src/or/relay.h src/test/test.c
| * | | squash! Pass const uint64_t pointers, document array length.Karsten Loesing2013-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't cast uint64_t * to const uint64_t * explicitly. The cast is always safe, so C does it for us. Doing the cast explitictly can hide bugs if the input is secretly the wrong type. Suggested by Nick.
| * | | Pass const uint64_t pointers, document array length.Karsten Loesing2013-09-12
| | | | | | | | | | | | | | | | Suggested by nickm.
| * | | Don't format cell stats for unattached circuits.Karsten Loesing2013-09-12
| | | |
| * | | Test functions used for TB_EMPTY and CELL_STATS events.Karsten Loesing2013-05-31
| | | |
| * | | Tweak CIRC_BW event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Rename n_read and n_written in origin_circuit_t to make it clear that these are only used for CIRC_BW events. - Extract new code in control_update_global_event_mask to new clear_circ_bw_fields function.
| * | | Tweak TB_EMPTY event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Avoid control_event_refill_global function with 13 arguments and increase code reuse factor by moving more code from control.c to connection.c. - Avoid an unsafe uint32_t -> int cast. - Add TestingEnableTbEmptyEvent option. - Prepare functions for testing. - Rename a few functions and improve documentation.
| * | | Tweak CELL_STATS event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move cell_command_to_string from control.c to command.c. - Use accessor for global_circuitlist instead of extern. - Add a struct for cell statistics by command instead of six arrays. - Split up control_event_circuit_cell_stats by using two helper functions. - Add TestingEnableCellStatsEvent option. - Prepare functions for testing. - Rename a few variables and document a few things better.
| * | | Tweak CONN_BW event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | - Rename read/write counters in connection_t to make it clear that these are only used for CONN_BW events. - Add TestingEnableConnBwEvent option.
| * | | Tweak ORCONN event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | - Move new ID= parameter in ORCONN event to end. Avoids possible trouble from controllers that parse parameters by position, even though they shouldn't.
| * | | Add new CIRC_BW event.Karsten Loesing2013-05-16
| | | |
| * | | Add new TB_EMPTY event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
| * | | Add new CELL_STATS event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
| * | | Add new CONN_BW event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
| * | | Add connection ID to ORCONN event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
* | | | DROPGUARDS controller commandNick Mathewson2013-10-21
| | | | | | | | | | | | | | | | Implements ticket 9934; patch from "ra"
* | | | Add a --dump-config option to help testing option parsing.Nick Mathewson2013-09-13
| |/ / |/| |
* | | Cleanup whitespacesNick Mathewson2013-08-25
| | |
* | | Basic unit test for EVENT_TRANSPORT_LAUNCHEDNick Mathewson2013-08-25
| | |
* | | Widen event_mask_t to 64 bitsNick Mathewson2013-08-25
| | |
* | | Implement the TRANSPORT_LAUNCHED control port event.George Kadianakis2013-08-25
| | |
* | | Hide the contents of the circuit_build_times structure.Nick Mathewson2013-08-22
| | | | | | | | | | | | | | | | | | | | | There were only two functions outside of circuitstats that actually wanted to know what was inside this. Making the structure itself hidden should help isolation and prevent us from spaghettifying the thing more.
* | | Rename circuit_get_global_list to remove trailing _Nick Mathewson2013-08-15
| | |
* | | Merge remote-tracking branch 'majek/bug9108'Nick Mathewson2013-08-15
|\ \ \ | | | | | | | | | | | | | | | | Conflicts: src/or/circuitlist.h
| * | | Fix #9108 - make global_circuitlist a doubly linked listMarek Majkowski2013-06-20
| | | |
* | | | Write some free_all functions to free the auth. cookies.George Kadianakis2013-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We started allocating space for them on the heap in the previous commit. Conflicts: src/or/ext_orport.h
* | | | Implement and use a generic auth. cookie initialization function.George Kadianakis2013-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the generic function for both the ControlPort cookie and the ExtORPort cookie. Also, place the global cookie variables in the heap so that we can pass them around more easily as pointers. Also also, fix the unit tests that broke by this change. Conflicts: src/or/config.h src/or/ext_orport.c
* | | | Expose/mock some functions to make ext_orport.c testing possibleNick Mathewson2013-08-15
| | | |
* | | | Satisfy check-spaces.George Kadianakis2013-07-18
| | | |
* | | | Create the Extended ORPort authentication cookie file.George Kadianakis2013-07-18
| | | |
* | | | Completely refactor how FILENAME_PRIVATE worksNick Mathewson2013-07-10
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We previously used FILENAME_PRIVATE identifiers mostly for identifiers exposed only to the unit tests... but also for identifiers exposed to the benchmarker, and sometimes for identifiers exposed to a similar module, and occasionally for no really good reason at all. Now, we use FILENAME_PRIVATE identifiers for identifiers shared by Tor and the unit tests. They should be defined static when we aren't building the unit test, and globally visible otherwise. (The STATIC macro will keep us honest here.) For identifiers used only by the unit tests and never by Tor at all, on the other hand, we wrap them in #ifdef TOR_UNIT_TESTS. This is not the motivating use case for the split test/non-test build system; it's just a test example to see how it works, and to take a chance to clean up the code a little.
* | | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-06-13
|\ \ \ | | |/ | |/|
| * | Merge remote-tracking branch 'public/bug8822' into maint-0.2.4Nick Mathewson2013-06-13
| |\ \
| | * | Make all consumers of microdesc_t.body tolerate NULLNick Mathewson2013-06-12
| | | | | | | | | | | | | | | | This is another fix to try to mitigate recurrences of 8031/8822.