Nick Mathewson
51bc0e7f3d
Isolate the "socketpair or a pipe" logic for alerting main thread
...
This way we can use the linux eventfd extension where available.
Using EVFILT_USER on the BSDs will be a teeny bit trickier, and will
require libevent hacking.
2015-01-14 11:01:19 -05:00
Nick Mathewson
c7eebe237d
Make pending work cancellable.
2015-01-14 10:56:27 -05:00
Nick Mathewson
a82604b526
Initial workqueue implemention, with a simple test.
...
It seems to be working, but more tuning is needed.
2015-01-14 10:56:24 -05:00
Nick Mathewson
6c9363310a
Specialize handling for mutexes allocated for condition variables
...
(These must not be reentrant mutexes with pthreads.)
2015-01-14 10:52:56 -05:00
Nick Mathewson
65016304d2
Add tor_cond_init/uninit
2015-01-14 10:49:59 -05:00
Nick Mathewson
e865248156
Add a timeout to tor_cond_wait; add tor_cond impl from libevent
...
The windows code may need some tweaks for it to compile; I've not
tested it yet.
2015-01-14 10:47:39 -05:00
Nick Mathewson
c2f0d52b7f
Split threading-related code out of compat.c
...
Also, re-enable the #if'd out condition-variable code.
Work queues are going to make us hack on all of this stuff a bit more
closely, so it might not be a terrible idea to make it easier to hack.
2015-01-14 10:41:53 -05:00
Nick Mathewson
518b0b3c5f
Do not log a notice on every socks connection
2015-01-14 09:54:40 -05:00
Nick Mathewson
b72acd725a
More tests as suggested by rl1987
2015-01-14 09:10:35 -05:00
George Kadianakis
220f419da1
New minimum uptime to become an HSDir is 96 hours.
2015-01-14 12:48:09 +00:00
Nick Mathewson
03f783c045
remove a bogus comment
2015-01-13 13:59:39 -05:00
Nick Mathewson
73d1d153dc
remove needless AllowDotExit in test_entryconn_rewrite_mapaddress_automap_onion2
2015-01-13 13:56:59 -05:00
Nick Mathewson
17c568b95c
Fix new unused variable warning in connection_listener_new
2015-01-13 13:45:35 -05:00
Nick Mathewson
73ccf0b33f
Uncomment a test
2015-01-13 13:42:20 -05:00
Nick Mathewson
8d1fa0c87d
update bug12585 changes file
2015-01-13 13:13:19 -05:00
Nick Mathewson
2b8cebaac0
whitespace fix
2015-01-13 13:11:39 -05:00
Nick Mathewson
d8b7dcca8d
Merge remote-tracking branch 'andrea/ticket12585_v3'
2015-01-13 12:50:55 -05:00
Nick Mathewson
9d0fab9872
Allow MapAddress and Automap to work together
...
The trick here is to apply mapaddress first, and only then apply
automapping. Otherwise, the automap checks don't get done.
Fix for bug 7555; bugfix on all versions of Tor supporting both
MapAddress and AutoMap.
2015-01-13 12:41:15 -05:00
Nick Mathewson
ab6bd78eca
(Disabled, failing) test for the bug in 7555.
2015-01-13 12:26:04 -05:00
Nick Mathewson
f2fb85f970
Remove needless strdup in addressmap_register_virtual_address()
...
Fixes bug 14195. Bugfix on 0.1.0.1-rc.
2015-01-13 12:24:42 -05:00
Nick Mathewson
6cbe016cb1
Fix memory leaks in entryconn tests.
2015-01-13 12:13:46 -05:00
Nick Mathewson
05a80bb46c
More unit tests for rewriting entry connection addresses
2015-01-13 11:08:33 -05:00
Nick Mathewson
2e1ed0815d
Actually set *expires_out in addressmap_rewrite.
...
Fixes 14193; bugfix on 35d08e30d
, which went into 0.2.3.17-beta.
2015-01-13 09:42:23 -05:00
Nick Mathewson
732c885b32
Fix a conversion warning on 32-bit clang
2015-01-12 22:33:10 -05:00
Nick Mathewson
a0b4c2f1bd
On jessie, we need a =, not a ==
2015-01-12 22:30:40 -05:00
Nick Mathewson
7257f2e31d
mktemp wants some Xs
2015-01-12 21:45:41 -05:00
Nick Mathewson
038804e13d
Tweak zero_length_keys.sh and test/include.am to make out-of-tree builds work
2015-01-12 21:28:01 -05:00
Nick Mathewson
bba995e666
Begin writing unit tests for rewrite code
2015-01-12 21:08:43 -05:00
Andrea Shepard
066acaf6b9
Explicitly chmod AF_UNIX sockets to 0600 when *GroupWritable isn't specified
2015-01-13 00:27:04 +00:00
Andrea Shepard
4316bb601a
Remove no-longer-accurate comment from connection.c
2015-01-13 00:21:59 +00:00
Andrea Shepard
cb047f4078
Fix ipv4/ipv6 traffic bits on AF_UNIX socks listeners and remove hacky workarounds for brokenness
2015-01-13 00:18:17 +00:00
Andrea Shepard
f50068b17e
Fix default list handling for parse_unix_socket_config(); avoid clearing whole pre-existing list
2015-01-12 22:12:18 +00:00
Nick Mathewson
2edfdc02a2
Merge remote-tracking branch 'teor/bug13111-empty-key-files-fn-empty'
2015-01-12 14:06:14 -05:00
Nick Mathewson
cacea9102a
reindent cell_queues_check_size()
2015-01-12 13:59:50 -05:00
Nick Mathewson
c2e200cef8
Merge branch 'bug13806_squashed'
...
Conflicts:
src/or/relay.c
2015-01-12 13:59:26 -05:00
Nick Mathewson
3033ba9f5e
When OOM, free cached hidden service descriptors too.
2015-01-12 13:47:52 -05:00
Andrea Shepard
62f297fff0
Kill duplicated code in connection_listener_new()
2015-01-12 16:26:34 +00:00
Nick Mathewson
b0c32106b3
If libsystemd-daemon.pc is not found, look for libsystemd
...
(Thanks to toralf for noting that the build was broken, and to
Sebastian for telling me that my fix still wasn't right.)
2015-01-12 10:03:06 -05:00
Anthony G. Basile
8df35a0c88
src/common/compat_libevent.h: include testsupport.h
...
When tor is configured with --enable-bufferevents, the build fails
because compat_libevent.h makes use of the macro MOCK_DECL() which
is defined in testsupport.h, but not included. We add the include.
2015-01-12 01:03:47 -05:00
Nick Mathewson
2d123efe7c
Merge remote-tracking branch 'origin/maint-0.2.5'
2015-01-12 00:59:48 -05:00
Nick Mathewson
c9dd2d1a6a
Merge remote-tracking branch 'public/bug14129_024' into maint-0.2.5
2015-01-12 00:59:29 -05:00
Nick Mathewson
2dac77c041
Actually remove LOCALSTATEDIR@/run/tor line from tor.service.in
2015-01-11 20:49:19 -05:00
Nick Mathewson
70b3937425
Fix build on systemdless systems
...
Fixes bug 14170.
2015-01-11 20:47:15 -05:00
Nick Mathewson
3f39daa663
changes file for bug13805
2015-01-11 11:27:33 -05:00
Nick Mathewson
96a407a243
systemd changes for 13805 as recommened by Tomasz on that ticket.
2015-01-11 11:26:08 -05:00
Nick Mathewson
c98e075ebc
Merge remote-tracking branch 'candrews/issue13805'
2015-01-11 11:24:48 -05:00
Nick Mathewson
e009c2da51
Fix unused-parameter warning in systemd_watchdog_callback
2015-01-11 11:19:51 -05:00
Nick Mathewson
8db15960d1
changes file for 14141
2015-01-11 11:19:12 -05:00
Tomasz Torcz
a8999acc3b
fix and enable systemd watchdog
...
There were following problems:
- configure.ac wrongly checked for defined HAVE_SYSTEMD; this
wasn't working, so the watchdog code was not compiled in.
Replace library search with explicit version check
- sd_notify() watchdog call was unsetting NOTIFY_SOCKET from env;
this means only first "watchdog ping" was delivered, each
subsequent one did not have socket to be sent to and systemd
was killing service
- after those fixes, enable Watchdog in systemd unit with one
minute intervals
2015-01-11 11:14:32 -05:00
Tomasz Torcz
2aa2d0a1c5
send more details about daemon status to supervisor
...
If running under systemd, send back information when reloading
configuration and gracefully shutting down. This gives administator
more information about current Tor daemon state.
2015-01-11 11:14:14 -05:00