]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
23 years agoAdded the crypto abstraction to libor. Need to test and change the code to use this...
Matej Pjafjar [Thu, 25 Jul 2002 08:17:22 +0000 (08:17 +0000)] 
Added the crypto abstraction to libor. Need to test and change the code to use this instead of OpenSSL.

svn:r74

23 years agoBeginnings of a crypto abstraction layer.
Matej Pjafjar [Wed, 24 Jul 2002 14:02:39 +0000 (14:02 +0000)] 
Beginnings of a crypto abstraction layer.

svn:r73

23 years agoonly choose routers for the onion that are currently connected to us
Roger Dingledine [Mon, 22 Jul 2002 04:38:36 +0000 (04:38 +0000)] 
only choose routers for the onion that are currently connected to us

svn:r72

23 years agoCode cleaned up to be less noisy
Roger Dingledine [Mon, 22 Jul 2002 04:08:37 +0000 (04:08 +0000)] 
Code cleaned up to be less noisy

svn:r71

23 years agoMore reasonable CoinWeight, now that we can handle large paths
Roger Dingledine [Mon, 22 Jul 2002 04:08:15 +0000 (04:08 +0000)] 
More reasonable CoinWeight, now that we can handle large paths

svn:r70

23 years agoInclude src/config/ in the 'make dist' tarball
Roger Dingledine [Mon, 22 Jul 2002 04:07:57 +0000 (04:07 +0000)] 
Include src/config/ in the 'make dist' tarball

svn:r69

23 years agoUpdated HACKING and README docs
Roger Dingledine [Mon, 22 Jul 2002 04:07:34 +0000 (04:07 +0000)] 
Updated HACKING and README docs

HACKING now explains bandwidth throttling, congestion control,
and router twins. Read it and see if it makes sense.

svn:r68

23 years agobugfixes: don't hang waiting for new children to die; accept HTTP/1.1
Roger Dingledine [Sat, 20 Jul 2002 02:01:18 +0000 (02:01 +0000)] 
bugfixes: don't hang waiting for new children to die; accept HTTP/1.1

svn:r67

23 years agobugfix: create_onion now works with routelen>2
Roger Dingledine [Sat, 20 Jul 2002 01:59:28 +0000 (01:59 +0000)] 
bugfix: create_onion now works with routelen>2

svn:r66

23 years agoadded a note on openssl and popt dependencies
Roger Dingledine [Fri, 19 Jul 2002 21:02:39 +0000 (21:02 +0000)] 
added a note on openssl and popt dependencies

svn:r65

23 years agoFolded cell.? into src/or
Roger Dingledine [Fri, 19 Jul 2002 18:48:28 +0000 (18:48 +0000)] 
Folded cell.? into src/or

svn:r64

23 years agoslightly less noisy
Roger Dingledine [Fri, 19 Jul 2002 18:48:19 +0000 (18:48 +0000)] 
slightly less noisy

svn:r63

23 years agominor cleanups in config files
Roger Dingledine [Fri, 19 Jul 2002 18:48:03 +0000 (18:48 +0000)] 
minor cleanups in config files

svn:r62

23 years agoFolded cell.? into src/or
Roger Dingledine [Fri, 19 Jul 2002 18:47:04 +0000 (18:47 +0000)] 
Folded cell.? into src/or

Removed more obsolete files

svn:r61

23 years agorevised todo
Roger Dingledine [Fri, 19 Jul 2002 16:25:53 +0000 (16:25 +0000)] 
revised todo

svn:r60

23 years agoTest suite for onion.c - currently tests encrypt_onion() and decrypt_onion().
Matej Pjafjar [Fri, 19 Jul 2002 14:08:44 +0000 (14:08 +0000)] 
Test suite for onion.c - currently tests encrypt_onion() and decrypt_onion().

svn:r59

23 years agoinitial versions of README, for new users getting up to speed, and HACKING,
Roger Dingledine [Fri, 19 Jul 2002 08:13:42 +0000 (08:13 +0000)] 
initial versions of README, for new users getting up to speed, and HACKING,
for people wanting to play with the code. the hacking doc is still incomplete.

svn:r58

