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
Roger Dingledine
ca070e7de6
bugfix: ^c ought to work even while hibernating
...
svn:r2748
2004-11-09 11:14:34 +00:00
Roger Dingledine
b773045a58
only non-authdirservers cache the dir they just fetched
...
svn:r2747
2004-11-09 10:38:42 +00:00
Roger Dingledine
3235c72f6c
control event logs include loglevel notice
...
svn:r2746
2004-11-09 10:32:02 +00:00
Roger Dingledine
a972589bdb
allow BandwidthRate and Burst to be abbrevs in the torrc too
...
svn:r2744
2004-11-09 10:30:06 +00:00
Roger Dingledine
8d8d6b5661
raise your hand if you can spell
...
svn:r2743
2004-11-09 10:21:19 +00:00
Roger Dingledine
233f516d61
if you're going to ask it to use a body of length 0,
...
don't give it a body.
svn:r2742
2004-11-09 10:18:41 +00:00
Roger Dingledine
dd3a12c929
fix a memory-squashing bug that was causing an infinite loop
...
svn:r2741
2004-11-09 10:08:42 +00:00
Roger Dingledine
6a504efdd3
mark_logs_temp() before init'ing new ones.
...
we were seeing double, triple, etc each time we setconf'ed.
svn:r2738
2004-11-09 08:01:39 +00:00
Roger Dingledine
3901473bf3
change the interface to config_trial_assign()
...
svn:r2737
2004-11-09 07:55:48 +00:00
Roger Dingledine
2d18d9eefb
when you try a new set of options, and you like them, make sure they stick
...
svn:r2736
2004-11-09 07:45:24 +00:00
Roger Dingledine
9f3e3d2b71
stop wanting to split init_keys()
...
svn:r2735
2004-11-09 07:29:05 +00:00
Roger Dingledine
cad26b343d
once normalized, DataDirectory is always defined
...
svn:r2734
2004-11-09 07:20:21 +00:00
Nick Mathewson
180e0a9326
Make check_private_dir trimodal (check/create/ignore), not bimodal (create/ignore).
...
svn:r2733
2004-11-09 07:12:31 +00:00
Roger Dingledine
6521c2ce51
Stop using the wrong DataDirectory when we're validating.
...
Also validate/normalize the DataDirectory better.
svn:r2732
2004-11-09 07:05:53 +00:00
Nick Mathewson
48a0b6c476
Separate is-recognized-option from get-option-value, since NULL is ambiguous and returning "" misrepresents.
...
svn:r2731
2004-11-09 06:40:32 +00:00
Roger Dingledine
005b02fd57
when rejecting an old-style router descriptor, tell us its nickname
...
svn:r2730
2004-11-09 06:37:58 +00:00
Roger Dingledine
677124fd0c
During options_dup, don't copy LINELIST_S or OBSOLETE options.
...
And recognize obsolete options now in config_get_assigned_option().
svn:r2729
2004-11-09 06:18:17 +00:00
Roger Dingledine
94b9525f6e
EntryNodess is not the plural of EntryNodes
...
svn:r2728
2004-11-09 06:09:06 +00:00
Roger Dingledine
3c6b6a53a9
and another
...
svn:r2727
2004-11-09 06:03:20 +00:00
Roger Dingledine
5c2278aea8
fix some dereferences
...
svn:r2726
2004-11-09 05:59:22 +00:00
Roger Dingledine
ef6bdd6c1e
make datadirectory work again
...
svn:r2724
2004-11-09 05:35:49 +00:00
Roger Dingledine
6b22360eb8
fix mistake in comments
...
svn:r2723
2004-11-09 05:30:48 +00:00
Nick Mathewson
2677395aaf
Normalize DataDirectory in options_validate, making SIGHUP survivable.
...
svn:r2722
2004-11-09 05:26:49 +00:00
Nick Mathewson
a5903b737a
Document accounting
...
svn:r2721
2004-11-09 05:18:15 +00:00
Nick Mathewson
929b172955
Stop DataDirectory from changing; also stop using new as an identifier?
...
svn:r2717
2004-11-09 04:46:24 +00:00
Roger Dingledine
90b47172bd
Make an options_act() where we do all the things a new options set
...
needs.
Still needs more work.
svn:r2716
2004-11-09 04:28:18 +00:00
Roger Dingledine
3805221262
stop breaking the get_options() abstraction in config.c
...
svn:r2715
2004-11-09 02:12:55 +00:00
Roger Dingledine
e3a067c73a
fix comments in hibernate.c
...
svn:r2714
2004-11-09 02:12:41 +00:00
Roger Dingledine
8c7b2ff7ed
various fixes
...
svn:r2712
2004-11-09 01:24:10 +00:00
Nick Mathewson
cb5de85585
Separate validate from activate. Document undocumented stuff in config.c.
...
svn:r2711
2004-11-08 23:12:40 +00:00
Roger Dingledine
8b9d7da59f
while we hibernate, our declared bandwidth capacity is 0
...
svn:r2710
2004-11-07 23:19:12 +00:00
Nick Mathewson
2640be28fa
Document hibernate.c. Also fix handling of corner case where we hit the end of the interval while we are in HIBERNATE_STATE_LOWBANDWIDTH
...
svn:r2709
2004-11-07 23:14:47 +00:00
Nick Mathewson
fc9c6e7c95
Fix compile errors
...
svn:r2708
2004-11-07 23:11:29 +00:00
Nick Mathewson
f9c85c4d1c
Make set-option functions distinguish between bad keys and bad values, in case the caller cares
...
svn:r2707
2004-11-07 22:59:30 +00:00
Nick Mathewson
c514a06663
Fix up error codes
...
svn:r2706
2004-11-07 22:58:35 +00:00
Nick Mathewson
0059ee5fea
More tests for split
...
svn:r2705
2004-11-07 22:58:16 +00:00
Roger Dingledine
dac5d6715e
add saveconf control command.
...
allow authentication by localhost, but if tor demands more, require more.
svn:r2704
2004-11-07 22:37:59 +00:00
Nick Mathewson
66779137bf
Add missing dereference; stop throwing zeroes around.
...
svn:r2702
2004-11-07 22:18:00 +00:00
Nick Mathewson
2cacb4e0f9
Document control.c
...
svn:r2700
2004-11-07 21:37:50 +00:00
Roger Dingledine
3236ee3127
allow unauth control connections for now
...
let control connections recognize eof
svn:r2699
2004-11-07 11:33:04 +00:00
Roger Dingledine
394554cfbf
Clean up copyrights.
...
Break connection_consider_empty_buckets() out of
connection_read_bucket_decrement().
svn:r2698
2004-11-07 01:33:06 +00:00
Roger Dingledine
efad93feb4
tor --list-fingerprint as a client shouldn't try to print null
...
svn:r2697
2004-11-06 09:22:08 +00:00
Roger Dingledine
53a2b22742
fix the next subtle memory-crunching bug
...
now hup works
svn:r2696
2004-11-06 08:55:22 +00:00
Roger Dingledine
e2e6d19e76
fix subtle bug that was causing logs to not show anything
...
svn:r2695
2004-11-06 07:40:20 +00:00
Roger Dingledine
28a297ebe7
only play the accounting game if it's possible you'll choose to hibernate
...
svn:r2694
2004-11-06 06:56:28 +00:00
Roger Dingledine
865f341708
parse_line_from_file is obsolete.
...
svn:r2693
2004-11-06 05:18:29 +00:00
Roger Dingledine
6c61ed4fb5
Make options no longer a global variable.
...
Now we can try setting an option but back out if it fails to parse, or
if it's disallowed (e.g. changing RunAsDaemon from 1 to 0).
Use parse_line_from_str rather than parse_line_from_file.
svn:r2692
2004-11-06 05:18:11 +00:00
Nick Mathewson
f490e5cdb6
Update log documentation
...
svn:r2691
2004-11-05 21:22:38 +00:00
Nick Mathewson
7c0792d89a
Write hibernation code. Needs docs and tests.
...
svn:r2689
2004-11-05 17:55:34 +00:00
Nick Mathewson
38ed0ce5e6
Unify tor_parse_(numeric); make sure MAX_UINT32 and MAX_UINT64 are defined
...
svn:r2688
2004-11-05 17:54:50 +00:00
Roger Dingledine
0c583a6cf2
clarify it even better
...
svn:r2687
2004-11-05 11:58:34 +00:00
Roger Dingledine
0ab8b8a4e4
resolve misleading torrc comments
...
svn:r2686
2004-11-05 11:55:35 +00:00
Nick Mathewson
2e8353e2f4
Use new log format; convert old format to new format.
...
svn:r2684
2004-11-05 05:50:35 +00:00
Roger Dingledine
2ba3a9de16
make the default default options.FirewallPorts be the default
...
svn:r2683
2004-11-04 23:39:57 +00:00
Nick Mathewson
b56ef496d9
Twiddle header order to compile on OS X again
...
svn:r2681
2004-11-04 22:33:20 +00:00
Nick Mathewson
19868fe968
Move accounting code into hibernate; start adding logic to track bandwidth-per-seconds-active
...
svn:r2680
2004-11-04 22:33:06 +00:00
Nick Mathewson
1b49198081
Support code for resettable options, and option sets. Still needs validate-and-then-replace logic
...
svn:r2679
2004-11-04 22:31:50 +00:00
Nick Mathewson
d9e0f3f9bc
Make sure control command bodies are always followed by a NUL
...
svn:r2678
2004-11-04 22:30:49 +00:00
Nick Mathewson
9d604ec615
Add code to read configuration lines from a string as well as a file
...
svn:r2676
2004-11-04 22:29:45 +00:00
Nick Mathewson
831c988ea1
fix problems introduced by rpm spec patch.
...
svn:r2675
2004-11-04 15:34:04 +00:00
Nick Mathewson
69e5e8d0ad
Merge RPM spec patch from jbash
...
svn:r2674
2004-11-04 15:17:22 +00:00
Roger Dingledine
f7a30fa73e
break out validate_options
...
leave options.FirewallPorts NULL if it's NULL
svn:r2673
2004-11-04 10:23:30 +00:00
Roger Dingledine
cadbae6aa5
make free_options() and init_options() use the big array.
...
also remove obsolete config_assign_defaults().
svn:r2672
2004-11-04 08:26:34 +00:00
Roger Dingledine
59453ac6ef
add a ControlPort and control listener conn.
...
note that print_usage is obsolete.
svn:r2671
2004-11-04 06:41:49 +00:00
Nick Mathewson
b74b72a5ce
Fix windows build
...
svn:r2670
2004-11-04 04:01:19 +00:00
Roger Dingledine
d0c158c8d6
clarify the bandwidthburst and bandwidthrate are in bytes
...
(niels had thought they were in bits, or kb, or something)
svn:r2669
2004-11-04 03:25:43 +00:00
Roger Dingledine
a4753283dd
better interface for connection_ap_handshake_socks_reply()
...
make --list-fingerprint print the fingerprint again
svn:r2668
2004-11-03 23:13:28 +00:00
Nick Mathewson
5b312541d7
fix windows warnings
...
svn:r2667
2004-11-03 21:53:54 +00:00
Nick Mathewson
70f7e32ec6
fix typos
...
svn:r2666
2004-11-03 21:53:12 +00:00
Nick Mathewson
cea9125d71
Implement two flavors of authentication for control connections: one for trusted FS, one for untrusted FS.
...
svn:r2664
2004-11-03 19:49:03 +00:00
Nick Mathewson
871bf904ae
Remove extraneous local
...
svn:r2663
2004-11-03 19:15:38 +00:00
Nick Mathewson
d5244e3872
Add a write_bytes_to_file so we can have files with NULs in them.
...
svn:r2662
2004-11-03 19:02:48 +00:00
Nick Mathewson
451f8b5045
- Implement all of control interface except authentication, setconfig,
...
and actually making the sockets.
- Make sure that identity-based nicknames start with $.
- Use new string_join interface.
svn:r2661
2004-11-03 18:33:07 +00:00
Nick Mathewson
86ba00290b
Add function to generate/copy the config_lines, given the name of an option
...
svn:r2660
2004-11-03 18:29:29 +00:00
Nick Mathewson
11de62aa60
Add a slightly trickier string-join interface for making NUL-terminated string messages
...
svn:r2659
2004-11-03 18:28:00 +00:00
Nick Mathewson
11979dc1f5
Add a callback log handler type
...
svn:r2658
2004-11-03 18:27:19 +00:00
Nick Mathewson
4fdaa5de51
Streamline the two redundant "Has the second rolled over?" checks in prepare_for_poll and connection_bucket_refill; also, generate BANDWIDTH control events
...
svn:r2657
2004-11-03 16:38:04 +00:00
Roger Dingledine
12e92eb82f
connection_read_bucket_decrement() has a side-effect that
...
we need to get even if we just read 0 bytes
svn:r2656
2004-11-03 10:18:31 +00:00
Roger Dingledine
e541319dcb
lay the groundwork for a default value for each config option.
...
tolerate null exitnodes, entrynodes, etc config options.
svn:r2655
2004-11-03 10:08:44 +00:00
Roger Dingledine
e761cc9750
my assert.h takes extra pains to be certain to _re-include_
...
itself if you include it twice. this is dumb, but hey.
svn:r2653
2004-11-03 07:29:03 +00:00
Nick Mathewson
347d3f9d62
Start implementing control interface.
...
svn:r2652
2004-11-03 01:32:26 +00:00
Nick Mathewson
d63d420930
Fix another typo
...
svn:r2651
2004-11-03 01:31:42 +00:00
Nick Mathewson
3e16515343
The spelling is "d-e-f-i-n-e".
...
svn:r2650
2004-11-03 00:02:17 +00:00
Nick Mathewson
8db0abb687
First attempt at hibernation code. It needs more work around the XXXXs, but first I want arma to review the basic approach while I meditate on how to fix them.
...
svn:r2649
2004-11-02 23:47:32 +00:00
Nick Mathewson
a2f6210b3e
Add compatibility macros for printf and scanf-ing 64-bit unsigned ints
...
svn:r2648
2004-11-02 22:14:34 +00:00
Nick Mathewson
67f14032b1
Handle strlcat/strlcpy correctly on platforms that have them.
...
svn:r2647
2004-11-02 19:25:52 +00:00
Nick Mathewson
509c0bdc22
untabify. This should hold it.
...
svn:r2646
2004-11-02 03:11:01 +00:00
Nick Mathewson
ad4dc74482
Use a stricter set of warnings; make them all pass.
...
svn:r2645
2004-11-02 03:02:17 +00:00
Roger Dingledine
85c79ffbc7
canonicalize "src" and "dest" arg order in crypto.c (and others)
...
svn:r2644
2004-11-02 02:28:51 +00:00
Nick Mathewson
1433a0b26f
Fix signed/unsigned comparison warning
...
svn:r2643
2004-11-01 22:41:32 +00:00
Roger Dingledine
037fba7595
util.c needs ctype.h for tolower and isspace
...
svn:r2642
2004-11-01 21:54:12 +00:00
Roger Dingledine
b390786582
Hidden service operators had a bug in version 1 style INTRODUCE cells
...
that made them fail. Fix the bug, and revert clients to use version 0
until 0.0.9pre4 is obsolete.
svn:r2641
2004-11-01 21:46:27 +00:00
Nick Mathewson
ce79bab7f1
Split util into util (general utilities), container (smartlist and strmap), and compat (cross-platform compatability).
...
svn:r2640
2004-11-01 20:41:47 +00:00
Roger Dingledine
4689243242
make sure options.MaxConn can be reached
...
svn:r2638
2004-11-01 08:24:34 +00:00
Roger Dingledine
282816b498
change min required number of fd's to 1024
...
svn:r2636
2004-11-01 08:09:59 +00:00
Roger Dingledine
790349c645
oh, and add the actual file too
...
svn:r2631
2004-10-31 20:29:25 +00:00
Roger Dingledine
984ffec105
implement first piece of hibernation
...
still need to track bandwidth, and make decisions based on bandwidth
svn:r2630
2004-10-31 20:28:41 +00:00
Nick Mathewson
ae7495dd55
Only tor and test binaries need to link against openssl and zlib; tor-resolve can be smaller.
...
svn:r2629
2004-10-30 19:27:06 +00:00
Nick Mathewson
5bc0dba933
Move all util functions that need openssl into crypto.c; make non-openssl functions that util needs into util. Now openssl can be separated.
...
svn:r2628
2004-10-30 19:26:31 +00:00
Nick Mathewson
9510d9a792
tor --list-fingerprint to print fingerprint and exit
...
svn:r2627
2004-10-30 19:18:37 +00:00
Roger Dingledine
51e16233cb
Fix paul gardner's assert bug. Turns out when circuit_launch_by_nickname()
...
failed at the first hop, it would try to relaunch another circ right
then, even though the first circuit hadn't been populated yet with its
pending_final_cpath.
svn:r2624
2004-10-30 05:04:52 +00:00
Nick Mathewson
5c68db8b3d
Link tools directory into rest of build system
...
svn:r2623
2004-10-28 20:31:15 +00:00
Nick Mathewson
54b8f7e503
Add a pure-C tor-resolve implementation
...
svn:r2620
2004-10-28 20:28:13 +00:00
Nick Mathewson
11d330be5e
Tweaks to prevent obsolete restarting tors from hammering the dirservers. (1) Cache a received directory as soon as the signature checks out. (2) Treat a cached directory as "recent" based on its mtime. (3) If we have a recent directory, we dont need to fetch a newer one for DirFetchPostPeriod. This needs review!
...
svn:r2618
2004-10-28 18:37:52 +00:00
Nick Mathewson
36bbab2f2b
Fix in warning fix
...
svn:r2617
2004-10-27 21:54:44 +00:00
Nick Mathewson
f8771625c6
Check return of tor_snprintf
...
svn:r2616
2004-10-27 21:30:47 +00:00
Nick Mathewson
2fbf31533b
Tricksy compiler warnings! We hates them, hates them forever, my precious!
...
svn:r2615
2004-10-27 21:14:11 +00:00
Nick Mathewson
ce5709184b
Pass with -Wstrict-prototypes
...
svn:r2614
2004-10-27 18:16:37 +00:00
Nick Mathewson
6874c39904
Fix windows build
...
svn:r2613
2004-10-27 18:14:38 +00:00
Nick Mathewson
c5eb95b644
Add ability for some-but-not-all abbrevs to work in config file. Add a bunch of singular/plural abbrevs suggested by arma
...
svn:r2612
2004-10-27 17:37:01 +00:00
Roger Dingledine
75ad4615d1
stop freeing arbitrary memory
...
fix a couple of memory leaks
svn:r2611
2004-10-27 12:34:02 +00:00
Nick Mathewson
6980929e64
Use strlcpy, not strcpy.
...
svn:r2610
2004-10-27 06:48:16 +00:00
Nick Mathewson
44d4516155
Use tor_snprintf, not snprintf
...
svn:r2609
2004-10-27 06:37:34 +00:00
Nick Mathewson
22dc19b590
snprintf wrapper with consistant (though not C99) overflow behavior
...
svn:r2606
2004-10-27 06:26:23 +00:00
Nick Mathewson
06fa8fc05f
Avoid strcat; use snprintf or strlcat instead
...
svn:r2605
2004-10-27 06:25:29 +00:00
Nick Mathewson
f67f83b1fa
Use strlcpy, not strncpy
...
svn:r2603
2004-10-27 06:03:28 +00:00
Nick Mathewson
bc62f8e983
Replace sprintf with snprintf
...
svn:r2602
2004-10-27 05:53:07 +00:00
Nick Mathewson
5369ee921e
Make it compile on Linux
...
svn:r2600
2004-10-27 03:42:09 +00:00
Nick Mathewson
8cefc861d6
Add cvsignore in win32 directory
...
svn:r2599
2004-10-27 03:38:42 +00:00
Nick Mathewson
482c309db9
Document new config code
...
svn:r2596
2004-10-27 03:08:04 +00:00
Nick Mathewson
a24eb4db91
Re-write configuration option lookup code: use a table, not a big if( || || || ||). Deprecate unoffical abbrevs and abbrevs not on the command line.
...
svn:r2594
2004-10-27 02:30:28 +00:00
Nick Mathewson
b90b2bb848
Add and document router-status line using new unified liveness/verifiedness format; continue to generate running-routers; continue to parse running-routers when no router-status line is found
...
svn:r2592
2004-10-27 00:48:51 +00:00
Nick Mathewson
26f3cb8652
Add SysLog option to direct log messages to the system log instead of a FILE*.
...
svn:r2591
2004-10-26 21:48:41 +00:00
Roger Dingledine
0113a643a2
quick-and-dirty dir policy since the dirservers are getting hammered
...
nick, could you abstract this sometime so we don't repeat the
sockspolicy code twice?
svn:r2589
2004-10-25 06:16:26 +00:00
Roger Dingledine
20cdc0a517
fix a memory leak
...
svn:r2587
2004-10-24 23:09:48 +00:00
Roger Dingledine
defe1e5f3c
start generating new version of introduce1 cells
...
svn:r2586
2004-10-24 19:08:07 +00:00
Roger Dingledine
0b36c29c4d
fix wrong comment
...
svn:r2585
2004-10-24 17:11:44 +00:00
Nick Mathewson
ef4ac65f5e
Document the swiss-army-knife that retry_listeners has become
...
svn:r2584
2004-10-24 01:50:33 +00:00
Nick Mathewson
0df2d383d1
Many non-native speakers use Tor. It is our duty to ensure that our log messages set an example of good English spelling.
...
svn:r2583
2004-10-24 01:29:01 +00:00
Nick Mathewson
57f09573f5
Every 60 seconds, check whether the listeners are still alive, and relaunch the dead ones.
...
svn:r2581
2004-10-24 01:22:40 +00:00
Nick Mathewson
04ca660b2a
Fix typo in last windows patch
...
svn:r2580
2004-10-24 00:58:29 +00:00
Nick Mathewson
5d53828c57
Handle more errnos from accept() without closing the connection. This may fix a bug that could close OR listeners when (a) TCP connections were hung up before accept() could be called, or (b) during FD exhaustion.
...
svn:r2579
2004-10-24 00:55:18 +00:00
Nick Mathewson
78a2c3aa39
Make windows fall back to CWD if SHGetSpecialFolderLocation is borked
...
svn:r2578
2004-10-24 00:52:10 +00:00
Roger Dingledine
54c432bd93
pay attention to the return value of do_hup, and exit
...
when it fails
svn:r2577
2004-10-23 17:06:25 +00:00
Roger Dingledine
9cc0c3620f
ship src/win32/ in the tarball
...
svn:r2576
2004-10-21 00:49:17 +00:00
Nick Mathewson
6899b8001a
Check for low _MSC_VER, not high. On windows, always use winsock.
...
svn:r2575
2004-10-20 23:30:38 +00:00
Roger Dingledine
c4c6ee7d61
add winsock if you've got it, regardless of whether you're msv
...
svn:r2573
2004-10-20 23:23:53 +00:00
Nick Mathewson
88cffc3c5f
Use bitwise masking to turn off bits, not compare-and-subtract
...
svn:r2572
2004-10-20 23:15:49 +00:00
Roger Dingledine
c3a15d1c74
bcc win32 compiler has no timeval tv_sec
...
svn:r2571
2004-10-20 23:12:37 +00:00
Nick Mathewson
e5049d5aa3
Remove routerinfo_t->is_trusted_dir, and all the twisted machinery used to
...
maintain it.
Have clients default to the nickname "client" in their certificates.
Give a less frightening warning on obsolete (pre-0.0.8) routerinfo_t's.
svn:r2568
2004-10-19 18:19:59 +00:00
Nick Mathewson
62094ebd32
Tolerate NULL nicknames better
...
svn:r2567
2004-10-19 18:17:12 +00:00
Nick Mathewson
c7151d8bed
Add "pass" target for RedirectExit, to make it easier to break out of a sequence of rules
...
svn:r2566
2004-10-19 17:46:06 +00:00
Roger Dingledine
97a0a43511
start the process of making 0.0.7* obsolete
...
svn:r2565
2004-10-17 21:51:20 +00:00
Roger Dingledine
640544ae3e
use connection_edge_is_rendezvous_stream() more
...
svn:r2564
2004-10-17 21:10:41 +00:00
Roger Dingledine
695cdb10fe
whoops, resolve cells were probably broken
...
svn:r2562
2004-10-17 20:31:19 +00:00
Nick Mathewson
b130aa3c8f
Fix segfault in unit tests. (Main program is unaffected)
...
svn:r2559
2004-10-17 15:45:54 +00:00
Roger Dingledine
e66d5f897a
fix a seg fault with exitredirect
...
svn:r2555
2004-10-17 04:44:02 +00:00
Roger Dingledine
560a4a1407
switch conn->addr and conn->dir_port to reflect the final destination,
...
not the http proxy
svn:r2553
2004-10-17 04:06:48 +00:00
Nick Mathewson
6d1e1b7f46
Unify windows special-dir handling
...
svn:r2552
2004-10-17 03:38:02 +00:00
Nick Mathewson
8d27385c23
Implement RedirectExit.
...
svn:r2550
2004-10-17 01:57:34 +00:00
Roger Dingledine
5efc49600a
fix comment that makes no sense
...
svn:r2549
2004-10-16 23:18:58 +00:00
Roger Dingledine
7c3ab346f6
various tweaks and fixes
...
svn:r2548
2004-10-16 22:56:46 +00:00
Roger Dingledine
e9e9a25881
i take back everything i've said about unit tests
...
svn:r2547
2004-10-16 22:56:03 +00:00
Nick Mathewson
a1bf39f698
Code to parse (but not yet actually use) RedirectExit lines
...
svn:r2546
2004-10-16 22:37:08 +00:00
Roger Dingledine
6d873e5743
don't assert multiple things in the same tor_assert()
...
svn:r2545
2004-10-16 22:28:11 +00:00
Roger Dingledine
de65052312
don't assert multiple things in the same tor_assert()
...
svn:r2544
2004-10-16 22:14:52 +00:00
Nick Mathewson
25a046df74
Fix unit tests, make it compile
...
svn:r2543
2004-10-16 21:57:24 +00:00
Nick Mathewson
47dc024f7e
Change interface of parse_addr_port() to return address in host order, since most users seem to want that.
...
svn:r2542
2004-10-16 21:53:30 +00:00
Nick Mathewson
8300c4ae6a
Make unit tests pass; refactor most of exit policy parfsing out into new function
...
svn:r2541
2004-10-16 21:42:09 +00:00
Nick Mathewson
69d7b468b4
Refactor parse-addr-mask-and-port-range into a separate function
...
svn:r2540
2004-10-16 21:41:12 +00:00
Nick Mathewson
a42adce362
fix memory leak in router.c; start relying on NULL==(zero bytes)
...
svn:r2538
2004-10-16 20:38:57 +00:00
Nick Mathewson
f619c4603e
Add an autoconf test to make sure that memset(&ptr, 0, sizeof(ptr)) and ptr=NULL are equivalent
...
svn:r2536
2004-10-16 20:26:12 +00:00
Nick Mathewson
56a592dbe3
Fix memory leak
...
svn:r2535
2004-10-16 08:39:56 +00:00
Nick Mathewson
9d5831341e
Implement user-declared node families.
...
svn:r2534
2004-10-15 20:52:09 +00:00
Nick Mathewson
f882bd92ed
Remove unused locals
...
svn:r2533
2004-10-15 20:50:43 +00:00
Nick Mathewson
f359389866
Oops; make sure that break; and continue; work within SMARTLIST_FOREACH
...
svn:r2532
2004-10-15 20:49:31 +00:00
Nick Mathewson
99f7955372
Use the real default exit policy, not reject *:*
...
svn:r2531
2004-10-15 19:18:08 +00:00
Nick Mathewson
fa9c121343
Add a comment
...
svn:r2530
2004-10-15 19:17:36 +00:00
Nick Mathewson
28dd458eaf
Upload to trusted dir servers based on DirServer config options, not on routerinfos.
...
svn:r2529
2004-10-15 19:04:38 +00:00
Nick Mathewson
01eacbca9e
Make RecommendedVersions a CONFIG_TYPE_LINELIST option, and have it tolerate whitespace a little better.
...
svn:r2528
2004-10-15 05:09:48 +00:00
Nick Mathewson
88e0c080cf
Ignore fascistfirewall when dealing with service descriptors; obey fascistfirewall when posting server descriptors; ignore fascistfirewall on directory connections when httpproxy is set.
...
svn:r2527
2004-10-15 04:57:36 +00:00
Nick Mathewson
5e80944c52
Use token-pasting magic to make nested SMARTLIST_FOREACH work.
...
svn:r2526
2004-10-15 04:45:47 +00:00
Nick Mathewson
ff38cc06e1
Fix search-and-replace in comments: Friends->family does not imply friendship->familyhip.
...
svn:r2525
2004-10-15 03:55:53 +00:00
Nick Mathewson
2fb08fe46c
add documentation for smartlist_join_strings
...
svn:r2524
2004-10-15 03:55:02 +00:00
Nick Mathewson
7fa5d224d4
Implement "families" of coadministered nodes; prevent them all from appearing on the same circuit.
...
svn:r2523
2004-10-15 01:58:11 +00:00
Nick Mathewson
c5964d6738
Basic string-join functionality
...
svn:r2521
2004-10-14 19:51:47 +00:00
Nick Mathewson
9e8e006c1e
Update windows ver to 009pre3
...
svn:r2519
2004-10-14 15:42:13 +00:00
Nick Mathewson
0f144d6a04
fix warning on win32
...
svn:r2518
2004-10-14 15:41:41 +00:00
Roger Dingledine
56e151eb41
advertise moria2's dirport as 18.244.0.114:80
...
svn:r2511
2004-10-14 10:05:22 +00:00
Roger Dingledine
cf9664151d
bugfix on a really old bug:
...
if read() fails on a stream, send back an end cell before you
close it down.
svn:r2509
2004-10-14 09:28:31 +00:00
Roger Dingledine
572714a458
bugfix: parse_addr_port() bites us again -- it returns addr in network order.
...
svn:r2508
2004-10-14 08:45:07 +00:00
Roger Dingledine
95644480c5
better warn message for the Content-Length attack
...
svn:r2495
2004-10-14 04:50:33 +00:00
Nick Mathewson
55b811a259
Improve warnings for old-style directories.
...
svn:r2494
2004-10-14 04:31:40 +00:00
Nick Mathewson
100b10473a
fix tab/space in torgzip.h
...
svn:r2493
2004-10-14 04:31:16 +00:00
Nick Mathewson
a4ef916b8e
fix tab/space in torgzip.c
...
svn:r2492
2004-10-14 04:24:42 +00:00
Nick Mathewson
08c33f0b46
Compile without warnings on windows
...
svn:r2491
2004-10-14 04:06:24 +00:00
Nick Mathewson
bd10bf4b5b
Try to always dtrt if routerlist==NULL
...
svn:r2489
2004-10-14 03:44:45 +00:00
Roger Dingledine
89280e6c20
rename addr to address to we avoid this bug later
...
svn:r2488
2004-10-14 03:31:40 +00:00
Nick Mathewson
1c9426d6e0
Build without warnings on mac gcc 3.3
...
svn:r2487
2004-10-14 03:18:14 +00:00
Roger Dingledine
3737566465
make it build on amd64
...
svn:r2486
2004-10-14 03:13:08 +00:00
Roger Dingledine
892269bca3
reformat comment and fix typo
...
svn:r2485
2004-10-14 03:01:43 +00:00
Roger Dingledine
69830afc16
and another one
...
svn:r2484
2004-10-14 02:49:48 +00:00
Roger Dingledine
5f4a390b33
oh, and some more in common/
...
svn:r2483
2004-10-14 02:48:57 +00:00
Roger Dingledine
aebc3a03ba
more int to size_t conversions, fixing one or more amd64 bugs
...
plus a whitespace patch on config.c from vicman
svn:r2482
2004-10-14 02:47:09 +00:00
Nick Mathewson
92bb360ad7
Add missing line; add similar check
...
svn:r2481
2004-10-14 02:29:03 +00:00
Nick Mathewson
8b325c142e
Patch from "J Doe": Use SHGetSpecialFolderLocation instead of
...
SHGetSpecialFolderPath in order to find application data folder.
Apparently, until IE 4 (!?) came out, nobody realized that programmers
might like to get paths as strings. Clearly, a fancy pseudo-OO list
of "identifiers" is a far more convenient way to deal with these
things. And while we're being OO, why return object that you can free
with free()? Instead, let's make the user get a handle to an abstract
allocation object, and ask it to free the fancy list, and then ask it
to release itself. Won't that be fun and convenient?
Navigating ancient Win32 APIs is like bikini-waxing creatures from HP
Lovecraft: to do a good job you must understand what's going on... but
the understanding itself can blast your sanity.
svn:r2480
2004-10-14 02:04:43 +00:00
Nick Mathewson
0d5a847f12
Remove need for dirservers file: now, we note trusted dirservers in configuration options, and only need to remember addr:port and key digest for each one.
...
svn:r2479
2004-10-14 01:44:32 +00:00
Nick Mathewson
55634e4eec
Fix comment in dirserv.c
...
svn:r2470
2004-10-13 20:28:46 +00:00
Roger Dingledine
2b7b86f5e6
stop trying to print a NULL
...
plus make router_nickname_is_approved() more obviously unused
svn:r2469
2004-10-13 20:17:45 +00:00
Nick Mathewson
e0cce8fba8
Unify tests for "did I originate this nonopen OR connection?"
...
svn:r2468
2004-10-13 20:05:57 +00:00
Nick Mathewson
30dd1c87a5
Add default trusted-dir-server entries only when no dirserver lines are given in the config file
...
svn:r2467
2004-10-13 19:56:42 +00:00
Nick Mathewson
508970f85d
fix typo
...
svn:r2466
2004-10-13 19:55:40 +00:00
Nick Mathewson
f14117bffd
fix warning about always-false comparison; detect too-large realport better
...
svn:r2465
2004-10-13 19:53:34 +00:00
Nick Mathewson
149f57bdef
answer question about rep_hist_note_connect_failed
...
svn:r2464
2004-10-13 19:42:36 +00:00
Nick Mathewson
afd8b650ee
hex-to-hex compare makes more sense than hex-to-bin.
...
svn:r2463
2004-10-13 19:17:27 +00:00
Nick Mathewson
df3098367c
Make directories get generated properly again; debug key lookup. Also, it is hard to find entries in a table when you never put them there.
...
svn:r2462
2004-10-13 18:28:39 +00:00
Roger Dingledine
918ce7a084
a few more ints to size_ts
...
svn:r2461
2004-10-13 05:54:58 +00:00
Roger Dingledine
a1041154eb
fix const char * vs char * issue
...
plus unshadow some variables
svn:r2460
2004-10-13 04:44:37 +00:00
Nick Mathewson
9dc72de41f
Omit any exit rules that follow a catch-all rule when writing a router descriptor.
...
svn:r2459
2004-10-13 01:25:42 +00:00
Nick Mathewson
9c49947163
Check fingerprint list before generating running-routers lists; also add as-yet-uncalled function to update an OR connection nickname on the fly
...
svn:r2458
2004-10-13 01:13:37 +00:00
Roger Dingledine
fe54bd00b9
ok, vim isn't the greatest editor in the world
...
svn:r2457
2004-10-12 20:28:53 +00:00
Roger Dingledine
0b4d3c4df7
parse HttpProxy address in config
...
fix a potential confusion in fetch_from_buf_http()
make all our int config options non-negative
better bounds checking on options that are ports
svn:r2456
2004-10-12 20:22:09 +00:00
Roger Dingledine
a7d858bd6e
start the great migration from int to size_t
...
and clean some deadweight from util.h
svn:r2455
2004-10-12 20:20:19 +00:00
Nick Mathewson
7cc126e8a9
Appease overzealous gcc
...
svn:r2454
2004-10-12 20:17:45 +00:00
Nick Mathewson
f7404f6bb9
Use tor_parse_long in more places
...
svn:r2453
2004-10-12 19:33:03 +00:00
Nick Mathewson
19da1f36c2
Make a bounds-checking replacement for strtol with slightly easier error-checking in the common case
...
svn:r2452
2004-10-12 19:32:41 +00:00
Roger Dingledine
1c757b917d
fix signed/unsigned comparison, plus typo
...
svn:r2451
2004-10-12 19:09:40 +00:00
Nick Mathewson
e7241044e8
Better bounds checking on parsed ints
...
svn:r2450
2004-10-12 19:01:53 +00:00
Nick Mathewson
e8748b3fa0
Add default directory servers
...
svn:r2449
2004-10-12 19:01:28 +00:00
Nick Mathewson
f6fc2b9dd2
Add fix for remote-crash bug.
...
svn:r2447
2004-10-12 18:38:36 +00:00
Roger Dingledine
578a3e25e5
fix a signed/unsigned comparison
...
svn:r2446
2004-10-12 18:32:34 +00:00
Nick Mathewson
79636823b8
Oops, missed one
...
svn:r2445
2004-10-12 16:04:25 +00:00
Nick Mathewson
a91fc48b39
Note byte-order on result for parse_addr_port()
...
svn:r2444
2004-10-12 16:02:15 +00:00
Nick Mathewson
0068415b80
Add an implementation of trusted_dir_server logic to switch towards simply remembering an addr/port/keyid for each trusted dir server
...
svn:r2443
2004-10-12 15:55:20 +00:00
Nick Mathewson
43ef5a3e37
Add long-term format for dir-signing-key fields (commented out)
...
svn:r2442
2004-10-12 15:52:57 +00:00
Nick Mathewson
0383afac9a
Use parse_addr_port() function instead of ad-hoc variants
...
svn:r2441
2004-10-12 15:52:09 +00:00
Nick Mathewson
8b037509f3
Add functions to parse addr[:port] consistently
...
svn:r2440
2004-10-12 15:48:30 +00:00
Roger Dingledine
1efad74164
bugfix on my friday commit: make hidden services work again in cvs
...
svn:r2439
2004-10-12 06:03:10 +00:00
Roger Dingledine
24f9946db1
fix paul gardner's assert bug.
...
sometimes circuit_get_open_circ_or_launch() can return 0 but not
return a circuit, e.g. because too many circuits have failed recently
so the new one didn't launch. we need to tolerate that.
svn:r2438
2004-10-11 22:19:12 +00:00
Roger Dingledine
5c53c63aa0
Fix a potential buffer overflow found by Ilja van Sprundel.
...
We don't think this is exploitable, but best to fix it anyway.
svn:r2437
2004-10-11 21:55:19 +00:00
Roger Dingledine
7798e3d770
fix the stale pointer assert bug reported by joe magic
...
svn:r2436
2004-10-11 01:17:42 +00:00
Roger Dingledine
6468e049be
when a begin cell has an invalid port, give us a better hint of
...
what went wrong
svn:r2435
2004-10-10 01:47:24 +00:00
Roger Dingledine
1a4cb248f3
interim commit for http proxy support
...
svn:r2431
2004-10-08 05:53:59 +00:00
Roger Dingledine
2bcd0f34f5
fix compile error: move variable declarations before code
...
svn:r2430
2004-10-08 05:43:28 +00:00
Nick Mathewson
6c970aec94
Turn tor_strpartion into a swiss-army-knife function, so it can terminate or not-terminate appropriately.
...
svn:r2429
2004-10-07 21:37:06 +00:00
Nick Mathewson
c7e8c2098a
Include a dir-signing-key token in directories to tell the parsing entity which key is being used to sign. This is the first step in obsoleting the dirservers file.
...
svn:r2428
2004-10-07 21:10:40 +00:00
Nick Mathewson
7b98fb58eb
More complete docs for crypto.c; factor out string partitioning code
...
svn:r2427
2004-10-07 20:58:53 +00:00
Nick Mathewson
dad7c71686
Workaround for bug on windows where cached-directories get crlf corruption.
...
svn:r2426
2004-10-07 20:22:58 +00:00
Nick Mathewson
3be0bf4b88
Bump windows version
...
svn:r2425
2004-10-07 20:22:03 +00:00
Nick Mathewson
b7bddcac75
Windows requires a different cast uint64_t format
...
svn:r2424
2004-10-07 20:15:56 +00:00
Nick Mathewson
ce3162d035
Make base-64-encoded DER work, including workaround for ugly openssl misfeature that makes base64 decoding fail when you strip out the newlines.
...
svn:r2423
2004-10-07 03:11:42 +00:00
Nick Mathewson
2bba65148b
Refactor fingerprint handling: remember hex digests (no spaces) instead of beautified fingerprints
...
svn:r2422
2004-10-06 13:31:48 +00:00
Nick Mathewson
b08ff7b1f7
Fix a couple of typos, one of which conceals a bug in parsing opt keywords with objects
...
svn:r2421
2004-10-06 13:28:34 +00:00
Nick Mathewson
b56bb39ed6
Add a function to remove a set of characters from a string
...
svn:r2420
2004-10-06 13:26:37 +00:00
Nick Mathewson
8cca36d26a
Implement (temporarily) a base64-encoded-DER format for RSA keys; make it easier to generate fingerprints with no space
...
svn:r2419
2004-10-06 13:26:10 +00:00
Roger Dingledine
8b02610bd5
when an OR starts up, it loads its directory from cache.
...
then it serves *that directory* to others who ask for a copy of the
directory. it's better to serve no directory at all until you have a
fresh copy.
svn:r2418
2004-10-06 05:05:43 +00:00
Roger Dingledine
980b6169eb
use only 0.0.9pre1 and later servers for resolve cells
...
svn:r2416
2004-10-03 19:39:29 +00:00
Roger Dingledine
c205ad05ba
better example lines for dirbindaddress and orbindaddress
...
svn:r2415
2004-10-03 19:37:48 +00:00
Nick Mathewson
9e8ae9766e
Only check versions against downloaded directories, not cached directories.
...
svn:r2413
2004-10-03 02:37:52 +00:00
Roger Dingledine
5e74ce8d57
better warn message for failed hidserv desc fetch
...
svn:r2412
2004-10-03 00:06:47 +00:00
Roger Dingledine
3f4b544b77
use size_t rather than int for directory lengths in memory
...
this might fix a bug with amd64
svn:r2410
2004-10-01 21:02:12 +00:00
Nick Mathewson
91044765f2
Decode Content-Encoding header correctly.
...
svn:r2403
2004-10-01 04:45:14 +00:00
Roger Dingledine
eff780c815
Fix a rare assert trigger, where routerinfos for entries in our cpath
...
would expire while we're building the path.
Thanks to Eugene Armstead for pointing it out.
svn:r2402
2004-09-30 15:40:05 +00:00
Roger Dingledine
136d4e5739
prefer tor_free to free
...
plus complain more loudly when we fail to parse a dir we just fetched
svn:r2401
2004-09-29 06:52:36 +00:00
Roger Dingledine
6ed095b177
print the IP if a conn fails badly, to see if there are any trends
...
svn:r2400
2004-09-29 05:59:55 +00:00
Roger Dingledine
1c47de319e
ha ha, thought the bugs were done
...
don't stop writing the compressed directory just because you found a nul
svn:r2399
2004-09-29 05:48:25 +00:00
Roger Dingledine
a31ba30ae6
if our local cached directory is new enough, go ahead and
...
start building circuits while we're fetching a new one
svn:r2394
2004-09-28 23:27:41 +00:00
Nick Mathewson
11384b6d92
Make sure that routerlists contain only routers; give a better error message if they start with a nonrouter.
...
svn:r2393
2004-09-28 22:49:34 +00:00
Nick Mathewson
0c653e5cc7
cached-directory has a directory, not a router list
...
svn:r2392
2004-09-28 22:43:11 +00:00
Roger Dingledine
4b3001a08c
fix some local buffer overflows
...
fix a memory leak
svn:r2391
2004-09-28 22:38:21 +00:00
Nick Mathewson
7eff786e4b
Fix messages for _UNRECOGNIZED tokens
...
svn:r2390
2004-09-28 22:35:02 +00:00
Nick Mathewson
d20d10f360
If we are an authoritative dirserver, check out the fingerprint list when setting connection nicknames
...
svn:r2389
2004-09-28 22:24:56 +00:00
Roger Dingledine
d381aa4696
Fix an evil bug: when we failed to write to our log, fputs()
...
gave us a sigpipe, and we logged that we were ignoring it,
causing us to fail to log that, and delete the log entry. Then
when the signal handler exited, we proceeded to delete the log
entry that had already been deleted.
Now we make sure to only log inside our signal handler if we'll
be exit()ing right after.
svn:r2388
2004-09-28 21:14:40 +00:00
Roger Dingledine
1e3b9e7d31
make the warn message better for reading short files
...
svn:r2385
2004-09-28 08:40:03 +00:00
Roger Dingledine
0d2f9b9b4b
the tor clients in cvs can't speak to the current tor authdirservers for
...
rendezvous publishes and fetches, since they're still running 0.0.8. so
make them speak the old way until we've upgraded the authdirservers.
svn:r2384
2004-09-28 03:30:28 +00:00
Roger Dingledine
9f9f0e5edd
fix another bug with cached compressed directories
...
still not working
svn:r2383
2004-09-27 07:28:48 +00:00
Roger Dingledine
d0edf8e8b5
fix two bugs with cached directories:
...
- don't complain that you won't cache it, then cache it anyway.
- change confusing terminology from 'deflate' to 'compress', so
we'll stop getting our logic backwards. i assume the rfc author
has shot himself by now.
svn:r2382
2004-09-27 06:57:16 +00:00
Roger Dingledine
6e7e880438
put my fenceposts back in valid memory space
...
svn:r2381
2004-09-27 06:45:32 +00:00
Roger Dingledine
a2517b4f07
checking only 0.0.7 and 0.0.8 didn't work, because some dirservers
...
files have really old descriptors for the authdirservers, so we're
asking them in the new format because they're too old.
now we actually compare the version to a cutoff version, and act
appropriately.
also take this chance to use only >=0.0.8 servers for dns resolves,
because of the recent bugs. we'll bump to >=0.0.9pre1 once there are
some servers running that.
svn:r2380
2004-09-27 06:00:43 +00:00
Roger Dingledine
a64d093339
post descriptors to 0.0.8 authdirservers the old way, to make the
...
transition easier
svn:r2379
2004-09-27 03:50:58 +00:00
Roger Dingledine
10df7d9afc
clients ask 0.0.9-and-later dirservers for a compressed dir
...
dirservers rewrite url /foo/ to /tor/foo/, which will help us run things
behind apache once 0.0.8 is obsolete
svn:r2378
2004-09-27 03:39:30 +00:00
Nick Mathewson
09586ef712
Make read_all distinguish between error and EOF; read_file_to_string should only check bytes read against st_size when in binary mode.
...
svn:r2375
2004-09-26 16:51:31 +00:00
Roger Dingledine
57d7857def
don't mind empty exit policy entries
...
svn:r2373
2004-09-23 22:57:32 +00:00
Roger Dingledine
fa0a1ec49f
cleanup: use strcmpstart() in more places
...
svn:r2372
2004-09-23 22:18:50 +00:00
Roger Dingledine
09f450104a
don't imply to people that they should store their hidden service
...
keys in /tmp
svn:r2371
2004-09-23 20:50:27 +00:00
Roger Dingledine
185b9fddf2
protect dirservers from overzealous descriptor uploading
...
wait 10 seconds after directory gets dirty, before regenerating
svn:r2370
2004-09-23 19:58:44 +00:00
Roger Dingledine
02e3e3327c
discourage people from setting their dirfetchpostperiod more often
...
than once per minute
svn:r2369
2004-09-23 19:23:32 +00:00
Roger Dingledine
8385fdb590
make our tor_assert actually work when it's going to be triggered,
...
rather than seg fault
svn:r2368
2004-09-23 05:02:51 +00:00
Roger Dingledine
a1979800ab
bugfix on the bugfix
...
actually unlink the log entry.
ok, that wasn't cleverly hidden enough. let's try again.
svn:r2367
2004-09-23 04:59:02 +00:00
Roger Dingledine
8727a28119
bugfix: we were starting to daemonize before we opened our logs,
...
so if there were any problems opening logs, we would complain to
stderr (which wouldn't work) and then mysteriously exit.
svn:r2366
2004-09-23 04:32:43 +00:00
Roger Dingledine
f753f6f0e2
bugfix: when we run out of disk space, or other log writing error,
...
don't crash. just stop logging to that log and continue.
nick, can you find the bug i've cleverly hidden in this commit?
svn:r2365
2004-09-23 03:51:45 +00:00
Roger Dingledine
c0db9fa803
fix confusing cut-n-paste mistake
...
svn:r2364
2004-09-22 04:08:05 +00:00
Roger Dingledine
013104a1e2
people are starting to bump into the limit of 50 dns workers.
...
raise it to 100 for now. we need a better solution long-term.
but alas, there are no better solutions that are also portable.
hm.
svn:r2363
2004-09-22 03:56:41 +00:00
Nick Mathewson
9defe8a307
Attach dummy resolve connections to a circuit *before* calling dns_resolve(). This fixes a bug where cached answers would never be sent in RESOLVED cells.
...
svn:r2360
2004-09-21 18:12:12 +00:00
Nick Mathewson
c20b24c952
clean up/bugfix deflate logic and log messages
...
svn:r2359
2004-09-21 18:09:38 +00:00
Roger Dingledine
d977677aa8
bugfix: when a resolve fails for a begin request, actually send
...
the end cell back. also, give a better reason for failure.
svn:r2358
2004-09-21 17:33:05 +00:00
Roger Dingledine
ff622786f1
slightly better warn message
...
svn:r2357
2004-09-21 17:14:47 +00:00
Nick Mathewson
431b33a2ca
Warn the user when we mark ourself as down.
...
svn:r2356
2004-09-21 16:44:20 +00:00
Nick Mathewson
0dcc8c7048
Bugfix: When a dns request failed, we would detach any "resolving" streams from the circuit before we would send a the resolve_failed cells.
...
svn:r2355
2004-09-21 16:42:07 +00:00
Nick Mathewson
93f085c4a2
Stop using openssl functions that rely on stdio; they can apparently lead to linker grief on win32.
...
svn:r2354
2004-09-21 04:55:43 +00:00
Roger Dingledine
802b203ff1
fix a rare seg fault for people running hidden services on
...
intermittent connections
svn:r2353
2004-09-20 03:07:11 +00:00
Roger Dingledine
eade496dcd
JI hates people who say "IP" when they mean "IP address"
...
svn:r2352
2004-09-12 15:07:14 +00:00
Roger Dingledine
959199340a
don't pick administrative-friends when picking your path
...
(just a skeleton for now)
svn:r2349
2004-09-10 21:40:29 +00:00
Roger Dingledine
8954cd91ce
LOG_ERR is for when we're going to exit
...
svn:r2348
2004-09-10 21:39:53 +00:00
Roger Dingledine
a475ccf5b8
we should exit(1) if $HOME doesn't exist and we needed it
...
svn:r2344
2004-09-10 19:16:01 +00:00
Nick Mathewson
8ab26650ee
Fix documentation about how not to be an OP
...
svn:r2342
2004-09-10 18:54:21 +00:00
Nick Mathewson
0ef85f6dba
Some platforms have weird translations when you open files in "test" mode; make read/write_str_to_file aware.
...
svn:r2336
2004-09-08 07:16:34 +00:00
Nick Mathewson
c66e4c4870
Flush more changes from sandbox
...
- make clients cache directories and use them to seed their router lists
at startup. This means clients have a datadir again.
- Introduce a global_write_bucket. We need to respond better to exhausting
it.
- Remove the last vestiges of LinkPadding and TrafficShaping.
- Configuration infrastructure support for warning on obsolete options.
- Refactor directory header parsing to use smartlist_split_string.
- Respond to content-encoding headers by trying to uncompress as appropriate.
- Reply with a deflated directory when a client asks for "dir.z".
(We could use allow-encodings instead, but allow-encodings isn't
specified in HTTP 1.0.)
svn:r2335
2004-09-08 06:52:33 +00:00
Nick Mathewson
b6798866d0
Idiot-proof uncompress; make sure it always nul-terminates its output. Also, make all compression methods nonzero.
...
svn:r2334
2004-09-08 06:47:33 +00:00
Nick Mathewson
9836ccda8c
Move a paren 4 characters to the left; fix a bug in OutboundBindAddress
...
svn:r2330
2004-09-02 23:25:23 +00:00
Nick Mathewson
ecf414f05e
Stop using separate defaults for no-config-file and empty-config-file
...
svn:r2329
2004-09-02 22:08:36 +00:00