Roger Dingledine
76e6cc0c2b
bump to 0.1.1.7-alpha
...
svn:r5051
2005-09-14 03:59:33 +00:00
Roger Dingledine
ca727ba6e1
bugfix: when we try to determine the reachability of our dirport,
...
and it doesn't work, don't freak out and mark ourselves as down and
try somewhere else. just calmly fail.
svn:r5050
2005-09-14 03:49:17 +00:00
Nick Mathewson
7c6679d8dc
Add new config.c function to set options that can fail, and roll back if they do. This should solve the setconf-an-impossible-port bug.
...
svn:r5046
2005-09-14 02:36:29 +00:00
Roger Dingledine
93be26a74a
stop the call duplication inside config_assign()
...
svn:r5045
2005-09-14 02:35:06 +00:00
Nick Mathewson
6aa8850d90
note that routerstatus_t.entries is sorted.
...
svn:r5044
2005-09-14 02:28:35 +00:00
Roger Dingledine
10893e7254
simplify
...
svn:r5043
2005-09-14 02:18:28 +00:00
Roger Dingledine
c78aafe4b5
and take the bang out
...
svn:r5042
2005-09-14 02:13:35 +00:00
Roger Dingledine
62fe24c40c
ok, ok, csv's get replaced even when we assign them from the torrc.
...
svn:r5041
2005-09-14 02:12:29 +00:00
Roger Dingledine
1f930a9a70
checkpoint: clean up and document the three ways to call config_assign()
...
and reduce code duplication in config_free() and option_is_same().
svn:r5040
2005-09-14 02:07:35 +00:00
Roger Dingledine
8585599965
correct "your server is reachable" log entries to indicate that it was
...
self-testing that told us so.
svn:r5034
2005-09-13 21:39:42 +00:00
Roger Dingledine
26cc51ffea
a bit more code cleanup
...
svn:r5033
2005-09-13 21:24:51 +00:00
Nick Mathewson
890847d232
I forgot -- smart kids make their code compile.
...
svn:r5032
2005-09-13 21:18:00 +00:00
Nick Mathewson
4efa652a98
add docs, fix whitespace, and make ANY rule in routerparse a little tighter.
...
svn:r5031
2005-09-13 21:14:55 +00:00
Nick Mathewson
76351b8416
Fix DOCDOC entries in routerlist.c. Make more functions use SMARTLIST_FOREACH instead of raw loops. Replace router_list_superseded implementation with one that has a prayer of working.
...
svn:r5027
2005-09-13 15:32:03 +00:00
Nick Mathewson
d9bf9e48c0
Add documentation to a few functions in container.c; reformat function definitions
...
svn:r5026
2005-09-13 15:30:22 +00:00
Nick Mathewson
29c57b54d4
Add functions to extend and compress new router store logic. (Basic idea: use a journal of newly received router descriptors, and periodically replace the old file. This avoids the "too many files" problem and the "too many rewrites" problem.)
...
svn:r5025
2005-09-13 06:21:10 +00:00
Nick Mathewson
d4fb1fcd6c
Two new functions like write_bytes_to_file: one takes a list of byte-and-len structs; one appends.
...
svn:r5024
2005-09-13 06:19:31 +00:00
Roger Dingledine
82b3b6249c
fix a seg fault if we ask an authdirserver for a descriptor by
...
fingerprint but he doesn't know about him.
svn:r5023
2005-09-13 01:20:26 +00:00
Roger Dingledine
8b0d37096b
when the user asked for a rendezvous port that the hidden service
...
didn't want to provide, we were sending an IP address back along
with the end cell. fortunately, it was zero. but stop that anyway.
svn:r5022
2005-09-12 22:05:17 +00:00
Roger Dingledine
569efe61c0
make the patch less likely to bite us later
...
svn:r5021
2005-09-12 21:42:59 +00:00
Nick Mathewson
93c1d37d5f
Resolve stack corruption identified by edmanw in connection_edge_end(). Thanks!
...
svn:r5020
2005-09-12 20:57:16 +00:00
Nick Mathewson
39e29738b1
Maybe I should pay more attention to return values and less to clever comments. Fortunately, the aforementioned comments came out against smacking upside the head.
...
svn:r5018
2005-09-12 08:49:21 +00:00
Nick Mathewson
a6271650d5
Versions should be sorted by version. Lexical sorting should be used only as a last resort.
...
svn:r5017
2005-09-12 08:46:37 +00:00
Roger Dingledine
689cb28098
when writing the recommended*versions lines, sort them first.
...
this is because weasel put his out of order and told me the code
should take care of it.
svn:r5016
2005-09-12 08:31:47 +00:00
Nick Mathewson
c1a6940e73
make compile slightly happier on const-zealous compilers
...
svn:r5015
2005-09-12 08:29:53 +00:00
Nick Mathewson
2689cb081b
We have so many special cases for smartlists of strings, why not add a sort function?
...
svn:r5014
2005-09-12 08:27:01 +00:00
Roger Dingledine
63bb27f19d
be more thorough about noticing when a directory request has failed:
...
it has failed not only when the connection attempt fails, but also
if the conn reaches eof before we get a response that we're happy with.
svn:r5013
2005-09-12 07:36:26 +00:00
Nick Mathewson
3dc5e77b58
Numerous changes to move towards client-side v2 directories.
...
connection.c:
- Add some more connection accessor functions to make directory
download redundancy checking work.
directory.c, or.h, router.c, routerlist.c:
- Start on logic to note when networkstatus downloads fail.
dirserv.c, routerlist.c, routerparse.c:
- Start maintaining an is_named field in routerstatus_t. Don't
actually look at it yet.
dirserv.c, routerlist.c:
- Remove expired networkstatus objects.
or.h:
- Make some booleans into bitfields
- Add prototypes
routerlist.c:
- Sort networkstatus list by publication time
- Function to remove old (older than 10 days) networkstatus objects.
- Function to set a list of routerinfo_ts' status info from the
current set of networkstatus objects.
- Function to tell which routerinfos we need to download based no the
current set of networkstatus objects.
- Do not launch a networkstatus download if a redundant one is in progress.
routerparse.c:
- Keep router entries in networkstatus sorted by digest.
svn:r5012
2005-09-12 06:56:42 +00:00
Roger Dingledine
5cebd8df70
remove temporary network-status keyword
...
svn:r5007
2005-09-12 06:14:41 +00:00
Roger Dingledine
89d516f95c
clean up the log entry for when a server posts a server descriptor that
...
the dirserver doesn't like
svn:r5005
2005-09-12 06:08:48 +00:00
Nick Mathewson
8d70ae01b8
Fix a memory leak in smartlist_string_remove.
...
svn:r5002
2005-09-12 05:20:29 +00:00
Nick Mathewson
63dfe2447e
Fix bug found by "ca": looking up a non-existent stream for a v1 control connection would cause a segfault. (No backport needed since 0.1.0 had only v0 connections.)
...
svn:r5001
2005-09-12 03:32:30 +00:00
Nick Mathewson
24bfac635d
Document SMARTLIST_FOREACH macro, along with previously-naughty foo_sl_idx variable.
...
svn:r5000
2005-09-11 23:14:14 +00:00
Roger Dingledine
d7d4d4cbbf
fix comment and return value for check_software_version_against_directory()
...
svn:r4996
2005-09-11 22:36:50 +00:00
Roger Dingledine
b0a5ba4248
downgrade the dirserver log messages when whining about unreachability
...
svn:r4991
2005-09-10 20:40:16 +00:00
Roger Dingledine
cfe34812eb
bugfix: if you gave tor an odd number of command-line arguments,
...
we were silently ignoring the last one. now we complain and fail.
svn:r4988
2005-09-10 04:40:27 +00:00
Roger Dingledine
e782ee344a
bump to 0.1.1.6-alpha-cvs
...
svn:r4987
2005-09-10 03:41:39 +00:00
Roger Dingledine
9b54cd349d
break out a new function config_assign_value() that just assigns the
...
value it's given, and doesn't do any of their weird clearing or resetting
stuff. use that when we're trying to clear or reset values.
svn:r4984
2005-09-10 02:42:32 +00:00
Nick Mathewson
a4f32e77ef
Fix segfault in win32 unittests.
...
svn:r4983
2005-09-10 02:34:32 +00:00
Roger Dingledine
e58ca648c6
bump to 0.1.1.6-alpha
...
this time for sure
svn:r4982
2005-09-10 01:47:27 +00:00
Nick Mathewson
d26523e089
Use tor_listdir in test.c instead of duplicating ode.
...
svn:r4981
2005-09-10 01:42:42 +00:00
Roger Dingledine
1d9786a392
generalize route length to three plus one if the exit node is risky.
...
svn:r4978
2005-09-10 01:01:40 +00:00
Nick Mathewson
035b1953eb
Add sorting/searching to smartlist
...
svn:r4977
2005-09-09 23:12:54 +00:00
Roger Dingledine
cfa321374d
reject ports 465 and 587 by default now too
...
svn:r4974
2005-09-09 22:46:43 +00:00
Nick Mathewson
6b479b3cfa
Only do openssl accel stuff if version is at least 0.9.7
...
svn:r4973
2005-09-09 22:07:15 +00:00
Nick Mathewson
09d83c564b
Add missing arg to windows tor_listdir()
...
svn:r4972
2005-09-09 21:34:59 +00:00
Nick Mathewson
2f6eb10fb4
Implement tor_listdir on windows. Untested.
...
svn:r4971
2005-09-09 21:29:23 +00:00
Nick Mathewson
dcf1e14190
downgrade warning to info
...
svn:r4967
2005-09-09 21:03:57 +00:00
Roger Dingledine
a5ea401b2e
a few more hints on a rare but mysterious warning
...
svn:r4966
2005-09-09 20:58:44 +00:00
Nick Mathewson
047e105daf
Fix a bug in config_dump: we want to run options_validate on the defaults, not (again, uselessly) on the configuration. This was introduced when we made the config code more generic.
...
svn:r4965
2005-09-09 20:08:26 +00:00
Roger Dingledine
35b78b2d8e
clean up the rendezvous warn log msgs, and downgrade some to info
...
svn:r4964
2005-09-09 19:54:28 +00:00
Nick Mathewson
0de64f224e
Warn in more detail when network-status serving and fetching fails. Also, fix a small leak.
...
svn:r4963
2005-09-09 19:37:12 +00:00
Roger Dingledine
42f752a0a5
bugfix: we were automatically condemning an exit node (concluding
...
its advertised exit policy is different from its real one) as soon
as it refused any requests.
After fixing that bug, another bug appeared: we would try the same
server again and again, since once we learned an IP address for a
hostname, we still kept think of it as the hostname. now pass it to
the remapper before trying to reattach.
svn:r4962
2005-09-09 06:11:37 +00:00
Roger Dingledine
843550721a
stop notifying people about dns worker spawning and culling
...
it just freaks them out
svn:r4960
2005-09-09 02:03:31 +00:00
Roger Dingledine
2065c5f7aa
when printing x-forwarded-by headers, don't print the \r
...
svn:r4959
2005-09-09 02:02:20 +00:00
Nick Mathewson
bd911d8612
Fix segfault and memleak when getting many compressed server descs.
...
svn:r4956
2005-09-08 22:00:29 +00:00
Nick Mathewson
659491bbc6
Fix some messages that say "failing".
...
svn:r4955
2005-09-08 21:46:31 +00:00
Nick Mathewson
d410c49965
Clean up some more fingerprint-checking logic
...
svn:r4954
2005-09-08 21:39:39 +00:00
Roger Dingledine
587b513ec0
remove obsolete kludge
...
svn:r4953
2005-09-08 21:36:27 +00:00
Nick Mathewson
9df4716ac3
make it work correctly when we download multiple network-status objects.
...
svn:r4952
2005-09-08 21:28:45 +00:00
Nick Mathewson
4ce0e01848
add conn->requested_resource to connection_t checks.
...
svn:r4951
2005-09-08 21:21:54 +00:00
Nick Mathewson
a938190bdb
Iteration is happier when you stop.
...
svn:r4950
2005-09-08 21:20:20 +00:00
Roger Dingledine
e28931dc94
unused variable
...
svn:r4949
2005-09-08 21:12:53 +00:00
Nick Mathewson
4528bbfd9f
Resolve some XXXs. Add some others.
...
svn:r4947
2005-09-08 21:01:24 +00:00
Nick Mathewson
c523e106b5
Do not generate more than 2 of each directory type per minute.
...
svn:r4946
2005-09-08 20:47:11 +00:00
Nick Mathewson
18e4d78354
Fix an assert in directory.c. Check received network-status objects against the list we expected to get. Do not let anyone else update our network-status object.
...
svn:r4945
2005-09-08 20:36:40 +00:00
Nick Mathewson
059148f588
Only caches download network-status for now, and they use a different strategy. Add an element to connection_t to remember what we are downloading, and a function to recognize our own fingerprint.
...
svn:r4944
2005-09-08 20:18:15 +00:00
Nick Mathewson
6c4d43c724
Special-case for retrieving own networkstatus by fingerprint: regenerate if dirty!
...
svn:r4943
2005-09-08 19:29:21 +00:00
Roger Dingledine
465aec04c1
when reporting results from a dirserver fetch/post, tell us the
...
port for the dirserver too
svn:r4942
2005-09-08 19:21:48 +00:00
Nick Mathewson
df79dc673b
Remove sneaky double declaration.
...
svn:r4941
2005-09-08 19:18:55 +00:00
Nick Mathewson
0f94aa2ea1
Write status to disk in the right place
...
svn:r4940
2005-09-08 19:16:16 +00:00
Nick Mathewson
cc16fb7636
oops -- that log should have been removed
...
svn:r4939
2005-09-08 19:12:55 +00:00
Nick Mathewson
e5f117606f
Fix network-status parsing.
...
svn:r4938
2005-09-08 19:10:36 +00:00
Nick Mathewson
b43a720bd4
Fix another reversed inet_aton
...
svn:r4937
2005-09-08 18:53:57 +00:00
Nick Mathewson
1e2f1679c8
Fix some more bugs; add a temporary log.
...
svn:r4936
2005-09-08 18:46:25 +00:00
Nick Mathewson
eab005c948
Ensure case match, not mismatch.
...
svn:r4935
2005-09-08 18:34:41 +00:00
Nick Mathewson
c4b3bf06c6
add strupper function
...
svn:r4934
2005-09-08 18:33:51 +00:00
Nick Mathewson
810572a5de
Stop dying when we get a directory from tor26; workaround for change in networkstatus format
...
svn:r4933
2005-09-08 18:24:26 +00:00
Roger Dingledine
4633b271f9
fix spacing
...
svn:r4932
2005-09-08 18:15:57 +00:00
Nick Mathewson
548a863779
Avoid assertion failure
...
svn:r4931
2005-09-08 18:14:23 +00:00
Nick Mathewson
ff9452e900
Clean up should-i-go-to-the-dirserv logic a little: All servers with DirPorts should get their directories from the source
...
svn:r4930
2005-09-08 18:14:01 +00:00
Nick Mathewson
3a99927859
Make directory download code slightly less likely to segfault or assert.
...
svn:r4929
2005-09-08 16:18:28 +00:00
Roger Dingledine
022f23249f
make doxygen output look prettier
...
svn:r4928
2005-09-08 07:10:12 +00:00
Roger Dingledine
dbeb8e7863
it really does help with the functions end.
...
svn:r4927
2005-09-08 06:59:58 +00:00
Roger Dingledine
74fb086210
if you give a config option in the torrc or the commandline with no
...
value, and reset is false, then it clears it entirely.
svn:r4926
2005-09-08 06:55:53 +00:00
Roger Dingledine
36fa360c11
and fix grammar
...
svn:r4925
2005-09-08 06:49:23 +00:00
Roger Dingledine
69da0ef757
add punctuation
...
svn:r4924
2005-09-08 06:49:02 +00:00
Roger Dingledine
780261aa2e
don't crash now that LongLivedPorts can be null
...
svn:r4923
2005-09-08 06:47:27 +00:00
Nick Mathewson
8f37357193
Make GCC v4 happy with heavy warnings enabled.
...
svn:r4922
2005-09-08 06:37:50 +00:00
Nick Mathewson
f50ddfd4dd
Download network-status at regular intervals. The code is probably iffy, and the constants need to be renamed.
...
svn:r4921
2005-09-08 06:22:44 +00:00
Roger Dingledine
2f6664ce80
MonthlyAccountingStart is dead.
...
svn:r4920
2005-09-08 05:38:47 +00:00
Roger Dingledine
c9e1c41873
dirserv_add_descriptor() doesn't chew up its argument anymore,
...
so we can stop protecting it.
svn:r4919
2005-09-08 05:37:22 +00:00
Roger Dingledine
03ddeb2620
strip obsolete code
...
svn:r4918
2005-09-08 05:32:41 +00:00
Roger Dingledine
0ac3c58480
clean up comments for router_is_general_exit()
...
svn:r4917
2005-09-08 05:23:55 +00:00
Roger Dingledine
08348ae66e
add a RESETCONF controller command, and make setconf with a null
...
option actually mean to set it to ""
svn:r4916
2005-09-08 03:18:51 +00:00
Roger Dingledine
0a8a8ba546
fix some typos
...
svn:r4915
2005-09-08 03:17:50 +00:00
Nick Mathewson
4aca47268d
Logic to launch connections for new directory types.
...
svn:r4914
2005-09-07 20:03:02 +00:00
Nick Mathewson
9e76eae810
add missing return
...
svn:r4913
2005-09-07 17:18:52 +00:00
Nick Mathewson
eac917fd6a
clean whitespace.
...
svn:r4912
2005-09-07 17:15:46 +00:00
Nick Mathewson
5c6c88e76d
More stuff for new directories.
...
- Distinguish v1 authorities (all currently trusted directories) from
v2 authorities (all trusted directories).
- Add configuration option for which dirs are v1 authories.
- Add configuration option for whether to be a v1 authority.
- Make trusted dirserver selection functions take options to
choose which functionality we need.
- Remove option when getting directory cache to see whether they
support running-routers; they all do now. Replace it with one
to see whether caches support v2 stuff.
- Parse, cache, and serve network-status objects properly.
- Serve compressed groups of router descriptors. The compression logic
here could be more memory-efficient.
-
svn:r4911
2005-09-07 16:42:53 +00:00