23 years agomoria:9004 is now a twin to town-square:9004
Roger Dingledine [Fri, 19 Jul 2002 00:33:31 +0000 (00:33 +0000)] 
moria:9004 is now a twin to town-square:9004

svn:r57

23 years agoImplemented router twins
Roger Dingledine [Thu, 18 Jul 2002 23:44:57 +0000 (23:44 +0000)] 
Implemented router twins

I modified new_route so we don't pick twins back-to-back in the path.

I also had to patch my previous uses of connection_twin_get_by_addr_port()
because they assumed that "addr" and "port" would be the same for a twin
as for the original router.

svn:r56

23 years agochanges to support sendme cells
Roger Dingledine [Thu, 18 Jul 2002 06:38:32 +0000 (06:38 +0000)] 
changes to support sendme cells

svn:r55

23 years agoImplemented congestion control
Roger Dingledine [Thu, 18 Jul 2002 06:37:58 +0000 (06:37 +0000)] 
Implemented congestion control

Servers are allowed to send 100 cells initially, and can't send more until
they receive a 'sendme' cell from that direction, indicating that they
can send 10 more cells. As it currently stands, the exit node quickly
runs out of window, and sends bursts of 10 whenever a sendme cell gets
to him. This is much much much faster (and more flexible) than the old
"give each circuit 1 kB/s and hope nothing overflows" approach.

Also divided out the connection_watch_events into stop_reading,
start_writing, etc. That way we can control them separately.

svn:r54

23 years agonew link padding scheme
Roger Dingledine [Tue, 16 Jul 2002 18:24:12 +0000 (18:24 +0000)] 
new link padding scheme

we're now much more robust when bandwidth varies: instead of forcing a
fixed bandwidth on the link, we instead use what the link will give us,
up to our bandwidth.

svn:r53

