Commit Graph

2028 Commits

Author SHA1 Message Date
Roger Dingledine
a4b1eb5630 allow StrictEntryNode and StrictExitNode to be singular
svn:r2922
2004-11-20 23:16:03 +00:00
Roger Dingledine
73da4bad46 stop some more seg faults
svn:r2921
2004-11-20 12:55:41 +00:00
Roger Dingledine
63353462f8 if your requested exit node has bandwidth 0, pick it anyway
svn:r2920
2004-11-20 12:41:05 +00:00
Roger Dingledine
d4ac7300d6 and a comment so i don't try to 'fix' it again later
svn:r2919
2004-11-20 12:17:19 +00:00
Roger Dingledine
246b14d8e9 yes, in fact, i broke it. putting back.
svn:r2918
2004-11-20 12:16:47 +00:00
Roger Dingledine
6322287dc1 printfs want carriage returns
svn:r2917
2004-11-20 08:00:57 +00:00
Roger Dingledine
dd19cf6ba3 kill -USR2 now moves all logs to loglevel debug
plus fix some typos


svn:r2914
2004-11-20 07:33:55 +00:00
Roger Dingledine
a30a5bce0f simplify close_temp_logs()
(nick, did i break this?)


svn:r2913
2004-11-20 07:08:00 +00:00
Roger Dingledine
a8840db4ac remove another possible sigpipe cause
svn:r2912
2004-11-20 06:52:13 +00:00
Nick Mathewson
8acaf8e187 Add "MEMUNIT" and "INTERVAL" types to configuration. Also tweak Accounting setup. More docs needed
svn:r2911
2004-11-20 00:37:00 +00:00
Roger Dingledine
2e4763655d bugfix: when our poll is interrupted, we believed the revents values.
svn:r2907
2004-11-17 20:26:39 +00:00
Nick Mathewson
647c076c8f add a TODO item and some comment changes.
svn:r2904
2004-11-16 03:32:01 +00:00
Roger Dingledine
3e4f30fbb9 bump us to 0.0.9pre6
svn:r2902
2004-11-16 03:29:09 +00:00
Roger Dingledine
abdf073f14 minor fixes
svn:r2901
2004-11-16 03:12:53 +00:00
Nick Mathewson
89a456a1d4 Fix a fun bug in read_all that was corrupting config files on windows, and probably doing other bad stuff too.
svn:r2898
2004-11-16 00:08:56 +00:00
Nick Mathewson
6143c515cd Make log_fn not fail so miserably on VC6
svn:r2896
2004-11-15 23:30:26 +00:00
Nick Mathewson
d63d5cb139 Whitespace normalization
svn:r2895
2004-11-15 23:29:24 +00:00
Nick Mathewson
5b668d8557 ugly macros to make log_fn play nice on non-GCC compilers.
svn:r2894
2004-11-15 21:18:07 +00:00
Nick Mathewson
7a8ac5dfef Tweak on patch to make authoritative directory servers cache
directories on disk.  Make authdirservers cache *their own*
directories instead of the ones they download.  This gives better
liveness, and marginally better resistance to broken authdirservers.

Authdirservers don't cache running-routers at all: r-r isn't stored to
disk, so there's no point right now.


svn:r2893
2004-11-15 16:17:59 +00:00
Roger Dingledine
dbd4dadff7 Authoritative dirservers now also cache the directory, since
they weren't writing anything into their datadirectory, so
when they stop and start, they would know nothing until they
fetched a directory from another authdirserver.


svn:r2891
2004-11-15 09:38:17 +00:00
Roger Dingledine
50c15943a2 move second stat to a cleaner place
svn:r2890
2004-11-15 09:22:01 +00:00
Roger Dingledine
4b76fe8036 Break DirFetchPostPeriod into:
- DirFetchPeriod for fetching full directory,
  - StatusFetchPeriod for fetching running-routers,
  - DirPostPeriod for posting server descriptor,
  - RendPostPeriod for posting hidden service descriptors.

Also make sure the hidden service descriptors are at a random
offset from each other, to hinder linkability.


