Commit Graph

71 Commits

Author SHA1 Message Date
Roger Dingledine a1fe2f2c91 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 27b956f8c5 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
Roger Dingledine 4a69d89a5f 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
Roger Dingledine 9c47654094 tolerate old 0.0.7 clients that demand a certain ip:port for a router
even though it's moved on to another one.

also reduce some log verbosity.


svn:r2288
2004-08-18 11:20:15 +00:00
Roger Dingledine 7cc085787d when we get a sigint, don't accept new connections/circuits,
but delay 30 seconds until exiting.
if we get a second sigint, exit immediately.


svn:r2070
2004-07-20 23:31:00 +00:00
Roger Dingledine 60f0f845e8 clean up directory.c API
svn:r1860
2004-05-12 23:48:57 +00:00
Roger Dingledine da13aba0af list in-points to command.c
svn:r1849
2004-05-11 03:21:18 +00:00
Roger Dingledine 19cbd81916 it's amazing what a bit of punctuation can do for appearances
svn:r1843
2004-05-10 10:27:54 +00:00
Roger Dingledine bce5329510 more doxygen markup
plenty more remains


svn:r1824
2004-05-09 16:47:25 +00:00
Roger Dingledine d64195e310 comment the functions in command.c
this is one of the files nick regarded as scary, so hopefully
these will help.


svn:r1817
2004-05-07 08:07:41 +00:00
Roger Dingledine e779388eb9 since we don't support truncateds much, don't bother sending them;
just close the circ.

