aboutsummaryrefslogtreecommitdiff
path: root/src/or/or.h
Commit message (Collapse)AuthorAge
* clean up connection_assert_ok compiler warningsRoger Dingledine2003-09-27
| | | | svn:r498
* add Address config element, use it in descriptorRoger Dingledine2003-09-27
| | | | svn:r496
* Refactor common file code into util.c; add published to descriptorsNick Mathewson2003-09-26
| | | | svn:r487
* first pass: obey log conventionRoger Dingledine2003-09-26
| | | | | | | | | | | | | | | | | | | | | 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
* various bugfixes and updatesRoger Dingledine2003-09-25
| | | | | | | | | | | | | | | | | | | | redo all the config files for the new format (we'll redo them again soon) fix (another! yuck) segfault in log_fn when input is too large tor_tls_context_new() returns -1 for error, not NULL fix segfault in check_conn_marked() on conn's that die during tls handshake make ORs also initialize conn from router when we're the receiving node make non-dirserver ORs upload descriptor to every dirserver on startup add our local address to the descriptor add Content-Length field to POST command revert the Content-Length search in fetch_from_buf_http() to previous code fix segfault in memmove in fetch_from_buf_http() raise maximum allowed headers/body size in directory.c svn:r484
* Refactor buffers; implement descriptors.Nick Mathewson2003-09-25
| | | | | | | | | | | | | | | | | 'buf_t' is now an opaque type defined in buffers.c . Router descriptors now include all keys; routers generate keys as needed on startup (in a newly defined "data directory"), and generate their own descriptors. Descriptors are now self-signed. Implementation is not complete: descriptors are never published; and upon receiving a descriptor, the directory doesn't do anything with it. At least "routers.or" and orkeygen are now obsolete, BTW. svn:r483
* cleanups, bugfixes, more verbose logsRoger Dingledine2003-09-24
| | | | | | | | | | | | | | | | | | | Fixed up the assert_*_ok funcs some (more work remains) Changed config so it reads either /etc/torrc or the -f arg, never both Finally tracked down a nasty bug with our use of tls: It turns out that if you ask SSL_read() for no more than n bytes, it will read the entire record from the network (and maybe part of the next record, I'm not sure), give you n bytes of it, and keep the remaining bytes internally. This is fine, except our poll-for-read looks at the network, and there are no bytes pending on the network, so we never know to ask SSL_read() for more bytes. Currently I've hacked it so if we ask for n bytes and it returns n bytes, then it reads again right then. This will interact poorly with our rate limiting; we need a cleaner solution. svn:r481
* get network/host order working right again for socks4Roger Dingledine2003-09-21
| | | | svn:r476
* bugfixes and note missing featuresRoger Dingledine2003-09-21
| | | | | | | | | | | | | deal with content-length headers better when reading http don't assume struct socks4_info is a packed struct fail the socks handshake if destip is zero flesh out conn_state_to_string() for dir conn fix typo (bug) in connection_handle_read() directory get is now called fetch, post is now upload reopen logs on sighup svn:r475
* leave the socks handshake on the inbuf until it's completeRoger Dingledine2003-09-18
| | | | | | | | | | | this paves the way for supporting socks5 and other handshakes it also removes those pesky AP-only variables from connection_t also hacked a fix for a bug where some streams weren't ending properly -- maybe because marked connections weren't flushing properly? svn:r472
* add in directory 'post' supportRoger Dingledine2003-09-17
| | | | svn:r471
* phase out non-tls handshake, now that tls is stable.Roger Dingledine2003-09-16
| | | | svn:r470
* bugfixes and refactoringsRoger Dingledine2003-09-16
| | | | svn:r468
* Make sequential ACI selection logic handle HIGHER/LOWERNick Mathewson2003-09-16
| | | | svn:r466
* Add first cut of assert_*_ok functionsNick Mathewson2003-09-16
| | | | svn:r464
* Add #ifdef'd code (on by default) to allocate ACIs sequentially.Nick Mathewson2003-09-16
| | | | svn:r462
* clean up exported api'sRoger Dingledine2003-09-16
| | | | svn:r461
* refactor connects into connection_connect()Roger Dingledine2003-09-16
| | | | svn:r460
* fix the cpuworker circ-had-vanished bug (maybe)Roger Dingledine2003-09-14
| | | | | | | still several (many) tls-related bugs outstanding. svn:r454
* fix two more bugsRoger Dingledine2003-09-13
| | | | svn:r452
* reshuffle functions for cleaner organizationRoger Dingledine2003-09-12
| | | | svn:r451
* tls works between routers now tooRoger Dingledine2003-09-12
| | | | | | | things are still a bit shaky svn:r450
* check for funny business from the remote peerRoger Dingledine2003-09-11
| | | | svn:r445
* Add router_get_by_pk function; use in connection_tls_finish_handshake.Nick Mathewson2003-09-11
| | | | svn:r441
* collect info from peer we just handshaked withRoger Dingledine2003-09-11
| | | | svn:r439
* tls infrastructure now in place, give or takeRoger Dingledine2003-09-08
| | | | svn:r434
* add CertFile, NicknameRoger Dingledine2003-09-08
| | | | | | | | write new certfile if you don't have one already set up a tls context on startup svn:r432
* clean up config.c so it doesn't expose as muchRoger Dingledine2003-09-08
| | | | svn:r430
* more futzing towards tlsRoger Dingledine2003-09-07
| | | | | | | not there yet svn:r429
* clean read_to_buf moreRoger Dingledine2003-09-05
| | | | svn:r428
* general cleanup and reabstraction, to prepare for tlsRoger Dingledine2003-09-05
| | | | svn:r426
* Add initial interfaces and code for TLS support. Interfaces are right; code ↵Nick Mathewson2003-09-04
| | | | | | needs work and testing. svn:r424
* remove last vestiges of op_portRoger Dingledine2003-08-27
| | | | svn:r418
* start honoring the recommended_versions stringRoger Dingledine2003-08-23
| | | | | | | | | your client exits if you're running a version not in the directory's list of acceptable versions (unless you have a config variable set to override). svn:r408
* implemented cpuworkersRoger Dingledine2003-08-20
| | | | | | | | | | please poke at it and report bugs still needs polishing, and only handles onions now (should handle OR handshakes too) svn:r402
* Attempt to make sockets code work right on windows.Nick Mathewson2003-08-14
| | | | svn:r398
* start refactoring dnsworker so testing won't be so darn hardRoger Dingledine2003-08-14
| | | | | | | | | add NumCpus config variable in preparation for cpuworkers hardcode /etc/torrc path for config (simplifies win32 port) improve exit policy debugging during router entry parsing svn:r397
* Misc patches to make windows build work. Now everything is done except the ↵Nick Mathewson2003-08-12
| | | | | | sockets stuff svn:r393
* reap exited dns/cpuworkersRoger Dingledine2003-08-12
| | | | svn:r385
* Start of port to win32. Missing are:Nick Mathewson2003-08-12
| | | | | | | | | | | | | | | | - signal support - forking for DNS farm - changes for async IO - daemonizing In other words, some files still don't build, and the ones that do build, do nonblocking IO incorrectly. I'm also not checking in the project files till I have a good place for them. svn:r380
* autoconf around missing stdint.hNick Mathewson2003-08-11
| | | | svn:r376
* src/orNick Mathewson2003-07-30
| | | | svn:r371
* switch to aesRoger Dingledine2003-07-08
| | | | | | | nick: is this all there is to it? :) svn:r366
* implemented total read rate limitingRoger Dingledine2003-07-05
| | | | svn:r365
* clean up main.c a bitRoger Dingledine2003-07-05
| | | | svn:r364
* if stream ends before resolve finishes, inform resolverRoger Dingledine2003-06-27
| | | | svn:r359
* entries in the dns cache now expireRoger Dingledine2003-06-25
| | | | | | | | | | (expiry time set to 100 seconds so we can play with it) exit connections are now informed when pending resolves fail we kill off the oldest busy worker when we're under attack and need to resolve something new svn:r356
* Reorder connection_or and make unexported functions static. Partially ↵Nick Mathewson2003-06-21
| | | | | | convert to symbolic constants -- Roger, was this what you had in mind? svn:r342
* remove obsolete ss.hRoger Dingledine2003-06-18
| | | | svn:r336
* overhaul the dns farm: cut its size in halfRoger Dingledine2003-06-17
| | | | | | | | | | 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