svn:r2889
2004-11-15 09:05:54 +00:00
Roger Dingledine
67aa3b66c5 clean up socks handling, refuse connections to port 0
svn:r2888
2004-11-15 07:50:15 +00:00
Roger Dingledine
72dd656b88 a first cut at a print_usage()
svn:r2887
2004-11-15 07:29:27 +00:00
Nick Mathewson
c909a8a64b Only record bandwidth usage when accounting is enabled
svn:r2886
2004-11-15 04:48:53 +00:00
Nick Mathewson
930464c889 Change "warn if unverified routers are very skewed" to "never warn about unverified router skew"
svn:r2885
2004-11-15 04:28:24 +00:00
Nick Mathewson
22a0d82749 Cache running-routers; compress running-routers; serve compressed running-routers.z
svn:r2883
2004-11-15 04:04:20 +00:00
Nick Mathewson
076f120951 Patch to patch: do not send both error and done for one command.
svn:r2882
2004-11-15 04:02:59 +00:00
Roger Dingledine
ee591be3f2 fix a bug in configuring accounting in options_act()
svn:r2881
2004-11-15 04:01:31 +00:00
Roger Dingledine
47993ae6fb some fixes so far
svn:r2880
2004-11-15 03:53:03 +00:00
Nick Mathewson
5109159ff9 Fix compilation. Duh.
svn:r2876
2004-11-14 22:53:51 +00:00
Nick Mathewson
3e6edf20cc Resolve some hibernating-related XXXX009s.
svn:r2875
2004-11-14 22:21:23 +00:00
Nick Mathewson
402c75fb06 Allow more clock skew from unrecognized hosts than from recognized ones.
svn:r2874
2004-11-14 22:08:25 +00:00
Nick Mathewson
ffe9b01ad7 Split X509 certificate liveness checks into a separate function
svn:r2873
2004-11-14 22:07:48 +00:00
Nick Mathewson
57536f138a Fetch running-routers.
Split logic to initiate dirfetch, running-routers fetch, and
descriptor post.  arma: There are some XXXs here that raise design
questions which we should solve before the next release.

The biggest problem is this: Right now, the directory is about 50X as
large as running-routers uncompressed, and about 36X as large
compressed.  Assuming:

    - everybody gets the compressed version of everything,

    - everybody gets cached directories from random dirservers and
      uncached r-r from authdirservers

    - everybody downloads r-r at the same rate they now download dirs,

then using r-r from will *increase* authdirserver directory bandwidth usage
if there are significantly more caches than authdirservers.

I think it's safe to leave this in for now, since there aren't 3x36 caching
dirservers, but we should make everybody with a dirport cache running-routers
soon.  But I could be wrong.


svn:r2872
2004-11-14 21:46:40 +00:00
Nick Mathewson
2078b136f6 Make running-routers fetch (apparently) work
svn:r2871
2004-11-14 21:35:30 +00:00
Nick Mathewson
bb80d60fe7 Hibernate if we start tor during the "wait for wakeup-time" phase of an accounting interval. Log our hibernation plans better.
svn:r2869
2004-11-14 21:11:06 +00:00
Nick Mathewson
a732727a2b Add simpler option_is_same, as suggested by arma. Finish implementing SAVECONF
svn:r2868
2004-11-14 20:51:28 +00:00
Nick Mathewson
270b942edf Note where torrc goes.
svn:r2865
2004-11-14 19:08:08 +00:00
Nick Mathewson
26973578bf Fix windows whitespace
svn:r2860
2004-11-14 18:21:17 +00:00
Nick Mathewson
aba71028be Add an unreachable return 0.
svn:r2859
2004-11-14 18:20:12 +00:00
Nick Mathewson
05d5996410 Fix cast warning in tor-resolve.c
svn:r2857
2004-11-14 18:14:15 +00:00
Nick Mathewson
4f835673be Remove redundant declaration
svn:r2855
2004-11-14 17:22:10 +00:00
Nick Mathewson
783bbcf471 Fix "implicit declaration of ftello" warning: add AC_FUNC_FSEEKO in configure.in and always include orconfig.h before anything else
svn:r2854
2004-11-14 17:21:32 +00:00
Roger Dingledine
846f71dcca make kill -USR1 work again
svn:r2853
2004-11-14 13:35:47 +00:00
Roger Dingledine
5dcc6fd8b2 ok ok the stat wasn't redundant
but the warn was


svn:r2852
2004-11-14 13:35:39 +00:00
Roger Dingledine
14c7ad409f remove redundant stdio.h
i guess that wasn't the fix