(this wasn't relevant before, because we were mis-handling destroys.)


svn:r1711
2004-04-26 04:32:01 +00:00
Nick Mathewson 1ce0b58715 Better error msg on unknown circuit id.
svn:r1708
2004-04-26 03:00:33 +00:00
Roger Dingledine ba0c5a7204 compress end-of-second summary into one line
svn:r1635
2004-04-15 22:09:14 +00:00
Nick Mathewson ccc5db36fc Use CIRCUIT_IS_ORIGIN in favor of boolean circ->cpath
svn:r1555
2004-04-08 02:24:06 +00:00
Roger Dingledine 48d8b88676 make rend apconn send to the right cpath layer
and fix circuit_log_path to know about rend circs


svn:r1496
2004-04-05 22:01:35 +00:00
Nick Mathewson 56cfd8299e refactor; start adding debugging logs to midpoint rend stuff
svn:r1445
2004-04-02 23:30:54 +00:00
Nick Mathewson fdf2689c75 Add rendezvous-related metadata and code to circuits. Initially, we
thought that a complicated adjunct structure would be necessary, but
it doesn't look that way anymore.

Of course, I might have forgotten something.


svn:r1396
2004-03-30 19:52:42 +00:00
Nick Mathewson 1c8e401ff9 Split out mark_for_close with circuits. Seems to work for me.
svn:r1197
2004-03-02 17:48:17 +00:00
Roger Dingledine d25192e3de clean up some log messages and severities
still plenty more left to clean


svn:r1158
2004-02-28 07:01:22 +00:00
Roger Dingledine f3f1645c8a checkpoint: revamp relay cell packaging and handling
include the infrastructure for inserting padding cells when there's
a relay-recognized conflict, but it does not work currently.


svn:r958
2003-12-23 07:45:31 +00:00
Roger Dingledine 987afaafc1 remove trailing whitespace
svn:r951
2003-12-17 21:09:31 +00:00
Roger Dingledine a55379fb96 move cell size to 512 bytes
move length to 2 bytes, put it in the relay header
remove 4 reserved bytes in cell
add 4 bytes to relay header for the integrity check


svn:r942
2003-12-16 09:48:17 +00:00
Roger Dingledine dc5421f83f add H(K|1) to the onionskin reply
verify it at the client end
abstract the onionskin handshake lengths

breaks backward compatibility (again)


svn:r941
2003-12-16 08:21:58 +00:00
Roger Dingledine f09b3451ee don't build too many circs at once
expire circs that have been building for too long


svn:r835
2003-11-18 07:48:00 +00:00
Roger Dingledine 1399f23551 bugfix: if you recognize a relay cell, don't also pass it on.
svn:r816
2003-11-16 17:31:19 +00:00
Nick Mathewson d6e599c27f Rename aci to circ_id throughout.
svn:r784
2003-11-11 03:01:48 +00:00
Roger Dingledine bd532a6465 change WARNING to WARN
and fix a few typos


svn:r571
2003-10-10 01:48:32 +00:00
Nick Mathewson f7d154cda9 Update LICENSE and copyright dates.
svn:r560
2003-10-08 02:04:08 +00:00
Roger Dingledine 5645a806b9 refactor around connection_edge_send_command()
svn:r539
2003-10-04 08:19:23 +00:00
Roger Dingledine cca7daecb2 wrap strdup; prefer time() to gettimeofday()
svn:r538
2003-10-04 03:29:09 +00:00
Nick Mathewson 9ec7e7d7b1 Add new cell fullness and bandwidth stats.
svn:r533
2003-10-02 20:00:38 +00:00
Roger Dingledine 0b71e22e63 bugfixes and features: closer to making dirserv work
fix a variety of seg faults
don't try to list OPs in running-routers
write cached-directory to disk when rebuilding the dir
on boot, dirservers load approved-routers file
on boot, dirservers load cached directory file


svn:r508
2003-09-29 23:14:49 +00:00
Roger Dingledine ac791f2077 clean up receiver buckets; prepare for payloads in relay_end; note a few bugs
svn:r502
2003-09-27 21:09:56 +00:00
Roger Dingledine 457a1543c0 first pass: obey log convention
ERR is if something fatal just happened

WARNING is something bad happened, but we're still running. The bad thing
is either a bug in the code, an attack or buggy protocol/implementation
of the remote peer, etc. The operator should examine the bad thing and
try to correct it.
(No error or warning messages should be expected. I expect most people
to run on -l warning eventually.)

NOTICE is never ever used.

INFO means something happened (maybe bad, maybe ok), but there's nothing
you need to (or can) do about it.

DEBUG is for everything louder than INFO.


svn:r486
2003-09-26 10:03:50 +00:00
Roger Dingledine 3d2320a9c3 clean up exported api's
svn:r461
2003-09-16 05:41:49 +00:00
Roger Dingledine c8d378d334 implemented cpuworkers
please poke at it and report bugs

still needs polishing, and only handles onions now (should handle
OR handshakes too)


svn:r402
2003-08-20 23:05:22 +00:00
Nick Mathewson f8d431d801 Change many files to new log_fn format
svn:r333
2003-06-17 22:18:26 +00:00
Roger Dingledine d956807b57 relay queues are obsolete (woo!)
they used to be used for
* queueing relay cells at the edge of the network, when windows are empty
* queueing relay cells that arrive after an onion but before the onion
  has been processed.
both of these uses are gone. so out they go.


svn:r315
2003-06-13 09:59:33 +00:00
Roger Dingledine a995978e07 send truncates AP-ward in a circuit, not destroys
svn:r313
2003-06-13 09:20:23 +00:00
Roger Dingledine f174773878 implement truncate and truncated (untested)
clean up circuit_deliver_relay_cell convention


svn:r312
2003-06-12 10:16:33 +00:00
Roger Dingledine 84f6b720bf remove dead code
circuits no longer queue more cells when the windows are empty --
they simply don't package it from the buffer if they're not going to want it.

we can restore this code later if we need to resume queueing.


svn:r294
2003-05-20 06:53:10 +00:00
Roger Dingledine 94ad9f4915 add circuit-level sendme relay cells
remove sendme cells
replace malloc with tor_malloc
patch (but not track down) bug in onion pending list
streamline connection_ap handshake


svn:r293
2003-05-20 06:41:23 +00:00
Roger Dingledine adcd601777 sign directories with the signing key
svn:r274
2003-05-07 22:40:03 +00:00
Roger Dingledine 104c0579e6 put some symbolic constants to the onion skin lengths
svn:r265
2003-05-06 05:54:42 +00:00
Roger Dingledine efa66fa642 incremental path building in; uses ephemeral DH; onions are gone
still need to change circuit-level sendmes


svn:r264
2003-05-05 23:24:46 +00:00
Roger Dingledine 44e6f60cec streams are now 8 bytes, and are recognized by intermediate hops
the OP only crypts the appropriate number of times depending on which
layer (hop on the path) it's for/from.


svn:r262
2003-05-02 21:29:25 +00:00
Roger Dingledine 3bb5bd96f1 terminology shift: data->relay, topic->relay, topic->stream
svn:r258
2003-05-01 06:42:29 +00:00
Roger Dingledine 81ab0c3988 bugfix: a circ can't be youngest if it's still connecting to the first hop
svn:r255
2003-04-20 21:56:44 +00:00
Roger Dingledine 11eee85576 bugfix: refactor to always use circuit_remove
this way we can always check if a new circ needs to be launched


svn:r254
2003-04-20 19:47:33 +00:00
Roger Dingledine 80fa9e3079 further cleanup, test.c still has some bugs
svn:r241
2003-04-16 23:21:44 +00:00