summaryrefslogtreecommitdiff
path: root/src/or/or.h
AgeCommit message (Collapse)Author
2003-11-19Separate failure-count tracking from circuit-launching.Nick Mathewson
Increment failure counts only when circuits close without having been built. Reset failure counts only on the second, and when circuits are done building. svn:r847
2003-11-18bugfix: don't ask for ->next of an expired circuitRoger Dingledine
bugfix: keep going when a circ fails in circuit_n_conn_open (make circuit_enumerate_by_naddr_nport obsolete) bugfix: make circuit_n_conn_open only look at circ's that start at us bugfix: only try circuit_n_conn_open if we're an OP. Otherwise we expect connections to always already be up. bugfix: when choosing path length, pay attention to whether the directory says a router is down. bugfix: when picking good exit, skip routers which are known to be down (more work needs to be done on this one) svn:r838
2003-11-18don't build too many circs at onceRoger Dingledine
expire circs that have been building for too long svn:r835
2003-11-17recognize in-progress circs and don't start redundant onesRoger Dingledine
quickly notice streams that don't have a circ on the way, and start one svn:r819
2003-11-16bugfixesRoger Dingledine
svn:r818
2003-11-16change when circuits are built and expiredRoger Dingledine
not quite happy with it yet svn:r817
2003-11-16initial patches on patchesRoger Dingledine
svn:r814
2003-11-16Finish implementing the rest of the exitpolicy stuff, except for ↵Nick Mathewson
automatically starting circuit builds. svn:r813
2003-11-14Improved exit policy syntax; basic client-side DNS caching.Nick Mathewson
- Exit policies now support bitmasks (18.0.0.0/255.0.0.0) and bitcounts 18.0.0.0/8. Policies are parsed on startup, not when comparing to them. - desired_path_len is now part of an opaque cpath_build_state_t structure. - END_REASON_EXITPOLICY cells no longer include a port. - RELAY_COMMAND_CONNECTED cells now include the IP address we've connected to. - connection_edge now has a client_dns cache to remember resolved addresses. It gets populated by RELAY_COMMAND_CONNECTED cells and END_REASON_EXITPOLICY cells. It gets used by connection_ap_handshake_send_begin. We don't compare it to exit policies yet. svn:r812
2003-11-13bump default pathlen to 3; clean up surrounding codeRoger Dingledine
svn:r810
2003-11-13let getconfig survive repeated calls. now we call it again when we hup.Roger Dingledine
change RecommendedVersions into a config option, so dirservers can hup for a new one svn:r809
2003-11-12lay groundwork for EntryNodes and ExitNodesRoger Dingledine
svn:r805
2003-11-12Remove dead codeNick Mathewson
svn:r794
2003-11-12Compute paths as we build them.Nick Mathewson
svn:r793
2003-11-12Refactor onion_generate_cpath to build cpaths one hop at a time. ThisNick Mathewson
is a the first step in computing hops one step at a time. Next, we move the responsibility for calling onion_extend_cpath into circuit.c (Later, we may want to special-case onion_extend_cpath to treat entry and exit routers differently.) svn:r792
2003-11-11conn->socks_version is obsoleteRoger Dingledine
svn:r787
2003-11-11Rename aci to circ_id throughout.Nick Mathewson
svn:r784
2003-11-11Make AP connections wait for a circuit if none exists.Nick Mathewson
Also: - Refactor socks request into a separate struct - Add a separate 'waiting for circuit' state to AP connections between 'waiting for socks' and 'open'. Arma: can you check out the XXX's I've added to connection_edge? I may be mishandling some async and close logic. svn:r783
2003-11-10client now survives going offline betterRoger Dingledine
fix badness in usage() if neither socksport nor orrport is defined, quit obsolete connection_flush_buf() svn:r780
2003-10-25add DirBindAddress, parse the BindAddress's when you bindRoger Dingledine
exit if bind fails add usage printfs rearrange config options for readability svn:r674
2003-10-22play with connection_edge_send_commandRoger Dingledine
maybe more robust now svn:r655
2003-10-22make end relay cells have payloadsRoger Dingledine
move default exit policy into config files svn:r653
2003-10-22added User and Group options -- if you set them, tor will try toSteven Hazel
setuid and setgid respectively, and die if it can't. (If the User option is set, tor will setgid to the user's gid as well.) This happens after the pidfile is created, so that in cases where tor needs to be root to work with the pidfile, it will at least be able to create it, although it won't be able to delete it. That sucks, but it's somewhat better than not being able to create the pidfile in the first place. svn:r652
2003-10-21move closer to being able to reload config on HUPRoger Dingledine
rename APPort to SocksPort introduce new tor_free() macro svn:r642
2003-10-21send the end cell when we realize we're going to end,Roger Dingledine
not when we're closing the stream. this lets us put a payload in the end cell if we want to, to describe why we're closing the stream. there are still some places where we don't send the end cell immediately. i need to track them down. but it's a low priority, since i've made it send the end cell when we close the stream if we haven't already sent it. svn:r640
2003-10-19move to 0.0.2pre13tor-0.0.2pre13Roger Dingledine
svn:r631
2003-10-15clean up logging, allow user to specify log filesRoger Dingledine
If DebugLogFile is specified, log to it at -l debug If LogFile is specified, log to it at the -l from the commandline (default info) If no LogFile *and* not a Daemon, then log to stdout. Make conn->s = -1 by default (this might break things) When kill -USR1, prefer to log at INFO, but make sure they always see it. svn:r596
2003-10-15Make last commit buildNick Mathewson
svn:r593
2003-10-14Make buffers grow and shrink as needed.Nick Mathewson
svn:r583
2003-10-12put out 0.0.2pre12Roger Dingledine
(mainly doc and log changes) svn:r579
2003-10-09Refactor, rename, and clarifyNick Mathewson
svn:r569
2003-10-08add in basic support for pidfilesRoger Dingledine
(patch courtesy aaron turner) svn:r565
2003-10-080.0.2pre11, new licenseRoger Dingledine
svn:r564
2003-10-08Update LICENSE and copyright dates.Nick Mathewson
svn:r560
2003-10-07obey exit policies for addresses tooRoger Dingledine
svn:r555
2003-10-07some early bugfixesRoger Dingledine
our log() conflicts with log(3) distribute only the correct files from doc/ and src/config/ sometimes laptops go back in time. i guess that's ok for now. and bump the version number because we're live. svn:r544
2003-10-04refactor around connection_edge_send_command()Roger Dingledine
svn:r539
2003-10-04refactor so connection_write_to_buf() never failsRoger Dingledine
svn:r537
2003-10-04socks5 now worksRoger Dingledine
(or at least, we can talk to mozilla.) svn:r536
2003-10-02Add new cell fullness and bandwidth stats.Nick Mathewson
svn:r533
2003-10-01my_routerinfo, router_is_me, and learn_my_address are obsoleteRoger Dingledine
ACIs are decided now by strcmp'ing nicknames, rather than comparing addr:port svn:r529
2003-10-01rebuild directory before uploadingNick Mathewson
svn:r528
2003-10-01Move dirserv/routers code out of main.cNick Mathewson
svn:r527
2003-09-30ORs post descriptors periodically tooRoger Dingledine
svn:r523
2003-09-30mark all dirservers up at boot; mark a dirserver down if dir fetch failsRoger Dingledine
svn:r519
2003-09-30Bugfixes in directory code:Nick Mathewson
Improve debugging output on fingerprint checking. Make sure to add our own fingerprint to the fingerprint list _before_ adding our own descriptor, or else we'll reject ourself. Don't call a directory invalid just because we have a newer descriptor for some router. Use router_get_dir_hash to generate hashes for signed directories. Make sure we add our own descriptor successfully. Don't fall-through on failed base64-endode. svn:r514
2003-09-30move connection_array accessors from main.c to connection.cRoger Dingledine
(leave poll_array accessors in main.c) svn:r512
2003-09-30move the tls handshake stuff to connection_orRoger Dingledine
svn:r510
2003-09-30getting closer to having dirserv workingRoger Dingledine
we now add our own descriptor to the descriptor list and we rebuild the directory (and dump to disk) after receiving a POST svn:r509
2003-09-27Write necessary backends for online directory generation. I think.Nick Mathewson
svn:r503