aboutsummaryrefslogtreecommitdiff
path: root/src/feature/rend/rendclient.c
AgeCommit message (Collapse)Author
2020-08-10Merge branch 'maint-0.3.5' into maint-0.4.2Nick Mathewson
2020-08-10small code tweaks to try to work around debian stable complaintsNick Mathewson
2020-05-06Use __attribute__((fallthrough)) rather than magic GCC comments.Nick Mathewson
GCC added an implicit-fallthrough warning a while back, where it would complain if you had a nontrivial "case:" block that didn't end with break, return, or something like that. Clang recently added the same thing. GCC, however, would let you annotate a fall-through as intended by any of various magic "/* fall through */" comments. Clang, however, only seems to like "__attribute__((fallthrough))". Fortunately, GCC accepts that too. A previous commit in this branch defined a FALLTHROUGH macro to do the right thing if GNUC is defined; here we replace all of our "fall through" comments with uses of that macro. This is an automated commit, made with the following perl one-liner: #!/usr/bin/perl -i -p s#/\* *falls? ?thr.*?\*/#FALLTHROUGH;#i; (In order to avoid conflicts, I'm applying this script separately to each maint branch. This is the 0.4.2 version.)
2020-05-06Use __attribute__((fallthrough)) rather than magic GCC comments.Nick Mathewson
GCC added an implicit-fallthrough warning a while back, where it would complain if you had a nontrivial "case:" block that didn't end with break, return, or something like that. Clang recently added the same thing. GCC, however, would let you annotate a fall-through as intended by any of various magic "/* fall through */" comments. Clang, however, only seems to like "__attribute__((fallthrough))". Fortunately, GCC accepts that too. A previous commit in this branch defined a FALLTHROUGH macro to do the right thing if GNUC is defined; here we replace all of our "fall through" comments with uses of that macro. This is an automated commit, made with the following perl one-liner: #!/usr/bin/perl -i -p s#/\* *falls? ?thr.*?\*/#FALLTHROUGH;#i;
2019-09-04rendclient: use ptrdiff, not off_t, for offset of DH field.Nick Mathewson
The off_t type is only useful for offsets on the filesystem. For in-memory offsets, use ptrdiff_t.
2019-06-05Don't access rend data after a circuit has been marked for close.George Kadianakis
This can cause issues if the circuit was repurposed into a padding circuit instead of closing, since in that case we will wipe off the rend_data.
2019-04-19Initialize rate_limited to false in directory_get_from_hs_dir()Neel Chauhan
2019-04-19Make rate_limited and is_rate_limited a boolNeel Chauhan
2019-04-11Make repeated/rate limited HSFETCH queries fail with QUERY_RATE_LIMITEDNeel Chauhan
2019-03-25Split all controller events code into a new control_events.cNick Mathewson
Also, split the formatting code shared by control.c and control_events.c into controller_fmt.c.
2019-01-16Bump copyright date to 2019Nick Mathewson
2019-01-16Bump copyright date to 2019.Nick Mathewson
2018-12-04conn: Use connection_ap_mark_as_waiting_for_renddesc()David Goulet
Use the helper function connection_ap_mark_as_waiting_for_renddesc() introduced in previous commit everywhere in the code where an AP connection state is transitionned to AP_CONN_STATE_RENDDESC_WAIT. Part of #28669 Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-09-25Revise things that had included router.h beforeNick Mathewson
Make them only include the headers that they needed, and sort their headers while we're at it.
2018-09-21Split directory.c code into several modulesNick Mathewson
Parts of this C file naturally belong in dircache, dirclient, and dircommon: so, move them there.
2018-09-21Split main.c into main.c and mainloop.cNick Mathewson
The main.c code is responsible for initialization and shutdown; the mainloop.c code is responsible for running the main loop of Tor. Splitting the "generic event loop" part of mainloop.c from the event-loop-specific part is not done as part of this patch.
2018-09-07Merge branch 'maint-0.3.4'Nick Mathewson
2018-08-28hs: Remove rend_client_non_anonymous_mode_enabledDavid Goulet
The removal of Tor2Web made this function useless. Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-08-28hs: Remove rend_client_allow_non_anonymous_connectionDavid Goulet
By removing Tor2Web, there is no way a client can be non anonymous so we remove that function and the callsites. Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-08-28hs: Render obsolete Tor2webDavid Goulet
Remove support for Tor2web in the code and build system. At this commit, tor doesn't have Tor2web support anymore. Ref: https://lists.torproject.org/pipermail/tor-dev/2018-July/013295.html Close #26367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-07-05Fix every include path changed in the previous commit (automated)Nick Mathewson
I am very glad to have written this script.
2018-07-05Move literally everything out of src/orNick Mathewson
This commit won't build yet -- it just puts everything in a slightly more logical place. The reasoning here is that "src/core" will hold the stuff that every (or nearly every) tor instance will need in order to do onion routing. Other features (including some necessary ones) will live in "src/feature". The "src/app" directory will hold the stuff needed to have Tor be an application you can actually run. This commit DOES NOT refactor the former contents of src/or into a logical set of acyclic libraries, or change any code at all. That will have to come in the future. We will continue to move things around and split them in the future, but I hope this lays a reasonable groundwork for doing so.