Roger Dingledine
c4ed331d8d
oh, and catch the other instance we should fix
...
svn:r9122
2006-12-15 08:14:32 +00:00
Roger Dingledine
0bc0688668
if we rotate our onion key, publish a new descriptor, and
...
die soon after, we want to stick with that onion key when
we restart.
svn:r9121
2006-12-15 07:58:31 +00:00
Nick Mathewson
38bd6837db
r11588@Kushana: nickm | 2006-12-15 02:04:32 -0500
...
Add a LastRotatedOnionKey variable to the state file, so we can rotate onion keys a week after they change even if we never stay up for a whole week at a time. Should fix bug 368.
svn:r9120
2006-12-15 07:04:37 +00:00
Roger Dingledine
2ae9615a0b
take the broken obsolete url out again.
...
seriously, this line should stay out.
how can we make this happen?
svn:r9119
2006-12-15 06:22:52 +00:00
Nick Mathewson
62f711fcf3
r11585@Kushana: nickm | 2006-12-15 01:11:49 -0500
...
Tabify eventdns so that it matches libevent house style.
svn:r9118
2006-12-15 06:12:14 +00:00
Nick Mathewson
b16aa6412e
r11584@Kushana: nickm | 2006-12-15 01:10:45 -0500
...
Try to reconcile (except for whitespace) eventdns with version in libevent, so it is easier for me to send merges. These changes should be cosmetic. (Ha!)
svn:r9117
2006-12-15 06:12:01 +00:00
Nick Mathewson
fdb10ff0b5
r11580@Kushana: nickm | 2006-12-15 00:09:46 -0500
...
Resolve bug 369: Check for integer underflow when printing "bytes left" accounting numbers. Also fix a copyright date that I noticed while reading the bug. Also make a buffer big enough that strings will not get truncated. All are backport candidates.
svn:r9115
2006-12-15 05:12:42 +00:00
Roger Dingledine
c44dd3870e
clarify our use of local time vs GMT
...
svn:r9109
2006-12-14 23:39:14 +00:00
Roger Dingledine
30e4f4f6ce
when we're doing a write split over the end of a circular
...
buffer, make sure our tls_get_forced_write_size doesn't
make it write whatever's after the buffer.
this hasn't triggered yet, but it would be rare, so let's
leave it in.
svn:r9107
2006-12-14 03:26:42 +00:00
Nick Mathewson
c9c8072bd3
r11569@Kushana: nickm | 2006-12-13 17:59:58 -0500
...
fix last fix
svn:r9106
2006-12-13 23:00:05 +00:00
Nick Mathewson
43e06eba8b
r11566@Kushana: nickm | 2006-12-13 17:46:24 -0500
...
Try to fix an assert failure in new write limiting code: make buffers.c aware of previous "forced" write sizes from tortls.
svn:r9105
2006-12-13 22:46:42 +00:00
Roger Dingledine
5cce710e2b
Some more documentation and specs for CONNECT_DIR and BEGIN_DIR.
...
Demand that BEGIN_DIR cells have an empty payload.
svn:r9104
2006-12-13 22:42:52 +00:00
Roger Dingledine
04409f202d
reenable write limiting. nick finally convinced me this was
...
a smart move.
more todo sub-items remain for it.
svn:r9101
2006-12-13 07:08:36 +00:00
Roger Dingledine
97c83a4c09
finish enabling begin-dir cells. require one-hop circs for
...
socks-command-connect-dir streams, so we don't open new anonymity
questions.
svn:r9099
2006-12-13 02:49:45 +00:00
Roger Dingledine
0dbf725927
Infrastructure to test BEGIN_DIR cells.
...
New socks command CONNECT_DIR. New config option TunnelDirConns that
builds a circ ending at the directory server and delivers a BEGIN_DIR
cell if it's running 0.1.2.2-alpha or later. We still need to make
one-hop circs when appropriate, while making other conns avoid them.
svn:r9098
2006-12-13 00:28:56 +00:00
Roger Dingledine
f5164ba61d
remove an XXXX that asked to get removed
...
svn:r9097
2006-12-13 00:05:28 +00:00
Roger Dingledine
477438e6c7
a better fix. puts r8446 to bed.
...
svn:r9096
2006-12-12 21:09:30 +00:00
Roger Dingledine
1efd377428
Fix a bug in 0.1.2.2-alpha that prevented clients from asking
...
to resolve an address at a given exit node even when they ask for
it by name.
svn:r9095
2006-12-12 20:23:17 +00:00
Roger Dingledine
7217f3ca47
couldn't handle leaving this typo in
...
svn:r9094
2006-12-12 20:20:48 +00:00
Roger Dingledine
ee144598c8
minor cleanups and notes
...
svn:r9093
2006-12-12 20:19:54 +00:00
Nick Mathewson
9fa707f5d3
r11552@Kushana: nickm | 2006-12-12 13:34:13 -0500
...
fix a signed/unsigned comparison in eventdns.c
svn:r9092
2006-12-12 18:34:22 +00:00
Nick Mathewson
a3a00df69d
r11548@Kushana: nickm | 2006-12-12 00:44:51 -0500
...
Merge whitespace and other changes from libevent
svn:r9090
2006-12-12 05:45:19 +00:00
Nick Mathewson
494e45482a
r11536@Kushana: nickm | 2006-12-11 22:48:21 -0500
...
Add ipv6 functionality to evdns.
svn:r9089
2006-12-12 03:48:46 +00:00
Nick Mathewson
35d92f8245
r11498@Kushana: nickm | 2006-12-11 21:40:24 -0500
...
Document all structures and (non-exported) functions. External documentation will probably wind up being a manpage, hopefully written by somebody else.
svn:r9087
2006-12-12 02:57:02 +00:00
Nick Mathewson
097aec8e9d
r11497@Kushana: nickm | 2006-12-11 21:17:45 -0500
...
Rename nameserver functions: every one should now have "server" in the name.
svn:r9086
2006-12-12 02:56:54 +00:00
Nick Mathewson
707429e9a3
r11496@Kushana: nickm | 2006-12-11 19:39:37 -0500
...
Clean up XXXX comments in evdns code. Make server_ports actually go away when their refcnt reaches zero.
svn:r9085
2006-12-12 02:56:47 +00:00
Nick Mathewson
d22deb61d6
r11495@Kushana: nickm | 2006-12-11 19:11:14 -0500
...
More evdns: tab fixes. Dont make users worry about flags. Set truncated flag correctly when generating responses, rather than just bailing out.
svn:r9084
2006-12-12 02:56:41 +00:00
Nick Mathewson
abc1304aef
r11494@Kushana: nickm | 2006-12-11 14:50:20 -0500
...
Export DNS types and classes in eventdns.h so that server code can use them.
svn:r9083
2006-12-12 02:56:35 +00:00
Nick Mathewson
fc125b1ef4
r11493@Kushana: nickm | 2006-12-11 14:28:42 -0500
...
Oops; apparently DNS replies are supposed to include the questions. Revise "add_ptr_reply" to accept an inaddr_arpa name instead of just the sockaddr_in. Also, add a "-servertest" function to the test code to see whether the DNS server logic is working.
svn:r9082
2006-12-12 02:56:28 +00:00
Nick Mathewson
e53bca15e7
r11492@Kushana: nickm | 2006-12-11 12:30:23 -0500
...
Implement dns server reply retry logic.
svn:r9081
2006-12-12 02:56:23 +00:00
Nick Mathewson
c58d9494df
r11491@Kushana: nickm | 2006-12-11 12:12:57 -0500
...
More DNS server hacking: everything except testing, and retries, and documentation, and Tor integration.
svn:r9080
2006-12-12 02:56:20 +00:00
Nick Mathewson
991308fac9
svn:r9079
2006-12-12 02:56:17 +00:00
Nick Mathewson
ff029a635d
svn:r9077
2006-12-12 02:54:48 +00:00
Nick Mathewson
e190acf780
r9254@Kushana: nickm | 2006-10-17 17:23:36 -0400
...
Implement dns label compression. Clients do not need this much; dns servers definitely do.
svn:r9073
2006-12-12 02:50:17 +00:00
Nick Mathewson
e9d67b1162
r9099@Kushana: nickm | 2006-10-05 17:42:55 -0400
...
start fleshing out some logic to build server support into eventdns. Still needs work and testing.
svn:r9068
2006-12-12 02:49:45 +00:00
Roger Dingledine
ea93289590
fix another bug in r9052, pointed out by robert hogan
...
svn:r9063
2006-12-10 17:30:33 +00:00
Roger Dingledine
e206d22297
some more cleanups and a bugfix on r9052
...
svn:r9062
2006-12-10 08:04:50 +00:00
Roger Dingledine
733882315d
resolve a buffer overflow / crash from r9051
...
svn:r9061
2006-12-10 04:50:33 +00:00
Roger Dingledine
f7319a0b6d
correction and cleanups on r9047
...
svn:r9060
2006-12-09 19:40:16 +00:00
Roger Dingledine
29099a98c2
fix xiando's bug -- we were reporting stuff about hibernation
...
even though it wasn't enabled.
svn:r9055
2006-12-09 02:55:40 +00:00
Nick Mathewson
81be0ad1e5
r11486@Kushana: nickm | 2006-12-08 00:58:47 -0500
...
Fix a longstanding bug in eventdns related to timeouts: The timeout count was never actually reset to 0. Argh. Now we reset it to zero after we get a successful request, or after we notice that a nameserver is back up, or after we decide the nameserver is down because of timeouts. This may fix bug 326.
svn:r9054
2006-12-08 05:59:21 +00:00
Nick Mathewson
cf04e1e6e7
r11479@Kushana: nickm | 2006-12-07 23:38:54 -0500
...
Refactor GETINFO into a table-driven dispatch, as suggested by arma. My brain hurts.
svn:r9052
2006-12-08 04:39:13 +00:00
Nick Mathewson
1567e13dc8
r11475@Kushana: nickm | 2006-12-07 20:49:21 -0500
...
Make GETINFO dir/status/... work even when we are not a directory. Needs a little cleanup. Closes bug 263.
svn:r9051
2006-12-08 01:50:02 +00:00
Roger Dingledine
566543a4f8
more changes on r9041
...
svn:r9049
2006-12-07 20:14:29 +00:00
Nick Mathewson
b4a90ca8a3
r11469@Kushana: nickm | 2006-12-07 15:11:04 -0500
...
Round stored/transmitted values for bandwidth usage. This might make some attacks work less well. This might well be voodoo, but it gives me a warm fuzzy feeling.
svn:r9048
2006-12-07 20:11:36 +00:00
Nick Mathewson
7c79495137
r11468@Kushana: nickm | 2006-12-07 14:56:57 -0500
...
Revise logic used to flush state to disk. Now, we try to batch non-urgent changes so that we do not do too many writes, and we save very-non-urgent changes every once in a rare while, and we never save more than once per second.
svn:r9047
2006-12-07 20:11:30 +00:00
Nick Mathewson
c304a10fd3
r11467@Kushana: nickm | 2006-12-07 14:38:54 -0500
...
Whitespace cleanup
svn:r9046
2006-12-07 20:11:24 +00:00
Nick Mathewson
6c8075d8a0
r11462@Kushana: nickm | 2006-12-07 13:42:21 -0500
...
Make bandwidth accounting information get stored to the state file as well as bw_accounting. Read from the state file if it is more recent than bw_accounting, or if bw_accounting is not there.
svn:r9044
2006-12-07 18:57:37 +00:00
Nick Mathewson
63e4cfbeb6
r11461@Kushana: nickm | 2006-12-07 13:16:45 -0500
...
Change logging format of state file to only include non-default values. Adjust clients to never store bandwidth history in the state file. (Possible backport candidate.)
svn:r9043
2006-12-07 18:57:29 +00:00
Nick Mathewson
26392fc75d
r11458@Kushana: nickm | 2006-12-07 12:04:22 -0500
...
Fix bug 338: log verbose nicknames, not just keys, for intro points. Also, suppress intro point name logging when SafeLogging is 1. (The security part is a possible backport candidate.)
svn:r9041
2006-12-07 17:04:44 +00:00
Nick Mathewson
8249f5d676
r11456@Kushana: nickm | 2006-12-07 10:09:55 -0500
...
oops; removed one unmap too many in the tests.
svn:r9040
2006-12-07 15:10:36 +00:00
Nick Mathewson
e6c467fe07
r11454@Kushana: nickm | 2006-12-07 10:07:24 -0500
...
Apparently, we actually hit the nasty mmap-then-unlink behavior. Fix it.
svn:r9039
2006-12-07 15:07:33 +00:00
Nick Mathewson
97e5e78afd
r11451@Kushana: nickm | 2006-12-07 10:06:30 -0500
...
Apparently Windows takes a dim view of unlinking a file while it is mapped. Silly windows, did nobody ever tell you about inodes?
svn:r9038
2006-12-07 15:06:38 +00:00
Roger Dingledine
44c55dad23
Fix an assert failure when the directory authority sets
...
AuthDirRejectUnlisted and then receives a descriptor from an
unlisted router (reported by seeess).
svn:r9023
2006-12-04 18:54:01 +00:00
Nick Mathewson
a91c12f2e7
r9855@Kushana: nickm | 2006-12-04 00:55:09 -0500
...
Merge circuit_about_to_close_connection and connection_about_to_close_connection.
svn:r9021
2006-12-04 05:55:40 +00:00
Nick Mathewson
f90cd5bfc0
r9853@Kushana: nickm | 2006-12-04 00:02:03 -0500
...
Patch from Fabian Keil: Fix return statement in get_pf_socket()
svn:r9020
2006-12-04 05:09:09 +00:00
Roger Dingledine
c5b90daf86
cleanups, bump to 0.1.2.4-alpha
...
svn:r9015
2006-12-02 22:47:46 +00:00
Nick Mathewson
d1fdabf1c7
r9843@Kushana: nickm | 2006-11-30 17:22:25 -0500
...
Turn an xxxx0124 into an #ifdef; avoid leaking memory.
svn:r9013
2006-11-30 22:23:01 +00:00
Roger Dingledine
ab68e312bd
actually, i think this fix was closest to what i originally
...
intended. this way we don't call resolve-my-address, which
yells and screams if we're using an internal address (mere
clients should not have to care).
svn:r8998
2006-11-26 20:01:45 +00:00
Nick Mathewson
116ae04c2d
r9399@totoro: nickm | 2006-11-26 14:22:17 -0500
...
Actually, clients *should* try to guess their addresses.
svn:r8997
2006-11-26 19:22:25 +00:00
Nick Mathewson
68142b18cd
r9396@totoro: nickm | 2006-11-26 13:36:29 -0500
...
Fix router_new_address_suggestion() so it only changes last_guessed_ip() when it actually calls resolve_my_address(). (bug found by dev-girl)
svn:r8996
2006-11-26 18:36:51 +00:00
Roger Dingledine
69ae0a2986
we were leaking all the fingerprints for !reject, !invalid,
...
and !badexit lines in the approved-routers file.
svn:r8974
2006-11-20 16:36:44 +00:00
Nick Mathewson
b1dc014fc6
r9347@totoro: nickm | 2006-11-20 11:24:46 -0500
...
11:23 < armadev> typo
11:23 < nickm> ?
11:23 < armadev> did you get the coffee yet? :)
11:23 < nickm> no
11:23 < armadev> i'm at an advantage..i haven't slept yet
svn:r8972
2006-11-20 16:26:52 +00:00
Nick Mathewson
b4ea6136a4
r9345@totoro: nickm | 2006-11-20 11:22:10 -0500
...
Fix a small and unlikely memory leak in dirserv.c. I think this is not the one arma is looking for.
svn:r8971
2006-11-20 16:22:46 +00:00
Nick Mathewson
aef64c1277
r9577@Kushana: nickm | 2006-11-20 11:07:28 -0500
...
Oops; fix bug in last fix. Time to get some coffee.
svn:r8970
2006-11-20 16:07:33 +00:00
Nick Mathewson
a667f2e514
r9567@Kushana: nickm | 2006-11-20 11:05:59 -0500
...
Fix leak in choose_good_exit_server_general()
svn:r8969
2006-11-20 16:06:09 +00:00
Nick Mathewson
e2abc727e5
r9561@Kushana: nickm | 2006-11-16 22:32:54 -0500
...
Tweaks to test-connection patch: use ".noconnect" instead of ".test" (since there are lots of ways to test things). Use a regular sequence of STREAM events (NEW followed by CLOSED) instead of a new event type. Make the function that checks the address be static and use const and strcasecmpend properly.
svn:r8959
2006-11-17 03:34:58 +00:00
Nick Mathewson
d125c61e02
r9560@Kushana: nickm | 2006-11-16 22:09:12 -0500
...
Check in an implementation of "test" connections from Scott Squires:
these connections immediately close upon reaching Tor. They're useful
for apps that want to check whether they're talking to the same Tor as
a given controller. (I'll be tweaking this a bit before I push.)
svn:r8958
2006-11-17 03:34:44 +00:00
Nick Mathewson
b052b810e2
r9319@totoro: nickm | 2006-11-14 13:04:50 -0500
...
Patch from Zajcev Evgeny to make natd work properly (we needed to allow extra characters after the port number).
svn:r8952
2006-11-14 18:05:01 +00:00
Nick Mathewson
ad1f019110
r9317@totoro: nickm | 2006-11-13 22:45:33 -0500
...
Fix some more mipspro warnings. Nothing should remain excecpt "conversion from pointer to same-sized integral type."
svn:r8950
2006-11-14 03:45:48 +00:00
Nick Mathewson
9243e54177
r9313@totoro: nickm | 2006-11-13 20:07:41 -0500
...
Try to compile with fewer warnings on irix64's MIPSpro compiler /
environment, which apparently believes that:
- off_t can be bigger than size_t.
- only mean kids assign things they do not subsequently inspect.
I don't try to fix the "error" that makes it say:
cc-3970 cc: WARNING File = main.c, Line = 1277
conversion from pointer to same-sized integral type (potential portability
problem)
uintptr_t sig = (uintptr_t)arg;
Because really, what can you do about a compiler that claims to be c99
but doesn't understand that void* x = NULL; uintptr_t y = (uintptr_t) x;
is safe?
svn:r8948
2006-11-14 01:07:52 +00:00
Nick Mathewson
0f6402f17b
r9309@totoro: nickm | 2006-11-13 19:05:41 -0500
...
Whitespace fixes, and clean up code from last natd patch.
svn:r8947
2006-11-14 00:06:45 +00:00
Nick Mathewson
1913cb915e
r9308@totoro: nickm | 2006-11-13 18:41:23 -0500
...
Add support for (Free?)BSD's natd, which was an old way to let you
have your firewall automatically redirect traffic. (Original patch
from Zajcev Evgeny, updated for 0.1.2.x by tup.)
svn:r8946
2006-11-14 00:06:31 +00:00
Nick Mathewson
fa6fbbc150
r9307@totoro: nickm | 2006-11-13 18:25:56 -0500
...
Patch from tup based on patch from Zajcev Evgeny: Make TransPort work even when the server wants to talk before the client.
svn:r8945
2006-11-14 00:06:02 +00:00
Nick Mathewson
0ad2fd1129
r9467@Kushana: nickm | 2006-11-01 18:51:16 -0500
...
Allow larger amounts of drift in uptime to be "cosmetic".
svn:r8891
2006-11-01 23:53:15 +00:00
Nick Mathewson
5d7ca19b44
r9465@auth3-479: nickm | 2006-11-01 13:16:21 -0500
...
Add some temporary code to count how many *distinct* router digests we verify. (I have a sneaking suspicion that the numbers look way way high.)
svn:r8890
2006-11-01 18:16:44 +00:00
Peter Palfrader
c195b8f806
r10475@danube: weasel | 2006-11-01 14:33:35 +0100
...
Fix copy/paste error
svn:r8889
2006-11-01 13:33:49 +00:00
Nick Mathewson
31e274ddd3
r9461@Kushana: nickm | 2006-10-31 20:30:12 -0500
...
Oops. Fix compile error in last build.
svn:r8888
2006-11-01 01:30:25 +00:00
Nick Mathewson
9e13a6f31c
r9457@Kushana: nickm | 2006-10-31 18:35:17 -0500
...
Do not warn when an OR gives us a new circuit end reason. (This will prevent bug 351 from recurring.)
svn:r8887
2006-10-31 23:35:50 +00:00
Nick Mathewson
1bf1f9d2fc
r9449@Kushana: nickm | 2006-10-31 00:12:02 -0500
...
Dump breakdown of PK operations when we get a USR2 signal. This should help us figure out of we are doing some of them for stupid reasons.
svn:r8881
2006-10-31 19:17:07 +00:00
Roger Dingledine
8a781f7f34
general cleanups from looking through or-cvs
...
svn:r8855
2006-10-29 07:41:25 +00:00
Roger Dingledine
8f7940348f
Avoid an infinite loop on evil controlport input. Fixes bug 350,
...
unless it doesn't. (Nick, please confirm.)
Backport candidate.
svn:r8844
2006-10-28 08:17:02 +00:00
Roger Dingledine
e473ca2427
give a nicer warning message when windows people try to
...
configure syslog in their torrc
svn:r8841
2006-10-27 19:35:12 +00:00
Nick Mathewson
5b72dc77ad
r9395@Kushana: nickm | 2006-10-26 22:06:51 -0400
...
Fix Bug 349: Have GETINFO network-status return even old routers, and use long nicknames where appropriate. Document this.
svn:r8834
2006-10-27 02:07:04 +00:00
Nick Mathewson
3fbb292bff
r9389@Kushana: nickm | 2006-10-25 17:46:16 -0400
...
Add a CLEARDNSCACHE signal to clear the client-side DNS cache.
svn:r8829
2006-10-25 21:46:21 +00:00
Nick Mathewson
5c670a186c
r9386@Kushana: nickm | 2006-10-25 17:35:38 -0400
...
Resolve bug 347: translate v0 controller signal numbers into internal signal numbers; leave v1 signal numbers alone.
svn:r8828
2006-10-25 21:39:42 +00:00
Nick Mathewson
4df90e455c
r9164@totoro: nickm | 2006-10-24 17:50:43 -0400
...
Oops: 17:50 < armadev> today is opposite day?
svn:r8822
2006-10-24 21:51:06 +00:00
Nick Mathewson
6b7d1c94da
r9162@totoro: nickm | 2006-10-24 17:41:35 -0400
...
Make "boolean !=" logic more obvious.
svn:r8821
2006-10-24 21:41:48 +00:00
Nick Mathewson
a5bf6df14a
r9160@totoro: nickm | 2006-10-24 17:38:07 -0400
...
More dirserver oops: actually set the digest for a given name in the case when the name is not yet recognized.
svn:r8820
2006-10-24 21:38:31 +00:00
Nick Mathewson
ba1b04c736
r9158@totoro: nickm | 2006-10-24 16:50:18 -0400
...
Oops on last authority patch: handle routers with unrecognized fingerprints correctly
svn:r8819
2006-10-24 20:51:28 +00:00
Roger Dingledine
6877a7e1ee
and update the pile of getinfo strings that's impossible to remember
...
to update
svn:r8813
2006-10-24 04:55:02 +00:00
Nick Mathewson
6c7bf2f830
r9364@Kushana: nickm | 2006-10-23 22:57:48 -0400
...
Remove reference to NS_FULL event; add two GETINFO targets.
svn:r8812
2006-10-24 02:58:03 +00:00
Roger Dingledine
6ecf74af60
and blow away what appears to be some redundant logic
...
svn:r8806
2006-10-23 10:17:52 +00:00
Roger Dingledine
77c8c0ee51
spec and implement some more status events. start to build
...
some conventions.
svn:r8805
2006-10-23 10:16:43 +00:00
Roger Dingledine
2a1c294717
implement a few status events, so we can make sure they work,
...
and so vidalia can start handling them if it wants.
svn:r8802
2006-10-23 05:51:46 +00:00
Roger Dingledine
c804eea39d
build on 64-bit again
...
svn:r8801
2006-10-23 05:36:56 +00:00
Roger Dingledine
d48828dbe1
good thing we didn't have to track this bug down the old-fashioned way
...
svn:r8800
2006-10-23 05:29:40 +00:00
Nick Mathewson
4401c47f63
r9347@Kushana: nickm | 2006-10-23 01:24:48 -0400
...
Implement status event backend logic.
svn:r8799
2006-10-23 05:24:57 +00:00
Nick Mathewson
27a3f0da2b
r9320@Kushana: nickm | 2006-10-22 15:56:27 -0400
...
fix unittests; add more tests for smartlist stuff; make tests cache generated RSA keys (to speed up unittest run time by 30% and encourage people to run them more).
svn:r8796
2006-10-23 03:48:58 +00:00
Nick Mathewson
ed69c10b3f
r9319@Kushana: nickm | 2006-10-22 15:25:18 -0400
...
oops; include or.h changes for last patch.
svn:r8795
2006-10-23 03:48:52 +00:00
Nick Mathewson
42bab1c6d3
r9318@Kushana: nickm | 2006-10-22 15:22:57 -0400
...
Let directory authorities set the BadExit flag if they like. Also, refactor directory authority code so we can believe multiple things about a single router, and do fewer linear searches.
svn:r8794
2006-10-23 03:48:42 +00:00
Roger Dingledine
07cfeb0198
fix a minor memory leak every time we rebuild the router store,
...
fix a rare memory leak if something goes wrong while rebuilding it,
and clean up some code. nick, please confirm.
reported by "fookoowa" in flyspray 346 (yay!)
svn:r8789
2006-10-22 08:08:10 +00:00
Roger Dingledine
0f33a548c2
fix a string, pointed out by matt edman.
...
also fix a bug next to it that i noticed.
svn:r8784
2006-10-21 02:51:35 +00:00
Roger Dingledine
a0ec758f9e
stop writing arbitrary memory out on the controller port.
...
it's an ugly patch, but at least this way we can see that
it's fixed. maybe clean up the whole "@" syntax later on.
svn:r8783
2006-10-20 23:23:19 +00:00
Nick Mathewson
c9a01dea53
r9313@Kushana: nickm | 2006-10-20 17:04:11 -0400
...
Oops. Conform to spec.
svn:r8782
2006-10-20 21:04:44 +00:00
Nick Mathewson
01bc03eff4
r9312@Kushana: nickm | 2006-10-20 14:45:22 -0400
...
Add an event type to tell the controller when our opinion of a router status has changed. I might have missed some cases here.
svn:r8781
2006-10-20 21:04:39 +00:00
Roger Dingledine
0459db2c0d
checkpoint some changes as i read diffs
...
svn:r8780
2006-10-20 19:11:12 +00:00
Nick Mathewson
b27cb38dee
r9307@Kushana: nickm | 2006-10-20 13:53:54 -0400
...
Have connection_about_to_close use an end_reason field in edge_connection_t to tell what reason to tell the controller for closing the stream. Set end_reason in connection_edge_end, connection_mark_unattached_ap, and everwhere we set edge_has_sent_end. Add a changelog entry.
svn:r8779
2006-10-20 17:54:48 +00:00
Nick Mathewson
8e94097edb
r9306@Kushana: nickm | 2006-10-20 13:27:43 -0400
...
Enable reasons for stream events in all cases but CLOSED in about_to_close_connection. That one will take a little longer.
svn:r8778
2006-10-20 17:54:43 +00:00
Nick Mathewson
12af87539b
r9303@Kushana: nickm | 2006-10-20 12:07:34 -0400
...
Start implementing reason extension for stream events to match the one one used by circuit events. (Not a complete implementation yet; actual reasons are not passed to control.c)
svn:r8777
2006-10-20 17:54:36 +00:00
Nick Mathewson
c8c36dd227
r9304@dhcp-18-188-67-85: nickm | 2006-10-20 12:22:46 -0400
...
Change HT_INIT from a special-case to a macro-calling-a-function like the rest of ht.h. This might prevent errors if somebody did, I dunno, "HT_INIT(tp, hashtable++)". Based on a patch from Watson Ladd.
svn:r8776
2006-10-20 16:22:53 +00:00
Nick Mathewson
2d7cf75e42
r9298@dhcp-18-188-67-85: nickm | 2006-10-20 11:25:07 -0400
...
Weasel correctly notes that we should not discard the return value from connection_exit_begin_con. Right now, the return value is always discardable, so this does not actually cause a bug, but it might later. So fix it.
svn:r8774
2006-10-20 15:26:02 +00:00
Nick Mathewson
e5f064c983
r9290@31-35-219: nickm | 2006-10-20 10:32:33 -0400
...
Add a GETINFO target so controllers can ask Tor for the current state of a router. (Results given in networkstatus format.)
svn:r8772
2006-10-20 14:58:29 +00:00
Nick Mathewson
136ed33071
r9289@31-35-219: nickm | 2006-10-20 09:43:22 -0400
...
Fix longstanding bug in connection_exit_begin_conn(): Since connection_edge_end() exits when the connection is unattached, we were never sending RELAY_END cells back for failed RELAY_BEGIN attempts. Fix this. This might make clients that were otherwise timing out either fail faster or retry faster, which is good news for us.
svn:r8770
2006-10-20 14:57:46 +00:00
Nick Mathewson
7f8d9e8af2
r9287@Kushana: nickm | 2006-10-19 19:28:31 -0400
...
Weasel points out that a routerdesc requested by digest can never change. Weasel is right.
svn:r8766
2006-10-19 23:28:38 +00:00
Nick Mathewson
974bdee183
r9277@Kushana: nickm | 2006-10-19 19:03:05 -0400
...
Add pragma:no-cache and expires headers so that directory lookups can work better in the presence of caching HTTP proxies. (I would have used Cache-Control, but that is an HTTP/1.1 thing.) All timeouts are currently wild-assed guesses.
svn:r8765
2006-10-19 23:05:34 +00:00
Nick Mathewson
f47c49228d
r9276@Kushana: nickm | 2006-10-19 17:08:15 -0400
...
Add some more unit tests for policies.
svn:r8764
2006-10-19 23:05:25 +00:00
Nick Mathewson
96caedecc7
r9275@Kushana: nickm | 2006-10-19 16:45:19 -0400
...
Split smartlist tests into their own function, and add a couple more. Re-enable strmap iteration tests. Remove tests for code that doesnt exist any more (parse_nickname_list, identity ciphers).
svn:r8763
2006-10-19 23:05:19 +00:00
Nick Mathewson
7551c44a53
r9274@Kushana: nickm | 2006-10-19 16:16:58 -0400
...
Add unit tests for tor_mmap_file(); make tor_mmap_t.size always be the size of the file (not the size of the mapping); add an extra argument to read_file_to_str() so it can return the size of the result string.
svn:r8762
2006-10-19 23:05:02 +00:00
Nick Mathewson
126a3f699a
r9273@Kushana: nickm | 2006-10-19 15:43:39 -0400
...
Never discard a descriptor for being too old until either it is recommended by no authorities, or until we download a better (more recent and recommended) one for the same router. This will eventually make it possible for servers to publish less often.
svn:r8761
2006-10-19 23:04:56 +00:00
Nick Mathewson
bfdb93d8bd
r9272@Kushana: nickm | 2006-10-19 12:52:37 -0400
...
Fix an XXX in handling destroy cells: when we get a destroy cell with reason FOO, do not tell the controller REASON=FOO. Instead, say REASON=DESTROYED REMOTE_REASON=FOO. Suggested by a conversation with Mike Perry.
svn:r8760
2006-10-19 23:04:49 +00:00
Nick Mathewson
4443934702
r9091@totoro: nickm | 2006-10-19 11:45:28 -0400
...
Change to BadExit logic: Let authorities set an "I list bad exits" flag. Consider an exit bad if it is listed as bad by more than half of *those* authorities. This gives us a better migration path.
svn:r8756
2006-10-19 15:45:48 +00:00
Nick Mathewson
df40c2e1ca
r9080@totoro: nickm | 2006-10-19 11:00:16 -0400
...
Oops, forgot the patch: Use corect macro to detect cygwin builds (patch from Pei Hanru)
svn:r8754
2006-10-19 15:02:02 +00:00
Nick Mathewson
3c459a7397
r9077@totoro: nickm | 2006-10-18 11:41:16 -0400
...
Another patch from Mike Perry; sprintfing a NULL pointer. (with comment).
svn:r8747
2006-10-18 15:41:46 +00:00
Nick Mathewson
efbe87cb6c
r9062@totoro: nickm | 2006-10-17 11:19:43 -0400
...
Fix -Wlots with command.c (a uchar is never -1). Note also that one of our ifs is very stupid.
svn:r8741
2006-10-17 15:20:20 +00:00
Nick Mathewson
faf7445255
r9061@totoro: nickm | 2006-10-17 11:18:28 -0400
...
Oops. Libevent 1.2 exists. Add it to our enum, even though we dont care yet.
svn:r8740
2006-10-17 15:20:15 +00:00
Nick Mathewson
b713b370bf
r9060@totoro: nickm | 2006-10-17 11:12:48 -0400
...
Apply patch from Mike Perry: add more reasons for circuit destroys. (Slightly tweaked to avoid allocating a number for an "internal" reason.)
svn:r8739
2006-10-17 15:20:00 +00:00
Roger Dingledine
7d33c4b904
clean up and downgrade some log messages
...
svn:r8727
2006-10-15 07:42:51 +00:00
Roger Dingledine
584d598e8a
move the 'time jump' warning back to a higher threshold.
...
this still occurs on moria sometimes if it's swapping to death.
so be it.
svn:r8725
2006-10-15 02:32:16 +00:00
Nick Mathewson
45b16c2d9e
r9021@totoro: nickm | 2006-10-13 01:42:45 -0400
...
Fix for last patch. "", though empty, is true. This ain't Python, Nick.
svn:r8701
2006-10-13 05:42:57 +00:00
Nick Mathewson
d453fd3709
r9019@totoro: nickm | 2006-10-13 01:32:34 -0400
...
Fix extraneous space in CIRC events when path is empty.
svn:r8700
2006-10-13 05:36:00 +00:00
Nick Mathewson
78043b8478
r9017@totoro: nickm | 2006-10-13 01:27:33 -0400
...
Second patch to work on circuit close reasons from Mike Perry. Disabled partially; see comment. Whitespace cleaned up.
svn:r8699
2006-10-13 05:27:59 +00:00
Nick Mathewson
eca28f24f5
r9004@totoro: nickm | 2006-10-11 18:05:24 -0400
...
Add client support for a 'BadExit' flag, so authorities can say "Server X is a poor choise for your nytimes.com connections, as it seems to direct them to HoorayForMao.com or (more likely) WouldYouLikeToBuyTheseFineEncyclopedias.com"
svn:r8690
2006-10-11 22:06:01 +00:00
Nick Mathewson
97e17d817b
r8985@totoro: nickm | 2006-10-10 19:39:57 -0400
...
Fix a signed/unsigned compare in eventdns.c
svn:r8685
2006-10-10 23:46:33 +00:00
Roger Dingledine
552d828def
- Stop triggering asserts if the controller tries to extend hidden
...
service circuits.
(also found by mwenge)
svn:r8682
2006-10-09 22:26:21 +00:00
Roger Dingledine
655859f76b
When reporting verbose nicknames in entry_guards_getinfo(), avoid
...
printing a duplicate "$" in the keys we send. (Reported by mwenge)
svn:r8681
2006-10-09 21:26:34 +00:00
Roger Dingledine
86263acf95
Security bugfixes:
...
When the user sends a NEWNYM signal, clear the client-side DNS
cache too. Otherwise we continue to act on previous information.
svn:r8679
2006-10-09 21:11:50 +00:00
Roger Dingledine
81dd9720f2
whitespace tweaks
...
svn:r8677
2006-10-09 20:54:51 +00:00
Nick Mathewson
69e0843f7c
r8983@totoro: nickm | 2006-10-09 14:19:18 -0400
...
Add missing ! to code to generate short/verbose nicknames for orconn events.
svn:r8674
2006-10-09 18:19:32 +00:00
Nick Mathewson
26283e69ba
r8973@totoro: nickm | 2006-10-09 11:45:47 -0400
...
Touch up last patch (to add REASON to CIRC events): make some reasons
more sensible, send reasons only to controllers that have enabled
extended events, and clean up whitespace.
svn:r8672
2006-10-09 15:47:50 +00:00
Nick Mathewson
b76fd968b4
r8972@totoro: nickm | 2006-10-09 10:36:22 -0400
...
Patch from Mike Perry: add a REASON field to closed and failed circ events.
svn:r8671
2006-10-09 15:47:27 +00:00
Nick Mathewson
17abfa6a6a
r8971@totoro: nickm | 2006-10-09 10:16:23 -0400
...
Move definition of ssize_t to torint.h
svn:r8670
2006-10-09 15:47:08 +00:00
Nick Mathewson
829bf4dcd0
r8970@totoro: nickm | 2006-10-09 10:12:53 -0400
...
Win32 patch from Matt Edman: fix compilation bugs by casting to int; defining SSIZE_T; defining USE_TWOS_COMPLEMENT in windows orconfig.h; and using the proper names for win32 functions on GetProcAddress. Also fixes bug 295.
svn:r8669
2006-10-09 15:46:21 +00:00
Roger Dingledine
c639fd8258
was this one we missed?
...
svn:r8666
2006-10-09 06:22:31 +00:00
Nick Mathewson
e618c15aff
r8967@totoro: nickm | 2006-10-08 23:38:50 -0400
...
Fix some test and warn failures in last commit
svn:r8665
2006-10-09 03:39:06 +00:00
Nick Mathewson
c6f2d725d0
r8957@totoro: nickm | 2006-10-08 22:35:17 -0400
...
The otherwise regrettable MIPSpro C compiler warns about values set but never used, and about mixing enums and ints; these are good warnings, and so should be fixed. This removes some dead code and some potential bugs. Thanks to pnx.
svn:r8664
2006-10-09 02:35:51 +00:00
Nick Mathewson
c341255034
r8956@totoro: nickm | 2006-10-08 22:25:27 -0400
...
Fix bug with handling EVENT_NEW_DESC with verbose nicknames enabled. Also, check for tor_vsnprintf failure in controller messages.
svn:r8663
2006-10-09 02:35:43 +00:00
Roger Dingledine
604b13c910
remove some old debugging code
...
svn:r8657
2006-10-08 23:20:43 +00:00
Nick Mathewson
d1c8fd9759
r8947@totoro: nickm | 2006-10-08 17:04:30 -0400
...
Fix signed/unsigned compare warning in eventdns.c
svn:r8654
2006-10-08 21:05:06 +00:00
Andrew Lewman
5227531744
Remove spurious void which causes builds to fail in mingw.
...
svn:r8650
2006-10-08 18:44:02 +00:00
Roger Dingledine
538c54e376
try dirport reachability testing five times less often.
...
it's already so darn thorough per test -- it chews through
like four circuits before giving up.
svn:r8646
2006-10-08 06:33:02 +00:00
Nick Mathewson
ea00437f74
r8933@totoro: nickm | 2006-10-07 20:33:16 -0400
...
whitespace fixes; add changelog for last commit.
svn:r8644
2006-10-08 00:33:43 +00:00
Nick Mathewson
1c01797c16
r8932@totoro: nickm | 2006-10-07 20:29:03 -0400
...
Try to make mingw capable of producing a working tor binary for win98: make all NT-service-related functions get lazy-loaded on demand. I have no idea if this even compiles.
svn:r8643
2006-10-08 00:33:35 +00:00
Nick Mathewson
e230fe8ea6
r8926@totoro: nickm | 2006-10-07 15:56:14 -0400
...
refactor circuit_list_path and circuit_list_path_verbose into a common _impl function.
svn:r8642
2006-10-07 19:56:49 +00:00
Nick Mathewson
f07f7a7a12
r8923@totoro: nickm | 2006-10-07 11:44:33 -0400
...
More doxygen comments
svn:r8637
2006-10-07 16:25:28 +00:00
Roger Dingledine
9fb98b269c
finish poking and prodding. i'm all happy now.
...
svn:r8633
2006-10-07 09:13:30 +00:00
Roger Dingledine
f2bd0e2f16
more minor cleanups
...
svn:r8630
2006-10-07 06:28:50 +00:00
Roger Dingledine
4f3827f1d1
resolve the entryguard uptime/capacity question. and mark a
...
new xxx that we'll want to address one day.
svn:r8628
2006-10-07 02:55:44 +00:00
Roger Dingledine
06e5b2283c
minor cleanups
...
svn:r8622
2006-10-07 00:50:39 +00:00
Roger Dingledine
1cf37f90c4
bugfix and cleanups re: entry guards.
...
svn:r8620
2006-10-06 23:37:07 +00:00
Roger Dingledine
864069f5c7
fix a size_t-to-len compile warning
...
svn:r8618
2006-10-06 22:37:10 +00:00
Roger Dingledine
1d4bd3990f
fetch all the v1 directory stuff way less often. plus, move
...
around some housecleaning calls so they still occur often.
are some of these redundant or in the wrong order? there are
so many of them, maybe they should be put into a separate
function that has better documentation.
svn:r8607
2006-10-06 09:04:11 +00:00
Roger Dingledine
d1b9de222e
cleanups, closer to a changelog
...
svn:r8606
2006-10-06 07:50:57 +00:00
Roger Dingledine
b6e590a1a5
reapply a patch from adam langley that got clobbered when
...
nick merged something back in
svn:r8605
2006-10-06 06:46:08 +00:00
Roger Dingledine
baf208d7b3
bugfix: When testing reachability of our dirport, don't launch a new
...
test if there's already one in progress.
svn:r8604
2006-10-06 04:02:27 +00:00
Nick Mathewson
c15dc2d94c
r9101@Kushana: nickm | 2006-10-05 23:05:11 -0400
...
Trivial fix for solaris build. Libevent will want to use its own fix here, and probably already has.
svn:r8601
2006-10-06 03:05:19 +00:00
Nick Mathewson
4767d533f7
r9097@Kushana: nickm | 2006-10-05 14:51:57 -0400
...
Make eventdns.c formatting a little closer to evdns.c in libevent; add some bulletproofing to APPEND16 macro; clean some messages.
svn:r8600
2006-10-05 19:22:26 +00:00
Roger Dingledine
64b5fd3194
checkpoint some cleanups
...
svn:r8599
2006-10-05 08:23:21 +00:00
Nick Mathewson
5391ceb21a
r9087@Kushana: nickm | 2006-10-04 01:19:15 -0400
...
We're trying to catch the kind of jerk who'd hijack zy6pzwohtnlq.test,
not the kind of lunatic who'd hijack zy6pzwohtnlq%s.test, though
apparently those exist too.
svn:r8595
2006-10-04 05:19:40 +00:00
Nick Mathewson
50320ac420
r8862@totoro: nickm | 2006-10-03 14:54:14 -0400
...
Make verbose names get used (when appropriate and selected) in responses to getinfo requests.
svn:r8593
2006-10-03 19:00:18 +00:00
Nick Mathewson
4c10464e13
r8861@totoro: nickm | 2006-10-03 14:49:54 -0400
...
Fix bug in r8579: TrackHostExits .foo.bar implies TrackHostExits foo.bar; also fix logic error.
svn:r8592
2006-10-03 19:00:12 +00:00
Nick Mathewson
1ae7282d9b
r8857@totoro: nickm | 2006-10-03 13:54:21 -0400
...
Implement ORCONN with verbose names.
svn:r8588
2006-10-03 18:59:52 +00:00
Nick Mathewson
55bd42d50f
r8841@totoro: nickm | 2006-10-02 15:59:21 -0400
...
Add EXTENDED_EVENTS to the USEFEATURE command; move flag from connection_t into control_conn, since we will probably grow more of these.
svn:r8585
2006-10-03 18:58:56 +00:00
Nick Mathewson
c796adc7df
r8840@totoro: nickm | 2006-10-02 15:56:16 -0400
...
Add USEFEATURE to control changes to control protocol. Use like __future__ directive from Python. Will spec before pushing changes. No, really. :)
svn:r8584
2006-10-03 18:58:52 +00:00
Nick Mathewson
eb0f51f2a3
r8839@totoro: nickm | 2006-10-02 15:31:49 -0400
...
Make a field longer to accomodate verbose nicknames; note that verbose nicknames will never reach this point.
svn:r8583
2006-10-03 18:58:47 +00:00
Nick Mathewson
6e0b90a902
r8838@totoro: nickm | 2006-10-02 15:24:39 -0400
...
Partial implementation of revised nickname syntax for controllers. Implement ability to look up routers by "verbose" nicknames; add a per-v1-control-connection flag to turn the feature on in events. Needs testing, spec, ability to actually turn on the flag, double-checking that we wont overflow any nickname buffers, and changelog.
svn:r8582
2006-10-03 18:58:40 +00:00
Roger Dingledine
246fecb585
the other half of the is_local_IP patch
...
svn:r8581
2006-10-03 05:45:58 +00:00
Nick Mathewson
4c56ac93ca
r8851@totoro: nickm | 2006-10-02 18:13:27 -0400
...
Remove/clarify some XXXs for no longer being accurate; for begin things we do not indend to fix; for already being parts of big todo issues (like "/* XXX ipv6 */"); etc. Also fix some spaces.
svn:r8580
2006-10-02 22:13:42 +00:00
Nick Mathewson
4de9f45d6f
r8850@totoro: nickm | 2006-10-02 17:21:11 -0400
...
Make TrackExitHosts case-insensitive, and fix the behavior of .suffix TrackExitHosts items to avoid matching in the middle of an address. (Resolves an XXXX)
svn:r8579
2006-10-02 22:13:37 +00:00
Nick Mathewson
bff83b666c
r8846@totoro: nickm | 2006-10-02 16:59:57 -0400
...
Move is_local_IP to config.c; have it check for same-/24; make it used only for reachability (not for banwidth, because that is probably not what we want). Fixes an XXX.
svn:r8578
2006-10-02 21:00:35 +00:00
Nick Mathewson
14f9b537d1
r8835@totoro: nickm | 2006-10-02 12:54:41 -0400
...
Improve error messages from AUTHENTICATE attempts to controller.
svn:r8574
2006-10-02 18:08:46 +00:00
Roger Dingledine
a3efc8e3d1
- V1 authorities should set "HSAuthoritativeDir 1" to continue being
...
hidden service authorities too.
- Just because your DirPort is open doesn't mean people should be
able to remotely teach you about hidden service descriptors. Now
only accept rendezvous posts if you've got HSAuthoritativeDir set.
svn:r8573
2006-10-01 22:16:55 +00:00
Nick Mathewson
57ffca883d
r8826@totoro: nickm | 2006-10-01 17:58:45 -0400
...
Disprefer exit nodes for entry, middle positions (fixes bug 200). Also, switch to using a uint64_t to hold "total bandwidth for all nodes" under consideration; crypt_rand_int would have died at 2GB/s network capacity.
svn:r8571
2006-10-01 21:59:09 +00:00
Roger Dingledine
3fcf736c83
misc touchups
...
svn:r8568
2006-10-01 21:42:44 +00:00
Nick Mathewson
ce72a9914e
r8822@totoro: nickm | 2006-10-01 16:24:22 -0400
...
Fix bug 303: reject attempts to use Tor as a one-hop proxy.
svn:r8566
2006-10-01 20:50:11 +00:00
Roger Dingledine
7ed921708f
Track down a seg fault that's been bothering me a while: if you
...
enable your dirport as a client, you'll crash.
svn:r8561
2006-10-01 07:53:17 +00:00
Roger Dingledine
4096e577c5
if we fail to build a circuit to an intended enclave, and it's
...
not mandatory that we use that enclave, stop wanting it.
svn:r8559
2006-10-01 06:41:13 +00:00
Roger Dingledine
96a4cb1dfa
touchups
...
svn:r8558
2006-10-01 04:55:12 +00:00
Roger Dingledine
e6f4431722
stop trying to hammer router_rebuild_descriptor() when we don't
...
have a public address we like yet.
svn:r8554
2006-09-30 20:40:26 +00:00
Roger Dingledine
0fb7a7de95
Bugfix: when we tunnel our dir fetches via tor, don't believe
...
the X-Forwarded-For header.
svn:r8553
2006-09-30 20:14:15 +00:00
Nick Mathewson
fc9dd98d4c
r8805@totoro: nickm | 2006-09-30 16:07:13 -0400
...
Oops; nameserver list is circular.
svn:r8552
2006-09-30 20:07:37 +00:00
Roger Dingledine
075cb54d9b
make hidden service predicted circuits correct rather than
...
exactly incorrect. i wonder how much this will help.
svn:r8550
2006-09-30 19:22:24 +00:00
Nick Mathewson
723ff1c93d
r8800@totoro: nickm | 2006-09-29 23:10:49 -0400
...
Resolve bug 336: When displaying circuit paths with non-named routers, use their digests, not their nicknames.
svn:r8548
2006-09-30 03:11:13 +00:00
Nick Mathewson
2cb956d1f5
r9036@Kushana: nickm | 2006-09-29 18:59:51 -0400
...
I am glad that arma reviews my patches.
svn:r8546
2006-09-29 22:59:59 +00:00
Nick Mathewson
c2d304366b
r9032@Kushana: nickm | 2006-09-29 18:51:42 -0400
...
Now, all log messages should be distinct.
svn:r8545
2006-09-29 22:51:47 +00:00
Nick Mathewson
7d366f61cb
r9025@Kushana: nickm | 2006-09-29 18:33:13 -0400
...
Differentiate more duplicated log entries
svn:r8542
2006-09-29 22:33:40 +00:00
Nick Mathewson
8308a37908
r9023@Kushana: nickm | 2006-09-29 17:27:24 -0400
...
Make distinct all non-bug messages at notice or higher that appear 3 or more times.
svn:r8541
2006-09-29 22:33:34 +00:00
Nick Mathewson
b21e656eaf
r9007@Kushana: nickm | 2006-09-29 13:17:32 -0400
...
Make eventdns give strings for DNS errors, not just error numbers.
svn:r8535
2006-09-29 18:13:33 +00:00
Nick Mathewson
0335bd51d3
r9005@Kushana: nickm | 2006-09-29 10:37:55 -0400
...
Implement DESCCHANGED event to tell controller when our router descriptor changes.
svn:r8533
2006-09-29 18:13:25 +00:00
Nick Mathewson
8992bf6204
r8776@totoro: nickm | 2006-09-29 00:50:46 -0400
...
Reserve the nickname "Unnamed" for routers that can't pick a hostname; any
router can call itself Unnamed; directory servers will never allocate Unnamed
to any particular router; clients won't believe that any router is the
canonical Unnamed.
svn:r8529
2006-09-29 04:51:28 +00:00
Nick Mathewson
9dbfb91f17
r8997@Kushana: nickm | 2006-09-28 23:40:22 -0400
...
[Needs review.] Add a BEGIN_DIR relay cell type for an easier
in-protocol way to connect to directory servers through Tor.
Previously, clients could only connect to director servers over Tor
from exit nodes, but couldn't get directory information anonymously
from a non-exit cache without getting a directory server involved.
This needs testing, and needs client-side code to actually exercise it.
svn:r8527
2006-09-29 03:50:11 +00:00
Roger Dingledine
4791a4f1c9
combine the cutoff log entries
...
svn:r8524
2006-09-29 00:19:43 +00:00
Nick Mathewson
907fc6c73e
r8977@Kushana: nickm | 2006-09-28 19:56:41 -0400
...
Make "is a v1 authority", "is a v2 authority", and "is a hidden service authority" into separate flags so we can eventually migrate more trust away from moria.
svn:r8523
2006-09-28 23:57:59 +00:00
Nick Mathewson
1a444e089a
r8976@Kushana: nickm | 2006-09-28 17:18:57 -0400
...
Another tweak to guard logic: ignore check for the Guard flag if a server is listed on EntryNodes. (Also remove redundant checks for always-set variables.)
svn:r8522
2006-09-28 23:57:56 +00:00
Nick Mathewson
d174cccd0b
r8975@Kushana: nickm | 2006-09-28 17:13:53 -0400
...
Document entry-guard related functions
svn:r8521
2006-09-28 23:57:52 +00:00
Nick Mathewson
d3a06684bc
r8974@Kushana: nickm | 2006-09-28 17:05:59 -0400
...
Improvement to last entry guards patch: track when we last attempted to connect to a node in our state file along with how long it has been unreachable. Also clarify behavior of parse_iso_time() when it gets extra characters.
svn:r8520
2006-09-28 23:57:49 +00:00
Nick Mathewson
9988112c87
r8973@Kushana: nickm | 2006-09-28 16:53:19 -0400
...
Refactor entry guard status logic a lot; allow more factors [like not
having a Guard flag or being listed in ExcludeNodes] to render a guard
"unlisted" (now called "unusable"); track guard down status (now
called "unreachable") separately from is_running.
svn:r8519
2006-09-28 23:57:44 +00:00
Peter Palfrader
bc25e87754
r9897@danube: weasel | 2006-09-29 01:08:44 +0200
...
Add a space in a wrapped log message
svn:r8517
2006-09-28 23:08:54 +00:00
Peter Palfrader
c339bd2713
r9895@danube: weasel | 2006-09-29 01:05:00 +0200
...
Restore to previous wording that svk merging made me mess up
svn:r8516
2006-09-28 23:05:17 +00:00
Peter Palfrader
540fbaae75
r9889@danube: weasel | 2006-09-29 00:57:42 +0200
...
bandwidth is not measured in bytes
svn:r8515
2006-09-28 22:59:36 +00:00
Peter Palfrader
9e6c0b8b3b
r9888@danube: weasel | 2006-09-29 00:57:02 +0200
...
Also log guard bandwidth cutoff
svn:r8514
2006-09-28 22:59:25 +00:00
Peter Palfrader
14882b3ec0
r9770@danube: weasel | 2006-09-15 07:20:05 +0200
...
router_set_networkstatus() gets a list of status documents we asked for from
connection_dir_client_reached_eof(). However, as a cache we (sometimes?) just
ask for "all". router_set_networkstatus() would freak out over that, meaning
it would log a warning and drop the status document instead of caching it
as it is supposed to. Now we let router_set_networkstatus() know if the
data comes from an all-request so it can do the right thing.
svn:r8513
2006-09-28 22:58:58 +00:00
Nick Mathewson
95132f836a
r8750@totoro: nickm | 2006-09-27 20:52:01 -0400
...
Fix some warnings on mingw; hopefully this should let us build on mingw without warnings.
svn:r8509
2006-09-28 00:53:02 +00:00
Nick Mathewson
ba7868c7b3
r8969@Kushana: nickm | 2006-09-26 18:00:36 -0400
...
Remove a signed/unsigned comparison in eventdns.c
svn:r8508
2006-09-26 22:03:26 +00:00
Nick Mathewson
cd2425ffa0
r8968@Kushana: nickm | 2006-09-26 17:53:27 -0400
...
Fix for reverse dns: only assume we will get an answer when the result was success.
svn:r8507
2006-09-26 22:03:23 +00:00
Nick Mathewson
49ad1eefa1
Add an EnforceDistinctSubnets option so that clients who know what they are doing (mainly people with private testing networks) can disable our same-/16 detection.
...
svn:r8504
2006-09-25 22:12:54 +00:00
Nick Mathewson
01f9e97d43
Minor fix: add code to eventdns so it can free memory on shutdown. This should help valgrind and dmalloc freak out less.
...
svn:r8503
2006-09-25 20:38:58 +00:00
Nick Mathewson
52e179b942
Trivial fix to make dmalloc happier: release memory held in static member of escaped().
...
svn:r8502
2006-09-25 18:46:29 +00:00
Nick Mathewson
4fe76e7b6b
Free named_server_map on shutdown.
...
svn:r8500
2006-09-25 16:06:39 +00:00
Roger Dingledine
ad430b9561
checkpoint changelog and general polishing
...
svn:r8497
2006-09-25 05:59:13 +00:00
Roger Dingledine
bc848c8740
add 6697 (ircs) as longlivedport.
...
svn:r8496
2006-09-25 05:24:43 +00:00
Roger Dingledine
bda137501e
whitespace cleanups
...
svn:r8485
2006-09-24 20:54:59 +00:00
Nick Mathewson
11b4296b0b
Marge changes from libevent evdns to our eventdns. Most are cosmetic, but one or two are stability-related. This should make it easier to push our changes back towards libevent.
...
svn:r8482
2006-09-24 17:52:23 +00:00
Nick Mathewson
d3af1f2189
Backport candidate: Fix a long-standing server-side DNS bug. When a
...
client asks us to resolve (not connect to) an address, and we have a
cached answer, give them the cached answer. Previously, we would give
them no answer at all.
svn:r8478
2006-09-24 17:05:00 +00:00
Nick Mathewson
4218f09820
r8910@Kushana: nickm | 2006-09-22 12:14:05 -0400
...
Instead of just checking known-invalid addresses for DNS hijacking, we
now check randomly generated addresses, and if too many of them map to
the same IP, we assume that IP is the destination of a DNS hijack
attempt.
A little bird tells me that some DNS hijackers think that declining to
give an A record for RFC2606 addresses (like .invalid and .example)
makes them more standards compliant. Standardswise, this is like an
illicit brothel making sure that nobody has pulled the tags off the
mattresss, but that doesn't get us out of working around it.
svn:r8465
2006-09-22 20:20:26 +00:00
Nick Mathewson
bde5939ad3
r8909@Kushana: nickm | 2006-09-22 00:38:13 -0400
...
Consider changes to has_old_dnsworkers as noncosmetic
svn:r8464
2006-09-22 20:20:21 +00:00
Roger Dingledine
aa77298819
remove 8888 as a long lived port. i can't remember why it's
...
on the list.
svn:r8461
2006-09-22 19:29:26 +00:00
Nick Mathewson
f0f3bbc63b
r8901@Kushana: nickm | 2006-09-21 20:43:48 -0400
...
I tracked a bug in server-side reverse DNS to something concerning the caching code. Ive disabled server-side cacheing for reverse DNS answers for now, and I am noting the bug in the TODO.
svn:r8454
2006-09-22 00:45:08 +00:00
Nick Mathewson
6b3f6afb58
r8895@Kushana: nickm | 2006-09-21 20:05:11 -0400
...
Debug client-side reverse dns code.
svn:r8452
2006-09-22 00:44:07 +00:00
Nick Mathewson
213658f117
r8894@Kushana: nickm | 2006-09-21 18:30:42 -0400
...
Specify and implement SOCKS5 interface for reverse hostname lookup.
svn:r8451
2006-09-22 00:43:55 +00:00
Roger Dingledine
9bc8d69dfc
remove some loud log messages
...
svn:r8450
2006-09-22 00:24:27 +00:00
Nick Mathewson
29a756af8e
Fix a couple of server-side reverse dns bugs
...
svn:r8449
2006-09-22 00:10:26 +00:00
Nick Mathewson
63395c747c
Fix stupid C mistake. Glad I caught that one fast.
...
svn:r8448
2006-09-21 22:57:07 +00:00
Nick Mathewson
58200f06a5
Fix bug in r8440: base32 uses 5 bytes per char, not 4.
...
svn:r8447
2006-09-21 22:24:45 +00:00
Nick Mathewson
4f13cb82fd
r8881@Kushana: nickm | 2006-09-21 17:27:59 -0400
...
Allow resolve requests to non-exits when they are specifically requested (via resolve foo.bar.exit).
svn:r8446
2006-09-21 21:49:36 +00:00
Nick Mathewson
59f9487225
r8880@Kushana: nickm | 2006-09-21 17:26:02 -0400
...
Trivial patch to appease warn-happy gcc: mark unused parameter
svn:r8445
2006-09-21 21:49:15 +00:00
Nick Mathewson
adade79f68
r8879@Kushana: nickm | 2006-09-21 17:20:31 -0400
...
Oops from earlier patch; add "opt eventdns" to unittests, fix bug in routerdesc generation.
svn:r8444
2006-09-21 21:49:03 +00:00
Nick Mathewson
7c21dabef1
r8878@Kushana: nickm | 2006-09-21 17:15:47 -0400
...
Trivial whitespace cleanups.
svn:r8443
2006-09-21 21:48:55 +00:00
Nick Mathewson
6a1746f98f
r8877@Kushana: nickm | 2006-09-21 17:12:33 -0400
...
Consider non-exit servers unsuitable for RESOLVE commands.
svn:r8442
2006-09-21 21:48:42 +00:00
Nick Mathewson
d273d52979
r8876@Kushana: nickm | 2006-09-21 16:58:46 -0400
...
Trivial cleanup: !!x is a weird way to spell x != NULL.
svn:r8441
2006-09-21 21:48:37 +00:00
Nick Mathewson
e4a9b4de4e
r8875@Kushana: nickm | 2006-09-21 16:46:28 -0400
...
Resolve bug 330: detect ISPs that want to hijack failing DNS requests and basically domain-squat the entire internet.
svn:r8440
2006-09-21 21:48:22 +00:00
Nick Mathewson
04bec67574
r8874@Kushana: nickm | 2006-09-21 15:22:27 -0400
...
Rename and document SearchDomains and ResolvConf options; warn if ServerDNSResolvConfFile is given but eventdns isnt enabled.
svn:r8439
2006-09-21 21:48:16 +00:00
Nick Mathewson
083e9c2b59
r8873@Kushana: nickm | 2006-09-21 14:38:22 -0400
...
Fix a bug: Remember, each call to escaped() replaces the value returned from the last call to escaped().
svn:r8438
2006-09-21 21:48:11 +00:00
Nick Mathewson
a942441615
r8872@Kushana: nickm | 2006-09-21 14:00:20 -0400
...
Implement server-side reverse DNS using eventdns. Add an option to routerdescs so we can tell which servers have eventdns enabled.
svn:r8437
2006-09-21 21:48:06 +00:00
Nick Mathewson
6b716fdfb9
NEEDS REVIEW. Act on previous comment, and handle named servers differently: now, we allow multiple servers with the same name in the routerlist even if that name is reserved, but we check whether names are reserved when we try to look up routers by nickname. This is a minor security fix. This makes router_add_to_routerlist O(1). This is a backport candidate.
...
svn:r8433
2006-09-19 23:48:14 +00:00
Nick Mathewson
5ebb949c9f
Stop searching routerlist for routers with the same identity as other routers (on router insert): we already have a map for that. (We need to add an index field to routerinfo_t so we can figure out which point in the routerlist to replace.) Also, add a comment to routerlist.c; arma, please advise?
...
svn:r8432
2006-09-19 23:18:30 +00:00
Nick Mathewson
7b0ec744bc
Switch routerlist.c to using memcmp on digests rather than crypto_pk_cmp_keys(); speed up find_whitespace a lot (8x for me) by using a switch statement. This should speed parsing a lot of routers at once by a lot.
...
svn:r8430
2006-09-19 22:20:09 +00:00
Roger Dingledine
e9abe750ea
eventdns patch from Adam Langley
...
svn:r8429
2006-09-19 21:37:03 +00:00
Nick Mathewson
4bc42f4c18
Fix a bogus free() in eventdns.c. Bug reported by xiando.
...
svn:r8428
2006-09-19 20:45:20 +00:00
Nick Mathewson
93beeac01d
Merge in some bsockets calls, all wrapped inside #if defined(USE_BSOCKETS)
...
svn:r8427
2006-09-19 20:41:31 +00:00
Roger Dingledine
0494e271e7
good god, that was a bad idea. i've built 500 circuits in the past 5
...
minutes, trying to establish reachability of my unreachable server.
svn:r8415
2006-09-18 04:59:15 +00:00
Roger Dingledine
4920b9d1cc
Fix two bugs: first, "extendcircuit" would crash if you gave it a purpose.
...
Second, if you give an unknown purpose, it would say:
552 Unknown purpose "purpose=foo"
Now it just says
552 Unknown purpose "foo"
svn:r8412
2006-09-18 04:24:41 +00:00
Nick Mathewson
65974f82fa
r8839@Kushana: nickm | 2006-09-17 16:11:59 -0400
...
Add some client performance XXXXs; try to move some common case tests higher on their decision trees.
svn:r8410
2006-09-17 20:12:10 +00:00
Roger Dingledine
b049b1b014
build testing circuits more rapidly. this has a failure mode
...
where if circuits fail quickly, we'll fail a lot of them very
quickly and not retry for a while. so be it.
svn:r8407
2006-09-17 06:18:06 +00:00
Roger Dingledine
bfa78b3dea
actually, do the bandwidth test anyway, if you've been up at
...
least 6 hours at your previous address.
svn:r8403
2006-09-15 18:07:11 +00:00
Roger Dingledine
a51ec44466
avoid thrashing the bandwidth exercise when we change IPs a lot.
...
(we avoid simply by not doing any new tests when we change IPs --
it looks like we retain our previous bandwidth estimates, so there's
no need to do new exercise. though in some cases new exercises may
still be useful. one day we'll do something smarter.)
svn:r8402
2006-09-15 18:03:53 +00:00
Roger Dingledine
c22dc94fe6
make my bandwidth exercises actually happen
...
svn:r8400
2006-09-15 05:53:00 +00:00
Roger Dingledine
769f9201a6
Send out a burst of long-range drop cells after we've established that
...
we're reachable. Spread them over 4 circuits, so hopefully a few will
be fast. This exercises our bandwidth and bootstraps us quicker.
svn:r8399
2006-09-15 05:30:25 +00:00
Peter Palfrader
ba091ae5d7
r9770@danube: weasel | 2006-09-15 07:20:05 +0200
...
router_set_networkstatus() gets a list of status documents we asked for from
connection_dir_client_reached_eof(). However, as a cache we (sometimes?) just
ask for "all". router_set_networkstatus() would freak out over that, meaning
it would log a warning and drop the status document instead of caching it
as it is supposed to. Now we let router_set_networkstatus() know if the
data comes from an all-request so it can do the right thing.
svn:r8398
2006-09-15 05:20:16 +00:00
Peter Palfrader
5beb114744
r9767@danube: weasel | 2006-09-15 06:27:48 +0200
...
Minor documentation fix
svn:r8397
2006-09-15 04:29:36 +00:00
Nick Mathewson
e58b9c1151
r8819@Kushana: nickm | 2006-09-15 00:27:45 -0400
...
Implement a smartlist_uniq() that will with luck not end the world.
svn:r8396
2006-09-15 04:27:58 +00:00
Nick Mathewson
ce83f43629
r8817@Kushana: nickm | 2006-09-14 18:31:29 -0400
...
Patch from steve hildrey: Generate network status correctly on non-versioning dirservers
svn:r8395
2006-09-14 22:34:57 +00:00
Peter Palfrader
2cf6cfe189
r9758@danube: weasel | 2006-09-14 07:10:12 +0200
...
Add a comment
svn:r8391
2006-09-14 05:17:02 +00:00
Peter Palfrader
7fcec09560
r9753@danube: weasel | 2006-09-14 07:07:02 +0200
...
Remove duplicates from MyFamily
svn:r8390
2006-09-14 05:07:34 +00:00
Peter Palfrader
9d9e31dcf4
r9752@danube: weasel | 2006-09-14 07:06:49 +0200
...
Fix some dead code that is on occasion useful
svn:r8389
2006-09-14 05:07:26 +00:00
Nick Mathewson
4f888c9dfc
r8808@senior-two-eighty: nickm | 2006-09-14 00:59:54 -0400
...
House style for no-args functions is old-style C, not C++
svn:r8388
2006-09-14 05:00:02 +00:00
Peter Palfrader
984e8f6efb
r9736@danube: weasel | 2006-09-14 05:53:06 +0200
...
Refactor dirserv_parse_fingerprint_file(fname) into dirserv_load_fingerprint_file():
There is not need to put together the path to the approved-routers file in more than one place.
svn:r8386
2006-09-14 04:53:23 +00:00
Nick Mathewson
1852f503cf
r8776@Kushana: nickm | 2006-09-11 22:49:53 -0400
...
Avoid crash when telling controller stream-status and a stream is detached. Fixes bug 334. Backport candidate.
svn:r8370
2006-09-12 02:50:14 +00:00
Roger Dingledine
e56dbb810f
start remembering X-Your-Address-Is hints even if you're
...
a client, so you can become a server more smoothly.
svn:r8359
2006-09-09 19:36:51 +00:00
Roger Dingledine
9af3175687
parameterize the loudness of get_interface_address()
...
svn:r8358
2006-09-09 19:20:27 +00:00
Roger Dingledine
5f6351ceb3
fix typo, add log message
...
svn:r8357
2006-09-09 19:16:07 +00:00
Roger Dingledine
0c3cc15898
fix encoding in "getinfo addr-mappings" response.
...
fix error code when "getinfo dir/status/" fails.
svn:r8355
2006-09-09 03:38:03 +00:00
Roger Dingledine
29b6d6560e
add a "getinfo address" controller command.
...
svn:r8354
2006-09-09 03:18:39 +00:00
Roger Dingledine
25cb9453d7
possibly make tor build and run on cygwin again.
...
svn:r8353
2006-09-08 20:48:43 +00:00
Peter Palfrader
fdd56dee69
r9695@danube: weasel | 2006-09-08 18:11:53 +0200
...
Make tor build with -O0
svn:r8352
2006-09-08 16:12:15 +00:00
Mike Chiussi
f9f281251b
another typo
...
svn:r8351
2006-09-08 09:05:07 +00:00
Mike Chiussi
1ee88bb01a
fixed typo in eventdns.c
...
svn:r8350
2006-09-08 09:02:14 +00:00
Nick Mathewson
c063c7b8cb
r8757@Kushana: nickm | 2006-09-07 13:07:46 -0400
...
Fix more compile warnings on Woody.
svn:r8349
2006-09-07 19:00:51 +00:00
Nick Mathewson
8a12d9ae2e
r8755@Kushana: nickm | 2006-09-07 12:31:57 -0400
...
Tabify eventdns
svn:r8348
2006-09-07 16:32:06 +00:00
Nick Mathewson
4246490b81
r8753@Kushana: nickm | 2006-09-07 12:23:25 -0400
...
Make eventdns spacing consistant
svn:r8347
2006-09-07 16:24:19 +00:00
Mike Chiussi
5d773af545
undid whitespace changes to dns.c
...
svn:r8346
2006-09-07 06:36:22 +00:00
Mike Chiussi
b931994c6a
fixed win32 eventdns snafu
...
svn:r8345
2006-09-07 06:34:20 +00:00
Mike Chiussi
c40acb86f4
- got rid of tabs
...
svn:r8344
2006-09-07 04:02:52 +00:00
Mike Chiussi
3c85780e69
- got rid of tabs (i think)
...
svn:r8343
2006-09-07 03:58:46 +00:00
Mike Chiussi
5af47d1641
- added some debugging lines to load_nameservers_from_registry()
...
svn:r8342
2006-09-07 03:53:14 +00:00
Roger Dingledine
ae67a044f0
clean up some comments
...
svn:r8338
2006-09-07 01:23:15 +00:00
Roger Dingledine
43edbf0461
prefer calling it a client rather than an OP
...
svn:r8334
2006-09-07 01:00:37 +00:00
Mike Chiussi
879fe91d88
rm'ed a tab (sorry)
...
svn:r8333
2006-09-07 00:54:28 +00:00
Mike Chiussi
91d7ad660f
- fixed up typos in eventdns.c
...
- configure lets user build with eventdns on win32
svn:r8332
2006-09-07 00:51:20 +00:00
Roger Dingledine
5a8563baed
new config option AvoidDiskWrites for people running tors on
...
usb keys and other media that degrades when you write.
not implemented yet, so just a reminder.
svn:r8331
2006-09-07 00:30:29 +00:00
Nick Mathewson
7ed528c5c5
r8733@Kushana: nickm | 2006-09-06 17:35:22 -0400
...
Add some missing defines to eventdns.c for windows.
svn:r8330
2006-09-06 21:35:30 +00:00
Nick Mathewson
1e26233957
r8731@Kushana: nickm | 2006-09-06 16:33:19 -0400
...
Try to fix eventdns.c build on windows.
svn:r8329
2006-09-06 20:33:28 +00:00
Nick Mathewson
e10e921386
r8729@Kushana: nickm | 2006-09-06 16:20:40 -0400
...
Fix dns_cancel_pending_resolve() to realize pending resolves have expiry times, and should not be freed except when they fall off the pqueue.
svn:r8328
2006-09-06 20:22:05 +00:00
Nick Mathewson
365ccf0742
r8725@Kushana: nickm | 2006-09-06 04:39:29 -0400
...
spawn_func fixes: have cpuworker_main and dnsworker_main confirm to the right interfaces [casting func to void* is icky]. Also, make pthread_create() build without warnings.
svn:r8327
2006-09-06 08:42:20 +00:00
Nick Mathewson
000b7b287c
r8724@Kushana: nickm | 2006-09-06 04:32:28 -0400
...
Fix spaces; restore support for mapping files over 4GB on win32 (?)
svn:r8326
2006-09-06 08:42:16 +00:00
Mike Chiussi
6ec9c1092a
- made configure check if we are building for win32
...
- made configure link to required system dll's if building for win32
- added diffs for libevent 1.1b
- forced user to turn off eventdns if win32 is set
- cleaned up tor_mmap_file()_win32 (not sure if it's stable)
- cleaned up some warnings and typos
svn:r8322
2006-09-06 01:49:55 +00:00
Roger Dingledine
585ae26783
patch from tup
...
svn:r8321
2006-09-05 14:30:06 +00:00
Nick Mathewson
b40e639f15
r8708@Kushana: nickm | 2006-09-02 20:34:15 -0400
...
Fix warnings reported by weasel when compiling Tor on Debian woody.
svn:r8318
2006-09-03 02:13:52 +00:00
Nick Mathewson
21a7880358
r8695@Kushana: nickm | 2006-08-31 14:35:36 -0400
...
Fix two corner cases in router_dir_info_changed(). This should have no observable effect.
svn:r8311
2006-08-31 18:46:46 +00:00
Nick Mathewson
f170e5798f
r8692@Kushana: nickm | 2006-08-31 13:38:07 -0400
...
Fix bug 327 (part 2): Cast char to unsigned char before passing to toupper/tolower. (Follow the same idiom as with isupper and friends, in case we run into the same problem on SGI or whereever it was.)
svn:r8310
2006-08-31 17:39:51 +00:00
Nick Mathewson
921bfdb40a
r8687@Kushana: nickm | 2006-08-30 19:33:28 -0400
...
Apply patch from Adam Langley: fix assert() in eventdns.c. [Fuzzing, apparently, is cool.]
svn:r8308
2006-08-30 23:34:56 +00:00
Nick Mathewson
6c499804bb
r8686@Kushana: nickm | 2006-08-30 18:01:35 -0400
...
Remove bogus whitespace
svn:r8307
2006-08-30 23:34:49 +00:00
Nick Mathewson
8138d1c0a4
r8654@Kushana: nickm | 2006-08-28 16:50:36 -0400
...
I bet real programmers even have programs that compile.
svn:r8278
2006-08-28 20:50:47 +00:00
Nick Mathewson
dc4951314f
r8652@Kushana: nickm | 2006-08-28 16:41:44 -0400
...
Resolve bug 324: strdup the right variable.
svn:r8277
2006-08-28 20:42:14 +00:00
Roger Dingledine
2499d1db7c
and make the comment better, while i'm at it
...
svn:r8273
2006-08-28 19:02:57 +00:00
Roger Dingledine
2a4d5782ef
an even better check -- now servers hang up if they can't write
...
for a while, and clients hang up if they can't read for a while.
svn:r8272
2006-08-28 19:00:17 +00:00
Roger Dingledine
f75ef94f27
fix bug found by Adam J. Richter: directory clients shouldn't
...
hang up five minutes after they begin. but directory servers
should still hang up after 5 minutes of failing to deliver
any bytes.
svn:r8271
2006-08-28 18:51:36 +00:00
Roger Dingledine
a76e032b14
put some symbols on the eventdns logging. leave the haphazard
...
formatting alone.
svn:r8270
2006-08-28 08:24:36 +00:00
Nick Mathewson
dbe0c6f6ef
r8609@Kushana: nickm | 2006-08-27 17:24:27 -0400
...
Add some doxygen, concentrated in dns.c
svn:r8256
2006-08-28 03:16:02 +00:00
Nick Mathewson
54ca0387a5
r8608@Kushana: nickm | 2006-08-27 16:57:47 -0400
...
Make it possible to change nameserver options while Tor is running.
svn:r8255
2006-08-28 03:15:55 +00:00
Nick Mathewson
be7054c626
r8607@Kushana: nickm | 2006-08-27 15:45:42 -0400
...
Change configuration strategy for eventdns. Instead of elaborate option set, just allow the user to specify another resolv.conf to use.
svn:r8254
2006-08-28 03:15:50 +00:00
Nick Mathewson
d62f9a03fb
r8605@Kushana: nickm | 2006-08-27 14:01:11 -0400
...
divide eventdns log messages into warn and info messages.
svn:r8252
2006-08-28 03:15:38 +00:00
Roger Dingledine
e17276b2f1
comment out an unused variable; nick, feel free to excise it further.
...
svn:r8241
2006-08-27 06:58:30 +00:00
Roger Dingledine
94afe807ac
stop a big memory leak: we were leaking the whole contents
...
of cached-routers.new every time we read it.
svn:r8236
2006-08-27 02:12:12 +00:00
Roger Dingledine
9f5856c03d
stop three memory leaks. nick, fix these if i'm wrong.
...
svn:r8235
2006-08-27 02:07:54 +00:00
Roger Dingledine
24ad1e06cf
i'm guessing nick meant to check the return value of dns_init.
...
and revise some log severities to match the convention.
svn:r8234
2006-08-27 01:41:08 +00:00
Roger Dingledine
8297608217
fix typo
...
svn:r8233
2006-08-27 01:33:35 +00:00
Roger Dingledine
c0cb1c7bd2
remove some more vestiges of cvs
...
svn:r8229
2006-08-26 06:51:02 +00:00
Roger Dingledine
171a00ec50
fix a log level -- err is for things that kill tor, warn is for
...
things that tor can recover from.
also, avoid situations where people who don't read their logs
accumulate ten thousand useless files in their datadir.
svn:r8227
2006-08-26 04:48:50 +00:00
Nick Mathewson
fd36eb0788
r8576@Kushana: nickm | 2006-08-25 17:16:01 -0400
...
Fix bug 314: Instead of checking address_in_virtualrange, check addressmap_have_mapping(). This should be more accurate. [Rename to addressmap_have_mapping() from addressmap_already_mapped().]
svn:r8226
2006-08-25 21:16:22 +00:00
Nick Mathewson
7739c5c49a
r8573@Kushana: nickm | 2006-08-25 16:55:19 -0400
...
Resolve bug 321 when using dnsworkers: append a period to every address we resolve at the exit node, so that we do not accidentally pick up local addresses, and so that failing searches are retried in the resolver search domains. (This is already solved for eventdns.)
svn:r8225
2006-08-25 21:02:01 +00:00
Nick Mathewson
c82c4a9e8b
r8572@Kushana: nickm | 2006-08-25 16:35:49 -0400
...
Fix for bug 308: When we have a state file we cannot parse, tell the user, and move it aside.
svn:r8224
2006-08-25 21:01:56 +00:00
Roger Dingledine
0649fa14c1
make our socks5 handling more robust to broken socks clients:
...
throw out everything waiting on the buffer in between socks
handshake phases, since they can't possibly (so the theory
goes) have predicted what we plan to respond to them.
svn:r8223
2006-08-24 04:51:55 +00:00
Roger Dingledine
9ebaf01096
clean up logging conventions in do_list_fingerprint()
...
svn:r8222
2006-08-24 00:54:18 +00:00
Roger Dingledine
41d8d77c8b
tor --verify-config now exits with -1(255) or 0 depending on whether
...
the config options are bad or good.
svn:r8221
2006-08-23 23:45:03 +00:00
Nick Mathewson
0f5bfc1521
r7411@Kushana: nickm | 2006-08-17 19:00:25 -0400
...
patch suggested by Karsten Loesing: respond to SIGNAL command before we execute the signal, in case the signal shuts us down.
svn:r7072
2006-08-17 23:00:32 +00:00
Nick Mathewson
ae5ee4c924
r7405@Kushana: nickm | 2006-08-16 14:38:46 -0400
...
Implement reverse DNS lookup in eventdns: add new entry point; rename old entry point; revise TODO a little; add facility for parsing dns names.
svn:r7070
2006-08-16 18:47:24 +00:00
Roger Dingledine
6650470575
automatically avoid picking more than one node from the same
...
/16 network when constructing a circuit.
svn:r7068
2006-08-16 03:44:13 +00:00
Roger Dingledine
d8fc598a2a
dns.c:173: warning: control reaches end of non-void function
...
svn:r7067
2006-08-16 02:18:55 +00:00
Nick Mathewson
163dd78282
r7398@Kushana: nickm | 2006-08-15 00:49:50 -0400
...
Add missing backslash
svn:r7065
2006-08-15 04:50:33 +00:00
Nick Mathewson
67b775bc6e
r7397@Kushana: nickm | 2006-08-15 00:46:18 -0400
...
Fix eventdns version of dns.c. Man, we need to get rid of this eventdns/dnsworker split.
svn:r7064
2006-08-15 04:50:17 +00:00
Nick Mathewson
7bfb2cf4e8
r7393@Kushana: nickm | 2006-08-14 23:51:07 -0400
...
remove extraneous #endif
svn:r7063
2006-08-15 03:54:13 +00:00
Nick Mathewson
273ee3e814
r7392@Kushana: nickm | 2006-08-14 23:50:32 -0400
...
Only do the expensive version of router_have_minimum_dir_info() when the dir info has changed. Backport candidate, since oprofile suggests that this function and ones it calls account for 25-35% of oprofile samples.
svn:r7062
2006-08-15 03:54:09 +00:00
Nick Mathewson
bc21df6a5c
r7386@Kushana: nickm | 2006-08-14 17:43:44 -0400
...
Patch from Adam Langley.
* I meant getaddrinfo_a, not getaddrinfo_r - fixed
* Added more checks to the parsing code.
* It seems you switched an alloca to a malloc, but didn't add any frees
svn:r7061
2006-08-14 21:44:45 +00:00
Nick Mathewson
200e24981a
r7046@Kushana: nickm | 2006-08-05 13:57:04 -0400
...
Make it possible for dns_init() to fail; note failure of eventdns configuratoin.
svn:r7059
2006-08-14 21:44:34 +00:00
Nick Mathewson
a5c0aa43a0
r7383@Kushana: nickm | 2006-08-14 16:16:03 -0400
...
Stop walking entire dns cache for every request, now that we found our hash table bug.
svn:r7057
2006-08-14 20:16:21 +00:00
Roger Dingledine
5194b91053
avoid complaining about our SOCKS proxy proxy.
...
svn:r7053
2006-08-14 10:00:15 +00:00
Roger Dingledine
9b10f11d39
fix typos and stuff
...
svn:r7049
2006-08-14 08:55:41 +00:00
Roger Dingledine
bf10d8a06a
simplify compare_cached_resolves_by_expiry() to make it match
...
the idioms of other compare functions. hopefully i didn't
break it?
svn:r7048
2006-08-14 07:08:29 +00:00
Nick Mathewson
6da96f0ed7
r7369@Kushana: nickm | 2006-08-14 02:03:10 -0400
...
Shortening fields is only one part of making structs shorter. You must also consider alignment padding. Whee.
svn:r7045
2006-08-14 06:03:26 +00:00
Roger Dingledine
2c27cfc38e
save 3-7 bytes per edge connection
...
svn:r7044
2006-08-14 05:53:57 +00:00
Roger Dingledine
6fdc63aed2
simplify the connection_write_to_buf_zlib() wrapper.
...
svn:r7042
2006-08-13 23:38:30 +00:00
Roger Dingledine
f294575469
fix funny-looking assignment that crashes unit tests
...
svn:r7027
2006-08-11 07:41:21 +00:00
Roger Dingledine
5647e5c7e6
fix typo, add explanatory comment
...
svn:r7026
2006-08-11 07:31:16 +00:00
Nick Mathewson
9b5a643475
r7328@Kushana: nickm | 2006-08-11 00:04:26 -0700
...
remove an assert that can never be false (an array in a non-null struct cannot be null).
svn:r7024
2006-08-11 07:09:52 +00:00
Nick Mathewson
04bf4b0fc4
r7327@Kushana: nickm | 2006-08-11 00:00:36 -0700
...
Fix a pedantic warning
svn:r7023
2006-08-11 07:09:45 +00:00
Nick Mathewson
09a895e222
r7324@Kushana: nickm | 2006-08-10 23:23:15 -0700
...
Add more warnings to the list of those we tolerate. Start using GCC attributes more, for better error checking and better code generation.
svn:r7020
2006-08-11 07:09:17 +00:00
Nick Mathewson
02d42d9138
Fix crash in first-time option validation. Oops.
...
svn:r7018
2006-08-10 19:56:10 +00:00
Nick Mathewson
7ddd9e8cd9
r7304@Kushana: nickm | 2006-08-10 01:58:05 -0700
...
Fix verbose compilation errors; make sure transparent proxy fails when no method is configured.
svn:r7012
2006-08-10 09:02:26 +00:00
Nick Mathewson
3da737ac98
r7303@Kushana: nickm | 2006-08-10 01:52:19 -0700
...
whitespace fixes
svn:r7011
2006-08-10 09:02:12 +00:00
Nick Mathewson
74df271e00
r7302@Kushana: nickm | 2006-08-10 01:48:44 -0700
...
Warn about open TransListenAddress values.
svn:r7010
2006-08-10 09:02:02 +00:00
Nick Mathewson
cd560d8528
r7301@Kushana: nickm | 2006-08-10 01:41:27 -0700
...
Only open /dev/pf once.
svn:r7009
2006-08-10 09:01:54 +00:00
Nick Mathewson
d893d8c52e
r7300@Kushana: nickm | 2006-08-10 01:36:40 -0700
...
Distinguish netfilter vs pf at configure time based on headers, not on OS.
svn:r7008
2006-08-10 09:01:46 +00:00
Nick Mathewson
5cff4164a0
r7299@Kushana: nickm | 2006-08-10 01:08:58 -0700
...
Patch from Tup to add support for transparent AP connections: this basically bundles the functionality of trans-proxy-tor into the tor mainline. Now hosts with compliant pf/netfilter implementations can redirect TCP connections straight to Tor without diverting through SOCKS.
svn:r7007
2006-08-10 09:01:37 +00:00
Roger Dingledine
8075928b2a
a way to make tor more stable in crummy situations
...
svn:r7005
2006-08-10 08:00:54 +00:00
Nick Mathewson
35f0881802
Experimentally re-enable kqueue on OSX when using libevent 1.1b or later. Log when we are doing this, so we can diagnose it when it fails.
...
svn:r7004
2006-08-10 08:00:13 +00:00
Nick Mathewson
f2a0df4d02
Recommend libevent 1.1b for kqueue and win32 methods; deprecate libevent 1.0b harder; make libevent recommendation system saner.
...
svn:r7003
2006-08-10 07:39:47 +00:00
Nick Mathewson
7c596c166b
r7029@Kushana: nickm | 2006-08-04 14:08:41 -0700
...
Remove now-spurious size and data arguments from tor_mmap_file
svn:r6987
2006-08-05 17:53:21 +00:00
Nick Mathewson
714d1b66aa
r7027@Kushana: nickm | 2006-08-04 13:06:48 -0700
...
Oops. Fix downcast macro.
svn:r6985
2006-08-05 17:52:51 +00:00
Roger Dingledine
bc2e040669
make svn trunk link again. nick can fix this if it's wrong.
...
svn:r6982
2006-08-04 20:30:45 +00:00
Nick Mathewson
bf72878cad
r7012@Kushana: nickm | 2006-08-03 19:21:25 -0700
...
Add an "mmap handle" type to encapsulate bookkeeping elements of mmap issues; add prelim win32 impl
svn:r6980
2006-08-04 18:32:43 +00:00
Nick Mathewson
abe27b807e
svn:r6979
2006-08-04 18:31:13 +00:00
Nick Mathewson
2c33f385f7
r7011@Kushana: nickm | 2006-08-03 13:26:34 -0700
...
eventdns: Document functions added to API; make suspended requests go to the front of the queue; check (or explicitly ignore) return values on libevent functions.
svn:r6978
2006-08-04 18:27:10 +00:00
Nick Mathewson
e8f28a71e8
r7010@Kushana: nickm | 2006-08-03 10:47:36 -0700
...
Enable log message format checking in eventdns.c when __GNUC__ is defined.
svn:r6977
2006-08-04 18:26:40 +00:00
Nick Mathewson
3fa1cdafce
r7009@Kushana: nickm | 2006-08-03 10:44:58 -0700
...
Add functions to eventdns to allow detecting whether we have any nameservers configured, and to change the list of nameservers after initial configuration.
svn:r6976
2006-08-04 18:26:13 +00:00
Nick Mathewson
87939813c3
r7008@Kushana: nickm | 2006-08-03 10:03:39 -0700
...
Oops. We shouldnt initialize eventdns when we are not being a server and not resolving anything.
svn:r6975
2006-08-04 18:24:41 +00:00
Nick Mathewson
a122bfb439
r7007@Kushana: nickm | 2006-08-03 09:58:30 -0700
...
Export and use eventdns_config_windows_nameservers(); clean up some comments and log messages.
svn:r6974
2006-08-04 18:24:25 +00:00
Nick Mathewson
19cf66c0f1
Patch from Frediano Ziglio: Windows compilation fixes on eventdns.c.
...
svn:r6971
2006-08-03 07:46:25 +00:00
Roger Dingledine
3152d44c3a
fix a seg fault on exit for clients; and fix a comment.
...
svn:r6969
2006-08-03 04:22:25 +00:00
Roger Dingledine
ed567c6feb
more compile options mean more codepaths
...
svn:r6963
2006-07-31 20:25:57 +00:00
Nick Mathewson
b9082682fd
r6982@Kushana: nickm | 2006-07-31 13:47:19 -0400
...
documentation and naming tweaks in dns.c
svn:r6961
2006-07-31 18:01:49 +00:00
Nick Mathewson
58c0ac77be
r6981@Kushana: nickm | 2006-07-31 13:23:26 -0400
...
More asserts for cache correctness.
svn:r6960
2006-07-31 18:01:45 +00:00
Nick Mathewson
d934607069
r6979@Kushana: nickm | 2006-07-31 13:16:58 -0400
...
Add assert_ok functions for strmap and digestmap; use them in unit test code.
svn:r6958
2006-07-31 18:01:27 +00:00
Nick Mathewson
fd0bafb0de
r6977@Kushana: nickm | 2006-07-31 13:01:28 -0400
...
Solve timing-out pending connections. Add pending resolves to expiry queue; when we find an answer, change the pending resolve to "done" and stick the actual answer in the expiry queue as a new entry. This uses a little more memory, but makes the code simpler than other solutions.
svn:r6956
2006-07-31 18:01:18 +00:00
Nick Mathewson
ccf9c1345e
svn:r6955
2006-07-31 18:00:47 +00:00
Nick Mathewson
46574319a2
r6959@Kushana: nickm | 2006-07-29 22:33:18 -0400
...
start restructuring dns to use priority queues for expiring entries.
svn:r6954
2006-07-31 18:00:18 +00:00
Nick Mathewson
2fe537c57a
r6958@Kushana: nickm | 2006-07-29 18:54:15 -0400
...
Looks like we might need a priority queue.
svn:r6953
2006-07-31 17:59:37 +00:00
Nick Mathewson
8ba913c660
r6952@Kushana: nickm | 2006-07-28 11:09:37 -0400
...
Add completely untested find-my-nameservers code for win32.
svn:r6952
2006-07-31 17:59:11 +00:00
Roger Dingledine
798b580695
fix assert found by DreadWingKnight: now that rendezvous streams
...
are attached to p_streams, the p_streams list can consist of both AP
and EXIT conns.
svn:r6945
2006-07-30 04:54:13 +00:00
Roger Dingledine
2bcb081cb1
defense in depth
...
svn:r6939
2006-07-30 04:32:58 +00:00
Roger Dingledine
c3b79ebf13
a bit more debugging for phobos
...
svn:r6937
2006-07-30 03:34:44 +00:00
Nick Mathewson
84c2a6c16b
r6950@Kushana: nickm | 2006-07-28 10:32:08 -0400
...
Document split fields better. Now, I think we can take a break from type splitting for a bit.
svn:r6935
2006-07-28 15:11:28 +00:00
Nick Mathewson
85f381153b
r6949@Kushana: nickm | 2006-07-28 10:17:38 -0400
...
Shave another 8 bytes from connection_t: turn inbuf_reached_eof into a bit, and lower timestamp_lastempty to or_connection_t
svn:r6934
2006-07-28 15:11:20 +00:00
Nick Mathewson
6dc13cdbeb
r6948@Kushana: nickm | 2006-07-28 10:10:35 -0400
...
Identify some likely target fields for lowering; lower global_identifier (since we only use it for AP streams and origin circs).
svn:r6933
2006-07-28 15:11:11 +00:00
Roger Dingledine
a5e5074807
resolve typo
...
svn:r6927
2006-07-27 19:35:11 +00:00
Nick Mathewson
c2f28615ed
More asserts in dns.c
...
svn:r6926
2006-07-27 18:35:56 +00:00
Nick Mathewson
45c3a4365f
Get better numbers out of HT_REP_OK
...
svn:r6924
2006-07-27 17:37:37 +00:00
Nick Mathewson
dc2b7e9af0
Add more asserts in dns_found_answer. This may confirm my theory that dns_purge_resolve is the culprit.
...
svn:r6922
2006-07-27 17:16:10 +00:00
Nick Mathewson
5227395aba
r6922@Kushana: nickm | 2006-07-26 16:32:24 -0400
...
Rename some fields, compress a bitfield, and document some structs and fields
svn:r6919
2006-07-27 05:03:57 +00:00
Nick Mathewson
dd779d99ea
Fix comments that implied that only dir connections had a purpose field, and the code that believed in those comments.
...
svn:r6918
2006-07-27 04:10:51 +00:00
Nick Mathewson
0bc741ba7f
r6918@Kushana: nickm | 2006-07-26 15:22:28 -0400
...
Fix compilation for eventdns dns.c with split structs.
svn:r6908
2006-07-26 19:29:30 +00:00
Nick Mathewson
ec82db6995
r6909@Kushana: nickm | 2006-07-26 13:05:58 -0400
...
Clean up wide lines from last patch.
svn:r6907
2006-07-26 19:07:37 +00:00
Nick Mathewson
4ff4577beb
r6908@Kushana: nickm | 2006-07-26 12:38:52 -0400
...
Refactor connection_t into edge, or, dir, control, and base subtypes. This might save some RAM on busy exit servers, but really matters most in terms of correctness.
svn:r6906
2006-07-26 19:07:26 +00:00
Nick Mathewson
18771e851f
r6907@Kushana: nickm | 2006-07-25 19:03:43 -0400
...
Realign circuit structs to avoid wasted space.
svn:r6905
2006-07-26 19:07:23 +00:00
Nick Mathewson
e61d28dfb8
r6903@Kushana: nickm | 2006-07-25 18:22:48 -0400
...
No circuit can be both an intro point and a rend point, so we can merge both the cookie and the pk digest into one "rend_token" field for or circuits. This saves another 20 bytes per or circuit.
svn:r6904
2006-07-26 19:05:41 +00:00
Nick Mathewson
a88ec48a39
r6902@Kushana: nickm | 2006-07-25 17:30:27 -0400
...
Move rend_query to origin_circuit_t where it belongs; save another 17 bytes per OR circuit.
svn:r6903
2006-07-26 19:05:34 +00:00
Nick Mathewson
96bcbb1e1c
Remove code to special-case "-cvs" ending, since it has not actually mattered since 0.0.9. Perhaps we can special-case even more...
...
svn:r6898
2006-07-25 04:34:14 +00:00
Peter Palfrader
521c006fd5
Remove .cvsignore files from trunk
...
svn:r6891
2006-07-25 01:00:48 +00:00
Roger Dingledine
c9b8458f59
publish a new descriptor after we hup. this is important if our
...
config has changed such that we'll want to start advertising our
dirport now, etc.
svn:r6819
2006-07-23 11:50:03 +00:00
Nick Mathewson
d27cbf5d4b
Fix another segfault in assert_circuit_ok.
...
svn:r6818
2006-07-23 08:13:45 +00:00
Nick Mathewson
7239262f71
Don't tell anybody, but we're going OO here. This patch splits
...
circuit_t into origin_circuit_t and or_circuit_t. I fixed some
segaults; there may be more. We still need to move more rendezvous
stuff into subtypes.
This is a trial run for splitting up connection_t; if the approach is
insane, please say so soon so we can do something smarter.
Also, this discards the old HALF_OPEN code, which nobody seems to
want.
svn:r6817
2006-07-23 07:37:35 +00:00
Roger Dingledine
40cc536307
rewrite conn->address for GET commands as well as POST commands.
...
svn:r6815
2006-07-23 06:41:02 +00:00
Roger Dingledine
0b5ad1bcfb
use tor_mem_is_zero() in more places.
...
svn:r6814
2006-07-23 05:52:27 +00:00
Nick Mathewson
4280218a42
Delete trailing whitespace in eventdns.c
...
svn:r6813
2006-07-23 05:40:24 +00:00
Nick Mathewson
1c0f02f657
Add (void) lines for unused parameters in eventdns.c
...
svn:r6812
2006-07-23 05:39:37 +00:00
Nick Mathewson
f4e506f423
Remove STRUCT_OFFSET from config.c
...
svn:r6811
2006-07-23 05:33:10 +00:00
Roger Dingledine
ee789052b8
whitespace and docs
...
svn:r6808
2006-07-23 05:18:29 +00:00
Roger Dingledine
00aefaab6b
think harder about my logic
...
svn:r6806
2006-07-22 07:19:11 +00:00
Roger Dingledine
2d6a4d283b
i lied, that won't work at all. maybe this will.
...
svn:r6805
2006-07-22 07:15:34 +00:00
Roger Dingledine
444f096d2d
more bulletproof reachability testing
...
svn:r6804
2006-07-22 05:29:31 +00:00
Nick Mathewson
64c14d8ce3
These asserts will either cause spurious crashes or help debug the pend->conn->s == -1 issue.
...
svn:r6803
2006-07-21 22:02:58 +00:00
Roger Dingledine
2249180b60
bugfix: if you find yourself reachable, then don't ever make any client
...
requests (so you stop predicting circuits), then hup, then later your
IP changes, you won't think circuits are working so you won't try to
test reachability, so you won't publish.
svn:r6800
2006-07-21 07:55:35 +00:00
Roger Dingledine
4d5fab4f9a
tweak
...
svn:r6799
2006-07-21 07:53:21 +00:00
Roger Dingledine
9283ddb760
an entry guard that is "unlisted", as well as not known to be "down", is
...
not therefore "up".
svn:r6798
2006-07-21 07:06:18 +00:00
Roger Dingledine
237c7ecbfd
tweak
...
svn:r6796
2006-07-20 23:45:26 +00:00
Roger Dingledine
97a14b2018
tweak
...
svn:r6795
2006-07-20 23:33:11 +00:00
Roger Dingledine
db657ea0af
don't squeal if the first few retries fail.
...
svn:r6791
2006-07-18 04:48:59 +00:00
Roger Dingledine
892f671f59
Define a schedule for how long to wait between retrying
...
application connections. Rather than waiting a fixed amount of
time between each retry, we wait only 5 seconds for the first,
10 seconds for the second, and 15 seconds for each retry after
that. Hopefully this will improve the expected experience.
Addresses bug 297.
svn:r6790
2006-07-18 04:42:32 +00:00
Roger Dingledine
e1f30a5f21
when we find our dirport to be reachable, mark our descriptor
...
dirty so we'll tell the world. (fixes bug 306 reported by pnx)
svn:r6787
2006-07-18 03:06:55 +00:00
Roger Dingledine
ac258d2cc8
Start publishing one minute or so after we find our ORPort
...
to be reachable. This will help reduce the number of descriptors
we have for ourselves floating around, since it's quite likely
other things (e.g. DirPort) will change during that minute too.
svn:r6786
2006-07-18 03:06:12 +00:00
Nick Mathewson
7fcb267e24
Oh. And apparently, msvc6 doesnt think very much of doing u64-and-double arithmetic either.
...
svn:r6785
2006-07-18 02:24:01 +00:00
Roger Dingledine
388ac4126a
If we are using an exit enclave and we can't connect, e.g. because
...
its webserver is misconfigured to not listen on localhost, then back
off and try connecting from somewhere else before we fail.
svn:r6783
2006-07-18 00:59:46 +00:00
Roger Dingledine
a8444c6f53
pick a log domain; resolve an xxxx
...
svn:r6782
2006-07-18 00:01:12 +00:00
Roger Dingledine
c85745cfe2
parameterize the loudness of log_addr_has_changed(), since it's the
...
only place where we inform the user of a new IP address, if we're
guessing it from external sources.
svn:r6780
2006-07-17 19:33:54 +00:00
Roger Dingledine
542adb88d7
Make a louder statement the first time we learn a guessed
...
IP address.
svn:r6779
2006-07-17 08:17:51 +00:00
Roger Dingledine
c055a34cdb
huge bugfix: we weren't ever writing an http header when sending
...
out network statuses! so clients were downloading the whole thing,
and then discarding them because they're malformed.
svn:r6778
2006-07-17 08:11:27 +00:00
Roger Dingledine
a2a89da693
and don't try to build the descriptor every second, if it's dirty
...
but we don't have a known address.
svn:r6777
2006-07-17 06:59:56 +00:00
Roger Dingledine
42e2057d67
fix some more places where we shouldn't crash if we can't build
...
our own descriptor yet.
svn:r6775
2006-07-17 06:54:28 +00:00
Roger Dingledine
9db7b2c068
Allow servers with no hostname or IP address to learn their IP address
...
by asking the directory authorities. This code only kicks in when you
would normally have exited with a "no address" error.
This design is flawed, though, since the X-Your-Address-Is header is not
authenticated, and doing it this way introduces too many new attacks. The
right answer is to give IP address hints inside the HELLO cell; much of
this code can be reused when we switch.
svn:r6774
2006-07-17 06:35:06 +00:00
Nick Mathewson
e572d5990c
MSVC6 is apparently terrified of unnatural cross-breeding between uint64_t and double, and needs more persuasion than usual to cast one to the other. Issue identified by Frediano Ziglio; patch revised for minimal impact on non-MSVC6 compilers.
...
svn:r6768
2006-07-17 00:39:05 +00:00
Roger Dingledine
886b10bbe2
whitespace/etc cleanups
...
svn:r6765
2006-07-16 05:57:11 +00:00
Roger Dingledine
ee5f512e13
parameterize the loudness of resolve_my_address(), and call things
...
IP addresses, not IPs.
svn:r6764
2006-07-15 20:26:05 +00:00
Roger Dingledine
3d79eb52ab
stick to nick's nul/null convention
...
svn:r6763
2006-07-15 19:21:30 +00:00
Roger Dingledine
c4411841d2
Avoid an integer underflow when the dir authority decides whether a
...
router is stable: we might wrongly label it stable, and compute a slightly
wrong median stability, when a descriptor is published later than now.
Inspired by Matt's Vidalia checkin:
http://trac.vidalia-project.net/changeset/1074
svn:r6758
2006-07-14 03:14:02 +00:00
Nick Mathewson
a0cf95e1c9
Add some debugging asserts to dns.c; these are too expensive to leave in permanently.
...
svn:r6756
2006-07-11 20:51:58 +00:00
Nick Mathewson
c32e19b4ed
OR_CONN_EVENT_NEW: we should probably handle that , should we not? Especially since 23:26 < phobos> nickm: grep -c "Unrecognized status code 4" tor.log
...
svn:r6752
2006-07-11 03:33:16 +00:00
Nick Mathewson
39344fc301
Add a const; fix a (probably harmless) bug when storing a resolve we forgot we asked for.
...
svn:r6751
2006-07-10 18:38:57 +00:00
Nick Mathewson
a7a1d4e3d3
First part of making mmap-based stuff work on win32: save descriptors as "binary" (no LF->CRLF tanslation) so that we can mmap them properly later. Patch from Frediano Ziglio.
...
svn:r6748
2006-07-09 22:28:12 +00:00
Roger Dingledine
51454157a0
Fix a crash if you enable FascistFirewall but not FirewallPorts.
...
Reported by Frediano Ziglio.
svn:r6746
2006-07-08 17:38:46 +00:00
Nick Mathewson
0bbc4aca9b
Spellcheck and remove spurious include in eventdns.c
...
svn:r6745
2006-07-07 19:08:44 +00:00
Nick Mathewson
a40ad152b1
When using eventdns: suppress logging of addresses when SafeLogging is active, and make set of nameservers configurable from torrc.
...
svn:r6744
2006-07-07 17:33:30 +00:00
Nick Mathewson
f33c4f9781
eventdns: check for malloc() failures.
...
svn:r6743
2006-07-07 17:31:56 +00:00
Roger Dingledine
85fd582192
rename X-You-Are to something slightly better.
...
svn:r6735
2006-07-06 03:05:01 +00:00
Roger Dingledine
7f01dc9c1c
whitespace/tab fixes
...
svn:r6734
2006-07-06 02:45:46 +00:00
Roger Dingledine
fad85f173a
when an exit node gets a malformed begin cell, don't complain to
...
the node operator, since he can't do anything about it.
svn:r6733
2006-07-06 02:44:07 +00:00
Nick Mathewson
3c4205c872
Clean up eventdns messages.
...
svn:r6730
2006-07-05 21:42:18 +00:00
Nick Mathewson
54779025e2
Spelling fix.
...
svn:r6729
2006-07-05 21:33:46 +00:00
Nick Mathewson
42ef3bd90c
Add plausile logging support to eventdns; stop putting stuff onto stdout.
...
svn:r6728
2006-07-05 21:28:37 +00:00
Roger Dingledine
0ec293b189
actually, that excludenodes fix was redundant. take it out.
...
svn:r6727
2006-07-05 18:19:42 +00:00
Roger Dingledine
98c6bf6192
oops, we were ignoring options->ExcludeNodes when picking entry guards.
...
it is still the case that we ignore it with respect to entry guards
that we've already picked.
svn:r6726
2006-07-04 20:25:17 +00:00
Roger Dingledine
4fc7426b93
Make the X-You-Are header more accurate when there's a proxy in the middle.
...
svn:r6722
2006-07-04 18:18:08 +00:00
Roger Dingledine
05d0b70573
Get rid of the router_retry_connections notion. Now routers no longer
...
try to rebuild long-term connections to directory authorities, and
directory authorities no longer try to rebuild long-term connections to
all servers.
We still don't hang up connections in these two cases though -- we need
to look at it more carefully to avoid flapping, and we likely need to
wait til 0.1.1.x is obsolete.
svn:r6712
2006-07-04 03:31:27 +00:00
Roger Dingledine
ff1b4764e9
No longer permit create cells to have the wrong circ_id_type. No
...
running Tors should still have this bug.
svn:r6711
2006-07-04 03:27:09 +00:00
Roger Dingledine
dc79dd6a46
minor fixes
...
svn:r6709
2006-07-04 03:19:59 +00:00
Nick Mathewson
9fce316d1c
Oops. Headers work better when named right.
...
svn:r6707
2006-07-01 21:51:21 +00:00
Nick Mathewson
60de51993a
Unify HTTP response code into one place so it is easier to add headers. Add an X-You-Are header, which we should probably rename. NOTE that we should not use this field for things where it matters if dirs lie.
...
svn:r6705
2006-06-30 10:50:43 +00:00
Roger Dingledine
d45757ebcb
also remove word 'middleman' from a log notice
...
svn:r6704
2006-06-29 13:11:23 +00:00
Nick Mathewson
475eb5d6fe
Apparent 311 fix: apparently passing Z_FINISH an empty string is problematic.
...
svn:r6702
2006-06-29 11:19:52 +00:00
Nick Mathewson
4b49d298eb
complete_only == !allow_partial. This enables useful use of partial desc downloads. Backport candidate
...
svn:r6700
2006-06-29 11:04:42 +00:00
Roger Dingledine
c22c7b96f5
tab-man strikes again
...
svn:r6699
2006-06-28 15:39:02 +00:00
Nick Mathewson
8b08ab52fd
Fix another idiot bug causing symptom 309. Why cant I program?
...
svn:r6698
2006-06-28 15:36:28 +00:00
Nick Mathewson
96bfefeeb6
Add a check to try to make cache rebuild fail fast if it is going to fail
...
svn:r6697
2006-06-28 11:03:34 +00:00
Nick Mathewson
4dac383f5a
Aaand re-disable the bogus test in get_body()
...
svn:r6696
2006-06-28 08:57:41 +00:00
Nick Mathewson
d547ecc916
Make sure that our calculated offsets for routers is correct; again. This time bug 309 may be gone gone gone.
...
svn:r6695
2006-06-28 08:55:53 +00:00
Nick Mathewson
d3784ff1df
Likely fix for bug 309: when we calculate offsets after rebuilding the descriptor cache, do not reset the offset pointer half-way through.
...
svn:r6693
2006-06-27 15:52:51 +00:00
Roger Dingledine
f88d555ce0
refuse to write an iso_time which we can't parse, when dumping
...
bandwidth state. this fixes the particular incident in bug 308,
but the general issue remains.
svn:r6684
2006-06-24 04:57:59 +00:00
Nick Mathewson
b4b8da5d23
Turn a while into a do/while; save a redundant test
...
svn:r6683
2006-06-24 02:10:21 +00:00
Nick Mathewson
b82dfdd4a3
Make some more verbose gcc warnings go away.
...
svn:r6680
2006-06-22 07:34:04 +00:00
Nick Mathewson
52b8dfa95a
Fix a bunch of spaces.
...
svn:r6678
2006-06-22 07:25:15 +00:00
Nick Mathewson
89a1453776
Set offset properly when parsing cache.
...
svn:r6677
2006-06-22 07:19:28 +00:00
Nick Mathewson
58b05fc84d
#if out test that was failing because of an extra newline.
...
svn:r6676
2006-06-22 07:10:37 +00:00
Nick Mathewson
b7910202a3
Next batch of memory miserdom: mmap cached-routers file. This is sure to break somewhere.
...
svn:r6675
2006-06-22 07:01:54 +00:00
Nick Mathewson
e2697a62ac
When requesting or serving resources via fingerprint/digest, request and respond in-order, removing duplicates.
...
svn:r6673
2006-06-21 04:57:12 +00:00
Peter Palfrader
7b6c435066
<nickm> ooh, that log shouldn't be there. can you take it out?
...
svn:r6671
2006-06-20 23:11:15 +00:00
Nick Mathewson
0799154ae1
Fix bug in networkstatus spooling: spool more than the first networkstatus.
...
svn:r6670
2006-06-20 23:06:52 +00:00
Nick Mathewson
0e09b26112
Fishy, but harmless.
...
svn:r6669
2006-06-20 16:48:32 +00:00
Roger Dingledine
ef78e4245f
add a note for nick to fix
...
svn:r6668
2006-06-20 13:14:07 +00:00
Nick Mathewson
a9e1a4c33c
Ah. We need a new zlib_state for each networkstatus we spool out.
...
svn:r6667
2006-06-20 06:27:13 +00:00
Nick Mathewson
4283b81a48
Start spooling v2 networkstatus docs as well.
...
svn:r6664
2006-06-20 00:48:23 +00:00
Nick Mathewson
3f7f069a05
Fix a tricky crash: making the_directory heap-allocated (so we could refcount it and have multiple instances as neeeded) means that calls to dirserv_regenerate_directory could invalidate the auth_dir value passed to dirserv_pick_cached_dir_obj. Big fun.
...
svn:r6663
2006-06-18 21:30:03 +00:00
Nick Mathewson
2552d5e60f
Fix an assert that still isnt the assert we are hunting.
...
svn:r6662
2006-06-18 21:15:01 +00:00
Roger Dingledine
37c441d96f
correct a function comment in compute_preferred_testing_list()
...
svn:r6660
2006-06-18 21:07:45 +00:00
Nick Mathewson
f1993b8b30
Become capable of noticing that we are done sending a directory.
...
svn:r6659
2006-06-18 20:58:27 +00:00
Nick Mathewson
5c0d7fb016
Resolve control flow warning.
...
svn:r6658
2006-06-18 20:39:46 +00:00
Nick Mathewson
0932f463ff
Ah. That seems to work.
...
svn:r6657
2006-06-18 16:39:26 +00:00
Nick Mathewson
5ba72d0ae5
another write_to_buf_zlib fix.
...
svn:r6656
2006-06-18 16:20:38 +00:00
Nick Mathewson
b5c599412f
Backport candidate: implement the "is this uptime change cosmetic" test properly.
...
svn:r6654
2006-06-18 16:05:54 +00:00
Nick Mathewson
a9cffd2ff0
Re-enable buffer RAM guard values.
...
svn:r6653
2006-06-18 15:53:54 +00:00
Nick Mathewson
11c2e97d51
Another _zlib fix.
...
svn:r6652
2006-06-18 09:03:48 +00:00
Nick Mathewson
337ad6420b
Make connection_write_to_buf_zlib set outbuf_flushlen right.
...
svn:r6651
2006-06-18 08:53:09 +00:00
Nick Mathewson
537104c908
write_to_buf != connection_write_to_buf. Also, add a connection_write_to_buf_zlib wrapper that sucks.
...
svn:r6650
2006-06-18 08:46:55 +00:00
Nick Mathewson
10b7b57616
Temporarily disable sentinels on buffers
...
svn:r6649
2006-06-18 08:44:34 +00:00
Nick Mathewson
9376d901ed
make zlib buffer function set buf_highwater properly
...
svn:r6648
2006-06-18 08:21:27 +00:00
Nick Mathewson
4d02ccfed8
Stop trying to refresh when we are out of data.
...
svn:r6647
2006-06-18 08:19:35 +00:00
Nick Mathewson
b9013cbe98
And actually check the url when it exists. that might work better.
...
svn:r6646
2006-06-18 08:16:05 +00:00
Nick Mathewson
c374340c70
That dir_refresh_src fix will only work if I enable it.
...
svn:r6645
2006-06-18 08:13:45 +00:00
Nick Mathewson
347bcec84a
Fix a couple of bugs in last patch.
...
svn:r6644
2006-06-18 08:07:16 +00:00
Nick Mathewson
c58cc8c16c
add coverage for a default case
...
svn:r6643
2006-06-18 07:57:47 +00:00
Nick Mathewson
b1a8b7869a
Oops. conn->requested_resource is client only.
...
svn:r6642
2006-06-18 07:55:04 +00:00
Nick Mathewson
1d9923da7c
Instead of adding servers and v1 directories to buffers en masse, directory servers add them on the fly as their outbufs are depleted. This will save ram on busy dirservers.
...
svn:r6641
2006-06-18 07:38:55 +00:00
Nick Mathewson
8fa8616ec7
Add tests for several of the more recently committed functions.
...
svn:r6639
2006-06-18 07:35:10 +00:00
Nick Mathewson
cd38511a1e
Part of incremental encryption logic for buffers: there is a subtle yucky point documented in a comment.
...
svn:r6637
2006-06-18 07:27:47 +00:00
Peter Palfrader
2ff24dbc26
And a minor bugfix to the weaselhack
...
svn:r6629
2006-06-15 23:14:01 +00:00
Roger Dingledine
af0e47c921
fix spacing
...
svn:r6628
2006-06-15 22:59:07 +00:00
Peter Palfrader
bc64becd12
Add a /tor/dir-all-weaselhack directory resource so I do not have to update my scripts
...
svn:r6627
2006-06-15 22:52:56 +00:00
Roger Dingledine
4e4cc9aa27
lower the number of seconds before we yell about clock jump.
...
and make the yelling only happen if you're a server.
svn:r6625
2006-06-15 09:03:15 +00:00
Roger Dingledine
de7a9c83d8
upgrade the severity of the 'clock jump' warn, and ask people
...
to report if it occurs.
svn:r6623
2006-06-14 22:28:16 +00:00
Roger Dingledine
09dfe1b265
bugfix: discourage picking directory authorities as our TestVia
...
hops, even if they're running the right versions, since we probably
already have a connection established to them.
svn:r6622
2006-06-14 11:06:43 +00:00
Nick Mathewson
66db3afb74
eventdns: Apply a couple of patches from AGL; start working on windows compat; note some TODOs.
...
svn:r6621
2006-06-13 21:49:56 +00:00
Roger Dingledine
977574e48d
back off and add the $ at the beginning of the preferrednodes list
...
we generate.
svn:r6620
2006-06-13 12:57:19 +00:00
Roger Dingledine
2cd349903c
be more lax about recognizing valid hexdigests.
...
svn:r6619
2006-06-13 12:05:59 +00:00
Roger Dingledine
b4e415ba3c
now we can tell dirserv_dump_directory_to_string() whether we want
...
it to include down/invalid descriptors or not.
svn:r6618
2006-06-13 11:11:19 +00:00
Roger Dingledine
88dadc917c
bugfix in exit_policy_is_general_exit() that weasel found.
...
this time for sure!
svn:r6617
2006-06-13 10:48:26 +00:00
Roger Dingledine
23e2c6a7dd
first cut at a workaround for the reachability bug: explicitly find a
...
server running the right version, if we can, and ask for that one.
svn:r6616
2006-06-13 10:25:22 +00:00
Roger Dingledine
31b51849b5
export the default exit policy via the control port, so controllers
...
don't need to guess what it is / will be later.
svn:r6615
2006-06-13 09:16:09 +00:00
Roger Dingledine
279e86f3c8
Defense in depth: fix the reachability bug a second way too.
...
Now if we establish a connection with the right digest, regardless
of what the addr/port is, and we have pending create cells, use it.
svn:r6614
2006-06-13 05:51:28 +00:00
Roger Dingledine
a20a384b09
harmless typo
...
svn:r6613
2006-06-13 05:50:24 +00:00
Roger Dingledine
ab61c40661
Fix the bug that was causing servers to not find themselves
...
reachable if they changed IP addresses. This happened because
middle servers knew the old descriptor, and kept swapping the
addr/port we asked for with the one they thought was right.
So the create cell never got sent, because it was asking for a
different addr/port than we believed we had connected to.
svn:r6610
2006-06-13 05:36:35 +00:00
Roger Dingledine
19408cf8d7
reintroduce the logic to exit_policy_is_general_exit() to count
...
how many ports are allowd. require two ports open, not just one.
svn:r6609
2006-06-13 02:48:06 +00:00
Peter Palfrader
cce8ae1190
Make the Exit tag in status documents actually work in head too
...
svn:r6608
2006-06-12 22:03:25 +00:00
Roger Dingledine
87e3800dfc
Finally solve the "closing wedged cpuworkers" bug. Woo.
...
This happened when we got two create cells in a row from the same TLS
connection. It would hand one to the cpuworker, and then immediately
handle the second one -- after it had registered that the first one was
busy, but before it had updated the timestamp that we use to decide how
*long* it's been busy.
svn:r6606
2006-06-12 11:59:19 +00:00
Roger Dingledine
cbc4cd93ac
allow people to start their tor with runasdaemon set but
...
with no logs set at all.
svn:r6604
2006-06-12 06:03:15 +00:00
Roger Dingledine
14687fc443
take out the reachability bandaid in 0.1.2.x as well.
...
maybe we will actually be able to fix it, instead.
svn:r6585
2006-06-10 00:57:12 +00:00
Roger Dingledine
889b8d5bac
Add a new config option TestVia, that lets you specify preferred middle
...
hops to use for testing circuits. Perhaps this will let me debug the
reachability problem better.
svn:r6581
2006-06-10 00:26:39 +00:00
Roger Dingledine
6531a31aad
actually, don't fix it that far. we should still do some
...
error checking.
svn:r6576
2006-06-09 09:07:59 +00:00
Roger Dingledine
0071d67efd
when only one router is labelled as a guard, and we've
...
already picked him, we would cycle endlessly picking him
again, being unhappy about it, and so forth.
now we specifically exclude guards when picking a new guard.
svn:r6575
2006-06-09 09:02:32 +00:00
Roger Dingledine
30f6c57fd7
and forward-port too.
...
svn:r6573
2006-06-09 06:52:49 +00:00
Roger Dingledine
a91be49402
fix a bootstrapping check we ignored that prevents us from running
...
with only one dir authority.
svn:r6570
2006-06-09 02:45:39 +00:00
Roger Dingledine
11dcb7f4ae
try a better string at the top of torrc's autogenerated torrc.
...
svn:r6569
2006-06-09 02:20:42 +00:00
Roger Dingledine
bb18168fae
ok, ok, maybe *this* time my rep_hist_circbuilding_dormant() will work.
...
svn:r6568
2006-06-08 22:36:13 +00:00
Roger Dingledine
18eb8192db
remove a bit more obsolete code
...
svn:r6566
2006-06-08 09:35:20 +00:00
Roger Dingledine
a18766e50c
ah, that explains why we weren't going dormant with
...
respect to descriptor fetches. maybe now it will work.
svn:r6565
2006-06-08 09:20:58 +00:00
Roger Dingledine
91bd12c20d
re-enable per-connection rate limiting. get rid of the "OP bandwidth"
...
concept. lay groundwork for "bandwidth classes" -- separate global
buckets that apply depending on what sort of conn it is.
svn:r6563
2006-06-07 09:18:53 +00:00
Roger Dingledine
741b11df45
put a bandaid in place so servers will have an easier time
...
believing that they're reachable. this may help resolve the
servers-on-dynamic-ip-addresses problem.
svn:r6561
2006-06-07 08:42:24 +00:00
Roger Dingledine
1e9b35aee3
make connection_or_nonopen_was_started_here() based on something less
...
voodooey. it turns out we already do keep a flag like that around.
svn:r6560
2006-06-07 07:11:42 +00:00
Roger Dingledine
8cf45df230
and now the exciting part: there is now no such thing as doing
...
a client-only tls, that is, one with no certs.
svn:r6558
2006-06-07 06:21:11 +00:00
Roger Dingledine
0bfef523df
simplify the tortls api: we only support being a "server", that
...
is, even tor clients do the same sort of handshake.
this has been true for years, so it's best to get rid of the
stale code.
svn:r6557
2006-06-07 06:10:54 +00:00
Roger Dingledine
96914760bc
fix the bug where we sometimes would fail to send some create cells
...
once we'd connected to a(nother) tor server.
svn:r6552
2006-06-06 03:33:24 +00:00
Nick Mathewson
5e4b4451ec
Also, add a temporary hack to make sure eventdns.c is distributd.
...
svn:r6551
2006-06-06 00:12:22 +00:00
Roger Dingledine
5c57348acd
We got an obscure report of an assert error on a windows Tor server with
...
connection_add being called with socket = -1. The only places I can see
where that happen would be if our tor_socketpair succeeds but it hands
back negative values for some of its file descriptors. Perhaps this will
produce more useful assert errors next time.
svn:r6550
2006-06-06 00:06:52 +00:00
Roger Dingledine
411f37d534
fix typo
...
svn:r6549
2006-06-06 00:05:39 +00:00
Roger Dingledine
07c35b4f52
ship the event*.h files too. perhaps this will make my 'make dist'
...
produce a tarball that i can build.
svn:r6548
2006-06-06 00:04:52 +00:00
Nick Mathewson
2bd7c19b73
Try to log useful messages at info and debug about what we are resolving and what answers we are getting wrt eventdns.
...
svn:r6547
2006-06-05 23:01:22 +00:00
Roger Dingledine
542b8af592
don't tell people that the testing circuit failed if we already
...
consider ourselves reachable. this just confuses them.
svn:r6546
2006-06-05 10:01:52 +00:00
Roger Dingledine
a2fec314b6
scream louder if you've got a pending circuit for a given
...
addr/port but the intended n_conn digest is wrong.
svn:r6544
2006-06-05 09:47:19 +00:00
Roger Dingledine
45065f1466
simplify code now that libevent considers all sockets pollable.
...
what we really mean now is ">= 0", which is clearer to test for.
svn:r6543
2006-06-05 09:08:10 +00:00
Roger Dingledine
4e773352c2
bugfix: if we are making our first ever connection to any entry
...
guard, then don't mark it down at first. we had this implemented
but it was disabled due to a bug.
svn:r6541
2006-06-05 08:58:18 +00:00
Roger Dingledine
8f3bb66ebc
simplify some code, since circuit_build_failed() is only called
...
on non-open circuits.
svn:r6540
2006-06-05 08:25:02 +00:00
Roger Dingledine
152d6d13b4
remove some unused code (i think)
...
svn:r6539
2006-06-05 08:02:04 +00:00
Roger Dingledine
bf09898f79
Note a bug that causes servers to sometimes never send the pending
...
create cell. Nick, is this a bug? If so, is my fix right?
svn:r6538
2006-06-05 07:27:48 +00:00
Nick Mathewson
b7ca697faf
More eventdns.c patches: use HAVE_ALLOCA_H; print IP addrs as dotted quads.
...
svn:r6535
2006-06-05 01:59:12 +00:00
Nick Mathewson
3db785ef73
Hm. Where did we put that ntohl the last time we were juggling it? (hoop-lah).
...
svn:r6534
2006-06-05 00:32:31 +00:00
Nick Mathewson
008a0c7c46
Some eventdns.c fixes for windows correctness. More will doubtless be needed, especially around the #includes.
...
svn:r6533
2006-06-04 23:23:53 +00:00
Nick Mathewson
853e2d99b6
Add a new warning to our "warn a lot" list: unused parameters. This means we have to explicitly "use" unuseds, but it can catch bugs. (It caught two coding mistakes so far.)
...
svn:r6532
2006-06-04 22:42:13 +00:00
Roger Dingledine
c4647545a0
if we insist on printing pointer values, at least make it stop
...
complaining on (my particular) 64 bit platform.
svn:r6530
2006-06-04 06:17:32 +00:00
Roger Dingledine
603b09b59b
punctuation and spelling
...
svn:r6529
2006-06-04 06:16:20 +00:00
Nick Mathewson
c18fab5366
Make eventdns.[ch] into good C90; remove signed/unsigned comparisons.
...
svn:r6528
2006-06-03 22:05:23 +00:00
Nick Mathewson
2700e5a1ab
Oops. When we dont get a TTL, we should default to the default, not to the minimum.
...
svn:r6527
2006-06-03 21:47:26 +00:00
Nick Mathewson
c660a0f6a2
More DNS fixes. Send meaningful TTLs back to the client when
...
possible. Cache at the server side independently from the TTL, to
prevent attackers from probing the server to see who has been asking
for what hostnames. (Hi, Dan Kaminski!)
Also, clean some whitespace.
svn:r6526
2006-06-03 21:41:14 +00:00
Nick Mathewson
85a25c8a29
Make dns.c use eventdns.c -- but only when you pass the --enable-eventdns argument to configure.in. This will *so* not work on Windows yet.
...
svn:r6525
2006-06-03 20:52:24 +00:00
Nick Mathewson
7cb3232ade
Add async dns code from Adam Langley, tweaked to build on OSX. Long-term, we may want to switch to libevnet/c-ares, if they ever handle 10k fd situations properly. This one still needs work too, but at least it is small. This code is disabled by default, and not integrated with dns.c.
...
svn:r6524
2006-06-03 19:49:42 +00:00
Roger Dingledine
8f902e4b58
don't stop fetching server descriptors if we're a server and
...
haven't found ourselves reachable yet.
svn:r6522
2006-06-03 02:56:44 +00:00
Roger Dingledine
1bf0f99b66
connection_t kept the identity_pkey but all it did was store it and
...
free it. perhaps we don't need it after all?
svn:r6518
2006-05-30 06:23:44 +00:00
Roger Dingledine
9000a5aff1
and get grammar right
...
svn:r6517
2006-05-30 06:19:48 +00:00
Roger Dingledine
ae2648fb1c
stop fetching descriptors if we're not a dir mirror and we
...
haven't tried to establish any circuits lately.
svn:r6516
2006-05-30 06:19:06 +00:00
Roger Dingledine
1f0e20806b
END_CIRC_REASON_OR_IDENTITY apparently means that we were told to
...
connect to a different OR than lives on the addr:port we connected
to. we don't actually remember whether that was the case, currently.
so call it END_CIRC_REASON_OR_CONN_CLOSED as a compromise.
svn:r6515
2006-05-30 06:17:28 +00:00
Roger Dingledine
60abe23158
tentative change: if you have your dirport set, you are a directory
...
mirror, whether or not your orport is set.
svn:r6513
2006-05-30 06:11:36 +00:00
Roger Dingledine
1e4923652b
simplify a log message
...
svn:r6512
2006-05-30 05:29:03 +00:00
Roger Dingledine
f6ff3e6f0e
directory authorities should be more tolerant of failed reachability
...
tests before crying foul to the server operator.
svn:r6509
2006-05-28 16:14:26 +00:00
Roger Dingledine
48be472e4f
clean up a comment
...
svn:r6508
2006-05-28 16:07:44 +00:00
Roger Dingledine
7f611f4732
if we're a server and some peer has a broken tls certificate, don't
...
shout about it unless we want to hear about protocol violations.
svn:r6507
2006-05-26 16:32:16 +00:00
Roger Dingledine
82ae38f649
be more verbose about testing reachability of our ORPort.
...
svn:r6506
2006-05-26 16:29:33 +00:00
Roger Dingledine
f579478687
correct a false log message, since we actually reset all our
...
downloading stats every hour, and sometimes more often.
svn:r6505
2006-05-26 16:29:20 +00:00
Roger Dingledine
3cd01ca9a1
make cookie authentication for the controller work again, maybe.
...
it sure doesn't now.
svn:r6494
2006-05-24 23:03:28 +00:00
Roger Dingledine
6066d68ac3
make options->RedirectExit work again; resolve bug 293.
...
svn:r6492
2006-05-24 11:13:03 +00:00
Roger Dingledine
13c4590dd1
ignore RunAsDaemon more thoroughly when we're running on windows.
...
svn:r6471
2006-05-23 07:04:55 +00:00
Roger Dingledine
6b058bd563
add a few more debugging lines to help mikec track down his
...
11 minute jump into the future.
svn:r6465
2006-05-23 03:08:30 +00:00
Nick Mathewson
55c38f88b9
Remove string size limit on NEWDESC messages; solve bug 291.
...
svn:r6463
2006-05-22 23:24:06 +00:00
Roger Dingledine
295ad74fda
Tor servers are also giving spurious "you're invalid" warnings.
...
This is because we get a lot of network statuses that don't list
us at all, and we conclude that they all think we're invalid.
The long-term fix is to get better logic, and the short-term fix
is to downgrade the log severity.
svn:r6448
2006-05-09 09:47:47 +00:00
Roger Dingledine
27624a3024
stop telling people that "tor -h" will help them in any way.
...
svn:r6447
2006-05-08 04:28:49 +00:00
Roger Dingledine
e24e5475fb
forward-port the ORPort==0 patch
...
svn:r6430
2006-05-03 18:29:44 +00:00
Nick Mathewson
2b720b5746
Start remembering *where* we are storing routerdescs. This will make us easier to move from a RAM-mirrors-disk model to a RAM-caches-disk model, and save maybe around 10MB on a directory server.
...
svn:r6427
2006-04-29 18:42:26 +00:00
Nick Mathewson
15dbe02c04
shorten some too-wide lines
...
svn:r6426
2006-04-29 17:44:31 +00:00
Roger Dingledine
701341ef8a
put one of the XXX's back in
...
svn:r6422
2006-04-25 07:06:48 +00:00
Roger Dingledine
3c86402cc2
petty cleanups
...
svn:r6421
2006-04-25 07:00:04 +00:00
Nick Mathewson
5bce102cd2
Only warn about a down node once
...
svn:r6420
2006-04-25 06:20:47 +00:00
Nick Mathewson
5f9612216c
you wanted it spelled properly too? And me not even funded!
...
svn:r6418
2006-04-25 06:02:46 +00:00
Nick Mathewson
d6c04216ef
fix a segfault in last bug-285-related commit.
...
svn:r6417
2006-04-25 05:59:31 +00:00
Nick Mathewson
c70f1e7eb3
Possible partial fix for 285; needs review
...
svn:r6414
2006-04-24 17:51:31 +00:00
Roger Dingledine
934e9c49bb
Regenerate our local descriptor if it's dirty and some local
...
function asks for it. This may resolve bug 286.
svn:r6412
2006-04-23 23:09:03 +00:00
Roger Dingledine
c74c24a989
make more hibernate log messages use local time. we should audit
...
to see what other log messages keep switching back and forth
between GMT and local.
svn:r6411
2006-04-23 23:05:34 +00:00
Roger Dingledine
2d78d74c80
Raise the timeout for complaining about wedged cpuworkers.
...
This value is high because some servers with low memory/cpu
sometimes spend an hour or more swapping, and Tor starves.
svn:r6406
2006-04-18 19:48:06 +00:00
Roger Dingledine
5721747de2
class B really means /16 here
...
svn:r6404
2006-04-18 05:03:09 +00:00
Nick Mathewson
735a2131b8
require at least 2**16 assignable virtual addresses
...
svn:r6402
2006-04-18 04:57:07 +00:00
Nick Mathewson
7484ca06a5
[Forward-port ]Test and document last patch.
...
svn:r6400
2006-04-18 03:51:18 +00:00
Nick Mathewson
0df40a393b
[forward-port] Implement an option, VirtualAddrMask, to set which addresses get handed out in response to mapaddress requests. Needs testing and docs!
...
svn:r6398
2006-04-18 03:36:28 +00:00
Nick Mathewson
6ebd886511
forward-port: "Resolve" all XXX011 items, mostly by marking them non-011.
...
svn:r6396
2006-04-18 03:07:24 +00:00
Roger Dingledine
47d3e23155
note another bug: we complain that a router doesn't exist,
...
because it's down so we never fetched it so it doesn't exist.
svn:r6394
2006-04-17 06:46:20 +00:00
Roger Dingledine
34bc0866d4
slightly clearer log message when you use a nickname rather than
...
a key for an unnamed server.
svn:r6393
2006-04-17 06:43:27 +00:00
Roger Dingledine
07ff409876
no need to escape the address for our connections -- they are
...
always IP addresses.
svn:r6389
2006-04-16 22:34:00 +00:00
Roger Dingledine
0cee3e1fc7
if the bottom eighth of the servers by bandwidth is really crummy,
...
try the bottom quartile instead.
svn:r6387
2006-04-15 07:15:23 +00:00
Roger Dingledine
3791d3daaa
forward-port the n_named log severity downgrade.
...
svn:r6385
2006-04-14 20:19:33 +00:00
Roger Dingledine
64041d2dbf
ok, put moria1 back in, since it's v1 and thus we need to send
...
our rendezvous descriptors to it.
eventually we might make a 'v1only' tag that explains it's only
for rendezvous descriptors.
svn:r6382
2006-04-11 14:12:04 +00:00
Roger Dingledine
e720cc6589
drop moria1 from the list of authorities.
...
svn:r6381
2006-04-10 21:40:43 +00:00
Peter Palfrader
beb9e0721a
Stop assuming every authority is a v1 authority
...
svn:r6377
2006-04-10 21:29:29 +00:00
Nick Mathewson
1fbc74661f
Remove DER64 functions in trunk: they will never be used again unless the directory authorities switch back to 0.0.9tooearly.
...
svn:r6376
2006-04-10 21:23:00 +00:00
Roger Dingledine
12d461a245
make DirFetchPeriod and StatusFetchPeriod truly obsolete.
...
svn:r6373
2006-04-10 20:16:46 +00:00
Roger Dingledine
f89b0ea09f
be willing to add our own routerinfo into the routerlist.
...
this means authorities will include themselves in their
directories and network-statuses.
svn:r6369
2006-04-10 20:00:31 +00:00
Peter Palfrader
fe6c1b0192
Remove redundant includes. They are all hanled in torint.h which we already do include.
...
svn:r6364
2006-04-10 19:39:26 +00:00
Roger Dingledine
b190c451b8
and one more kick to consider all live network statuses for versions
...
svn:r6359
2006-04-10 08:40:16 +00:00
Roger Dingledine
a9e7737c3a
consider all live network statuses we have when deciding whether
...
our version is bad. also, unfix one of the unbugs from before.
svn:r6358
2006-04-10 08:37:16 +00:00
Nick Mathewson
1064bbc62a
Fix a wide line
...
svn:r6357
2006-04-10 08:05:00 +00:00
Nick Mathewson
71f1a77371
fix bugs in compute_recommended_versions
...
svn:r6356
2006-04-10 08:02:56 +00:00
Nick Mathewson
53f7a1bb0c
In fairness to gcc, a char** is often _not_ usable as a const void **.
...
svn:r6355
2006-04-10 07:50:38 +00:00
Nick Mathewson
eb3e28ba79
Oops. _compare_tor_version_str_ptr wants ptr-to-ptr. Ow.
...
svn:r6354
2006-04-10 07:40:39 +00:00
Roger Dingledine
acc2eb445d
and get rid of an extra variable
...
svn:r6349
2006-04-10 05:48:04 +00:00
Roger Dingledine
ac2070b35b
stop being so picky about when we can start building circuits.
...
now clients are more likely to have circuits up soon after their
tor starts.
svn:r6346
2006-04-10 05:44:54 +00:00
Nick Mathewson
e258276c2b
Change a dumb interface. Also, increment trusted_dir_server_t.n_networkstatus_failures when an all.z download fails entirely or partially.
...
svn:r6345
2006-04-10 01:35:56 +00:00
Roger Dingledine
21263982e4
Don't yell loudly about failed internal/bridge connections. These
...
are reachability testing and rendserv upload/downloads, and they
have their own failure messages elsewhere.
svn:r6343
2006-04-09 21:36:37 +00:00
Roger Dingledine
b6b534c9dd
quiet a bootstrapping message
...
svn:r6342
2006-04-09 20:19:56 +00:00
Roger Dingledine
760934b175
fix typo
...
svn:r6340
2006-04-09 10:43:03 +00:00
Roger Dingledine
ed38f46ebc
lower the minimum required number of fd's to 1000, so we can
...
have some overhead for valgrind on linux, where the default
ulimit -n is 1024.
svn:r6338
2006-04-09 10:28:00 +00:00
Roger Dingledine
b18d20ce32
Here is an attempted fix for directory mirrors that are frozen
...
in fear because they don't have all the networkstatuses. There's
no reason not to proceed if all the other checks are ok -- we just
shouldn't warn about certain things yet.
svn:r6337
2006-04-09 10:10:09 +00:00
Roger Dingledine
0871f4ef90
Remove about 30% of the v1 directory bulk by not including down or
...
invalid nodes.
This will make exitlist's running on v1 not very good. I feel sorry for
them, but not as sorry as I feel for the directory mirrors.
svn:r6332
2006-04-09 01:00:24 +00:00
Roger Dingledine
d48cdbe2e0
When fetching rendezvous descriptors, we were willing to ask
...
v2 authorities too. And of course they did not have a copy.
svn:r6331
2006-04-09 00:36:15 +00:00
Roger Dingledine
b7cadc0db5
If you're not a versioning dirserver, don't put the string
...
"client-versions \nserver-versions \n" in your network status.
svn:r6329
2006-04-08 21:59:15 +00:00
Roger Dingledine
a589650496
i like the name FetchUselessDescriptors better.
...
svn:r6327
2006-04-08 21:48:14 +00:00
Roger Dingledine
2a94c8b493
add a new config option FetchUselessRouters, off by default, for
...
when you plan to run "exitlist" on this client and you want to know
about even the non-running descriptors.
svn:r6326
2006-04-08 21:35:17 +00:00
Roger Dingledine
3a5758e212
If we think of ourselves as authoritative, even if we're not
...
in the DirServers config lines, then we still are. This way we
give ourselves the "Authority" flag in our network-status.
svn:r6325
2006-04-08 21:19:40 +00:00
Roger Dingledine
24b2e0530a
clean up the log lines more, and note a future work.
...
svn:r6324
2006-04-08 21:12:07 +00:00
Roger Dingledine
b5737aab91
add dizum as the fifth authoritative directory server.
...
svn:r6323
2006-04-08 21:03:49 +00:00
Roger Dingledine
f1692ebefc
when we do reachability testing and the tls cert at the other
...
end disagrees with a descriptor we already have, be more useful
at explaining it.
svn:r6322
2006-04-08 20:35:19 +00:00
Roger Dingledine
fab1feee26
complain when we hit wsaenobufs on recv or write too.
...
perhaps this will help us hunt the bug.
svn:r6321
2006-04-08 07:54:11 +00:00
Roger Dingledine
557b174b8d
Break out the checks to see if a routerstatus is something we
...
would use. This way when we're deciding if we have "enough" descriptors
to start building circuits, we can count them accurately.
svn:r6320
2006-04-08 06:56:38 +00:00
Roger Dingledine
de8ce0aae8
fix a typo that was confusing me
...
svn:r6319
2006-04-08 06:55:10 +00:00
Nick Mathewson
5d466b7611
Fix a couple of things that make GCC complain with verbose warnings on. Also, fix some whitespace.
...
svn:r6317
2006-04-08 05:43:52 +00:00
Nick Mathewson
7a804572ab
fix an infinite loop; answer a question
...
svn:r6316
2006-04-07 22:55:46 +00:00
Nick Mathewson
c6d010b218
Dont warn about our own status unless weve tried and failed 4 times (or succeeded) for each authority.
...
svn:r6315
2006-04-07 04:52:32 +00:00
Roger Dingledine
c4fb9d22cf
if there's more than one match for router-get-my-nickname,
...
try to pick one that's running.
svn:r6313
2006-04-04 03:46:40 +00:00
Roger Dingledine
0825f61102
fix crash bug reported in flyspray 279.
...
svn:r6312
2006-04-04 03:25:36 +00:00
Roger Dingledine
453062b028
fix typo, remove extraneous variable
...
svn:r6311
2006-04-03 11:24:14 +00:00
Roger Dingledine
7198af7fbe
one more edge case that could paralyze a client with fear
...
svn:r6310
2006-04-03 06:59:07 +00:00
Roger Dingledine
a324871603
phrase the threshold comparison in the way we've been
...
phrasing it. these are equivalent, right?
svn:r6309
2006-04-03 06:37:35 +00:00
Roger Dingledine
4b6ff2b084
bugfix in sort_version_list() so it doesn't screw up the sorting.
...
svn:r6308
2006-04-03 06:30:48 +00:00
Nick Mathewson
eba6204315
fix some xxxs.
...
svn:r6307
2006-04-03 06:23:24 +00:00
Roger Dingledine
2cb3aeb4e1
another point that needs more thinking
...
svn:r6306
2006-04-03 06:22:54 +00:00
Roger Dingledine
9549d81d95
two more thresholds to look at
...
svn:r6305
2006-04-03 06:10:33 +00:00
Roger Dingledine
64a40b5137
nick: there *is* no MAX_SERVER_INTERVAL_WITHOUT_REQUEST. true?
...
svn:r6300
2006-04-03 02:20:32 +00:00
Nick Mathewson
4130460f8e
Change networkstatus dl logic: try to have all networkstatuses live; insist on having all of them live or tried-at-least-once. Also, answer a XXXX comment.
...
svn:r6297
2006-04-02 23:02:52 +00:00
Nick Mathewson
d663bfa306
Versions that drop connections for having used idle circs are as bad for stable as for guard
...
svn:r6296
2006-04-02 23:01:01 +00:00
Nick Mathewson
785d25e06c
If I could forget that I had enabled StrictExitNodes, others will too.
...
svn:r6295
2006-04-02 22:59:59 +00:00
Roger Dingledine
b34032b87d
but the \r\n is handy too i hear.
...
svn:r6294
2006-04-02 22:19:01 +00:00
Roger Dingledine
e84cd412d4
if you give mapaddress no args at all, it should answer
...
something more than \r\n.
svn:r6293
2006-04-02 22:13:34 +00:00
Roger Dingledine
1e04b70d49
make NoPublish (even though deprecated) work again.
...
svn:r6287
2006-04-02 02:59:48 +00:00
Roger Dingledine
dfb3c5f47a
if you ask for getinfo dir/status/ but your dirport is off,
...
log a complaint.
svn:r6286
2006-04-01 22:17:37 +00:00
Roger Dingledine
6fb27741ba
Fix dirserv_get_networkstatus_v2's api: its function comments
...
did not at all match its behavior, and I can't think of a case
when it should return anything other than 0.
This fix may allow getinfo dir/status/foo to work.
svn:r6285
2006-04-01 22:00:49 +00:00
Roger Dingledine
e754664d62
bugfix: when we fail to bind or listen on an incoming or outgoing
...
socket, we should close it before failing. otherwise we just
leak it. (thanks to weasel for finding.)
svn:r6284
2006-04-01 10:22:57 +00:00
Roger Dingledine
e47075e771
more helpful error message
...
svn:r6283
2006-04-01 09:54:54 +00:00
Roger Dingledine
314f24870d
Start sending back 512 and 451 errors if mapaddress fails,
...
rather than not sending anything back at all.
svn:r6282
2006-04-01 09:50:43 +00:00
Roger Dingledine
4c996757ae
We can remove about 30% of the v1 directory bulk by taking
...
out down or invalid nodes. We should do this once we're ready.
svn:r6273
2006-03-29 09:21:23 +00:00
Roger Dingledine
db1209a852
Refactor the decision of whether to include a router's descriptor
...
in the v1 directory. No actual changes yet.
svn:r6272
2006-03-29 08:56:39 +00:00
Roger Dingledine
1f4d0d2479
When deciding whether a router is Fast or Guard-worthy, consider
...
his advertised BandwidthRate and not just the BandwidthCapacity.
This is a bug in 0.1.0.x as well, but let's not bother backporting.
svn:r6266
2006-03-28 12:01:58 +00:00
Nick Mathewson
685bceed1c
Make the max number of old descriptors to hold rise with the number of authorities.
...
svn:r6254
2006-03-27 17:29:53 +00:00
Peter Palfrader
03302dc67d
On our dirport return a robots.txt so maybe google doesn't index all those server descriptors anymore
...
svn:r6252
2006-03-27 07:33:13 +00:00
Nick Mathewson
2421724853
Code to implement networkstatus fetch from controllers. Only works when dirport is set for now; should be good enough to make serifos html front-end not be as wrong.
...
svn:r6251
2006-03-27 06:49:25 +00:00
Roger Dingledine
56df81199a
that extra punctuation distracts me
...
svn:r6250
2006-03-27 05:30:16 +00:00
Nick Mathewson
cd271dbca9
re-order to avoid free-then-use. Thank goodness tor_free() zeroes things.
...
svn:r6249
2006-03-27 05:27:47 +00:00
Nick Mathewson
c74bd877e2
Oops. We may not have a networkstatus list when we first parse the cached routers.
...
svn:r6248
2006-03-27 05:12:07 +00:00
Nick Mathewson
3e8c9a485f
Fix for "but need_to_mirror=1" annoyance; is bug 273 fixed?
...
svn:r6247
2006-03-27 05:07:57 +00:00
Roger Dingledine
6f08d121d9
Refactor and consolidate addr/exit policies into a new policies.c.
...
Fix some minor bugs and memory leaks along the way.
svn:r6246
2006-03-27 02:25:34 +00:00
Roger Dingledine
e20aad8d46
remove obsolete address policy code
...
svn:r6243
2006-03-26 09:38:17 +00:00
Roger Dingledine
e1c8e3ca6e
also send syntax and parse errors back to the controller.
...
svn:r6242
2006-03-26 08:09:19 +00:00
Roger Dingledine
b899b9592a
When the controller's *setconf commands fail, collect an error message
...
in a string and hand it back. This starts to resolve bug 275.
svn:r6241
2006-03-26 06:51:26 +00:00
Peter Palfrader
e90bebf27b
Say private address instead of internal address.
...
Both are wrong or at least not entirely correct but nobody would
understand "special-use address as listed in RFC3330" I guess.
svn:r6236
2006-03-25 21:24:28 +00:00
Roger Dingledine
f2abd7a69b
fix a wordo, don't be so quick to yell at servers, and ask a question.
...
svn:r6235
2006-03-24 21:11:14 +00:00
Roger Dingledine
7edfec2ae6
bump up the magic number for how quickly we start notifying
...
a server that it's unreachable.
svn:r6234
2006-03-24 20:57:55 +00:00
Peter Palfrader
444e3b8eb2
Note a magic 2 that probably should be replaced now that we have more dirservers
...
svn:r6232
2006-03-23 20:21:54 +00:00
Roger Dingledine
5b87b0bf55
update getinfo info/names to reflect that we now support
...
getinfo dir/server/*
svn:r6231
2006-03-22 21:53:09 +00:00
Roger Dingledine
20e66a799b
Resolve problem found by weasel: the v1 directory was including
...
servers as much as 48 hours old, because that's how the new
routerlist->routers works. Now only include them if they're
20 hours old or less.
svn:r6230
2006-03-22 21:32:42 +00:00
Peter Palfrader
58307cd8de
Maybe it compiles for devilproxy now
...
svn:r6229
2006-03-22 11:23:00 +00:00
Roger Dingledine
0d7efbe65d
Note a vulnerability with our current recommended-version concensus
...
building.
Make the warnings about invalid and unnamed nodes scale better, and
update the text of the warnings.
Change router_have_minimum_dir_info() to only be happy when it has
enough network-statuses ("more than half") to be willing to actually
build circuits.
Not yet done: when we fail to get a networkstatus that we wanted, and
!router_have_minimum_dir_info(), we should retry it quicker than a whole
minute from now.
svn:r6227
2006-03-22 06:22:12 +00:00
Roger Dingledine
51a3981d10
stop caching the v1 directory so often.
...
svn:r6226
2006-03-22 06:18:27 +00:00
Roger Dingledine
6fb2b6785d
whoops. inform circuits again when we failed to connect to their
...
first hop, so they don't have to time out.
svn:r6225
2006-03-22 04:09:30 +00:00
Roger Dingledine
1db263ac3c
stop writing the "router.desc" file, ever. nothing uses it anymore.
...
svn:r6224
2006-03-22 03:45:17 +00:00
Peter Palfrader
805754fdd9
Log server fingerprint on startup
...
svn:r6223
2006-03-22 03:40:59 +00:00
Roger Dingledine
216e349cb2
parameterize two more timeout constants in circuit-land.
...
svn:r6220
2006-03-22 00:52:37 +00:00
Roger Dingledine
ad236d4b8b
freeing is not the same as setting to null
...
svn:r6219
2006-03-22 00:03:51 +00:00
Roger Dingledine
28fafb9022
new config option SocksTimeout: How long do we let a socks connection
...
wait unattached before we fail it?
Use this value for controller socks timeout, for normal socks
timeout, and for hidden-service socks timeout.
svn:r6217
2006-03-21 23:27:43 +00:00
Roger Dingledine
5399e394a8
and dirservers don't call you a guard if you're running a
...
buggy version either.
svn:r6216
2006-03-21 23:10:26 +00:00
Roger Dingledine
f11509e494
when upgrading to newer versions, throw away entry guards
...
picked by the old wrong algorithms.
svn:r6215
2006-03-21 23:06:47 +00:00
Roger Dingledine
8a8a84dd52
don't call circuit_n_conn_done() if the closing conn is already open.
...
svn:r6214
2006-03-21 22:22:48 +00:00
Roger Dingledine
a3329036a8
Bugfix: looks like clients since 0.1.1.10-alpha have been
...
expiring connections whenever 5 minutes pass and they *do*
have circuits on them.
svn:r6213
2006-03-21 21:58:00 +00:00
Roger Dingledine
65b575c03d
Be more patient before giving up on in-progress circuits.
...
I have absolutely no idea if this change helps or hurts.
Somebody should study this.
svn:r6212
2006-03-21 21:22:52 +00:00
Roger Dingledine
0e68ec0846
put lefkada on port 80, officially.
...
svn:r6209
2006-03-21 16:57:03 +00:00
Roger Dingledine
073d574a3f
Point out a potential DoS flaw in caching untrusted network
...
statuses to disk. We should resolve sometime.
svn:r6206
2006-03-21 05:27:35 +00:00
Roger Dingledine
415c9e878a
add lefkada as a fourth auth dir server.
...
svn:r6205
2006-03-21 04:41:20 +00:00
Nick Mathewson
08aba015ab
Make guard bandwidth threshold higher than fast bandwidth threshold.
...
svn:r6204
2006-03-20 21:49:55 +00:00
Nick Mathewson
1272485cd4
Make "Fast" based on median capacity, just like "Stable" is based on median uptime.
...
svn:r6203
2006-03-20 21:41:12 +00:00
Roger Dingledine
d1d0813cf3
Allow non-printable characters for exit streams (both for
...
connecting and for resolving). Now we tolerate applications
that don't follow the RFCs. But continue to block malformed
names at the socks side.
svn:r6193
2006-03-19 03:55:48 +00:00
Roger Dingledine
726e825b09
i'm a little teapot, short and stout
...
svn:r6192
2006-03-19 01:59:02 +00:00
Roger Dingledine
d8195e4128
Implement Jason Holt's SafeSocks config option.
...
Also put a URL in the warning message for unsafe socks4 use --
previously we'd only had the URL for unsafe socks5 use. Oops.
svn:r6190
2006-03-19 01:44:53 +00:00
Roger Dingledine
c06e6ddadd
Finish the transition from the word 'verified' to the words
...
'named' and 'valid'.
svn:r6188
2006-03-19 01:21:59 +00:00
Roger Dingledine
7e2aa67fcb
simplify when we're picking a default address for
...
when people ask for "serifos.exit".
svn:r6187
2006-03-18 22:54:08 +00:00
Roger Dingledine
868d456c3b
make it so there is one place to edit for new dirservers, not two.
...
svn:r6186
2006-03-18 22:37:27 +00:00
Roger Dingledine
cc37c2f71e
fix some typos
...
svn:r6185
2006-03-18 09:29:05 +00:00
Roger Dingledine
67b61fe475
authdirs shouldn't complain about unreachability when they
...
fetch a descriptor from somebody else. this is not the right
time to increment the failure count.
svn:r6184
2006-03-18 05:37:15 +00:00
Roger Dingledine
581795f41d
auth dir servers were only modifying a server's is_running field
...
when they created a network status. so if nobody asked for a
network status, they would never discover that any servers are
is_running, so they could never build a circuit.
svn:r6183
2006-03-18 01:24:04 +00:00
Roger Dingledine
cf6ba3e76f
let an authdir that's not a naming authdir start even
...
if it doesn't have an approved-routers file. if it does,
read it and parse it as usual.
svn:r6182
2006-03-18 00:22:23 +00:00
Roger Dingledine
4f14826cb3
Actually, only v1 auth dir servers need to define recommendedversions.
...
But versioning dirservers do need to cause recommendclientversions
and recommendedserverversions to somehow be non-empty.
svn:r6181
2006-03-17 23:25:40 +00:00
Roger Dingledine
c7839a17f5
when we're an auth dir server but don't claim to be a versioning
...
auth dir server, don't demand that we define RecommendedVersions.
svn:r6180
2006-03-17 23:21:42 +00:00
Roger Dingledine
51fc6799ad
right now we don't support entryguards on auth dirservers,
...
but that doesn't mean we need to remind them every time
they start up.
svn:r6179
2006-03-17 23:19:51 +00:00
Roger Dingledine
817556315a
Implement router purposes, and don't choose a non-general
...
purpose router when picking random nodes for a circuit.
Also implement SETROUTERPURPOSE and modify +POSTDESCRIPTOR.
This concludes bug 250 assuming it all works.
svn:r6178
2006-03-17 22:08:59 +00:00
Roger Dingledine
7d141c6776
but i made the line too long
...
svn:r6176
2006-03-17 19:25:36 +00:00
Roger Dingledine
f1bcc2d6f8
stop tricking server operators into thinking they got their
...
torrc perfect, just because tor could build a circuit.
svn:r6175
2006-03-17 19:20:07 +00:00
Nick Mathewson
053411e827
Comments: cleanups and additions.
...
svn:r6174
2006-03-17 05:50:41 +00:00
Nick Mathewson
0f0e14c6e3
normalize whitespace.
...
svn:r6173
2006-03-17 04:43:37 +00:00
Nick Mathewson
215e377224
Only warn about lack of name binding for self if we have tried downloading every networkstatus.
...
svn:r6172
2006-03-17 04:41:57 +00:00
Roger Dingledine
9a5df4cef5
resume being printist: if the hostname contains non-printable
...
characters, then fail. this time don't even bother telling the
server operator about these cases, because what's he going to do?
if it turns out that some significant population somewhere in the
world uses non-printable hostnames and wants to use tor, then i
hereby assume that they will contact us.
svn:r6171
2006-03-15 23:36:57 +00:00
Roger Dingledine
8d1f65a222
quiet another entry guard log message
...
svn:r6169
2006-03-15 22:48:48 +00:00
Roger Dingledine
e8fd871d8b
Stop being printist: just because our local platform doesn't
...
consider an alleged destination to be printable doesn't mean
nobody in the world will want to use it.
svn:r6167
2006-03-15 19:17:34 +00:00
Nick Mathewson
13cf54b9c1
Interim fix for 272: Only warn that we are not named if we have status docs from some naming authorities.
...
svn:r6166
2006-03-15 05:37:27 +00:00
Nick Mathewson
fb7b5545ce
Implement GETINFO(dir/server/foo); status will be harder.
...
svn:r6165
2006-03-15 05:06:56 +00:00
Nick Mathewson
d0f24b1e46
(Missing header change) Do not warn about unknown servers in our family when they are given as hex digests.
...
svn:r6164
2006-03-15 05:06:26 +00:00
Nick Mathewson
3c0a5f6365
Do not warn about unknown servers in our family when they are given as hex digests.
...
svn:r6163
2006-03-15 05:04:11 +00:00
Roger Dingledine
903183ea28
if we as a directory mirror don't know of any v1 directory
...
authorities, then don't try to cache any v1 directories.
svn:r6162
2006-03-15 00:10:13 +00:00
Peter Palfrader
a4ec555228
change INET_NTOA_BUF_LEN+1 to INET_NTOA_BUF_LEN
...
add a comment in a few places where we add weird numbers to buffer lengths
svn:r6161
2006-03-14 23:40:37 +00:00
Peter Palfrader
866f6293ff
I wonder what an internal internet protocol is
...
svn:r6159
2006-03-14 22:52:20 +00:00
Peter Palfrader
86a964d868
When we try to be a server and Address is not explicitly set
...
and our hostname resolves to a private IP address, try
to use an interface address if it has a public address.
svn:r6158
2006-03-14 22:51:15 +00:00
Peter Palfrader
2ef8f772a1
Fix an off-by-one buffer size in dirserv.c that magically never hit our
...
three authorities but broke sjmurdoch's own tor network.
svn:r6157
2006-03-14 22:43:52 +00:00
Roger Dingledine
499eeced44
when event_add or event_del fail, tell us why.
...
svn:r6156
2006-03-13 19:33:46 +00:00
Peter Palfrader
ebfb3fea6d
Fix minor semantic error with no real effect:
...
we were doing "is_internal_IP(htonl(in.s_addr))" but in.s_addr is
in network order and is_internal_IP wants host order. Change to
"is_internal_IP(ntohl(in.s_addr))".
svn:r6155
2006-03-13 19:09:52 +00:00
Nick Mathewson
dad60905a8
Be a little more careful when our calculated bandwidth is so high that we could never ever exhaust our bandwidth limit. This should resolve bug 130.
...
svn:r6146
2006-03-13 01:06:55 +00:00
Nick Mathewson
bd8ffccae7
More cleanups noticed by weasel; also, remove macros that nobody uses.
...
svn:r6143
2006-03-12 23:31:16 +00:00
Nick Mathewson
474c60b743
Cleanup on time-relaqted constants. New conventions:
...
1) Surround all constants by (parens), whether we'll be using them
in a denominator or not.
2) Express all time periods as products (24*60*60), not as multiplied-out
constants (86400).
3) Comments like "(60*60) /* one hour */" are as pointless as comments
like "c = a + b; /* set c to the sum of a and b */". Remove them.
4) All time periods should be #defined constants, not given inline.
5) All time periods should have doxygen comments.
6) All time periods, unless specified, are in seconds. It's not necessary
to say so.
To summarize, the old (lack of) style would allow:
#define FOO_RETRY_INTERVAL 60*60 /* one hour (seconds) */
next_try = now + 3600;
The new style is:
/** How often do we reattempt foo? */
#define FOO_RETRY_INTERVAL (60*60)
next_try = now + RETRY_INTERVAL;
svn:r6142
2006-03-12 22:48:18 +00:00
Roger Dingledine
b67a5ba498
lower the reachability timeout, so we're more likely to act
...
quickly if a server stops being reachable.
svn:r6141
2006-03-12 21:24:03 +00:00
Roger Dingledine
1fc5eb329b
We screwed up in anticipating how to add new dirservers:
...
Old servers won't realize they're supposed to stay connected
to the new dirservers, so they'll expire connections to them,
but that means the dirservers will list them as unreachable.
So the fix is to stop requiring an open connection when deciding
if a server is reachable. This makes us slightly less accurate,
but at least it will work.
svn:r6140
2006-03-12 20:57:52 +00:00
Roger Dingledine
ef447507ff
a better clean-up
...
svn:r6139
2006-03-12 20:51:02 +00:00
Roger Dingledine
a98b25137c
and another fix
...
svn:r6138
2006-03-12 20:48:59 +00:00
Roger Dingledine
98476c71d2
make tor --verify-config closer to working
...
svn:r6137
2006-03-12 20:46:00 +00:00
Roger Dingledine
a4da44c2b9
Now do address rewriting when the controller asks us to attach
...
to a particular circuit too. This will let Blossom specify
"moria2.exit" without having to learn what moria2's IP address is.
It may also cause other controller authors some angst. Let us know.
svn:r6136
2006-03-12 05:04:16 +00:00
Roger Dingledine
d80d5370e0
when we get funny-looking lines on our dirport, shut up about it.
...
svn:r6135
2006-03-12 04:36:17 +00:00
Roger Dingledine
b5c6a990d3
fix assert while attachstream'ing a connect-wait or
...
resolve-wait stream.
svn:r6134
2006-03-12 04:33:29 +00:00
Roger Dingledine
80f0492a65
avoid shadowing a variable so we don't get sad later.
...
svn:r6133
2006-03-12 04:07:21 +00:00
Roger Dingledine
0bd46086c3
fix bug reported by gozu: if we get a linelist or linelist_s
...
config option from the torrc and it has no value, warn and
skip rather than silently resetting it to its default.
svn:r6125
2006-03-11 18:40:33 +00:00
Roger Dingledine
c8e2a051ac
huge warning sign for esc_router_info()
...
svn:r6124
2006-03-11 17:52:55 +00:00
Nick Mathewson
4d3e709c4b
Use escaped() for remaining cases.
...
svn:r6117
2006-03-11 02:21:30 +00:00
Roger Dingledine
86a72f73b9
make entry guard logs even quieter
...
svn:r6116
2006-03-10 16:51:26 +00:00
Roger Dingledine
e11f900a2a
stop printing a log message at every iteration through the
...
event loop when holding open a conn for flushing but it
doesn't want to flush any more bytes yet.
svn:r6114
2006-03-09 06:34:33 +00:00
Roger Dingledine
5f8d26496d
Let the controller attachstream conns that are in connect_wait
...
or resolve_wait: we detach them first and then act as before.
Resolves bug 264.
svn:r6112
2006-03-09 06:29:53 +00:00
Roger Dingledine
82d1fdbaea
don't abandon entry guards until they've been dead a whole month.
...
make entry guard log messages quieter.
svn:r6106
2006-03-09 00:55:55 +00:00
Roger Dingledine
44107f6ec4
Implement NEWNYM. Nick, did I do a bad thing?
...
svn:r6105
2006-03-09 00:18:16 +00:00
Roger Dingledine
0f39033b9f
clean up typo
...
svn:r6103
2006-03-09 00:10:28 +00:00
Roger Dingledine
946317ae13
start using OR_CONN_EVENT_NEW.
...
also fixes a seg fault in tor (bug 261).
svn:r6101
2006-03-08 22:29:08 +00:00
Roger Dingledine
8db1e363c9
remove some redundant code now that we compress exit policies
...
after parsing them
svn:r6099
2006-03-08 19:34:34 +00:00
Nick Mathewson
1ce3713889
Possible bug 265 fix: authorities must be more strict than clients about age of acceptable routers; make routers publish every 12 hours; client ROUTER_MAX_AGE must be greater than NETWORKSTATUS_MAX_AGE+authoirty ROUTER_MAX_AGE.
...
svn:r6095
2006-03-08 06:29:52 +00:00
Roger Dingledine
a2d71f917e
mark bug 261
...
svn:r6089
2006-03-06 19:47:54 +00:00
Nick Mathewson
5dc5380984
Add some "to-be-safe" escaped() wrappers to log statements in rend*.c, though I am not 100% sure that each one is necessary.
...
svn:r6088
2006-03-06 00:25:39 +00:00
Nick Mathewson
5777ee0e1a
Add some functions to escape values from the network before sending them to the log. Use them everywhere except for routerinfo->plaftorm, routerinfo->contact_info, and rend*.c. (need sleep now)
...
svn:r6087
2006-03-05 09:50:26 +00:00
Nick Mathewson
6a4e304d9e
Allow private:* in routerdescs; not generated yet (because older Tors do not understand it); needs testing.
...
svn:r6086
2006-03-05 05:27:59 +00:00
Roger Dingledine
329af979e0
Add a new circuit purpose 'controller' to let the controller
...
ask for a circuit that Tor won't try to use.
Extend the EXTENDCIRCUIT controller command to let you specify
the purpose if you're starting a new circuit.
Add a new SETCIRCUITPURPOSE controller command to let you
change a circuit's purpose after it's been created.
svn:r6075
2006-02-23 06:51:09 +00:00
Roger Dingledine
2bfd2a2400
clean up a log message
...
svn:r6074
2006-02-21 17:54:56 +00:00
Roger Dingledine
25ed4b66e3
be quieter about hidserv descriptors that are too old or too new.
...
we can't do anything about them anyway.
svn:r6073
2006-02-21 06:23:57 +00:00
Roger Dingledine
89b07b458b
i missed the other half of that grammar fix
...
svn:r6058
2006-02-21 03:55:47 +00:00
Roger Dingledine
16f265fa0d
when saveconf fails in controller v1, we were returning a malformed
...
error string.
svn:r6053
2006-02-20 01:24:26 +00:00
Roger Dingledine
498c13b4df
make the NoPublish option obsolete.
...
svn:r6052
2006-02-20 01:21:48 +00:00
Roger Dingledine
0408adb728
tweak
...
svn:r6051
2006-02-20 01:15:38 +00:00
Roger Dingledine
276a7bd038
the other half of fixing bug 257. catch an error in more places.
...
svn:r6050
2006-02-20 01:06:27 +00:00
Roger Dingledine
57bcdcecf1
try to address bug 257: if rename() fails during saveconf, tell
...
the controller.
svn:r6049
2006-02-19 23:12:26 +00:00
Roger Dingledine
6a52867846
New config options to address bug 251:
...
FetchServerDescriptors and FetchHidServDescriptors for whether
to fetch server info and hidserv info or let the controller do it,
and also PublishServerDescriptor and PublishHidServDescriptors.
Add AllDirActionsPrivate undocumented option -- if you set it, you'll
need the controller to bootstrap you enough to build your first circuits.
svn:r6047
2006-02-19 22:02:02 +00:00
Peter Palfrader
c4f389420c
Improve the "we have been waiting for 1140377851 seconds" log
...
svn:r6046
2006-02-19 19:44:09 +00:00
Roger Dingledine
266254f42b
clean up the Reachable*Addresses changes
...
svn:r6041
2006-02-19 08:31:47 +00:00
Roger Dingledine
a9fcf4ced2
this is why you're not supposed to cut-and-paste code
...
svn:r6037
2006-02-18 06:46:01 +00:00
Peter Palfrader
aa5443551d
Make it compile with VC7. It does not yet link.
...
svn:r6033
2006-02-18 02:02:21 +00:00
Roger Dingledine
42cd0dcde8
fix typo found in phobos's logs
...
svn:r6020
2006-02-15 03:47:38 +00:00
Roger Dingledine
f6d80d60e0
don't warn when we get a server descriptor from the controller
...
but it's too old. that's not something tor should fix.
svn:r6019
2006-02-15 03:01:53 +00:00
Peter Palfrader
c7f2970777
Just because both are obsolete does not mean we prefer the newer
...
svn:r6016
2006-02-14 17:48:51 +00:00
Peter Palfrader
0bab094d5d
Explain why we only expire open connections
...
svn:r6015
2006-02-14 17:30:04 +00:00
Roger Dingledine
ae249fc5a3
document the frequency for reachability testing by the
...
directory authorities.
svn:r6014
2006-02-14 04:33:59 +00:00
Peter Palfrader
84295f9f43
Do not mark connections obsolete before they have done their TLS handshake or are at least 60 seconds old
...
svn:r6013
2006-02-14 04:23:05 +00:00
Peter Palfrader
761da5b97f
Our connection_or_get_by_identity_digest() was slightly wrong. If best
...
didn't have any circuits on it, but conn had circuits, we would not make
conn our new best unless it was also newer. Also, restructure the code
a bit to maybe make it clearer.
svn:r6012
2006-02-14 00:08:19 +00:00
Peter Palfrader
0cc2390f8c
Warn if ReachableAddresses is set when also ReachableDirAddresses and ReachableORAddresses are set.
...
svn:r6010
2006-02-13 22:29:37 +00:00
Peter Palfrader
5eea6c76df
Split ReachableAddresses into ReachableDirAddresses and ReachableORAddresses
...
svn:r6009
2006-02-13 21:17:20 +00:00
Roger Dingledine
259c65ab08
the last of the log convention conversion. finally.
...
svn:r6005
2006-02-13 10:33:00 +00:00
Roger Dingledine
aa63a84fe1
the things we do for our windows users.
...
i hope they appreciate it.
svn:r6004
2006-02-13 09:37:53 +00:00
Roger Dingledine
d113b75da6
more log conversions.
...
whee.
svn:r6003
2006-02-13 09:02:35 +00:00
Roger Dingledine
36484f873a
convert some more source files to the new log convention
...
svn:r6002
2006-02-13 08:28:42 +00:00
Roger Dingledine
7d80921afa
resolve too-long-lines
...
svn:r6001
2006-02-13 08:22:57 +00:00
Nick Mathewson
2a4555fedd
Style on config_addr_policy_intersectes, which looks ok to me.
...
svn:r5998
2006-02-13 07:16:32 +00:00
Roger Dingledine
350313d77a
Let the users set ControlListenAddress in the torrc.
...
This can be dangerous, but there are some cases (like a secured
LAN) where it makes sense.
svn:r5997
2006-02-13 06:25:16 +00:00
Peter Palfrader
6c4d873591
Compress exit policies even more. please review
...
svn:r5995
2006-02-13 01:54:31 +00:00
Nick Mathewson
2cc66125b8
try to fix bug with spurious "everything is broken" warning
...
svn:r5994
2006-02-13 00:26:43 +00:00
Roger Dingledine
b7781ea208
bugfix: we were ignoring the IS_FAST flag in the directory
...
status, meaning we were willing to pick trivial-bandwidth nodes
for "fast" connections.
svn:r5992
2006-02-13 00:09:30 +00:00
Nick Mathewson
dba155ecff
Generate 18.0.0.0/8 address policy format in descs when we can; warn when the mask is not reducible to a bit-prefix.
...
svn:r5991
2006-02-12 23:58:22 +00:00
Roger Dingledine
b99f903e34
and don't warn when it happens here either, unless the user
...
wants to hear it.
svn:r5990
2006-02-12 23:44:02 +00:00
Roger Dingledine
97571a1cb4
don't tell ordinary users about broken directory servers.
...
it's a shame that they're broken, but most people are just
confused by the warning.
svn:r5988
2006-02-12 23:31:47 +00:00
Nick Mathewson
98ec124c6a
Drop redundant exit policy entries, not just identical ones.
...
svn:r5987
2006-02-12 22:59:38 +00:00
Nick Mathewson
e7b2d5cd47
Retain unrecognized options in state file, so that we can be forward-compatible.
...
svn:r5985
2006-02-12 22:28:30 +00:00
Nick Mathewson
ae4f0467c8
enforce whitespace style
...
svn:r5984
2006-02-12 22:27:09 +00:00
Roger Dingledine
3c4e68488b
Clients now honor the "guard" flag in the router status when
...
picking entry guards, rather than looking at is_fast or is_stable.
Now dirservers can change how they define it and clients will
automatically use their new definition.
svn:r5979
2006-02-12 03:43:39 +00:00
Roger Dingledine
b5ac6fc707
more helpful log message when running servers on obsolete windows.
...
svn:r5975
2006-02-12 00:14:58 +00:00
Roger Dingledine
094ccd34a9
bump up the period for forcing a hidden service descriptor upload
...
from 20 minutes to 1 hour.
svn:r5972
2006-02-12 00:12:36 +00:00
Roger Dingledine
981815146a
compress exit policies even more -- look for duplicate lines
...
and remove them.
svn:r5971
2006-02-12 00:03:06 +00:00
Roger Dingledine
6c093a17a9
bugfix in config_cmp_addr_policies() -- we were treating a pair
...
of exit policies if they were equal even if one said accept and
the other said reject.
svn:r5970
2006-02-11 23:47:24 +00:00
Roger Dingledine
fdf18fbbdb
stop leaking that
...
svn:r5969
2006-02-11 23:16:13 +00:00
Roger Dingledine
e847085c04
When a client asks for an old-style directory and our write bucket
...
is empty, don't give it to him. This way small servers can continue
to serve the directory *sometimes*, without getting overloaded.
svn:r5968
2006-02-11 23:15:40 +00:00
Nick Mathewson
f1b91924b2
Keep running if we ask for an impossible stdout log; just warn.
...
svn:r5964
2006-02-11 21:56:03 +00:00
Nick Mathewson
1dc90be4f0
Retry pending server downloads as well as pending networkstatus downloads when we unexpectedly get an app connection
...
svn:r5962
2006-02-11 21:29:12 +00:00
Nick Mathewson
91847124bf
Warn if running obsolete windows as a server.
...
svn:r5961
2006-02-11 21:26:40 +00:00
Roger Dingledine
85a64b4fd0
get our grammar right when complaining about un-recommended versions
...
svn:r5950
2006-02-09 06:08:59 +00:00
Roger Dingledine
5f051574d5
Happy new year!
...
svn:r5949
2006-02-09 05:46:49 +00:00
Roger Dingledine
fd0fcdf17c
stop calling it a "libevent poll" -- the word "poll" has
...
other meaning in this context that are confusing.
svn:r5936
2006-02-09 03:09:52 +00:00
Roger Dingledine
dbea401305
correct the comments that don't realize it's the opposite
...
svn:r5934
2006-02-09 02:59:26 +00:00
Roger Dingledine
31f2705d9a
and make sure that never happens again
...
svn:r5932
2006-02-09 02:42:33 +00:00
Roger Dingledine
2c221dd8db
fix bug 245: When modifying the orconn_circid_map map, we would
...
sometimes decrement conn->n_circuits even when there was no circuit
originally. This caused conn->n_circuits to go negative.
We noticed this because we were checking if connections can be
closed based on conn->n_circuits == 0, so we were never closing
any connection that had ever had a circuit on it.
svn:r5931
2006-02-09 02:42:15 +00:00
Roger Dingledine
1c596156aa
tweak comment
...
svn:r5930
2006-02-09 00:08:23 +00:00
Nick Mathewson
e5a574ce2e
Move "sort list of versions" logic into routerparse.c; make version-checking code say which versions it would have accepted. (not tested.)
...
svn:r5927
2006-02-06 05:04:27 +00:00
Nick Mathewson
2bb4fd24de
char *x = "y"; is not good C.
...
svn:r5926
2006-02-06 05:01:44 +00:00
Nick Mathewson
50e1005327
Only v1 authorities get hidden service descriptors with current protocol
...
svn:r5924
2006-02-06 04:56:18 +00:00
Nick Mathewson
97bff8edaa
Fix a const-non-const warning
...
svn:r5923
2006-02-06 04:55:27 +00:00
Roger Dingledine
a9c87fe251
more typos and nits
...
svn:r5918
2006-02-05 05:28:52 +00:00
Nick Mathewson
157e6a025a
Stupid cut-and-paste bug.
...
svn:r5917
2006-02-05 05:11:24 +00:00
Roger Dingledine
555a64e06d
as soon as we've fetched some more directory info, that's time
...
to think about downloading more server descriptors. this way
we don't have a 10 second pause in initial bootstrapping.
svn:r5916
2006-02-05 03:42:34 +00:00
Roger Dingledine
d602d0d298
cosmetic fix
...
svn:r5915
2006-02-05 03:42:04 +00:00
Roger Dingledine
640882c76c
clean up tabs and wide-lines from weasel's commit
...
svn:r5914
2006-02-05 03:23:16 +00:00
Roger Dingledine
6535087845
when building v2 statuses or v1 running-routers, don't admit the
...
existence of descriptors older than a day.
we still cache them in case anybody asks, but we don't actively
mention them.
svn:r5913
2006-02-05 02:33:40 +00:00
Roger Dingledine
53f86cdf5d
fix bug: we were caching the newest descriptor for each server,
...
well, forever. i imagine this just keeps growing in size.
svn:r5912
2006-02-05 02:07:28 +00:00
Roger Dingledine
4c1fa73c7e
typos and nits
...
svn:r5911
2006-02-05 01:57:27 +00:00
Roger Dingledine
a53a73a782
forward-port the part where ordinary users try to fetch directories
...
less often. not critical but might as well stay in sync with stable.
svn:r5910
2006-02-05 01:57:07 +00:00
Roger Dingledine
640c555f02
Fix a major load balance bug: we were round-robining in 16 KB chunks, and
...
servers with bandwidthrate of 20 KB, while downloading a 600 KB directory,
would starve their other connections. Now we try to be a bit more fair.
svn:r5906
2006-02-04 08:58:51 +00:00
Peter Palfrader
94fb3f06b3
Fix compiler warning on 64 bit archs
...
svn:r5903
2006-02-03 22:26:43 +00:00
Peter Palfrader
390bbb0a0c
Try to make tor work better through squid: Limit number of descriptors we fetch
...
to 96 (was 128 previously).
We limit this number even when we do not have a http proxy explicitly
configured as some people mistakenly believe transparent proxies are a neat
idea.
svn:r5901
2006-02-03 15:17:48 +00:00
Roger Dingledine
a1dd751f30
when we fail to bind a listener, try to provide a more useful log msg.
...
svn:r5900
2006-02-03 12:26:10 +00:00
Roger Dingledine
1800fbe486
don't warn when we receive a 503 from a dirserver/cache -- this
...
will pave the way for them being able to tell us to screw off
if they're busy.
svn:r5898
2006-02-03 12:08:31 +00:00
Roger Dingledine
0fadf0aad6
Fix bug 225: now "attachstream 0" treats conn like it just connected,
...
doing address remapping, handling .exit and .onion idioms, and so on.
Now we are more uniform in making sure that the controller hears about
all new connections, and making sure it hears when they close.
svn:r5897
2006-02-03 11:37:19 +00:00
Roger Dingledine
92ef9e37e7
Add a new config option ExitPolicyRejectPrivate which defaults to 1.
...
This means all exit policies will begin with rejecting private addresses,
unless the server operator explicitly turns it off.
Also, make our code to remove redundancies in the exit policy smarter,
so it can detect "reject foo, reject bar, reject *" patterns.
Lastly, we can get rid of the "exit policy implicitly accepts" code,
since we make everything more explicit now.
svn:r5888
2006-02-01 03:53:52 +00:00
Roger Dingledine
bdba6e42dc
avoid a minor confusing log message
...
svn:r5887
2006-02-01 03:05:52 +00:00
Peter Palfrader
bf514e5dc5
Try to fix policy_includes_addr_mask_implicitly()
...
svn:r5886
2006-02-01 02:52:55 +00:00
Peter Palfrader
61ea27620a
Also catch 0/8 in exit_policy_implicitly_allows_local_networks()
...
svn:r5885
2006-02-01 02:31:27 +00:00
Roger Dingledine
686508a04a
don't try to upload hidden service descriptors until we have
...
established a circuit.
svn:r5884
2006-02-01 02:19:46 +00:00
Roger Dingledine
e05d4e45d2
provide a more useful warn message when our onion queue
...
gets full.
svn:r5881
2006-01-31 08:17:00 +00:00
Roger Dingledine
8fc44169e5
only start testing reachability once we've established a circuit.
...
this will make startup on dirservers less noisy.
it may also break things in subtle ways.
svn:r5878
2006-01-29 01:11:41 +00:00
Roger Dingledine
f8b9a8d457
bump the default bandwidthrate to 3 MB, and burst to 6 MB
...
svn:r5874
2006-01-28 08:28:15 +00:00
Roger Dingledine
35f91db15f
a slightly more useful message when you get a sighup
...
svn:r5869
2006-01-26 19:11:06 +00:00
Nick Mathewson
bfe285be61
Add a missing printf arg
...
svn:r5861
2006-01-24 04:01:13 +00:00
Roger Dingledine
2eabf190e9
make it louder when we're running an unrecommended version.
...
also, we need to tell them what versions *are* recommended.
i'll add that to the todo.
svn:r5859
2006-01-24 03:45:58 +00:00
Nick Mathewson
9f42c9d650
Make dirservers generate a separate "guard" flag to mean, "would make a good entry guard". Make clients parse it and vote on it.
...
svn:r5856
2006-01-24 00:31:16 +00:00
Roger Dingledine
1756ebdd4e
Jan 23 02:39:44.856 [warn] rend_mid_rendezvous(): Rejecting RENDEZVOUS1 cell with unrecognized rendezvous cookie AFC097FD.
...
This is not anything that the server admin can deal with, so don't
complain this loudly.
svn:r5851
2006-01-23 09:26:22 +00:00
Roger Dingledine
de13ddd26f
Stop complaining loudly whenever some poor client falls off
...
the network before we finish writing to him.
svn:r5850
2006-01-23 09:23:04 +00:00
Roger Dingledine
b9540285af
remove unused code
...
svn:r5847
2006-01-20 20:54:42 +00:00
Roger Dingledine
f6084cf831
Jan 18 18:42:05.671 [debug] Encountered eof
...
Jan 18 18:42:05.671 [debug] Got data, not eof. Leaving on inbuf.
that's not very smart.
svn:r5843
2006-01-19 11:21:28 +00:00
Roger Dingledine
4a66f5a896
when the controller asks for a signal we don't recognize, don't
...
include the whitespace/newline/etc in our complaint.
svn:r5841
2006-01-19 02:21:24 +00:00
Roger Dingledine
d682c84e79
attempted patch for bug 220: don't assert when we've tried all the
...
intro points for a hidden service and we try fetching the service
descriptor again.
svn:r5838
2006-01-17 04:16:59 +00:00
Roger Dingledine
d5acef191c
add another assert to make sure we're not scribbling on the stack.
...
svn:r5837
2006-01-17 04:14:04 +00:00
Roger Dingledine
cca9a2f7b0
oh, and the other bits of the commit
...
svn:r5836
2006-01-17 04:03:23 +00:00
Roger Dingledine
21be9dc3c0
when you tried to set orport through the controller, it would
...
trigger an assert because you hadn't made your onion keys yet
you wanted to launch cpu workers.
now init keys first, reset uptime, and tell the user that we're
starting the reachability testing.
svn:r5835
2006-01-17 04:01:32 +00:00
Roger Dingledine
76f1b7415b
try to detect an assert error earlier
...
svn:r5834
2006-01-17 02:31:04 +00:00
Nick Mathewson
1057516a07
Clients should not download descriptors for non-running descriptors.
...
svn:r5830
2006-01-16 20:52:30 +00:00
Roger Dingledine
f0d4b3d18f
turn crypto hardware acceleration off by default, until we find
...
somebody smart who can test it for us.
svn:r5829
2006-01-16 20:08:33 +00:00
Nick Mathewson
2dd566d5d5
Indirect access to the signed_descriptor field to make it easier to keep them lazily on disk.
...
svn:r5827
2006-01-12 18:04:17 +00:00
Roger Dingledine
0e51d5d274
When the controller was submitting a descriptor, we were checking to make
...
sure some network-status we had referred to it, and refusing it if not.
This is bad for people who want to insert descriptors that aren't part of
the current Tor network. Now we accept them, and also give a more useful
warn message if we ask a dir mirror for a given descriptor and it gives us
one we weren't expecting.
svn:r5824
2006-01-12 03:43:39 +00:00
Roger Dingledine
54a7285e99
oh hey. we were hanging up on every tor client because he
...
was obsolete as soon as he started. big oops.
svn:r5807
2006-01-11 22:34:07 +00:00
Nick Mathewson
c562ca494a
add missing warning
...
svn:r5806
2006-01-11 20:09:37 +00:00
Nick Mathewson
fefa34d525
Fix double-free of torrc_fname
...
svn:r5805
2006-01-11 20:01:47 +00:00
Nick Mathewson
adbe0f0ada
Fix bug 240: dont dump descriptions when not dumping actual config lines.
...
svn:r5804
2006-01-11 19:43:14 +00:00
Nick Mathewson
099b9ce2f9
Fix bug 230: add a rollback function to reverse all changes since the last mark_logs_temp(), and move log initialization into the two-phase part of option setting.
...
svn:r5803
2006-01-11 19:40:14 +00:00
Roger Dingledine
5ca40affeb
we were leaking a smartlist every time we built a circuit
...
svn:r5795
2006-01-11 04:14:10 +00:00
Nick Mathewson
d60faa7c93
Fix another memleak. I love you, valgrind!
...
svn:r5794
2006-01-11 04:09:40 +00:00
Nick Mathewson
8907391ad6
Fix wide lines
...
svn:r5793
2006-01-11 04:04:42 +00:00
Nick Mathewson
5c78c89471
Appease verbose gcc warning: make dirserv_compute_stable_uptime() static.
...
svn:r5792
2006-01-11 03:59:55 +00:00
Roger Dingledine
284fe9cad5
if we learn that a down entry guard is up, count our working entry
...
guards correctly when logging.
svn:r5791
2006-01-11 03:58:59 +00:00
Nick Mathewson
eb78295e4e
Fix memory leak in routerlist_remove_old_routers().
...
svn:r5790
2006-01-11 03:58:07 +00:00
Nick Mathewson
6a9ca9e790
Convert some more ints to long longs in rephist.c, as suggested by windows compiler.
...
svn:r5789
2006-01-11 03:57:01 +00:00
Roger Dingledine
d1baa0c4a6
we were leaking 3KB every time the entry guards changed, every time
...
the controller called saveconf, and every 20 minutes.
svn:r5788
2006-01-11 03:20:53 +00:00
Roger Dingledine
8f271f2f5a
we changed the name of AccountingBytesReadInInterval
...
change its state file description too
svn:r5785
2006-01-10 23:26:59 +00:00
Roger Dingledine
7d1f675c85
entry nodes are now entry guards.
...
this is our last easy chance for a wholesale change. heave ho.
svn:r5782
2006-01-10 22:42:44 +00:00
Roger Dingledine
210d9db54d
and even more so
...
svn:r5776
2006-01-10 21:01:30 +00:00
Roger Dingledine
aea0a78254
make entry node logging slightly less chatty.
...
still quite chatty. it's an alpha, that's ok.
svn:r5775
2006-01-10 20:59:39 +00:00
Nick Mathewson
bef879540a
#undef FOO is cleaner than #define FOO_XX
...
svn:r5774
2006-01-10 20:50:22 +00:00
Nick Mathewson
4a7ee9bd3d
Make unittests pass again.
...
svn:r5773
2006-01-10 20:47:24 +00:00
Roger Dingledine
b2d79f278b
or_state_validate() needs an extra arg too or it will crash
...
svn:r5772
2006-01-10 20:38:33 +00:00
Roger Dingledine
f4299f0f44
hack to address bug 238.
...
needs a better fix, but not for 0.1.1.11.
svn:r5771
2006-01-10 20:27:47 +00:00
Roger Dingledine
d114ea7125
implement getinfo desc/all-recent
...
closes bug 237.
svn:r5770
2006-01-10 20:09:31 +00:00
Roger Dingledine
f71273c216
fix bug 235
...
svn:r5768
2006-01-10 20:06:24 +00:00
Nick Mathewson
7fc62029d4
Refuse to use RunAsDaemon when torrc is a relative path. Fixes bug 229.
...
svn:r5767
2006-01-10 20:00:20 +00:00
Nick Mathewson
e1d1ce3da8
Warn about actual offending hiddenservice* config option, now that more than one is possible. Closes bug 239.
...
svn:r5766
2006-01-10 19:28:31 +00:00
Nick Mathewson
2fda7140e8
Fix bug 221 and bug 201: For 221, check return value from connection_add() when adding a rendezvous post connection. For 201, do not include a content-length 0 with a GET request.
...
svn:r5765
2006-01-10 19:24:40 +00:00
Roger Dingledine
c8e6003412
balance the reachability testing so a smidgen of it happens
...
every 10 seconds. this way we don't try to do 500 tls's at
once every 20 minutes.
svn:r5763
2006-01-10 07:21:01 +00:00
Nick Mathewson
43a4f8c7f3
Be more aggressive about throwing away expired router descriptors: they are of no use to anybody. Better still: dont serve expired descriptors by fingerprint. The only people who ask for them are busted 0.1.1.10 Tors that will throw them away and re-request them after 30 minutes.
...
svn:r5762
2006-01-10 04:57:12 +00:00
Nick Mathewson
56c55c343e
When picking a random directory, prefer non-authorities if any are known.
...
svn:r5761
2006-01-09 23:39:07 +00:00
Nick Mathewson
bec9b705cc
Instrument directory client bytes as well as server bytes.
...
svn:r5760
2006-01-09 23:13:53 +00:00
Nick Mathewson
10100c4315
Make instrmentation code a little cleaner.
...
svn:r5759
2006-01-08 22:19:41 +00:00
Roger Dingledine
fa05c1b21b
remove the loud logging of busted rendezvous descriptors
...
svn:r5758
2006-01-08 22:16:30 +00:00
Roger Dingledine
6dcbbda43b
remove typo
...
svn:r5757
2006-01-08 22:16:09 +00:00
Nick Mathewson
ff9cfa9644
Instrument how many directory bytes we are serving in what kind of request.
...
svn:r5756
2006-01-08 22:09:54 +00:00
Nick Mathewson
5d709e8517
Fix bug in last commit. Also, fix bug 231: authorities should never treat their own descriptor changes as cosmetic.
...
svn:r5755
2006-01-08 21:33:15 +00:00
Nick Mathewson
e30516f33f
Fix bug 236: caches should cache up to 16 unrecognized network-status docs.
...
svn:r5754
2006-01-08 21:26:33 +00:00
Roger Dingledine
1dd8ebf615
bugfix: we were leaving open duplicate connections to other ORs
...
for a week, rather than closing them once we detect a duplicate.
also, avoid some duplicate mark-for-closes in connection-housekeeping.
svn:r5752
2006-01-07 03:56:56 +00:00
Roger Dingledine
9796733e89
"Pending" is a bad term for a circuit that uses your server as its last hop.
...
svn:r5751
2006-01-07 02:31:14 +00:00
Roger Dingledine
d4d7a49411
fix typo
...
svn:r5750
2006-01-07 02:12:38 +00:00
Roger Dingledine
af54b73985
and get the log arguments right
...
svn:r5747
2006-01-07 01:43:09 +00:00