svn:r2849
2004-11-14 09:49:27 +00:00
Roger Dingledine
bd4d99b3fe clean up the ftello call a little bit.
but i'm still getting:
log.c:94: warning: implicit declaration of function `ftello'


svn:r2848
2004-11-14 09:48:54 +00:00
Roger Dingledine
4564367b2a Remove redundant stat() for reading cached directory, and remove
confusing warn when the cached directory isn't there yet.


svn:r2847
2004-11-14 09:40:07 +00:00
Roger Dingledine
3f5c113815 clean a comment
svn:r2844
2004-11-14 04:55:02 +00:00
Nick Mathewson
ed4fa18699 normalize whitespace
svn:r2839
2004-11-13 23:34:01 +00:00
Nick Mathewson
ae7821bd88 Bump windows version
svn:r2838
2004-11-13 23:28:16 +00:00
Nick Mathewson
aab929abe0 Use the data, *then* free it. It works so much better.
svn:r2837
2004-11-13 23:27:50 +00:00
Nick Mathewson
dc48e7aeed Document remaining configuration options; add a ccheck for redundant authentication mechanisms in options_validate; add TODO items for post-009 hibernation features
svn:r2833
2004-11-13 17:17:04 +00:00
Nick Mathewson
08627d5d87 Track whether descriptor is dirty/uploaded. When any options are set, mark it dirty. Once a minute, regenerate and upload the server descriptor if it is dirty.
svn:r2832
2004-11-13 16:53:48 +00:00
Nick Mathewson
0b42e31fe0 Comment a confusing conditional
svn:r2828
2004-11-13 02:54:30 +00:00
Roger Dingledine
5864f4ac01 fix a seg fault when fetching rendezvous descs
svn:r2825
2004-11-12 21:59:27 +00:00
Nick Mathewson
a3788d5c9d Fix argument to strncpy.
svn:r2824
2004-11-12 21:14:51 +00:00
Nick Mathewson
a8f9ba91db Nobody was using the return values from smartlist_(set|del|del_keeporder), so remove them.
svn:r2823
2004-11-12 21:14:06 +00:00
Nick Mathewson
238a895e69 Add a FAST_SMARTLIST define to optionally inline smartlist_get and smartlist_len, which are two major profiling offenders.
svn:r2822
2004-11-12 20:41:52 +00:00
Nick Mathewson
c466b7e72f Speed up tor_strndup a lot: profiling suggests that our use of strlcpy here was a bad idea.
svn:r2821
2004-11-12 20:41:03 +00:00
Nick Mathewson
eabcf6618e Write most of the implementation for SAVECONF.
svn:r2820
2004-11-12 20:09:54 +00:00
Nick Mathewson
5109de5626 Rename exit_policy to addr_policy, since it gets used for SOCKS and directory connections too. Make all policies get validated in options_validate, and make SOCKS/directory policies get set in options_act.
svn:r2819
2004-11-12 19:39:13 +00:00
Peter Palfrader
a1e7ad4855 Fix two comments in torrc.sample.in directly in the upstream source
svn:r2812
2004-11-12 17:04:42 +00:00
Nick Mathewson
60880cda84 Resolve a bunch of FIXME items; mark a lot more for attention; ask for clarification on some. Turn all XXXX008 ("showstopper for 0.0.8 release") items into XXXX009 or XXXX, since plainly they were not showstoppers for 0.0.8. Add/clean some docs.
svn:r2808
2004-11-12 16:39:03 +00:00
Nick Mathewson
2a5bcb29e6 Resolve FIXME: Possible solution to note_disconnect problem; needs thought and review.
svn:r2807
2004-11-12 05:52:19 +00:00
Nick Mathewson
5d92fbe30e Use autoconf to enable largefile support where necessary. Use ftello where available, since ftell can fail at 2GB.
svn:r2806
2004-11-12 05:05:41 +00:00
Nick Mathewson
0faab62cd9 Resolve FIXMES: sometimes an error code is just an error code
svn:r2805
2004-11-12 05:03:50 +00:00
Roger Dingledine
90e0ad517e dfc caught a SIGXFSZ error when his debugfile reached 2GB.
so if they exist, catch them and ignore them.
write() will fail normally and we'll look at errno like
normal human beings.


svn:r2804
2004-11-12 04:59:37 +00:00
Roger Dingledine
c106ab8315 clean torrc sample
change log files to end in .log for logrotate to notice
mention that address doesn't need to be defined


svn:r2803
2004-11-12 04:00:07 +00:00
Roger Dingledine
fde595feb7 when clients do --list-fingerprint, it's misleading to
give them one, because it will never be the same again


svn:r2800
2004-11-11 13:24:10 +00:00
Nick Mathewson
6252cba522 apply patch from Andre Eisenbach: include event code with events, as required by control-spec.txt
svn:r2799
2004-11-11 00:54:53 +00:00
Nick Mathewson
e69d9647ed Remove XXXX009 comment telling us to do the last (circID-related) fix
svn:r2798
2004-11-10 20:19:45 +00:00
Nick Mathewson
954570486f Resolve a FIXME: use identity comparison, not nickname comparison, to
choose circuit ID types.  This is important because our view of "the
nickname of the router on the other side of this connection" is
skewed, and depends on whether we think the other rotuer is
verified--and there's no way to know whether another router thinks you
are verified.

For backward compatibility, we notice when the other router chooses
the same circuit ID type as us (because it's running an old version),
and switch our type to be polite.


svn:r2797
2004-11-10 20:14:37 +00:00
Nick Mathewson
ec49905fb8 When we think we have no bandwidth, guess that we will run for 1 day.
svn:r2795
2004-11-10 19:32:44 +00:00
Nick Mathewson
9c22b428bf Clarify a warning about /.tor
svn:r2794
2004-11-10 14:29:18 +00:00
Nick Mathewson
a43db78e8d Resolve FIXME items: make the kill-unattached-AP timeout symbolic
svn:r2793
2004-11-10 14:28:47 +00:00
Nick Mathewson
c9af37d1ba Resolve FIXME items: make circuit_free_cpath_node static
svn:r2792
2004-11-10 14:28:04 +00:00
Nick Mathewson
fde4129ac3 Resolve FIXME items: clarify two XXXX comments for 009
svn:r2791
2004-11-10 14:27:26 +00:00
Nick Mathewson
aa1c0c4d67 Resolve FIXME items: fix assert failure on malformed socks4a qreuests. (bug reported by Anna Shubina wrt old Netscapes)
svn:r2790
2004-11-10 14:26:34 +00:00
Nick Mathewson
8de9cfe184 Resolve FIXME items: make expand_filename handle ~ and ~username
svn:r2789
2004-11-10 14:23:31 +00:00
Roger Dingledine
987cb2b93a when you cast MAX_UINT to an int it confuses the users
svn:r2788
2004-11-10 09:09:15 +00:00
Nick Mathewson
c1bf171ed8 Fix a few bugs in accounting: parse bw_accounting correctly; set end time of continued interval; record used bandwidth on state change.
svn:r2785
2004-11-10 04:19:53 +00:00
Roger Dingledine
646903542a make nick's config patch build
svn:r2783
2004-11-10 03:48:38 +00:00
Nick Mathewson
1013abd27f Validate log options during options_validate(). Reject unrecognized log types like "Log notice magic-twanger". Also, make sure User and Group stay the same, and do not crash when somebody tries to change PidFile to NULL.
svn:r2778
2004-11-10 03:40:30 +00:00
Roger Dingledine
af9683501c make abbreviations case-insensitive (thanks weasel)
svn:r2773
2004-11-10 03:22:49 +00:00
Roger Dingledine
d9a74cd0af make it more obvious that we have just told them their new torrc log line.
svn:r2772
2004-11-10 03:08:03 +00:00
Roger Dingledine
c03a3eaed0 weaken our anonymity warning a little bit more
svn:r2771
2004-11-10 02:58:27 +00:00
Nick Mathewson
4cdddcc13d Remvove an XXX
svn:r2769
2004-11-10 02:02:06 +00:00
Roger Dingledine
ab951fc828 remove extraneous variable
svn:r2765
2004-11-10 00:19:18 +00:00
Roger Dingledine
c41c469166 don't ship with the default dirservers listed explicitly. leave them
unlisted so we can change the default later.


svn:r2762
2004-11-10 00:14:02 +00:00
Roger Dingledine
7528e8b86a don't check permissions on our datadirectory until we switch uid/gid
svn:r2759
2004-11-10 00:11:37 +00:00
Nick Mathewson
5a5be93f80 Normalize whitespace; add a "tell me about all the unnormalized whitespace" target; fix a braino in dirserv.c
svn:r2758
2004-11-09 20:04:00 +00:00
Nick Mathewson
d9d053d70b Clean windows a little
svn:r2757
2004-11-09 19:30:50 +00:00
Nick Mathewson
7daab4034d Fix windows build for VC6; centralize newline-fiasco-damage-control logic
svn:r2756
2004-11-09 19:13:08 +00:00
Nick Mathewson
cd753df7bf Resolve many XXXs and all DOCDOCs
svn:r2755
2004-11-09 18:22:17 +00:00
Nick Mathewson
b960574556 Change interface to config_trial_assign even more; have it use get_options() instead
svn:r2754
2004-11-09 17:15:17 +00:00
Nick Mathewson
a2079c074f Add some documentation to routerlist
svn:r2753
2004-11-09 17:14:15 +00:00
Nick Mathewson
548d4174ef When listing router status, include ourself if we are awake
svn:r2752
2004-11-09 17:12:56 +00:00
Roger Dingledine
3ce3d6eead resolve a 64-bit warning
svn:r2750
2004-11-09 11:36:38 +00:00