Nick Mathewson
49f082fcee
Fix a bug where we'd sometimes run off the end of an array while
...
testing stream encryption.
svn:r339
2003-06-20 08:17:25 +00:00
Roger Dingledine
8d4cd5d604
remove obsolete ss.h
...
svn:r336
2003-06-18 07:42:13 +00:00
Roger Dingledine
a270a93da0
question for nick about daemonizing
...
svn:r334
2003-06-18 05:52:32 +00:00
Nick Mathewson
95e5384af3
Change many files to new log_fn format
...
svn:r333
2003-06-17 22:18:26 +00:00
Nick Mathewson
b9480620c6
Make log_fn work on apples with no workarounds needed in main code
...
svn:r330
2003-06-17 21:15:25 +00:00
Nick Mathewson
df2789c111
Make sure crypt_seed_rng succeeds
...
svn:r329
2003-06-17 20:19:54 +00:00
Roger Dingledine
05a8c264ff
overhaul the dns farm: cut its size in half
...
i've eliminated the master dns process, so now the workers just
act like regular connections and are handled by the normal pollarray.
everything seems to still work. ;)
svn:r327
2003-06-17 14:31:05 +00:00
Nick Mathewson
3b5dc72648
Dont test handshakes in an infinite loop
...
svn:r324
2003-06-14 01:39:23 +00:00
Nick Mathewson
debfe65faf
When debugging, dump key material
...
svn:r323
2003-06-14 01:34:39 +00:00
Nick Mathewson
9182537238
Fix the periodic bug that would make handshaking fail.
...
The culprit: sometimes DH_calculate_key returns less than DH_KEY_LEN bytes;
we needed to check the return value.
svn:r322
2003-06-14 01:30:53 +00:00
Nick Mathewson
9af577fee3
Do not use pseudorandom nonces
...
svn:r321
2003-06-14 01:29:16 +00:00
Nick Mathewson
71b158bf2f
Fix MacOS build
...
svn:r320
2003-06-14 01:28:25 +00:00
Nick Mathewson
6250b90ac2
Better test messages for onion skin bug
...
svn:r319
2003-06-13 21:23:14 +00:00
Nick Mathewson
d21c0feb5a
Add RNG seeding
...
svn:r318
2003-06-13 21:13:37 +00:00
Roger Dingledine
cbe7be1f78
remove on-the-fly compression feature
...
it wasn't working, and it was harder than we'd anticipated
not worth it.
svn:r316
2003-06-13 10:23:42 +00:00
Roger Dingledine
9a33b59ece
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
1454f4aded
improve portability: inet_aton is missing on solaris
...
svn:r314
2003-06-13 09:25:55 +00:00
Roger Dingledine
030564e95d
send truncates AP-ward in a circuit, not destroys
...
svn:r313
2003-06-13 09:20:23 +00:00
Roger Dingledine
d3292e484a
implement truncate and truncated (untested)
...
clean up circuit_deliver_relay_cell convention
svn:r312
2003-06-12 10:16:33 +00:00
Nick Mathewson
d3592af042
Answer question about eliminating symmetric encryption from onion skins
...
svn:r304
2003-06-02 02:18:16 +00:00
Roger Dingledine
dfa64b61ed
bugfix: it was expiring circuits that still had active connections
...
svn:r303
2003-06-01 02:09:36 +00:00
Roger Dingledine
54c57def0b
fix (harmless) bug
...
svn:r299
2003-05-28 06:19:58 +00:00
Roger Dingledine
fa1d446440
OPport is gone. So is conn type OP.
...
svn:r298
2003-05-28 02:03:25 +00:00
Roger Dingledine
2d296afc42
bugfix
...
svn:r297
2003-05-28 00:13:42 +00:00
Roger Dingledine
091e1c0167
fix design bug: circ->n_conn is shared among circs, so it can't
...
point to the streams for this circ.
svn:r296
2003-05-27 23:39:04 +00:00
Roger Dingledine
aca6196da9
correct the comments, plus a question for nick
...
svn:r295
2003-05-26 06:03:16 +00:00
Roger Dingledine
1c6def292b
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
39e9d79038
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
Nick Mathewson
0957ffeb83
work on versioning; new log_fn function
...
svn:r288
2003-05-09 02:25:37 +00:00
Roger Dingledine
9f38ba196c
make router_dump_token only for debugging; clean backslashes
...
svn:r287
2003-05-09 02:20:16 +00:00
Roger Dingledine
649fbceaa1
removed obsolete version.h
...
svn:r285
2003-05-09 02:12:52 +00:00
Nick Mathewson
9ef930f21a
Routerinfos are no longer linked
...
svn:r283
2003-05-09 02:00:33 +00:00
Nick Mathewson
c2e7b5ec3f
We cant recognize ourself until we resolve all the routers.
...
svn:r282
2003-05-09 01:24:44 +00:00
Nick Mathewson
52604afd62
more debugging on build_directory
...
svn:r281
2003-05-09 01:11:56 +00:00
Nick Mathewson
54a58c897c
more debugging on build_directory
...
svn:r280
2003-05-09 01:10:57 +00:00
Nick Mathewson
39314a13b0
Thats the letter I and the number 2. (Apologies to Negativland)
...
svn:r279
2003-05-09 01:04:58 +00:00
Nick Mathewson
22df330f14
Get directories working.
...
Or at least, directories get generated, signed, download, and checked, with
nobody seeming to crash.
In config/*, added 'signing-key' blocks to dirservers and routers.or, so
that everyone will know about the directories' signing keys.
In or/directory.c, refrained from using a dirserver's signing key when
no such key is known; added more debugging output.
In or/main.c, added debugging output and fixed a few logic errors.
In or/routers.c, added debugging output and prevented a segfault on
routers_resolve_directory. The interleaving of arrays and lists on
routerinfo_t is still messy, but at least it seems to work again.
svn:r278
2003-05-08 21:35:11 +00:00
Nick Mathewson
1d1f46e40d
(possibly incorrect) code to make routers get resolved when they're
...
inserted into the directory.
Roger: If you can answer the question with your name on it, you may
prevent a segfault before it happens. :)
svn:r277
2003-05-08 12:32:30 +00:00
Nick Mathewson
c3998e94f9
Call the right signed-directory functions; try to describe the difference between everything; remove some unused interfaces
...
svn:r276
2003-05-08 03:36:53 +00:00
Roger Dingledine
2c7e660c62
sign directories with the signing key
...
svn:r274
2003-05-07 22:40:03 +00:00
Roger Dingledine
0f17d09066
hints for nick on where to integrate
...
svn:r273
2003-05-07 21:42:17 +00:00
Nick Mathewson
b58939745e
Do not replace old directory if new one is invalid
...
svn:r272
2003-05-07 18:39:44 +00:00
Nick Mathewson
afc0eb2c71
Tested backends for directory signing and checking. Directory parser completely refactored. Need documentation and integration. Explanitory mail forthcoming.
...
svn:r271
2003-05-07 18:30:46 +00:00
Roger Dingledine
bbddd50082
fix double-semicolon parse error
...
svn:r270
2003-05-07 03:32:18 +00:00
Nick Mathewson
445cd8f0f1
Decrease DH group length to 1024. (Roger, you may want to read section 1 of the IETF draft: a 1024-bit DH key probably reduces our cipher strength to ~80 bits.)
...
svn:r269
2003-05-07 02:28:42 +00:00
Nick Mathewson
d0ff485e1b
More work on directories. Signed directories not yet tested. No support for checking sigs yet
...
svn:r268
2003-05-07 02:13:23 +00:00
Nick Mathewson
fcf7bfe290
Refactor directories; add unit tests; add router keyword
...
svn:r266
2003-05-06 17:38:16 +00:00
Roger Dingledine
03ed54e920
put some symbolic constants to the onion skin lengths
...
svn:r265
2003-05-06 05:54:42 +00:00
Roger Dingledine
d7f50337c1
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
Nick Mathewson
44b4efe34d
Tests, headers, and debugging for onion skin backend
...
svn:r263
2003-05-05 04:27:00 +00:00
Roger Dingledine
96759a609e
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
bb75b14218
remove obsolete test code
...
svn:r261
2003-05-01 23:22:35 +00:00
Roger Dingledine
8a94dd60af
cpath is now a doubly linked list, not an array
...
svn:r260
2003-05-01 22:55:51 +00:00
Nick Mathewson
1eeb3f65fc
Implement core of onion-skin-based handshake
...
svn:r259
2003-05-01 19:42:51 +00:00
Roger Dingledine
0560008497
terminology shift: data->relay, topic->relay, topic->stream
...
svn:r258
2003-05-01 06:42:29 +00:00
Nick Mathewson
6af79f3a03
Basic diffie-helman wrappers with fixed modulus and tests
...
svn:r257
2003-05-01 00:53:46 +00:00
Roger Dingledine
59e70bcae6
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
f54186aa91
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
ffae44aafd
bugfix: don't segfault if there's no valid circuit open
...
svn:r253
2003-04-19 00:24:17 +00:00
Roger Dingledine
10902028e0
bugfix: only close old circuits if they have no connections!
...
svn:r251
2003-04-18 18:47:49 +00:00
Nick Mathewson
5c514620fc
Adjust straggling users of payload field
...
svn:r250
2003-04-17 17:25:32 +00:00
Nick Mathewson
32a3e704b4
Choose correct abstraction for topic_foo. Abstract random-integer code
...
svn:r249
2003-04-17 17:10:41 +00:00
Nick Mathewson
fdf4d4aa85
Use cell.topic* fields in ap_handshake_send_begin
...
svn:r248
2003-04-17 16:46:44 +00:00
Nick Mathewson
6fd4f2a17f
Rebuild or and test binaries when a libor.a changes but or/*.c does not.
...
svn:r247
2003-04-17 02:24:55 +00:00
Nick Mathewson
0a9e83369a
17 does not divide 1024, but it can stomp some interesting pointers and segfault the test suite
...
svn:r244
2003-04-17 01:56:06 +00:00
Roger Dingledine
f39ca8a3aa
further cleanup, test.c still has some bugs
...
svn:r241
2003-04-16 23:21:44 +00:00
Nick Mathewson
97d847b9e3
Factor out cell packing and unpacking
...
svn:r240
2003-04-16 17:44:33 +00:00
Nick Mathewson
1bbea670bc
Remove the last vestige of code that claims to know the inner structure of an onion on the network
...
svn:r239
2003-04-16 17:11:56 +00:00
Roger Dingledine
05b52ad868
bugfix: make onions work again
...
svn:r238
2003-04-16 17:07:46 +00:00
Nick Mathewson
33176c70a5
Factor out timeval-related functions.
...
svn:r237
2003-04-16 17:04:58 +00:00
Nick Mathewson
0c61bc3756
Remove the notion of "onion ciphers"; make packing and unpacking separate fns
...
svn:r236
2003-04-16 16:19:27 +00:00
Roger Dingledine
54af75b1b4
add missing prototype
...
svn:r235
2003-04-16 16:17:27 +00:00
Nick Mathewson
acc33c18e2
Tests for crypto; more tests for buffers
...
svn:r234
2003-04-16 15:24:09 +00:00
Roger Dingledine
e1d37ed6ab
divorce circuit building from user connections
...
now we rebuild the circuit periodically (but only if it's been used),
and we can further abstract it to do incremental circuit building, etc.
svn:r233
2003-04-16 06:18:31 +00:00
Nick Mathewson
1fa0fc1487
Introduce a few unit tests (from older code), refactor compression setup/teardown
...
svn:r232
2003-04-15 19:10:18 +00:00
Roger Dingledine
7df5caad0d
make it work (heh)
...
svn:r231
2003-04-11 22:28:51 +00:00
Roger Dingledine
1d53d8ad0e
refactored some duplicate code into connection_edge.c
...
svn:r230
2003-04-11 22:11:11 +00:00
Roger Dingledine
833f165d68
bugfix: make onion proxies actually obey their requested bandwidth
...
svn:r229
2003-04-08 22:31:48 +00:00
Roger Dingledine
cdf6ea201f
put most of the remaining exit policy stuff in
...
route selection still doesn't pay attention to exit policies though
svn:r227
2003-04-08 06:44:38 +00:00
Nick Mathewson
79b77b421d
First test added
...
svn:r226
2003-04-07 13:25:44 +00:00
Roger Dingledine
18bbac44ca
parse exit policy lines
...
svn:r225
2003-04-07 04:38:19 +00:00
Nick Mathewson
c217b1ca71
Add magic to end of C files to make emacs happy; split test invocation into separate file.
...
svn:r224
2003-04-07 02:12:02 +00:00
Roger Dingledine
afa95ca47c
make servers tolerate the dns bug.
...
svn:r223
2003-04-05 19:53:45 +00:00
Roger Dingledine
cb584627a4
begin cells are now address:port, not address,port
...
(breaks backward compatibility)
svn:r222
2003-04-05 19:04:47 +00:00
Roger Dingledine
96e5f776d6
move cell size to 256. seems to work (?)
...
svn:r218
2003-03-24 04:02:24 +00:00
Roger Dingledine
b8da74d30a
get rid of those nasty tabs
...
svn:r216
2003-03-24 03:00:20 +00:00
Roger Dingledine
9ac9db782a
fix rare race condition
...
if the directory is remade while an OR is handshaking, the directory
needs to become dirty again when the handshake succeeds
svn:r215
2003-03-24 02:50:07 +00:00
Nick Mathewson
9d03ae627d
Fix message when decompressing
...
svn:r214
2003-03-19 22:51:38 +00:00
Nick Mathewson
29da03cbdc
Be loud when decompressing
...
svn:r213
2003-03-19 22:47:34 +00:00
Nick Mathewson
9c263b322b
Make decompression loud.
...
svn:r209
2003-03-19 22:28:52 +00:00
Roger Dingledine
5d0904bc41
kludge because openssl and zlib both typedef free_func :(
...
svn:r208
2003-03-19 22:27:37 +00:00
Roger Dingledine
ff14dcdef7
fix arg bug; reduce confusion in package_raw_inbuf
...
svn:r207
2003-03-19 22:27:01 +00:00
Nick Mathewson
3a0cf37641
Add other side of half-open-connection logic (still disabled
...
svn:r206
2003-03-19 22:05:35 +00:00
Roger Dingledine
d07146b778
cleaner errors
...
svn:r205
2003-03-19 22:02:35 +00:00
Nick Mathewson
a528ee2d8f
Be clear about whether we are using half-open connections
...
svn:r204
2003-03-19 21:59:07 +00:00
Nick Mathewson
7f7417cd29
Fix bug in client_send_auth
...
svn:r203
2003-03-19 21:47:18 +00:00
Nick Mathewson
4631f3dcdf
Fix client_process_auth
...
svn:r202
2003-03-19 21:34:38 +00:00
Nick Mathewson
51ed97504b
Fix op handshake for longer keys
...
svn:r200
2003-03-19 21:17:57 +00:00
Nick Mathewson
0fed84785e
Finish zlib and half-open; switch to 3des (ede/ofb)
...
svn:r198
2003-03-19 20:48:56 +00:00
Nick Mathewson
2ff7f274d3
Make Makefile.am nonbroken
...
svn:r197
2003-03-19 20:42:40 +00:00