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