aboutsummaryrefslogtreecommitdiff
path: root/src/or/connection_or.c
Commit message (Collapse)AuthorAge
* Debugging logs for TLS handshakeNick Mathewson2009-09-24
| | | | | | | | | | | | The big change is to add a function to display the current SSL handshake state, and to log it everywhere reasonable. (A failure in SSL23_ST_CR_SRVR_HELLO_A is different from one in SSL3_ST_CR_SESSION_TICKET_A.) This patch also adds a new log domain for OR handshaking, so you can pull out all the handshake log messages without having to run at debug for everything. For example, you'd just say "log notice-err [handshake]debug-err file tor.log".
* Recover from changing network connections.Mike Perry2009-09-16
| | | | | Also add code to keep creating circuits every minute until we hit our minimum threshhold.
* Change proxy-address type to tor_addr_t to allow ipv6 proxies.Nick Mathewson2009-06-19
|
* Enable Tor to connect through SOCKS 4/5 proxiesChristopher Davis2009-06-19
| | | | | | Added a sanity check in config.c and a check in directory.c directory_initiate_command_rend() to catch any direct connection attempts when a socks proxy is configured.
* Isolate Libevent API dependency to just main.c and dns.c in src/or.Nick Mathewson2009-06-12
| | | | | | The rest of the code was only including event.h so that it could see EV_READ and EV_WRITE, which we were using as part of the connection_watch_events interface for no very good reason.
* Update copyright to 2009.Karsten Loesing2009-05-02
|
* If we're using bridges and our network goes away, be more willingRoger Dingledine2009-02-04
| | | | | | | | to forgive our bridges and try again when we get an application request. Bugfix on 0.2.0.x. svn:r18396
* Don't obsolete a very-new connection for having no circuits yet.Nick Mathewson2009-01-28
| | | | | | | | | | | | | | | | | | This fixes the last known case of bug 891, which could happen if two hosts, A and B, disagree about how long a circuit has been open, because of clock drift of some kind. Host A would then mark the connection as is_bad_for_new_circs when it got too old and open a new connection. In between when B receives a NETINFO cell on the new conn, and when B receives a conn cell on the new circuit, the new circuit will seem worse to B than the old one, and so B will mark it as is_bad_for_new_circs in the second or third loop of connection_or_group_set_badness(). Bugfix on 0.1.1.13-alpha. Bug found by rovv. Not a backport candidate: the bug is too obscure and the fix too tricky. svn:r18303
* Remove svn $Id$s from our source, and remove tor --version --version.Nick Mathewson2009-01-04
| | | | | | | | The subversion $Id$ fields made every commit force a rebuild of whatever file got committed. They were not actually useful for telling the version of Tor files in the wild. svn:r17867
* Explain why the XXXX021 in connection_or.c was there, and explain why it ↵Nick Mathewson2008-12-29
| | | | | | doesn' actually need to get fixed in 0.2.1, I think. svn:r17819
* Checkpoint my big bug-891 patch.Nick Mathewson2008-12-24
| | | | svn:r17757
* More approx_time() calls. Noted by forest.Nick Mathewson2008-12-19
| | | | svn:r17702
* Downlgrade tweak, and answer lots of XXX021s. No actual code fixes in this ↵Nick Mathewson2008-12-18
| | | | | | patch. svn:r17686
* Rename or_is_obsolete and move it to or_connection_t where it belongs.Nick Mathewson2008-12-17
| | | | svn:r17642
* Apply rovv's bug 805 fix: take more care never to prefer a non-canonical ↵Nick Mathewson2008-12-15
| | | | | | connection. svn:r17627
* Apparently sparc64 is way more strict about uint16_t access alignment than I ↵Nick Mathewson2008-11-12
| | | | | | had thought: it gave bus errors when messing with var-cell headers. Maybe this patch will fix bug 862. svn:r17262
* Catch and report a few more bootstrapping failure cases when TorRoger Dingledine2008-09-09
| | | | | | | fails to establish a TCP connection. Cleanup on 0.2.1.x. svn:r16803
* Refactor use of connection_new so that we get more verifiable typesafety.Nick Mathewson2008-09-05
| | | | svn:r16785
* r17680@tombo: nickm | 2008-08-07 16:06:30 -0400Nick Mathewson2008-08-07
| | | | | | | Add a missing safe_str for a debug_log_message. Fix the bad part of bug 674. svn:r16462
* r17641@31-33-44: nickm | 2008-08-05 16:07:53 -0400Nick Mathewson2008-08-05
| | | | | | | Initial conversion of uint32_t addr to tor_addr_t addr in connection_t and related types. Most of the Tor wire formats using these new types are in, but the code to generate and use it is not. This is a big patch. Let me know what it breaks for you. svn:r16435
* r17346@aud-055: nickm | 2008-07-24 15:37:19 +0200Nick Mathewson2008-07-24
| | | | | | | Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start. svn:r16178
* r17322@aud-055: nickm | 2008-07-23 16:50:50 +0200Nick Mathewson2008-07-23
| | | | | | | Make circid_t and streamid_t get used instead of uint16_t; it is possible we will soon want to make circid_t change to uint32_t. svn:r16155
* Directory authorities shouldn't complain about bootstrappingRoger Dingledine2008-06-18
| | | | | | | | problems just because they do a lot of reachability testing and some of the connection attempts fail. svn:r15348
* start sending "bootstrap problem" status events when we're having troublesRoger Dingledine2008-06-11
| | | | | | | reaching relays. svn:r15116
* minor fixes and notesRoger Dingledine2008-06-10
| | | | svn:r15111
* Start noticing and reporting bootstrapping failures too. It looks likeRoger Dingledine2008-06-09
| | | | | | | | we never bothered learning why OR conns fail, so next step is to add some infrastructure for that. svn:r15091
* infrastructure for the 'bootstrap status event' feature, so we canRoger Dingledine2008-06-07
| | | | | | | | tell the controller how we're doing at bootstrapping, and it can tell the user. svn:r15008
* New code to implement proposal for local geoip stats. Only enabled with ↵Nick Mathewson2008-05-29
| | | | | | --enable-geoip-stats passed to configure. svn:r14802
* When we choose to abandon a new entry guard because we think ourRoger Dingledine2008-04-22
| | | | | | | | older ones might be better, close any circuits pending on that new entry guard connection. Bugfix on 0.1.2.8-beta; found by lodger. svn:r14417
* r19273@catbus: nickm | 2008-04-09 14:44:23 -0400Nick Mathewson2008-04-09
| | | | | | | Do a slightly better fix for r14329: don't call time() quite so much. Also note the time(NULL) hack we wanted to do in the TODO. svn:r14334
* r14399@tombo: nickm | 2008-02-22 14:09:38 -0500Nick Mathewson2008-02-22
| | | | | | | More 64-to-32 fixes. Partial backport candidate. still not done. svn:r13680
* r18218@catbus: nickm | 2008-02-19 17:27:40 -0500Nick Mathewson2008-02-19
| | | | | | | When SafeLogging is off, have TLS errors and messages logged with their associated addresses. svn:r13591
* r14181@tombo: nickm | 2008-02-15 16:48:17 -0500Nick Mathewson2008-02-15
| | | | | | | Fix all but 2 DOCDOC items; defer many XXX020s (particularly those where fixing them would fix no bugs at the risk of introducing some bugs). svn:r13529
* r18056@catbus: nickm | 2008-02-12 17:21:10 -0500Nick Mathewson2008-02-12
| | | | | | | Add roger's responses from IRC to some XXX020 items. svn:r13487
* r18051@catbus: nickm | 2008-02-12 15:20:43 -0500Nick Mathewson2008-02-12
| | | | | | | Re-tune mempool parametes based on testing on peacetime: use smaller chuncks, free them a little more aggressively, and try very hard to concentrate allocations on fuller chunks. Also, lots of new documentation. svn:r13484
* r14108@tombo: nickm | 2008-02-10 20:09:10 -0500Nick Mathewson2008-02-11
| | | | | | | add some documentation svn:r13462
* r14101@tombo: nickm | 2008-02-10 13:24:27 -0500Nick Mathewson2008-02-10
| | | | | | | Merge connection_or_act_on_netinfo into command.c; remove some fields from or_handshake_state(). svn:r13458
* doxygen and other cleanupsRoger Dingledine2008-02-09
| | | | svn:r13440
* r17991@catbus: nickm | 2008-02-08 18:41:26 -0500Nick Mathewson2008-02-08
| | | | | | | More protocol negotiation work. Make the negotiation actually complete and set the state to open. Fix a crash bug that occured when we forcibly stopped the connection from writing. svn:r13434
* r14063@tombo: nickm | 2008-02-08 15:48:32 -0500Nick Mathewson2008-02-08
| | | | | | | Add a bunch more code documentation; change the interface of fetch_var_cell_from_buf() so it takes the current link protocol into account and can't get confused by weird command bytes on v1 connections. svn:r13430
* Update some copyright notices: it is now 2008.Nick Mathewson2008-02-07
| | | | svn:r13412
* r17955@catbus: nickm | 2008-02-06 16:53:07 -0500Nick Mathewson2008-02-06
| | | | | | | The SSL portion of the revised handshake now seems to work: I just finally got a client and a server to negotiate versions. Now to make sure certificate verification is really happening, connections are getting opened, etc. svn:r13409
* r17936@catbus: nickm | 2008-02-06 00:31:11 -0500Nick Mathewson2008-02-06
| | | | | | | Fix/downgrade some more XXX020s. svn:r13397
* r17915@catbus: nickm | 2008-02-05 16:28:57 -0500Nick Mathewson2008-02-05
| | | | | | | Remove a dead function. svn:r13389
* r17852@catbus: nickm | 2008-01-30 17:23:36 -0500Nick Mathewson2008-01-30
| | | | | | | Correctly insert connections into the identity->connection map when we connect to a bridge without having specified its key. Fixes bug 574. svn:r13341
* minor cleanupsRoger Dingledine2008-01-19
| | | | svn:r13190
* r15891@tombo: nickm | 2008-01-12 19:20:24 -0500Nick Mathewson2008-01-13
| | | | | | | Basic hacks to get TLS handshakes working: remove dead code; fix post-handshake logic; keep servers from writing while the client is supposed to be renegotiating. This may work. Needs testing. svn:r13122
* r17473@catbus: nickm | 2008-01-05 22:15:05 -0500Nick Mathewson2008-01-06
| | | | | | | Add a reverse mapping from SSL to tor_tls_t*: we need this in order to do a couple of things the sensible way from inside callbacks. Also, add a couple of missing cases in connection_or.c svn:r13040
* The bridge GeoIP stats were counting other relays, for exampleRoger Dingledine2007-12-25
| | | | | | | self-reachability and authority-reachability tests. svn:r12960
* r15530@tombo: nickm | 2007-12-17 16:54:03 -0500Nick Mathewson2007-12-17
| | | | | | | First wodge of geoip code so bridges can figure out which countries are blocking them. svn:r12845