Roger Dingledine
58366ffd24
when we changed from log_fn to debug/info/notice/warn/err,
...
we screwed up the formatting in wild and unpredictable ways.
fix it before it becomes convention to format logs in wild and
unpredictable ways.
still need to do src/common/ someday.
svn:r5551
2005-12-10 09:36:26 +00:00
Roger Dingledine
9b0a40ec78
crank the max line limit down to 150 chars.
...
svn:r5550
2005-12-10 08:27:01 +00:00
Nick Mathewson
39265dd72e
In my private little universe, terminals are still 80 columns. Impose a 160-character-per-line limit; this will creep down.
...
svn:r5548
2005-12-09 05:37:26 +00:00
Nick Mathewson
95e471c9a6
Normalize whitespace
...
svn:r5547
2005-12-09 05:22:15 +00:00
Nick Mathewson
33c4445846
For some bizarre reason, MSVC does not implement GCC extensions. Who would have thought?
...
svn:r5546
2005-12-09 05:20:02 +00:00
Roger Dingledine
a438f2abcd
let the user configure a sockslistenaddress on other private IPs
...
besides 127.x.y.z without complaining.
and give a better message in the log.
svn:r5544
2005-12-09 02:46:46 +00:00
Nick Mathewson
d57029ffe8
Make code to handle "private" alias work when assume_action is set.
...
svn:r5542
2005-12-08 23:58:23 +00:00
Roger Dingledine
8730190914
when we're checking reachability, make it clearer in the logs
...
what to expect.
svn:r5538
2005-12-08 21:12:47 +00:00
Roger Dingledine
d3dcea08af
remove a redundant memcpy when extending to a new server
...
and attaching circuits to it.
svn:r5537
2005-12-08 20:33:57 +00:00
Nick Mathewson
338f23114f
Oops. 0.0.0.0/8 and 169.254.0.0/16 are also special.
...
svn:r5536
2005-12-08 19:58:14 +00:00
Nick Mathewson
2d585941b8
Release memory from conn_circid_circuit_map on exit.
...
svn:r5535
2005-12-08 19:46:22 +00:00
Nick Mathewson
1b770817c0
Add private:* as an alias in configuration for policies.
...
svn:r5534
2005-12-08 19:40:24 +00:00
Nick Mathewson
898968b3ac
Warn when binding to a public address for socks. This warning needs to be improved. Also, make options_validate() only warn when an option is changed to a bad value.. (Previously, it warned when an option was bad and any option was changed.)
...
svn:r5532
2005-12-08 18:56:32 +00:00
Nick Mathewson
e9b66ec906
Document CREATE_FAST better in the code. Move our key expansion algorithm into a separate function in crypto.c
...
svn:r5530
2005-12-08 17:38:32 +00:00
Nick Mathewson
617f71e4ba
Whitespace normalization
...
svn:r5528
2005-12-08 04:03:12 +00:00
Nick Mathewson
f031ee8246
Make clients use CREATE_FAST cells. add an option to disable this.
...
svn:r5524
2005-12-07 22:09:02 +00:00
Roger Dingledine
4902ece698
what the heck is wrong with this little piece of code?
...
why can none of us get it right?
it looks so simple.
svn:r5521
2005-12-07 04:43:39 +00:00
Roger Dingledine
b0ffa34219
tell the controller about new .onion streams too.
...
svn:r5520
2005-12-06 23:43:52 +00:00
Roger Dingledine
5c0338dca3
the other half of weasel's patch, so old gcc's can build cvs again.
...
svn:r5517
2005-12-06 21:03:48 +00:00
Peter Palfrader
0dbb622f26
Old gccs want you to do your variable declarations first
...
svn:r5516
2005-12-06 17:01:36 +00:00
Roger Dingledine
3347762fa4
when we're giving up on a circuit and retrying on a new one,
...
log the name of the exit node. perhaps people will find this
useful, or see patterns, or something.
svn:r5515
2005-12-06 07:21:17 +00:00
Nick Mathewson
b1d034d2ab
Fix bug 212: Directory authorities should not try to download server descriptors that they know they will reject.
...
svn:r5514
2005-12-06 06:55:43 +00:00
Nick Mathewson
d2123388ad
Better fix for last bug: avoids trying to double-mark circuits.
...
svn:r5511
2005-12-05 19:45:54 +00:00
Nick Mathewson
fedc9c8a60
We were neglecting to unlink marked circuits from soon-to-close OR connections.
...
svn:r5510
2005-12-05 19:26:09 +00:00
Nick Mathewson
b03e8733f3
Change how OR conns get removed from the identity map; fix some warnings on shutdown.
...
svn:r5509
2005-12-05 19:15:27 +00:00
Nick Mathewson
f0abb1a74b
Check magic when removing old connection from map.
...
svn:r5508
2005-12-05 19:01:34 +00:00
Nick Mathewson
835f06a77c
Set chosen_exit_name to something we are not about to zero.
...
svn:r5507
2005-12-05 06:16:24 +00:00
Nick Mathewson
98290e4115
When parsing foo.exit, if foo is unknown, and we are leaving circuits unattached, set the chosen_exit field and leave the address empty
...
svn:r5504
2005-12-05 04:38:21 +00:00
Roger Dingledine
26b49dbc09
Bugfix for trackhostexits: write down the fingerprint of the chosen exit,
...
not its nickname, because the chosen exit might not be verified.
svn:r5499
2005-12-05 00:15:42 +00:00
Roger Dingledine
40cbe550f3
fix a log message to be mildly more helpful
...
svn:r5498
2005-12-04 23:06:48 +00:00
Roger Dingledine
bb8dc691eb
Fix another time comparison bug in circuit_stream_is_being_handled().
...
Nick, can you confirm this one?
This is also a backport candidate.
svn:r5497
2005-12-04 22:23:24 +00:00
Roger Dingledine
ef000fd82e
ok, i know this one was a bug. we were expiring open general
...
circuits after they had been around for 30 seconds.
svn:r5496
2005-12-04 22:19:04 +00:00
Roger Dingledine
7d032bd300
take back half of my bugfix. comparing times sucks.
...
but leave the other half.
svn:r5495
2005-12-04 21:59:15 +00:00
Roger Dingledine
d60f514f4c
fix the first bug with our optimization to circuit_expire_building():
...
we were killing off rendezvous circuits unless they magically time-warped
to be too old before we got around to killing them, in which case we
would leave them alone. this made it hard to rendezvous with hidden
services.
svn:r5494
2005-12-04 21:51:50 +00:00
Nick Mathewson
1b0134dda8
Clean up some comments; remove some dead code
...
svn:r5493
2005-12-03 16:32:29 +00:00
Nick Mathewson
61c5a9ae2b
Use a switch statement and some mild refactoring to try to speed up circuit_expire_building
...
svn:r5492
2005-12-03 05:29:05 +00:00
Nick Mathewson
979fc3e69d
cvs diff -u src/or/circuitlist.c | less almost never does what you want in C.
...
svn:r5491
2005-12-03 03:36:32 +00:00
Nick Mathewson
77a494dd55
Expunge remaining places where we used "tree" to mean "associative array".
...
svn:r5490
2005-12-03 02:21:31 +00:00
Nick Mathewson
148a1e969d
Shave off another 4.7%: remove a linear search when figuring out which circuits wanted us to open a given OR connection.
...
svn:r5489
2005-12-03 02:12:37 +00:00
Nick Mathewson
502cb59611
Remove "tree" references from dns.
...
svn:r5488
2005-12-03 02:01:18 +00:00
Nick Mathewson
6443e5ec7f
Add a benchmark-aes function to test.c. Off by default.
...
svn:r5485
2005-12-01 04:35:58 +00:00
Nick Mathewson
fea19528a1
assert_buf_ok was showing up in the profile; remove it from critical-path functions, since it hasnt triggered for ages.
...
svn:r5479
2005-11-30 22:48:58 +00:00
Nick Mathewson
d56a65c497
Fix some verbose warnings and remove an unneeded include.
...
svn:r5472
2005-11-30 06:38:41 +00:00
Nick Mathewson
9cec3a13f5
remove some functions that are not used; #if0 out some files that are not likely to be used.
...
svn:r5471
2005-11-30 06:27:59 +00:00
Nick Mathewson
a6eb8cd2a0
Move connection_or_remove_from_identity_map() to connection_unlink, but dont remove the other; just make it warn.
...
svn:r5470
2005-11-30 04:28:41 +00:00
Nick Mathewson
3bd613b44d
Rename connection_get_by_identity_digest to reflect that it is OR-only. Make it use a hashtable instead of a linear search.
...
svn:r5469
2005-11-30 03:01:16 +00:00
Nick Mathewson
447a3a7ff2
Funny. I could have sworn that it compiled.
...
svn:r5467
2005-11-29 17:17:02 +00:00
Nick Mathewson
94e8dcef44
Fix a bug weasel found: when we are an authority and somebody requests "all" statuses, cconsider regenerating our own.
...
svn:r5466
2005-11-29 17:14:10 +00:00
Nick Mathewson
c90d6c7e5f
Make arguments to circuit_set_circid_orconn match the connection that is closing in circuit_about_to_close_connection. This accounts for our mysterious "arbitrary ram gets decremented!" bug.
...
svn:r5465
2005-11-29 17:13:34 +00:00
Nick Mathewson
7de0c33857
Avoid a segfault in routerlist_reset_warnings()
...
svn:r5464
2005-11-28 16:29:27 +00:00
Roger Dingledine
1da454a42d
when returning a list of circuits, don't return a list of the same
...
conn over and over. that's really bad for memory.
svn:r5463
2005-11-28 02:52:17 +00:00
Roger Dingledine
f94f4c1686
when event_add or event_del fail, tell us why.
...
(nick, do i have my libevent strerror dance moves correct?)
svn:r5462
2005-11-26 09:37:00 +00:00
Roger Dingledine
97f748f680
clean up broken comment
...
svn:r5461
2005-11-26 09:27:36 +00:00
Nick Mathewson
652e1899ac
"How about 'never'? Does 'never' work for you?"
...
Weasel says circuit_get_by_conn is his main timesink. Most of its
users were just checking whether OR conns had circuits, so add a
circuit count to OR conns, and check that. One was
circuit_about_to_close_conn, which was doing an O(n^2) series of calls
to get all circs on an OR conn, so make an O(n) function for that.
Finally, circuit_get_by_edge_conn was using it as a sanity test that
has been around for a while but never found any actualy insanity, so
kill that.
circuit_get_by_conn is finally dead, which is good, since it was never
sane to begin with.
svn:r5460
2005-11-26 01:43:57 +00:00
Nick Mathewson
31d5d96739
Cut down a common call to circuit_get_by_conn by about half.
...
svn:r5459
2005-11-26 00:53:51 +00:00
Roger Dingledine
fe221f3dff
Start the process of treating internal circuits and exit circuits
...
separately. It's important to keep them separate because internal
circuits have their last hops picked like middle hops, rather than like
exit hops. So exiting on them will break the user's expectations.
- Stop cannibalizing internal circuits for general exits, and stop
cannibalizing exit circuits for rendezvous stuff.
- Don't let new exit streams attach to internal circuits.
- When deciding if we have enough circuits for internal and for exit,
don't count the wrong ones.
- Treat predicted resolves as predicted port 80 exits.
svn:r5457
2005-11-25 08:08:56 +00:00
Roger Dingledine
6452aecedb
when calling connection_get_by_identity_digest, don't do a memcmp
...
for non-OR conns. this should save a bit of time.
svn:r5456
2005-11-25 06:43:53 +00:00
Roger Dingledine
2350e487a2
minor cleanup
...
svn:r5454
2005-11-24 06:44:13 +00:00
Roger Dingledine
ea7fe0c267
Fix a bug found by Lasse Overlier: when we were making internal circuits
...
(intended to be cannibalized later for rendezvous and introduction
circuits), we were picking them so that they had useful exit nodes. There
was no need for this, and it actually aids some statistical attacks.
svn:r5453
2005-11-24 06:43:39 +00:00
Roger Dingledine
5b583073a1
remove some more dead code (found while hunting lasse's bug)
...
svn:r5452
2005-11-24 06:06:50 +00:00
Roger Dingledine
23efc30776
get rid of some unused variables
...
svn:r5451
2005-11-24 01:47:05 +00:00
Roger Dingledine
0118a236a4
comment that scary-looking function.
...
svn:r5447
2005-11-23 07:30:44 +00:00
Nick Mathewson
eb0021b06e
Fix dumb logic error that kept some old descripttors from getting the axe.
...
svn:r5446
2005-11-23 07:28:54 +00:00
Nick Mathewson
061ef582a1
Make dropping very old descriptors faster (remove old correctness check). Track bytes dropped that are still in our store or journal, and rebuild when it gets very high.
...
svn:r5445
2005-11-23 07:24:59 +00:00
Nick Mathewson
36109fea33
e more aggressive about calling routerlist_remove_old_routers()
...
svn:r5444
2005-11-23 07:06:36 +00:00
Nick Mathewson
fbf8a8c25f
Dump bytes held to store descriptors.
...
svn:r5443
2005-11-23 06:00:58 +00:00
Nick Mathewson
7d7bb95f36
Track how many bytes we have in signed descriptors. Try to make sure we are tracking this right. Somebody should valgrind a dirserver on an example net. There should be code to dump this value.
...
svn:r5442
2005-11-23 05:47:51 +00:00
Nick Mathewson
a39269572f
Replace balanced trees with hash tables: this should make stuff significantly faster.
...
svn:r5441
2005-11-23 04:18:45 +00:00
Nick Mathewson
50ce5e1932
Avoid spurious re-launch of first pending requested descriptor
...
svn:r5439
2005-11-22 02:20:05 +00:00
Peter Palfrader
a48b722432
Ancient gcc does not like you when you declare variables in the middle of a block
...
svn:r5437
2005-11-20 16:53:49 +00:00
Peter Palfrader
b9d37a2d58
Add a new controller event type that allows controllers to get all
...
server descriptors that were uploaded to a router in its role as authoritative
dirserver.
svn:r5436
2005-11-19 18:35:43 +00:00
Roger Dingledine
f28770b639
be less eager to decide that the entire network is down
...
svn:r5434
2005-11-19 11:04:00 +00:00
Roger Dingledine
859d1c902a
and another instance where i was trying to be too sneaky
...
svn:r5433
2005-11-19 10:38:23 +00:00
Roger Dingledine
98f353fa7c
actually listen when we try to route our dir connection via tor.
...
svn:r5432
2005-11-19 10:33:34 +00:00
Roger Dingledine
5c949fce51
Start obeying our firewall options more rigorously:
...
- If we can't get to a dirserver directly, try going via Tor.
- Don't ever try to connect (as a client) to a place our firewall
options forbid.
- If we specify a proxy and also firewall options, obey the firewall
options even when we're using the proxy: some proxies can only proxy
to certain destinations.
svn:r5431
2005-11-19 10:12:10 +00:00
Roger Dingledine
7aae63994f
Recover better from TCP connections to Tor servers that are broken but
...
don't tell you (it happens!); and rotate TLS connections once a week.
1) If an OR conn becomes more than a week old, make it obsolete.
2) If it's obsolete and empty, kill it.
3) When an OR makes a second connection to you, allow it.
4) If we want to send a new create cell, but the best conn we've
got is obsolete, and the router is 0.1.1.9-alpha-cvs or later, ask
for a new conn instead.
5) When we time out on circuit building on the first hop, make that
connection obsolete.
svn:r5429
2005-11-19 06:57:44 +00:00
Roger Dingledine
700c370a3b
misc cleanups
...
svn:r5428
2005-11-19 01:56:58 +00:00
Roger Dingledine
f824fb5f83
Bugfix: it looks like some middleman circuits were spending the
...
first few moments of their existence in CIRCUIT_STATE_OPEN, then
when Alice sent an extend request for a Tor that they're not connected
to, they switched to CIRCUIT_STATE_OR_WAIT and spent the rest of
their sorry little lives in that state, even when the connection
was established and they were shuttling relay cells back and forth.
And I'm not going to backport this (yet), because somehow it worked!
svn:r5427
2005-11-19 01:55:58 +00:00
Roger Dingledine
0de8f4ee55
another case (i think) of redundant code.
...
svn:r5426
2005-11-19 01:03:34 +00:00
Roger Dingledine
409294153f
remove some redundant (and misleading) code
...
svn:r5425
2005-11-19 00:44:24 +00:00
Peter Palfrader
6734371234
15*60 is 15 minutes, not 5
...
svn:r5424
2005-11-18 21:57:49 +00:00
Peter Palfrader
901712ee59
Remove ip address change flapping detection. It is not really needed and I do not think it works quite right.
...
svn:r5423
2005-11-18 19:28:34 +00:00
Roger Dingledine
4ddf2385a0
if it's not less than three does that mean it's more than two?
...
svn:r5422
2005-11-18 11:35:23 +00:00
Roger Dingledine
9d6d6da883
and code the part where redirectstream can take a port.
...
svn:r5421
2005-11-18 11:32:59 +00:00
Roger Dingledine
afb1c79879
Leave options->DirServers alone -- if the user didn't specify any,
...
just add the default ones directly to the trusted dirserver list.
This fixes a bug where people running controllers would setconf or
the equivalent, and Tor would start yelling at them about setting
their own DirServer lines.
svn:r5418
2005-11-18 02:47:09 +00:00
Roger Dingledine
26d8c3498c
and another overly common log entry
...
svn:r5417
2005-11-18 00:35:29 +00:00
Roger Dingledine
aa53190ed5
and another one
...
svn:r5416
2005-11-17 22:23:18 +00:00
Roger Dingledine
9111a3fb48
comment out some really popular log lines
...
svn:r5415
2005-11-17 22:19:35 +00:00
Roger Dingledine
d2b93df26c
and now we actually do it, too.
...
svn:r5414
2005-11-17 22:01:46 +00:00
Roger Dingledine
7dbf2511c3
when you type 'getinfo' with no arguments, it doesn't give you
...
any answer at all. this is clearly a bug.
the more interesting bug is whether things like setconf, getconf,
and so on should return 250 OK if you give them no arguments. should
we have a new "you didn't ask me anything" response code, or just
leave it as is?
svn:r5412
2005-11-17 21:45:38 +00:00
Roger Dingledine
af86345b74
we used to kill the circuit when we receive a relay command we
...
don't recognize. now we just drop it. perhaps this will make us
more forward-compatible? or perhaps it will bite us? one day we
will find out.
svn:r5405
2005-11-17 03:40:20 +00:00
Roger Dingledine
298da4497a
help the term "OP" become obsolete
...
svn:r5403
2005-11-17 01:17:53 +00:00
Roger Dingledine
279e29a1f2
bugfix: the controller doesn't mention it's a .onion if it is.
...
svn:r5400
2005-11-16 23:54:24 +00:00
Roger Dingledine
c4aa9e7941
Add a new config option TestSocks so people can see if their
...
applications are using socks4, socks4a, socks5-with-ip, or
socks5-with-hostname. This way they don't have to keep mucking
with tcpdump and wondering if something got cached somewhere.
svn:r5399
2005-11-16 23:37:35 +00:00
Nick Mathewson
22aea0757e
Verify that router fingerprint lines match identity keys. (We dont use them, but others might.)
...
svn:r5389
2005-11-15 21:24:32 +00:00
Roger Dingledine
74d1ca66c0
another case where the poor server operator doesn't need to
...
hear about lexi's bugs.
svn:r5388
2005-11-15 20:40:32 +00:00
Roger Dingledine
fe7b07754f
make it even more clear that i didn't screw up the logic
...
svn:r5378
2005-11-15 09:57:58 +00:00
Roger Dingledine
53269f696d
fix logic error: not unnamed is good.
...
svn:r5377
2005-11-15 09:15:43 +00:00
Nick Mathewson
9b432311c4
Make new logging stuff work on windows; fix a couple of windows typos.
...
svn:r5375
2005-11-15 03:05:23 +00:00
Nick Mathewson
669fdde91b
Fix number in error message
...
svn:r5369
2005-11-14 19:17:28 +00:00
Roger Dingledine
4ea6d71a26
shorten more of the startup log messages
...
svn:r5368
2005-11-14 04:39:49 +00:00
Roger Dingledine
6fc30a65fd
when a stream times out, provide less (but better) explanation
...
of what happened. don't bother printing the path, since i don't
know of any person who has gotten anything useful out of that.
svn:r5367
2005-11-14 04:13:43 +00:00
Roger Dingledine
014c6bfe00
We were refusing to start if you define SocksListenAddress
...
but define SocksPort to be 0. But this is a standard configuration!
So don't fail.
svn:r5361
2005-11-11 22:41:07 +00:00
Roger Dingledine
a3c53e0af9
speed up the lookup-by-circid-orconn now that it seems that
...
our code works.
svn:r5358
2005-11-11 19:28:32 +00:00
Roger Dingledine
862a997495
when we were cannibalizing a circuit with a particular exit
...
node in mind, we weren't checking to see if that exit node
was already present earlier in the circuit. oops.
svn:r5357
2005-11-11 19:25:30 +00:00
Roger Dingledine
4d1c6bbfc4
fix function comment
...
svn:r5356
2005-11-11 17:16:24 +00:00
Roger Dingledine
c136bbe505
stop discouraging the old *BindAddress config options. we will
...
just confuse our users when they upgrade.
svn:r5354
2005-11-11 17:04:14 +00:00
Roger Dingledine
e6fd88c698
simplify a log entry
...
svn:r5353
2005-11-11 17:03:35 +00:00
Roger Dingledine
c074f528c1
fix a harmless warn and mark two points where we should
...
maybe change our approach.
svn:r5352
2005-11-11 17:01:20 +00:00
Nick Mathewson
b76f61ee66
If we stop knowing about a dirserver between request and answer, do not die.
...
svn:r5351
2005-11-08 22:30:17 +00:00
Peter Palfrader
43c253958e
Tor26's IP has changed to 86.59.21.38
...
svn:r5350
2005-11-05 20:20:51 +00:00
Nick Mathewson
75d85c8214
On directory servers, old_routers was wasting hundreds of bytes per superseded router descriptor. Roll the signed descriptor info and identifying info into a cache_info struct, and use only that for old_routers.
...
svn:r5349
2005-11-05 20:15:27 +00:00
Nick Mathewson
757def59b6
Fix bugs in routerlist_remove_old_cached_routers_with_id()
...
svn:r5348
2005-11-04 16:47:26 +00:00
Nick Mathewson
a913cb3536
prevent duplicat mark-for-close
...
svn:r5347
2005-11-04 05:00:12 +00:00
Nick Mathewson
9e82f0cdb7
enable code to remove members of old_routers when it gets big.
...
svn:r5345
2005-11-01 17:34:17 +00:00
Nick Mathewson
80758473f8
fix a signed/unsigned warning
...
svn:r5344
2005-11-01 17:28:49 +00:00
Roger Dingledine
40ecaf4857
answer nick's XXX, and muck with some log domain choices
...
svn:r5339
2005-11-01 06:13:12 +00:00
Roger Dingledine
6dafca62f0
remove redundant checking for . and .. now that
...
tor_listdir() checks for this too.
svn:r5337
2005-11-01 03:50:14 +00:00
Roger Dingledine
1991f6cf48
more doc cleanups and reorganizing
...
svn:r5336
2005-11-01 03:48:51 +00:00
Roger Dingledine
44b3f3060a
make circ->onionskin a pointer, not a static array. moria2 was using
...
125000 circuit_t's after it had been up for a few weeks, which translates
to 20+ megs of wasted space.
svn:r5333
2005-10-29 19:13:48 +00:00
Roger Dingledine
bf2be9abd7
Do round-robin writes of at most 16 kB per write. This might
...
be more fair on loaded Tor servers, and it might resolve our
Windows crash bug. It might also slow things down.
svn:r5332
2005-10-29 18:19:37 +00:00
Roger Dingledine
862e8a1bd1
fix typo
...
svn:r5331
2005-10-29 18:00:25 +00:00
Nick Mathewson
f2617c6b79
Free the v2 directory networkstatus on exit. (Not a leak.)
...
svn:r5330
2005-10-29 05:01:12 +00:00
Nick Mathewson
4cb2435388
aaand another leak. Oops, I guess I lied to weasel when I told him there was no leak here.
...
svn:r5329
2005-10-28 19:10:53 +00:00
Nick Mathewson
ed32d85a04
router_add_to_routerlist() really needs to free not-added routers.
...
svn:r5328
2005-10-28 18:44:51 +00:00
Nick Mathewson
76988bafbe
Fix bug when parsing list of router descriptors containing a truncated entry. (Found by Lasse)
...
svn:r5327
2005-10-28 15:56:19 +00:00
Nick Mathewson
267af9ecf9
Fix a fun bug that was probably causing unnecessary downloads, and that coupld possibly have caused some segfaults: When post-processing a split fingerprint URL, we were trying to base16_decode() entries already in the fingerprint list, failing, and removing them. Ow.
...
svn:r5326
2005-10-27 23:16:08 +00:00
Nick Mathewson
7643c5254c
Fix an annoying rep violation bug
...
svn:r5325
2005-10-27 23:06:09 +00:00
Nick Mathewson
e594ce92fe
Start making directory caches retain old routerinfo_t. The code to remove old ones is definitely some textbook C problem.
...
svn:r5323
2005-10-27 00:34:39 +00:00
Nick Mathewson
9492424d3f
Per comments at the bottom of openssl/FAQ, call even more functions to
...
clean up OpenSSL's toys when it's done playing. (Why isn't there an
OpenSSL_free_everything() function?)
svn:r5321
2005-10-25 19:01:48 +00:00
Nick Mathewson
b39d03116b
remove some commented-out code that may tempt us to do ill
...
svn:r5320
2005-10-25 18:38:44 +00:00
Nick Mathewson
e5633c2e66
fix a nasty corruption bug
...
svn:r5319
2005-10-25 18:33:33 +00:00
Nick Mathewson
35f1b7fa26
fix minor memory leak in config
...
svn:r5318
2005-10-25 18:06:29 +00:00
Nick Mathewson
5d85560d9e
Remove last vestiges of old logging interface.
...
svn:r5317
2005-10-25 18:01:01 +00:00
Nick Mathewson
049f6c0131
Switch remaining files to new log interface.
...
svn:r5315
2005-10-25 17:52:14 +00:00
Nick Mathewson
a38aa81bf8
fix another segv, this time in circid fix.
...
svn:r5312
2005-10-25 15:31:25 +00:00
Nick Mathewson
9b6c5614c6
fix a segv
...
svn:r5311
2005-10-25 15:30:02 +00:00
Nick Mathewson
e7e170a59e
Change more files to new loggin interface. 3 left.
...
svn:r5310
2005-10-25 08:20:10 +00:00
Nick Mathewson
932106f54c
Efficiency hack: call tor_fix_source_file late, not early. Add "BUG" domain. Domains are now bitmasks... just in case. Make some err msgs non-general.
...
svn:r5309
2005-10-25 07:05:03 +00:00
Nick Mathewson
452f4cfa09
Convert circuituse, command, config, connection, relay, router, test to new logging interface
...
svn:r5308
2005-10-25 07:04:36 +00:00
Nick Mathewson
81dd50a942
Fix memory leak when retrieving networkstatus or routerdesc by malformed fingerprint
...
svn:r5307
2005-10-25 07:03:22 +00:00
Nick Mathewson
91a666064a
Fix possible free(NULL) in control.c
...
svn:r5306
2005-10-25 07:02:13 +00:00
Nick Mathewson
26caf69555
Fix possible minor memory leak when parsing helpernode state
...
svn:r5305
2005-10-25 07:00:03 +00:00
Nick Mathewson
f9b0be526e
Use LD_BUG as appropriate; convert rend* and router* to new logging interface; use new circ_log_path interface
...
svn:r5302
2005-10-24 19:39:45 +00:00
Nick Mathewson
fa338d85db
Fix one possible source of reuse-a-circuit-id bug; convert circuitbuild to new logging
...
svn:r5301
2005-10-24 19:37:45 +00:00
Nick Mathewson
7f20dec1cd
When warning about a networkstatus fp, we need to put it in hex.
...
svn:r5293
2005-10-24 03:25:12 +00:00
Nick Mathewson
37708e9b1b
Avoid potential infinite recursion when building a descriptor
...
svn:r5292
2005-10-24 03:04:05 +00:00
Roger Dingledine
d6dcd973c3
Oct 19 13:27:24.391 [info] router_reload_networkstatus(): Skipping cached-status file with unexpected name "."
...
Oct 19 13:27:24.391 [info] router_reload_networkstatus(): Skipping cached-status file with unexpected name ".."
svn:r5291
2005-10-20 17:22:00 +00:00
Nick Mathewson
52eaccce44
Crank down the frequency for replacing unchanged descriptors
...
svn:r5290
2005-10-19 16:21:19 +00:00
Nick Mathewson
7b8980a43c
Make it compile. appease roger and his thirst for documentation.
...
svn:r5289
2005-10-19 03:08:50 +00:00
Nick Mathewson
74d9c92c49
We need a routerlist_replace as well. This should do something about those annoying mysterious segfaults.
...
svn:r5288
2005-10-19 03:02:28 +00:00
Roger Dingledine
4df1892db1
solve the first half of bug 199: if we don't like the looks
...
of an address, but it's the controller's job to handle it,
don't refuse it first.
svn:r5287
2005-10-19 02:07:11 +00:00
Nick Mathewson
1bd3f6cc9a
Update more files to new log stuff.
...
svn:r5286
2005-10-18 22:56:40 +00:00
Nick Mathewson
55f2ab9cc3
Migrate a few more files to domained logging
...
svn:r5285
2005-10-18 22:21:29 +00:00
Nick Mathewson
edf5698474
Start dividing log messages into logging domains. No, LD_ is not the best of identifiers. src/or has not been converted yet. Domains dont do anything yet.
...
svn:r5284
2005-10-18 21:58:19 +00:00
Roger Dingledine
102df4a982
fix some typos
...
svn:r5283
2005-10-18 21:39:00 +00:00
Peter Palfrader
e54efb1655
I think nick meant to compare r2->platform the second time
...
svn:r5282
2005-10-18 21:19:48 +00:00
Peter Palfrader
0d5c007266
Fix tor26's first segfault
...
svn:r5281
2005-10-18 21:19:02 +00:00
Nick Mathewson
d25873ae9c
Use a digestmap_t to speed up router_get_by_digest, which was previously a bottleneck (~~27% CPU)
...
svn:r5280
2005-10-18 20:13:09 +00:00
Nick Mathewson
7a19588a43
Use digestmap_t instead of strmap_t where appropriate. Do less hex en/decoding
...
svn:r5279
2005-10-18 20:12:22 +00:00
Nick Mathewson
3347c1741d
Refactor routerlist access slightly: always use router_get_by_routerlist(); change its interface; add modifier functions to add/remove elements from the current routerlist (so we can add indices).
...
svn:r5276
2005-10-18 17:43:54 +00:00
Peter Palfrader
d8daa910a6
Make dirserv_get_routerdescs() return better http 404 error messages instead of a generic "Servers unavailable."
...
svn:r5274
2005-10-18 17:09:57 +00:00
Peter Palfrader
551e3402a3
split send_control1_event() into the printf and the print/dispatch part. The
...
printf part was and is limited to at most 1024 byte messages, so having the print
part separately available makes sense.
svn:r5273
2005-10-18 16:45:43 +00:00
Peter Palfrader
00e1709244
Fix download by SD digest
...
svn:r5272
2005-10-18 15:58:40 +00:00
Peter Palfrader
6e8052e0f8
I wonder what a stautus is.
...
svn:r5271
2005-10-18 15:25:10 +00:00
Peter Palfrader
64a631e187
Some http status lines ended in a dot, others did not. Make it all the same and remove the period from all
...
svn:r5270
2005-10-18 14:57:46 +00:00
Peter Palfrader
0186cb283f
And close the double quote too
...
svn:r5269
2005-10-18 14:34:49 +00:00
Peter Palfrader
d2f1cd4196
Fix documentation of dirserv_get_routerdescs:
...
correct the path for queries by server key, add queries by SD digest
svn:r5268
2005-10-18 14:33:19 +00:00
Nick Mathewson
27fcbf87f3
Add a missing struct initializer field
...
svn:r5264
2005-10-17 23:00:08 +00:00
Peter Palfrader
0d9aedfcea
Downgrade a few INFO level logs to DEBUG again. Also add two or three new
...
logs in cases where a calling function's log was downgraded and we wouldn't
get any log message otherwise.
svn:r5263
2005-10-17 16:21:42 +00:00
Roger Dingledine
bec2271029
fix a few comments
...
svn:r5262
2005-10-17 08:41:58 +00:00
Roger Dingledine
fd165329b8
start calling it *ListenAddress rather than *BindAddress,
...
since none of our users know what it means to bind an address or port.
svn:r5260
2005-10-17 03:17:29 +00:00
Nick Mathewson
22c72bd9c5
Add ability to warn when using abbrev mechanism to deprecate option names
...
svn:r5259
2005-10-17 03:06:00 +00:00
Roger Dingledine
435fb973c2
when providing content-type application/octet-stream for providing
...
server descriptors with .z, we were leaving out the content-encoding
header. oops. (everything tolerated this just fine, but that doesn't
mean we need to be part of the problem.)
svn:r5258
2005-10-17 02:32:33 +00:00
Peter Palfrader
7b15f77dd6
Make a few INFO log lines into DEBUG
...
svn:r5257
2005-10-17 02:13:36 +00:00
Roger Dingledine
1be5f4a81b
start hunting down why servers keep getting so many duplicate create cells
...
svn:r5255
2005-10-17 01:46:47 +00:00
Roger Dingledine
ae92a91d96
more log uncluttering
...
svn:r5254
2005-10-17 01:29:28 +00:00
Roger Dingledine
03dcef4c78
start the process of reducing clutter in server logs
...
svn:r5253
2005-10-17 00:35:53 +00:00
Roger Dingledine
aca6fb5f5f
cut out a warning that doesn't need to warn
...
svn:r5252
2005-10-16 19:47:01 +00:00
Roger Dingledine
2a82182243
remove obsolete IgnoreVersion config from or.h
...
svn:r5251
2005-10-16 18:43:41 +00:00
Nick Mathewson
6101468cbe
Enable trivial "download by descriptor digest" functionality.
...
svn:r5250
2005-10-14 04:56:20 +00:00
Nick Mathewson
998cf8d622
Try to extract as many descriptors as possible from truncated http responses. (when DIR_PURPOSE_FETCH_ROUTERDESC)
...
svn:r5249
2005-10-14 02:26:13 +00:00
Nick Mathewson
11b76b9ca5
Allow tor_gzip_uncompress to extract as much as possible from truncated compressed data. Also, fix a bug where truncated compressed data could break tor_gzip_uncompress. [This last part is a backport candidate.]
...
svn:r5247
2005-10-13 22:48:09 +00:00
Peter Palfrader
8808b26206
Check if our IP address has changed every 5 minutes. If it has, update our server descriptor, but not too often
...
svn:r5246
2005-10-12 22:41:16 +00:00
Peter Palfrader
640211e59a
Be a bit more verbose in our AUTHENTICATE error messages in the control protocol so the next guy doesn't blame Nick again
...
svn:r5245
2005-10-12 19:45:35 +00:00
Nick Mathewson
aac738d2be
When no descriptors changed, do not send a NEWDESC event.
...
svn:r5244
2005-10-12 19:41:16 +00:00
Nick Mathewson
905ef987e2
Make --hash-password not craash on exit.
...
svn:r5243
2005-10-12 19:08:48 +00:00
Nick Mathewson
9a1d204318
Avoid warning on end-of-function
...
svn:r5242
2005-10-12 18:43:03 +00:00
Nick Mathewson
972b7512c7
authorities do not replace server descriptors where nothing semantically relevant has changed since the last upload.
...
svn:r5240
2005-10-12 18:25:25 +00:00
Nick Mathewson
fd9bfef13b
Funny. I could have sworn it compiled this morning when I checked it in.
...
svn:r5239
2005-10-12 17:16:25 +00:00
Nick Mathewson
a7ca56b537
More work towards a sane digest-based liveness testing.
...
svn:r5238
2005-10-12 13:49:13 +00:00
Nick Mathewson
2b3a7b818f
Add an as-yet-unused "EXTENDED" flag to SETEVENTS to indicate that the client can handle extra labeled info in its events. Add moreinfo to the "what is ready for downloading" msg so we can investigate digest-related download rules
...
svn:r5237
2005-10-12 04:31:44 +00:00
Nick Mathewson
bf9ff1c1e7
Do not check whether DirPort is reachable when we are suppressing it because of hibernation. (Backport candidate)
...
svn:r5235
2005-10-12 04:07:10 +00:00
Nick Mathewson
08e4f132a8
add some docs; if warn_if_unnamed is 0, really do not warn.
...
svn:r5234
2005-10-11 01:57:28 +00:00
Nick Mathewson
c48ccf9db4
Insert a newline between all router descriptors when generating (old style) signed directories, in case somebody was counting on that.
...
svn:r5231
2005-10-08 06:02:41 +00:00
Nick Mathewson
2f49e058d0
Now that directory admins assure me they have adjested teir configs, it is safe to make authorities be non-versioning, non-naming by default.
...
svn:r5230
2005-10-08 05:47:58 +00:00
Nick Mathewson
d7b04a8788
do not try to download a routerdesc if we would immediately reject it as obsolete.
...
svn:r5225
2005-10-07 22:00:09 +00:00
Nick Mathewson
2572db2472
Warn less about intro nodes by nickname; remember our own intro nodes by key.
...
svn:r5224
2005-10-07 21:38:44 +00:00
Roger Dingledine
78edd804ff
fix a malformed warning entry
...
svn:r5219
2005-10-07 19:49:48 +00:00
Roger Dingledine
83e119154b
doxygen fix
...
svn:r5217
2005-10-07 19:25:01 +00:00
Roger Dingledine
46af2d26d0
you can't declare variables in the middle of a block
...
svn:r5214
2005-10-07 18:56:21 +00:00
Peter Palfrader
14934dece2
Print address too when we say we cannot bind/listen
...
svn:r5213
2005-10-07 18:48:31 +00:00
Nick Mathewson
4c7113d26a
Strip extra trailing newlines when parsing router descriptors.
...
svn:r5212
2005-10-07 18:33:30 +00:00
Nick Mathewson
a89daaeca9
Once an hour (not just on startup) give OpenSSL some more entropy.
...
Add entropy in 512-bit chunks, not 160-bit chunks. (This latter
change is voodoo.)
svn:r5211
2005-10-06 22:22:22 +00:00
Nick Mathewson
cc35e1720f
Using RAND_pseudo_bytes instead of RAND_bytes is an accident waiting to happen, and does not really speed us up much when we do it. So stop doing it.
...
svn:r5210
2005-10-06 22:18:01 +00:00
Roger Dingledine
0e5b6a84eb
without braces, what will hold up the code?
...
svn:r5209
2005-10-06 05:08:00 +00:00
Nick Mathewson
ba24193ab5
Make doxygen marginally happier
...
svn:r5208
2005-10-06 04:33:40 +00:00
Nick Mathewson
5cf758764e
Rate-limit warnings related to unrecognized MyFamily elements.
...
svn:r5204
2005-10-05 23:20:45 +00:00
Nick Mathewson
ba67d14d40
On sighup, if usehelpernodes changed to 1, use new circuits.
...
svn:r5203
2005-10-05 23:02:40 +00:00
Roger Dingledine
f12663a4ce
call circuit_expire_all_dirty_circs() on do_hup().
...
there, now we use it.
svn:r5202
2005-10-05 22:36:33 +00:00
Nick Mathewson
56be5a9706
I *knew* something was wrong here. Flip some comparison operators and make download-rate-limiting sane again.
...
svn:r5201
2005-10-05 22:36:18 +00:00
Nick Mathewson
039edb3dbb
Downgrade too-frequent "nothing happened" message from info to debug
...
svn:r5200
2005-10-05 22:32:59 +00:00
Roger Dingledine
c3aac3ff6b
infrastructure for the 'change pseudonym' button.
...
not used yet.
svn:r5199
2005-10-05 22:31:21 +00:00
Nick Mathewson
1ebbaf5c3a
improve INFO-level logging for directory downloads. This is still too chatty, but it will help us analyze things.
...
svn:r5197
2005-10-05 20:45:18 +00:00
Nick Mathewson
370e4abdc9
replace former relaunches of directory downloads with reset of failure count and relaunch of status downloads. Fix memory leak in trusted_dir_server_t. Reset "last download attempted" time when resetting failure counts.
...
svn:r5195
2005-10-05 05:03:52 +00:00
Roger Dingledine
adf04f121e
size_t int printf mucking
...
svn:r5194
2005-10-05 04:52:55 +00:00
Nick Mathewson
96c47c8478
Note the two places where clients will still try to fetch old-style (v1) directory info. These should be fixed, I think.
...
svn:r5193
2005-10-05 02:25:59 +00:00
Nick Mathewson
509de69a7e
reset warning flags on SIGHUP. arma: is this everything?
...
svn:r5192
2005-10-05 02:20:46 +00:00
Roger Dingledine
be478bb56c
stutter therapy lessons
...
svn:r5191
2005-10-05 02:09:27 +00:00
Nick Mathewson
8434595584
Fix verbose compiler warnings, including one in routerlist.c that would have been an actual error. Normalize whitespace. Enforce convention that "address" is a hostname and "addr" is an IPv4 address.
...
svn:r5190
2005-10-05 02:06:36 +00:00
Nick Mathewson
0924094042
resolve some directory-related XXXXs; downgrade naming conflict messages from WARN to INFO for non-authorities; do not repeat naming conflict messages.
...
svn:r5189
2005-10-05 01:53:44 +00:00
Nick Mathewson
1223310b69
Downgrade noisy log messages in preparation for an alpha release.
...
svn:r5188
2005-10-05 01:27:08 +00:00
Nick Mathewson
a608905070
Give a less frequent and more helpful warning on failed serverdesc downloads
...
svn:r5187
2005-10-05 00:22:56 +00:00
Nick Mathewson
42e17182da
When we get an EOF or a timeout on a directory connection, note how many bytes of serverdesc we are dropping. This will help us determine whether it is smart to parse incomplete serverdesc responses.
...
svn:r5186
2005-10-04 22:34:09 +00:00
Nick Mathewson
61ea516885
Check for named servers when looking them up by nickname;
...
warn when we'recalling a non-named server by its nickname;
don't warn twice about the same name.
Fix a bug in routers_update_status_from_networkstatus that made nearly
all clients never update routerinfo_t.is_named.
Try to list MyFamily elements by key, not by nickname.
Only warn about names that we generated ourself, or got from the local
user.
On TLS handshake, only check the other router's nickname against its
expected nickname if is_named is set.
svn:r5185
2005-10-04 22:23:31 +00:00
Nick Mathewson
2d203fdcf3
link nicknames to trusted directory servers; log these nicknames when mentioning servers; also, when we get a naming conflict; log which nicknames or keys are supposed to bind.
...
svn:r5184
2005-10-04 21:21:09 +00:00
Nick Mathewson
b10df0d595
cosmetic fix: only have one local to hold smartlist_len(downloadable), not too.
...
svn:r5183
2005-10-04 20:18:26 +00:00
Nick Mathewson
e4a6a03249
switch semantics of authdirinvalid/reject
...
svn:r5182
2005-10-04 19:52:58 +00:00
Roger Dingledine
88c37f2d24
comment cleanups
...
svn:r5181
2005-10-04 06:53:59 +00:00
Nick Mathewson
c5ee3e961e
Reorganize some quick-and-dirty code to find out what openssl stuff is leaking, using dmalloc.
...
svn:r5178
2005-10-03 20:20:38 +00:00
Nick Mathewson
9e54e2e293
free helper node status info on shutdown
...
svn:r5177
2005-09-30 21:38:57 +00:00
Nick Mathewson
808e584a87
remove a never-used smartlist in routerlist.c
...
svn:r5176
2005-09-30 21:38:45 +00:00
Nick Mathewson
6e4608701d
and another leak.
...
svn:r5175
2005-09-30 21:31:26 +00:00
Roger Dingledine
ae30c8101b
by convention, addr is a uint32_t and address is a string.
...
that's why we hadn't caught that leak.
svn:r5174
2005-09-30 21:30:04 +00:00
Nick Mathewson
5c5d2e82e6
Fix a leak when launching listeners.
...
svn:r5173
2005-09-30 21:28:00 +00:00
Nick Mathewson
23864ad423
Try to hunt down a few more leaks
...
svn:r5172
2005-09-30 21:22:25 +00:00
Nick Mathewson
80f2e10228
Stop leaking or_state_t on shutdown.
...
svn:r5171
2005-09-30 21:16:47 +00:00
Nick Mathewson
5333a3b838
fix a small filename leak
...
svn:r5170
2005-09-30 21:11:22 +00:00
Nick Mathewson
8408006318
fix a memory leak on exit in routerlist.c
...
svn:r5169
2005-09-30 21:04:52 +00:00
Nick Mathewson
de198d800b
Never call free() on tor_malloc()d memory. This is unlikely to be our current leak, but it may help dmalloc work.
...
svn:r5168
2005-09-30 20:47:58 +00:00
Nick Mathewson
fc3c0197f9
Resolve several DOCDOCs. Make non-mirrors only launch routerdesc downloads when they have more than 16 router descriptors to download, or when 10 minutes have passed since the last download.
...
svn:r5166
2005-09-30 20:04:55 +00:00
Roger Dingledine
e28c31ebce
we were leaking some memory every time the client changes IPs
...
svn:r5165
2005-09-30 06:03:04 +00:00
Nick Mathewson
ab245746a9
Hey kids, guess why connection_mark_for_close() started giving an assert when called for an even-numbered line? Right, because I made it a bitfield, when it was really a line number. Why did I think it was a bitfield? A stale comment. Let that be a lesson to us all.
...
svn:r5164
2005-09-30 04:43:42 +00:00
Roger Dingledine
13e709a0ff
resolve nick's comment
...
svn:r5163
2005-09-30 02:08:57 +00:00
Nick Mathewson
26e7a05725
even better function start checks; give dmalloc a chance of working.
...
svn:r5162
2005-09-30 01:39:24 +00:00
Nick Mathewson
edd15cb781
Note that there is incorrect behavior in directory.c code. Arma, please check this too.
...
svn:r5161
2005-09-30 01:38:09 +00:00
Nick Mathewson
92451f74a8
Reformat inconsistent function declarations.
...
svn:r5160
2005-09-30 01:09:52 +00:00
Roger Dingledine
609af664ac
resolve a docdoc
...
svn:r5157
2005-09-30 00:43:40 +00:00
Roger Dingledine
ea18827cee
do the other half of dirport reachability testing.
...
it should be back and working now.
svn:r5155
2005-09-29 23:59:36 +00:00
Roger Dingledine
f8d430653e
better cleanups as i figure out what's going on
...
svn:r5154
2005-09-29 23:26:42 +00:00
Roger Dingledine
d4d8adaa6d
move some code around when we're succeeding or failing at fetching
...
server descs.
also clean up some formatting.
svn:r5153
2005-09-29 23:06:48 +00:00
Roger Dingledine
54a662a542
re-enable dirport testing again
...
(still need the other half, to notice when it has worked.)
svn:r5152
2005-09-29 23:04:01 +00:00
Roger Dingledine
8fc9330686
fix typo
...
svn:r5151
2005-09-29 23:03:34 +00:00
Nick Mathewson
5c53545d81
Add a bunch more warnings to out warning suite; resolve them; pack structs a little better.
...
svn:r5150
2005-09-29 22:59:17 +00:00
Nick Mathewson
c6347cdb0e
suppress all our usual compiler warnings, including a longstanding one from tree.h
...
svn:r5149
2005-09-29 20:49:41 +00:00
Roger Dingledine
8ae6e1c226
Be more conservative about whether to advertise our dirport.
...
The main change is to not advertise if we're running at capacity and
either a) we could hibernate or b) our capacity is low and we're using
a default dirport.
svn:r5148
2005-09-29 06:45:03 +00:00
Roger Dingledine
3559f821a1
clean up some doxygen stuff
...
svn:r5147
2005-09-29 02:54:09 +00:00
Nick Mathewson
126a1e3e32
Fix crash-on-wakeup bug in networkstatus download.
...
svn:r5144
2005-09-26 16:37:39 +00:00
Roger Dingledine
fba01c3cc0
bugfix: we were whining about using socks4 or socks5-with-local-lookup
...
even when they used an IP in the "virtual" range we designed exactly
for this case.
svn:r5142
2005-09-24 21:56:04 +00:00
Nick Mathewson
abb8576538
But, of course, mirrors should get the most up-to-date server in any case.
...
svn:r5135
2005-09-23 21:33:59 +00:00
Nick Mathewson
b726507d36
Log even less verbosely. Also, do not download old (frequently-updating) servers more than once every 2 hours.
...
svn:r5134
2005-09-23 21:25:29 +00:00
Nick Mathewson
ebf6476e8e
Provide dire warnings to any users who set DirServer; move it out of torrc.sample and into torrc.complete.
...
svn:r5132
2005-09-23 20:44:22 +00:00
Nick Mathewson
18a0a0e458
Oops. It looks like some old GCCs dislike #if inside a macro argument.
...
svn:r5131
2005-09-23 20:31:07 +00:00
Roger Dingledine
0ef18a0fba
put a log message so we can start confirming socks5-with-remote-dns
...
vs socks5-with-local-dns
svn:r5130
2005-09-23 19:56:34 +00:00
Nick Mathewson
06625e779d
Decouple router downloads from old directory downloads entirely
...
svn:r5128
2005-09-23 18:49:37 +00:00
Nick Mathewson
c345dab3bd
Fix logic error (people who ask authorities should never split; others should always split). Also, fix timing error in main.c so retries really happen.
...
svn:r5127
2005-09-23 18:17:37 +00:00
Nick Mathewson
a1f1c4bf6b
Re-enable autosplitting, but authorities and mirrors should not do it, and make the cutoff higher than 1.
...
svn:r5126
2005-09-23 18:08:31 +00:00
Nick Mathewson
f995edd516
Fix at least one overzealous download bug. (tor_malloc_zero new local_routerstatus_t objs); add a pile of logs back in; probe every 10sec; never autolaunch on failure. Let us see if this works better.
...
svn:r5125
2005-09-23 18:05:14 +00:00
Nick Mathewson
9050480339
Fix some compiler warnings
...
svn:r5124
2005-09-23 17:11:20 +00:00
Nick Mathewson
faa4f420de
Remove extraneous space on read-history lines.
...
svn:r5123
2005-09-23 17:02:50 +00:00
Roger Dingledine
03d0f62da0
make the numbers in read-history and write-history into uint64s,
...
so they don't overflow and publish negatives in the descriptor.
fixes bug 193.
svn:r5119
2005-09-23 08:29:58 +00:00
Roger Dingledine
512d6ccdc1
and a minor log cleanup
...
svn:r5115
2005-09-23 00:04:53 +00:00
Roger Dingledine
e286c4267e
there was no need to die when we failed to spawn a cpuworker.
...
it handles it fine if we decide not to die.
svn:r5114
2005-09-23 00:04:44 +00:00
Roger Dingledine
479886fce2
remove another loud debug msg
...
svn:r5113
2005-09-22 23:56:56 +00:00
Roger Dingledine
d050ff7906
resolve lucky's recent bug: tor was exiting if we failed to spawn
...
a new dns worker (e.g. because we were out of fd's).
svn:r5112
2005-09-22 23:43:41 +00:00
Roger Dingledine
2d6b36a001
get rid of a noisy debug log
...
svn:r5111
2005-09-22 20:51:45 +00:00
Nick Mathewson
cdc912714e
I love the smell of C in the morning. Make router-download rules smarter (download more so long as we dont duplicate existing requests; relaunch at staggered intervals); relaunch one a minute or on failure; reset 60 minutes; always open 3 requests if we can; add authority opinion to networkstatus; make naming rule correct. There is a remaining bug where we retry servers too quickly; We need to look at that harder.
...
svn:r5110
2005-09-22 06:34:29 +00:00
Nick Mathewson
6693031947
Use a separate type for "local view of router status". Also, even though I told arma there was no need, replace an ugly O ( n lg n ) algorithm with a nice O ( n ) algorithm when stepping through servers. Some ugliness is just too bad to stand.
...
svn:r5109
2005-09-22 01:51:14 +00:00
Roger Dingledine
959598fae6
content-type bugfixes:
...
http://seppia.noreply.org/tor/dir.z was being declared text/plain
and
http://seppia.noreply.org/tor/server/fp/719BE45DE224B607C53707D0E2143E2D423E74CF
was being declared application/octet-stream
svn:r5108
2005-09-22 00:17:41 +00:00
Roger Dingledine
f011b12df2
bugfix: nobody ever implemented EVENT_ADDRMAP for control protocol
...
version 0, so don't let version 0 controllers ask for it.
svn:r5107
2005-09-21 23:30:15 +00:00
Nick Mathewson
f99b91505b
Make write_escaped_data more bulletproof; backport candidate.
...
svn:r5106
2005-09-21 23:13:29 +00:00
Roger Dingledine
1cfcc4b351
clean up misleading comment on authdir_wants_to_reject_router()
...
svn:r5105
2005-09-21 21:10:36 +00:00
Nick Mathewson
72915546cd
Only check versions from versioning authdirs.
...
svn:r5101
2005-09-21 02:38:51 +00:00
Nick Mathewson
20b9111266
Implement new version handling code.
...
svn:r5100
2005-09-21 00:41:06 +00:00
Roger Dingledine
94ff09af23
clean up a bit more code
...
svn:r5098
2005-09-20 19:50:43 +00:00
Roger Dingledine
19f04ae9c3
make router_is_general_exit match its documentation
...
but it's still wrong maybe
svn:r5095
2005-09-20 03:40:54 +00:00
Nick Mathewson
837b223c8c
remove some debugging garbage
...
svn:r5092
2005-09-18 04:32:58 +00:00
Nick Mathewson
283032960d
Make give-up-on-failure actually work: it seems the servers gave me a real test case.
...
svn:r5091
2005-09-18 04:15:39 +00:00
Nick Mathewson
d118d5069a
Prevent a "try forever to download an unobtainable descriptor" bug. Still remaining: the "give up forever" bug.
...
svn:r5090
2005-09-18 02:51:12 +00:00
Nick Mathewson
87f6d526fe
Refactor new directory code a bit. Keep a big list of rolled-up router status info, including # of download failures (not yet used). Update this list from networkstatuses when they arrive, then update routers from this list. Only download 128 routers at a time, to avoid gargantuan URLs.
...
svn:r5089
2005-09-18 02:24:42 +00:00
Nick Mathewson
e86893e87b
Move to new base64 digest functions. Switch to new router digest calculation. Make sure there are no duplicates in router status lists.
...
svn:r5088
2005-09-18 02:22:21 +00:00
Nick Mathewson
1fbe499bfe
Remove a bunch of #if0d code that I no longer need to look at.
...
svn:r5083
2005-09-16 16:47:20 +00:00
Nick Mathewson
6d15a73548
Resolve/expand some XXXXs and improve a log message or two
...
svn:r5082
2005-09-16 16:41:45 +00:00
Roger Dingledine
cce469c5ce
simplify
...
svn:r5081
2005-09-16 06:15:34 +00:00
Nick Mathewson
538740e362
Fix the never-marked-anything-as-running bug. Now Tor builds circuts again. Woo.
...
svn:r5080
2005-09-16 04:53:28 +00:00
Nick Mathewson
d45badd9f4
Add a missing return
...
svn:r5079
2005-09-16 04:52:53 +00:00
Nick Mathewson
1a786a297f
Fix the confusing bug where we were downloading only the first n/2-1 of the servers we actually wanted.
...
svn:r5078
2005-09-16 04:43:21 +00:00
Nick Mathewson
9c2ca40df3
Unify our "figure out which fingerprints we were downloading" code.
...
svn:r5077
2005-09-16 04:42:45 +00:00
Nick Mathewson
05bab28c7d
Add some (notice, for now) log messages that imply confusing things are happening.
...
svn:r5076
2005-09-15 21:11:48 +00:00
Nick Mathewson
51da58eccf
fix braino in dirserv.
...
svn:r5075
2005-09-15 21:10:58 +00:00