Commit Graph

1321 Commits

Author SHA1 Message Date
Nick Mathewson 4c6450c1b6 Check directory signatures based on name of signer, not on whom we got the directory from.
svn:r1940
2004-06-02 20:00:57 +00:00
Roger Dingledine 076525a331 crank up some of our constants, for better scalability
svn:r1938
2004-06-02 19:44:41 +00:00
Roger Dingledine 861d05cc93 define FD_SETSIZE in all cases, not just win32
svn:r1937
2004-06-02 19:44:23 +00:00
Nick Mathewson 86e5611a28 Stop multiplying logs on sighup.
svn:r1936
2004-06-02 19:18:37 +00:00
Roger Dingledine 9e18bbd8d1 be sure to detach streams from the circuit linked list before freeing them
also, don't bother marking a conn for close if you're about to free it


svn:r1935
2004-06-02 18:32:24 +00:00
Nick Mathewson 12d57b7b0e Only connection_dns_remove resolving exit connections
svn:r1934
2004-06-02 18:12:49 +00:00
Roger Dingledine 7be60fd61e bugfix: while closing a circuit, we were freeing the conns that were
pending resolve, but not removing them from the pending resolve list


svn:r1933
2004-06-02 18:11:28 +00:00
Nick Mathewson 8422be69f9 Add more asserts to dns-pending connections; fix a couple seeming bugs.
svn:r1931
2004-06-01 22:09:58 +00:00
Nick Mathewson e3137e0c4f Check recommended-software string *early*, before actually parsing the directory.
svn:r1930
2004-06-01 18:19:01 +00:00
Roger Dingledine 7287bb83c0 declare the epipe bug a non-bug.
now we catch and ignore epipe signals, and when write returns epipe,
we simply return -1 and close the socket/connection.


svn:r1928
2004-06-01 17:31:13 +00:00
Roger Dingledine 7c372c5beb use sys/param.h if it's there
svn:r1927
2004-06-01 17:03:01 +00:00
Roger Dingledine 9f411fa303 put a comment reminding us that we do hashes in software only
svn:r1925
2004-06-01 16:36:56 +00:00
Roger Dingledine 31a9a14356 bugfix: if the wedged dir conn has no bytes to flush, then we never
close it.


svn:r1924
2004-05-28 17:56:17 +00:00
Roger Dingledine b00257a28b dirservers try to reconnect periodically too, in case connections have failed
svn:r1922
2004-05-28 15:01:47 +00:00
Roger Dingledine de73123d57 rik's patch to not complain about freebsd's bug
svn:r1921
2004-05-26 20:27:54 +00:00
Nick Mathewson 3aa6956389 Keep temporary log in place while configuring logs
svn:r1919
2004-05-24 02:28:15 +00:00
Roger Dingledine 12e59bb82a commit two fixes from Thomas Themel
svn:r1918
2004-05-22 18:05:20 +00:00
Roger Dingledine 2477059198 it looks like parse_log_level() was never taught about WARN?
svn:r1917
2004-05-21 12:38:52 +00:00
Roger Dingledine 25b20e4cf9 minor comment patch
svn:r1916
2004-05-21 12:30:07 +00:00
Roger Dingledine f77e558548 when the dns resolve is cancelled, or fails, be sure to remove
conn from circ->resolving_streams

otherwise it gets freed and stays there, causing seg faults.


svn:r1915
2004-05-21 12:25:15 +00:00
Roger Dingledine 8b4f0bb0e4 a few instructions for hidden services
svn:r1914
2004-05-20 22:41:06 +00:00
Roger Dingledine 92a7a4be9c fix a double mark-for-close
svn:r1913
2004-05-20 22:39:01 +00:00
Nick Mathewson 0106ebd26e Tinker with log behavior: never send error messages about logs into the bitbucket
svn:r1912
2004-05-20 19:47:28 +00:00
Roger Dingledine 97f7e9a022 router_choose_random_node() was ignoring its routerlist argument.
so now we don't pass it one.


svn:r1911
2004-05-20 19:12:28 +00:00
Roger Dingledine 60cf749227 some more patching
svn:r1910
2004-05-20 08:41:54 +00:00
Roger Dingledine 343892a676 bugfix: if no loglevel or logfile is specified, then we need to open
a default log to stdout.