23 years agoPut in a note in README to explain how to compile (I had to wade
Andrei Serjantov [Tue, 16 Jul 2002 16:18:16 +0000 (16:18 +0000)] 
Put in a note in README to explain how to compile (I had to wade
through the cvs messages), and added my router on mosg.cl.cam.ac.uk to
the list of routers.

svn:r52

23 years agonew config files, some bugfixes
Roger Dingledine [Tue, 16 Jul 2002 02:12:58 +0000 (02:12 +0000)] 
new config files, some bugfixes

svn:r51

23 years agoImplemented link padding and receiver token buckets
Roger Dingledine [Tue, 16 Jul 2002 01:12:15 +0000 (01:12 +0000)] 
Implemented link padding and receiver token buckets

Each socket reads at most 'bandwidth' bytes per second sustained, but
can handle bursts of up to 10*bandwidth bytes.

Cells are now sent out at evenly-spaced intervals, with padding sent
out otherwise. Set Linkpadding=0 in the rc file to send cells as soon
as they're available (and to never send padding cells).

Added license/copyrights statements at the top of most files.

router->min and router->max have been merged into a single 'bandwidth'
value. We should make the routerinfo_t reflect this (want to do that,
Mat?)

As the bandwidth increases, and we want to stop sleeping more and more
frequently to send a single cell, cpu usage goes up. At 128kB/s we're
pretty much calling poll with a timeout of 1ms or even 0ms. The current
code takes a timeout of 0-9ms and makes it 10ms. prepare_for_poll()
handles everything that should have happened in the past, so as long as
our buffers don't get too full in that 10ms, we're ok.

Speaking of too full, if you run three servers at 100kB/s with -l debug,
it spends too much time printing debugging messages to be able to keep
up with the cells. The outbuf ultimately fills up and it kills that
connection. If you run with -l err, it works fine up through 500kB/s and
probably beyond. Down the road we'll want to teach it to recognize when
an outbuf is getting full, and back off.

svn:r50

23 years agoremoved args.c (bruce's popt stuff makes it obsolete)
Roger Dingledine [Mon, 15 Jul 2002 21:13:40 +0000 (21:13 +0000)] 
removed args.c (bruce's popt stuff makes it obsolete)

svn:r49

23 years agobug-fix. poptReadDefaultOptions() should find and load ~/.<cmd>rc files now.
Bruce Montrose [Mon, 15 Jul 2002 19:05:12 +0000 (19:05 +0000)] 
bug-fix. poptReadDefaultOptions() should find and load ~/.<cmd>rc files now.

svn:r48

23 years agocorrected some string literals
Bruce Montrose [Mon, 15 Jul 2002 16:42:27 +0000 (16:42 +0000)] 
corrected some string literals

svn:r47

23 years agoremoved mention of src/op/ from configure
Roger Dingledine [Fri, 12 Jul 2002 22:22:25 +0000 (22:22 +0000)] 
removed mention of src/op/ from configure

svn:r46

23 years agoremoving the obsolete op/ code
Roger Dingledine [Fri, 12 Jul 2002 18:34:44 +0000 (18:34 +0000)] 
removing the obsolete op/ code

svn:r45

23 years agoremoved loglevel from global namespace. severity level is set using log() with a...
Bruce Montrose [Fri, 12 Jul 2002 18:14:17 +0000 (18:14 +0000)] 
removed loglevel from global namespace. severity level is set using log() with a NULL format argument now. example: log(LOG_ERR,NULL);

svn:r44

23 years agointegrated use of getoption() into OR. removed getargs() and getconfig().
Bruce Montrose [Fri, 12 Jul 2002 17:12:08 +0000 (17:12 +0000)] 
integrated use of getoption() into OR. removed getargs() and getconfig().

svn:r43

23 years agofinishing touches. think its ready for integration now.
Bruce Montrose [Thu, 11 Jul 2002 19:03:44 +0000 (19:03 +0000)] 
finishing touches. think its ready for integration now.

svn:r42

23 years agoadded new option GlobalRole to getoptions()
Bruce Montrose [Thu, 11 Jul 2002 18:38:16 +0000 (18:38 +0000)] 
added new option GlobalRole to getoptions()

svn:r41

23 years agocleaned up some, added validation to getoptions()
Bruce Montrose [Thu, 11 Jul 2002 14:50:26 +0000 (14:50 +0000)] 
cleaned up some, added validation to getoptions()

svn:r40

23 years agofixed the deadlock bug
Roger Dingledine [Wed, 10 Jul 2002 20:17:27 +0000 (20:17 +0000)] 
fixed the deadlock bug

this was another bug i introduced with the 5 july patch.
i should look at that patch more closely. :)

svn:r39

23 years agoit wouldn't return when the next router isn't up, leading to later seg fault
Roger Dingledine [Wed, 10 Jul 2002 19:05:13 +0000 (19:05 +0000)] 
it wouldn't return when the next router isn't up, leading to later seg fault

i'm going to take a shower, and then solve the deadlocking problem mat found

svn:r38

23 years agoa patch for mat's patch
Roger Dingledine [Wed, 10 Jul 2002 18:39:33 +0000 (18:39 +0000)] 
a patch for mat's patch

svn:r37

23 years agoAdded usage display on error.
Bruce Montrose [Wed, 10 Jul 2002 12:37:49 +0000 (12:37 +0000)] 
Added usage display on error.

svn:r36

23 years agoBugfix : connection_exit_process_data_cell() quit after receiving the SS, without...
Matej Pjafjar [Wed, 10 Jul 2002 12:37:37 +0000 (12:37 +0000)] 
Bugfix : connection_exit_process_data_cell() quit after receiving the SS, without waiting for the destination addr/port

svn:r35

23 years agogetrouters() changed so that a router ignores its own entry in the router list
Matej Pjafjar [Wed, 10 Jul 2002 12:35:59 +0000 (12:35 +0000)] 
getrouters() changed so that a router ignores its own entry in the router list

svn:r34

23 years agoBugfix - the list of valid characters in a filename didn't include an n .
Matej Pjafjar [Wed, 10 Jul 2002 10:11:13 +0000 (10:11 +0000)] 
Bugfix - the list of valid characters in a filename didn't include an n .

svn:r33

23 years agoadded file to codebase
Bruce Montrose [Tue, 9 Jul 2002 19:57:38 +0000 (19:57 +0000)] 
added file to codebase

svn:r32

23 years agoMiscellaneous bug fixes / activated "make check" for src/or
Bruce Montrose [Tue, 9 Jul 2002 19:51:41 +0000 (19:51 +0000)] 
Miscellaneous bug fixes / activated "make check" for src/or

svn:r31

23 years agoput in the support for 'router twins'
Roger Dingledine [Mon, 8 Jul 2002 08:59:15 +0000 (08:59 +0000)] 
put in the support for 'router twins'
basically, a twin is a router which is different except it shares
the same keypair. so in cases where we want to find a "next router"
and all we really care is that it can decrypt the next onion layer,
then a twin is just as good.

we still need to decide how to mark twins in the routerinfo_t and in
the routers config file.

svn:r30

23 years agogeneral cleanup
Roger Dingledine [Fri, 5 Jul 2002 06:27:23 +0000 (06:27 +0000)] 
general cleanup

svn:r29

23 years agominor bug fix in error checking
Bruce Montrose [Wed, 3 Jul 2002 19:58:18 +0000 (19:58 +0000)] 
minor bug fix in error checking

svn:r28

23 years agopatch to fix running the program only as an op
Roger Dingledine [Wed, 3 Jul 2002 17:30:59 +0000 (17:30 +0000)] 
patch to fix running the program only as an op

svn:r27

23 years agoadded error checking into getoptions()
Bruce Montrose [Wed, 3 Jul 2002 16:53:34 +0000 (16:53 +0000)] 
added error checking into getoptions()

svn:r26

23 years agoAdded getoptions() and made minor adjustment to poptReadDefaultOptions()
Bruce Montrose [Wed, 3 Jul 2002 16:31:22 +0000 (16:31 +0000)] 
Added getoptions() and made minor adjustment to poptReadDefaultOptions()

svn:r25

23 years agoremoved op/ from the build process, since it no longer
Roger Dingledine [Tue, 2 Jul 2002 16:00:02 +0000 (16:00 +0000)] 
removed op/ from the build process, since it no longer
builds now that i've removed common/onion.[ch] (oops)

svn:r24

23 years agoremoved a pair of includes that we don't actually use
Roger Dingledine [Tue, 2 Jul 2002 09:41:21 +0000 (09:41 +0000)] 
removed a pair of includes that we don't actually use

svn:r23

23 years agoIntegrated onion proxy into or/
Roger Dingledine [Tue, 2 Jul 2002 09:36:58 +0000 (09:36 +0000)] 
Integrated onion proxy into or/

The 'or' process can now be told (by the global_role variable) what
roles this server should play -- connect to all ORs, listen for ORs,
listen for OPs, listen for APs, or any combination.

* everything in /src/op/ is now obsolete.
* connection_ap.c now handles all interactions with application proxies
* "port" is now or_port, op_port, ap_port. But routers are still always
  referenced (say, in conn_get_by_addr_port()) by addr / or_port. We
  should make routers.c actually read these new ports (currently I've
  kludged it so op_port = or_port+10, ap_port=or_port+20)
* circuits currently know if they're at the beginning of the path because
  circ->cpath is set. They use this instead for crypts (both ways),
  if it's set.
* I still obey the "send a 0 back to the AP when you're ready" protocol,
  but I think we should phase it out. I can simply not read from the AP
  socket until I'm ready.

I need to do a lot of cleanup work here, but the code appears to work, so
now's a good time for a checkin.

svn:r22

23 years agoremoved onion.c and onion.h from common/
Roger Dingledine [Tue, 2 Jul 2002 09:17:21 +0000 (09:17 +0000)] 
removed onion.c and onion.h from common/
they're now in or/onion.c

svn:r21

23 years agohttpap now prepends dest_addr and dest_port strings with their length.
Roger Dingledine [Tue, 2 Jul 2002 09:16:16 +0000 (09:16 +0000)] 
httpap now prepends dest_addr and dest_port strings with their length.

also, it now sets the listening socket option SO_REUSEADDR

svn:r20

23 years agoCommitting my working config files, so we'll all be on the same page
Roger Dingledine [Tue, 2 Jul 2002 09:14:18 +0000 (09:14 +0000)] 
Committing my working config files, so we'll all be on the same page

Note that there are new keywords in these, etc. Matej, would you be
interested in going through and patching routers.c, config.c, etc, so
they're cleaner?

svn:r19

23 years agofixed a critical bug in yesterday's changes to buffers.c
Roger Dingledine [Tue, 2 Jul 2002 06:02:15 +0000 (06:02 +0000)] 
fixed a critical bug in yesterday's changes to buffers.c
(starting to debug my OP integration)

svn:r18

23 years agomade 'app' connection be 'exit' connection
Roger Dingledine [Sun, 30 Jun 2002 07:37:49 +0000 (07:37 +0000)] 
made 'app' connection be 'exit' connection
general cleanup, particularly in buffers.c

svn:r17

23 years agoadded some header checks
Felipe Bergo [Sat, 29 Jun 2002 20:01:58 +0000 (20:01 +0000)] 
added some header checks

svn:r16

23 years ago./autogen.sh runs auto* and then ./configure
Roger Dingledine [Sat, 29 Jun 2002 03:01:49 +0000 (03:01 +0000)] 
./autogen.sh runs auto* and then ./configure

It should be all you need to do to get working Makefiles on your
platform, whatever your platform is. :)

Let me know if it doesn't generate Makefiles for you. There will still
be some bugs to work out in detecting openssl correctly, in checking for
only the right header files, etc. But we're on our way.

svn:r15

23 years agoMore cleanup. Thanks for your help, Felipe.
Roger Dingledine [Sat, 29 Jun 2002 02:56:56 +0000 (02:56 +0000)] 
More cleanup. Thanks for your help, Felipe.

svn:r14

23 years agoadded acconfig.h to fix incompatibility
Felipe Bergo [Sat, 29 Jun 2002 02:21:09 +0000 (02:21 +0000)] 
added acconfig.h to fix incompatibility

svn:r13

23 years agoFirst cut at cleaning out a lot of the extra stuff.
Roger Dingledine [Sat, 29 Jun 2002 00:54:00 +0000 (00:54 +0000)] 
First cut at cleaning out a lot of the extra stuff.

The summary here is that I'm requiring all developers to have
auto* (aclocal, autoconf, automake) installed on their machine.

Since different versions of auto* generate vastly different output,
I'm going to leave its output out of the repository. This means that
whenever you check out a repository, you need to run auto* to generate
a configure file, then run ./configure to get a Makefile, then build.

If you don't have auto* and can't get it, let me know (and I'll try to
convince you to develop on moria).

The benefit here is that while developers have a bit more work to keep
things straight, we can build snapshots that will install just about
anywhere (once we make configure.in work, that is ;)

svn:r12

23 years agomoved configure.ac to configure.in, should work with older autoconfs and automakes
Felipe Bergo [Fri, 28 Jun 2002 23:43:00 +0000 (23:43 +0000)] 
moved configure.ac to configure.in, should work with older autoconfs and automakes

svn:r11

23 years agoadded automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader...
Felipe Bergo [Fri, 28 Jun 2002 23:26:42 +0000 (23:26 +0000)] 
added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir.

svn:r10

23 years agoAdded -lpopt to Makefiles
Bruce Montrose [Fri, 28 Jun 2002 18:31:12 +0000 (18:31 +0000)] 
Added -lpopt to Makefiles

svn:r9

23 years agoAdded poptReadOptions() and poptReadDefaultOptions()
Bruce Montrose [Fri, 28 Jun 2002 18:14:55 +0000 (18:14 +0000)] 
Added poptReadOptions() and poptReadDefaultOptions()

svn:r8

23 years agomade it clearer that the ORs currently don't support padding at all
Roger Dingledine [Thu, 27 Jun 2002 02:54:16 +0000 (02:54 +0000)] 
made it clearer that the ORs currently don't support padding at all
(it should be straightforward to add in -- but only once we decide how we
want to do it.)

svn:r7

23 years agoInitial revision
Roger Dingledine [Wed, 26 Jun 2002 22:45:49 +0000 (22:45 +0000)] 
Initial revision

svn:r2

23 years agoNew repository initialized by cvs2svn.
(no author) [Wed, 26 Jun 2002 22:45:49 +0000 (22:45 +0000)] 
New repository initialized by cvs2svn.

svn:r1