aboutsummaryrefslogtreecommitdiff
path: root/src/or/connection.c
Commit message (Collapse)AuthorAge
* add circuit-level sendme relay cellsRoger Dingledine2003-05-20
| | | | | | | | | | remove sendme cells replace malloc with tor_malloc patch (but not track down) bug in onion pending list streamline connection_ap handshake svn:r293
* incremental path building in; uses ephemeral DH; onions are goneRoger Dingledine2003-05-05
| | | | | | | still need to change circuit-level sendmes svn:r264
* streams are now 8 bytes, and are recognized by intermediate hopsRoger Dingledine2003-05-02
| | | | | | | | the OP only crypts the appropriate number of times depending on which layer (hop on the path) it's for/from. svn:r262
* terminology shift: data->relay, topic->relay, topic->streamRoger Dingledine2003-05-01
| | | | svn:r258
* Adjust straggling users of payload fieldNick Mathewson2003-04-17
| | | | svn:r250
* Choose correct abstraction for topic_foo. Abstract random-integer codeNick Mathewson2003-04-17
| | | | svn:r249
* Factor out cell packing and unpackingNick Mathewson2003-04-16
| | | | svn:r240
* Factor out timeval-related functions.Nick Mathewson2003-04-16
| | | | svn:r237
* Introduce a few unit tests (from older code), refactor compression ↵Nick Mathewson2003-04-15
| | | | | | setup/teardown svn:r232
* refactored some duplicate code into connection_edge.cRoger Dingledine2003-04-11
| | | | svn:r230
* bugfix: make onion proxies actually obey their requested bandwidthRoger Dingledine2003-04-08
| | | | svn:r229
* Add magic to end of C files to make emacs happy; split test invocation into ↵Nick Mathewson2003-04-07
| | | | | | separate file. svn:r224
* get rid of those nasty tabsRoger Dingledine2003-03-24
| | | | svn:r216
* fix rare race conditionRoger Dingledine2003-03-24
| | | | | | | | if the directory is remade while an OR is handshaking, the directory needs to become dirty again when the handshake succeeds svn:r215
* Be loud when decompressingNick Mathewson2003-03-19
| | | | svn:r213
* fix arg bug; reduce confusion in package_raw_inbufRoger Dingledine2003-03-19
| | | | svn:r207
* Finish zlib and half-open; switch to 3des (ede/ofb)Nick Mathewson2003-03-19
| | | | svn:r198
* greatly simplify this notion of 'roles':Roger Dingledine2003-03-18
| | | | | | | | if your ORPort is non-zero then you must connect to all nodes if your DirPort is non-zero then you must act like a directory server svn:r192
* Do not uncompress from z_outbuf to outbuf unless outbuf is less than ↵Nick Mathewson2003-03-17
| | | | | | maximally full svn:r188
* Add code for end-to-end zlib compression. Still needs flow-controlNick Mathewson2003-03-17
| | | | svn:r187
* respond to nick's question about link paddingRoger Dingledine2003-03-12
| | | | | | | (nick: note that link padding is currently disabled) svn:r178
* Make ACI anti-collision logic work; make sure that cells are filled with 0s.Nick Mathewson2003-03-11
| | | | svn:r176
* lazy (just in time) directory rebuildingRoger Dingledine2003-03-11
| | | | svn:r174
* minor code cleanupRoger Dingledine2003-03-05
| | | | svn:r166
* when we had multiple conns on a circuit, we'd tell the wrongRoger Dingledine2003-02-28
| | | | | | | one to stop reading svn:r163
* Bugfixes and enhancements in sendmes and dns farmRoger Dingledine2003-02-18
| | | | svn:r161
* fix endian issues for topics -- they might work on bsd nowRoger Dingledine2003-02-06
| | | | | | | | | (they wouldn't have before) alternate code which bypasses the dns farm, so we can compare speed svn:r154
* make reusing circuits work (and be the default)Roger Dingledine2003-02-06
| | | | | | | performance is better, but not by much. not sure why yet. svn:r153
* major overhaul: dns slave subsystem, topicsRoger Dingledine2003-01-26
| | | | | | | | | | | | | | | | | | | | | | | | | | on startup, it forks off a master dns handler, which forks off dns slaves (like the apache model). slaves as spawned as load increases, and then reused. excess slaves are not ever killed, currently. implemented topics. each topic has a receive window in each direction at each edge of the circuit, and sends sendme's at the data level, as per before. each circuit also has receive windows in each direction at each hop; an edge sends a circuit-level sendme as soon as enough data cells have arrived (regardless of whether the data cells were flushed to the exit conns). removed the 'connected' cell type, since it's now a topic command within data cells. at the edge of the circuit, there can be multiple connections associated with a single circuit. you find them via the linked list conn->next_topic. currently each new ap connection starts its own circuit, so we ought to see comparable performance to what we had before. but that's only because i haven't written the code to reattach to old circuits. please try to break it as-is, and then i'll make it reuse the same circuit and we'll try to break that. svn:r152
* expire unfinished handshakes tooRoger Dingledine2002-10-13
| | | | | | | don't list non-open ORs in the directory svn:r134
* cleanup and a variety of bugfixesRoger Dingledine2002-10-02
| | | | svn:r132
* cell now has a network appearance and an internal (struct) appearanceRoger Dingledine2002-10-02
| | | | svn:r130
* all listeners listen on 0.0.0.0 except AP which listens on 127.0.0.1Roger Dingledine2002-10-02
| | | | svn:r126
* introduced a periodic keepalive padding cellRoger Dingledine2002-10-01
| | | | | | | | | now tor can be run safely inside nat'ed areas that kill idle connections; and the proxy can handle when you suspend your laptop and then emerge hours later from a new domain. svn:r125
* more robust http(ish) handlingRoger Dingledine2002-09-28
| | | | svn:r123
* cleanupRoger Dingledine2002-09-28
| | | | | | | | | | prkey is only fetched when it's needed tor nodes who aren't dirservers now fetch directories and autoconnect to new nodes listed in the directory default role is a non-dirserver node svn:r120
* directory servers in and functionalRoger Dingledine2002-09-26
| | | | | | | | proxies now periodically pull down an hourly-updated directory, and replace their router list with it if it parses correctly. svn:r112
* laying the groundwork for dynamic router listsRoger Dingledine2002-09-24
| | | | | | | | | | | | | | | | revamped the router reading section reference counting for crypto pk env's (so we can dup them) we now read and write pem pk keys from string rather than from FILE*, in anticipation of fetching directories over a socket (so now on startup we slurp in the whole file, then parse it as a string) fixed a bug in the proxy side, where you could get some circuits wedged if they showed up while the connection was being made svn:r110
* onion proxy now speaks socks4aRoger Dingledine2002-09-22
| | | | | | | | | | | httpap is obsolete; we support privoxy directly now! smtpap is obsolete; need to find a good socks4a-enabled smtp proxy/client I dub thee 0.0.1. svn:r107
* kill -USR1 the or and it will dump conn/circuit stats to stdoutRoger Dingledine2002-09-21
| | | | svn:r106
* added 'connected' cell typeRoger Dingledine2002-09-17
| | | | | | | see http://archives.seul.org/or/dev/Sep-2002/msg00018.html svn:r103
* minor race conditionRoger Dingledine2002-09-09
| | | | | | | (it seemed to work anyway, but...) svn:r100
* onion proxies now work (i think)Roger Dingledine2002-09-04
| | | | svn:r96
* resolve warningsRoger Dingledine2002-09-03
| | | | svn:r89
* enforce maxconn; bugfix to not tear down the parent when we hit maxconnRoger Dingledine2002-09-03
| | | | svn:r86
* more debugging info, to track down bruce's IP problemsRoger Dingledine2002-08-27
| | | | svn:r85
* we now encrypt the entire cell on the link, not just the headerRoger Dingledine2002-08-24
| | | | | | | | previously padding cells, etc were distinguishable because their body was all zero's svn:r84
* port is now kept in host order except in sin_portRoger Dingledine2002-08-24
| | | | svn:r82
* cleaned up new_route()Roger Dingledine2002-08-23
| | | | | | | now it deals gracefully with too few connected routers (i think) svn:r77
* Changed crypto calls to go through common/crypto.[hc] instead of calling ↵Matej Pjafjar2002-08-22
| | | | | | OpenSSL directly. svn:r76