svn:r1909
2004-05-20 08:15:28 +00:00
Roger Dingledine 89db26aec7 don't ever expire dirserver routerinfos!
svn:r1908
2004-05-20 06:42:38 +00:00
Roger Dingledine 8f75756a79 non-dirservers expire routerinfo's that are more than a day old
svn:r1907
2004-05-20 05:10:30 +00:00
Roger Dingledine 67ff39fd86 enable checking the socks policy
svn:r1906
2004-05-20 04:16:43 +00:00
Nick Mathewson 9a0bd39e5d Allow multiple exit policy lines; mostly add support for AP policies
svn:r1905
2004-05-20 02:42:50 +00:00
Nick Mathewson 2b6605ac99 Tighten assert_cpath_layer_ok assumptions
svn:r1904
2004-05-19 23:51:39 +00:00
Roger Dingledine df42d16855 do all the heavy lifting in connection_about_to_close_connection,
not in _connection_mark_for_close

this will hopefully clean up the huge cyclical function mess


svn:r1903
2004-05-19 23:32:20 +00:00
Nick Mathewson bb29431da2 tor_assert, not assert. stdout, not stderr
svn:r1902
2004-05-19 21:40:44 +00:00
Nick Mathewson d66ffc4d1e Add Port to *bindAddress.
svn:r1901
2004-05-19 20:25:44 +00:00
Nick Mathewson 5aa7e662e7 Allow multiple logfiles at different severity ranges
svn:r1899
2004-05-19 20:07:08 +00:00
Roger Dingledine ca39626dd4 fix compile error in dirserv
(declare variables before the rest of the function)


svn:r1896
2004-05-19 19:42:50 +00:00
Nick Mathewson cca7106756 Fix segfault
svn:r1895
2004-05-19 19:28:24 +00:00
Nick Mathewson 2946a6a2af remove upper limit on number of descriptors/directories in dirserver; use smartlists instead of arrays
svn:r1894
2004-05-18 17:41:40 +00:00
Roger Dingledine 1341b3e7c7 fix a seg fault, add another XXX for nick ;)
svn:r1892
2004-05-18 16:54:04 +00:00
Nick Mathewson d9066b67ff Resolve some XXXs
svn:r1889
2004-05-18 15:35:21 +00:00
Nick Mathewson 2256c241ba Only try to launch a fixed number of intro circuits for a service per 15-minute period or before all of the intro circuits succeed, whichever comes first
svn:r1883
2004-05-18 01:53:53 +00:00
Nick Mathewson 7b15c60156 Fix segfault and logic error in last patch.
svn:r1881
2004-05-17 20:41:40 +00:00
Nick Mathewson dc74f686ad Make directory functions update routerlist, not replace it. Add notion of OR-is-trusted-to-be-a-dirserver. Arma, please review: does this handle being a dirserver right?
svn:r1880
2004-05-17 20:31:01 +00:00
Roger Dingledine 94a24f1a55 bugfix: our integrity-checking digest was checking only the most
recent cell, not the previous cells like we'd thought.

this change is backward incompatible.


svn:r1868
2004-05-15 23:49:41 +00:00
Roger Dingledine 048350d908 bugfix: if a circuit if borderline too old, then count it as too old.
bugfix: we were retrying the same circuit after getting a resolve
failure. so of course the next two tries would fail too. now we try
a new circuit each time (at most three times).


svn:r1867
2004-05-15 07:21:25 +00:00
Roger Dingledine e4ad204f2e having two example exitpolicy lines, when only one is allowed, was confusing
svn:r1865
2004-05-13 22:38:16 +00:00
Roger Dingledine 3c3326749b assert_cpath_ok has always been broken
re-disable it.


svn:r1864
2004-05-13 07:44:21 +00:00
Roger Dingledine c1f419725e Break files apart into more modules
* \file circuitbuild.c
 * \brief The actual details of building circuits.

 * \file circuitlist.c
 * \brief Manage the global circuit list.

 * \file circuituse.c
 * \brief Launch the right sort of circuits, attach streams to them.

 * \file connection_edge.c
 * \brief Handle edge streams.

 * \file onion.c
 * \brief Functions to queue create cells, and handle onionskin
 * parsing and creation.

 * \file relay.c
 * \brief Handle relay cell encryption/decryption, plus packaging and
 * receiving from circuits.


svn:r1863
2004-05-13 07:24:49 +00:00
Roger Dingledine 60f0f845e8 clean up directory.c API
svn:r1860
2004-05-12 23:48:57 +00:00
Roger Dingledine 2b3e905c82 don't flush the buf from inside connection_write_to_buf
svn:r1859
2004-05-12 22:56:26 +00:00