summaryrefslogtreecommitdiff
path: root/net/tor
AgeCommit message (Collapse)AuthorFilesLines
2006-01-16As suggested by Steven M. Bellovin:jschauma1-1/+17
Add a note reminding users to manually set up EntryNodes in order to prevent an information disclosure vulnerability in this version of tor.
2006-01-15Update to tor-0.1.0.16jschauma2-6/+6
This update fixes nine rare crash bugs, and includes backports from the 0.1.1.x tree to be more aggressive about retrying failed streams.
2005-12-29Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mkjlam1-2/+1
automatically detects whether we want the pkginstall machinery to be used by the package Makefile.
2005-12-05Ran "pkglint --autofix", which corrected some of the quoting issues inrillig1-2/+2
CONFIGURE_ARGS.
2005-12-05Fixed pkglint warnings. The warnings are mostly quoting issues, forrillig1-3/+3
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some other changes are outlined in http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-09-27Changes in version 0.1.0.15 - 2005-09-23tv2-7/+6
o Bugfixes on 0.1.0.x: - Reject ports 465 and 587 (spam targets) in default exit policy. - Don't crash when we don't have any spare file descriptors and we try to spawn a dns or cpu worker. - Get rid of IgnoreVersion undocumented config option, and make us only warn, never exit, when we're running an obsolete version. - Don't try to print a null string when your server finds itself to be unreachable and the Address config option is empty. - Make the numbers in read-history and write-history into uint64s, so they don't overflow and publish negatives in the descriptor. - Fix a minor memory leak in smartlist_string_remove(). - We were only allowing ourselves to upload a server descriptor at most every 20 minutes, even if it changed earlier than that. - Clean up log entries that pointed to old URLs.
2005-09-27Use @PKG_HOME@ to store the pidfile, so that tor can actually create ittv2-4/+4
(/var/run is not writable by user "tor", and tor drops privs early).
2005-09-16"Oops." BUILDLINK_DEPMETHOD.libevent was defaulting to "build", which istv1-1/+2
no longer correct since update to libevent 1.x; it now uses libtool and generates a shlib. Remove the offending bl3 line, and bump all dependents' PKGREVISIONs, since the binary pkg changes for any OS that doesn't have a sufficient builtin libevent version (or the package has requested a non-builtin version).
2005-08-09sort.salo1-2/+2
2005-08-09update to tor-0.1.0.14drochner2-6/+6
Tor 0.1.0.14 fixes the second half of an important bug in the security of our crypto handshakes. This time for sure. :) All clients should upgrade. o Bugfixes on 0.1.0.x: - Fix the other half of the bug with crypto handshakes. - Fix an assert trigger if you send a 'signal term' via the controller when it's listening for 'event info' messages.
2005-08-05Update to 0.1.0.13:jschauma2-6/+6
- Fix a critical bug in the security of our crypto handshakes. - Fix a size_t underflow in smartlist_join_strings2() that made it do bad things when you hand it an empty smartlist. - Fix Windows installer to ship Tor license (thanks to Aphex for pointing out this oversight) and put a link to the doc directory in the start menu. - Explicitly set no-unaligned-access for sparc: it turns out the new gcc's let you compile broken code, but that doesn't make it not-broken
2005-08-04update to 0.1.0.12drochner5-16/+37
This is a major update, too many improvements to list here, see the ChangeLog in the distribution for details. pkgsrc changes: -remove dependency on tsocks; this is just one possible way to make applications use SOCKS; add a hint to MESSAGE -use the pkgsrc libevent - the NetBSD builtin is old, and tor complains loudly if it doesn't like the libevent version -make the rc.d script executable
2005-06-22Security update to version 0.0.9.10salo2-6/+6
Changes: Bugfixes on 0.0.9.x (backported from 0.1.0.10): - Refuse relay cells that claim to have a length larger than the maximum allowed. This prevents a potential attack that could read arbitrary memory (e.g. keys) from an exit server's process. Bugfixes on 0.0.9.x: - If unofficial Tor clients connect and send weird TLS certs, our Tor server triggers an assert. This release contains a minimal backport from the broader fix that we put into 0.1.0.4-rc. Approved by <jlam>
2005-05-02RCD_SCRIPTS_EXAMPLEDIR is no longer customizable.reed1-1/+2
And always is defined as share/examples/rc.d which was the default before. This rc.d scripts are not automatically added to PLISTs now also. So add to each corresponding PLIST as required. This was discussed on tech-pkg in late January and late April. Todo: remove the RCD_SCRIPTS_EXAMPLEDIR uses in MESSAGES and elsewhere and remove the RCD_SCRIPTS_EXAMPLEDIR itself.
2005-04-16Update tor to 0.0.9.8:jschauma2-6/+6
- Fix another race crash bug (thanks to Glenn Fink for reporting). - Compare identity to identity, not to nickname, when extending to a router not already in the directory. This was preventing us from extending to unknown routers. Oops. - Make sure to create OS X Tor user in <500 range, so we aren't creating actual system users. - Note where connection-that-hasn't-sent-end was marked, and fix a few really loud instances of this harmless bug (it's fixed more in 0.1.0.x). - We have a bug that I haven't found yet. Sometimes, very rarely, cpuworkers get stuck in the 'busy' state, even though the cpuworker thinks of itself as idle. This meant that no new circuits ever got established. Here's a workaround to kill any cpuworker that's been busy for more than 100 seconds.
2005-04-11Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.tv1-2/+1
2005-03-29Update tor to 0.0.9.6, with the following bugfixes:jschauma2-6/+6
- Add new end stream reasons to maintainance branch. Fix bug where reason (8) could trigger an assert. Prevent bug from recurring. - Apparently win32 stat wants paths to not end with a slash. - Fix assert triggers in assert_cpath_layer_ok(), where we were blowing away the circuit that conn->cpath_layer points to, then checking to see if the circ is well-formed. Backport check to make sure we dont use the cpath on a closed connection. - Prevent circuit_resume_edge_reading_helper() from trying to package inbufs for marked-for-close streams. - Don't crash on hup if your options->address has become unresolvable. - Some systems (like OS X) sometimes accept() a connection and tell you the remote host is 0.0.0.0:0. If this happens, due to some other mis-features, we get confused; so refuse the conn for now. - Fix harmless but scary "Unrecognized content encoding" warn message. - Add new stream error reason: TORPROTOCOL reason means "you are not speaking a version of Tor I understand; say bye-bye to your stream." - Be willing to cache directories from up to ROUTER_MAX_AGE seconds into the future, now that we are more tolerant of skew. This resolves a bug where a Tor server would refuse to cache a directory because all the directories it gets are too far in the future; yet the Tor server never logs any complaints about clock skew.
2005-02-28update tor to 0.0.9.5:jschauma2-7/+6
- Fix an assert race at exit nodes when resolve requests fail. - Stop picking unverified dir mirrors--it only leads to misery. - Patch from Dmitry Bely so Tor runs better as a service under the win32 SYSTEM account. Service support is still not compiled into the executable by default. - Make tor-resolve actually work (?) on Win32. - Fix a sign bug when getrlimit claims to have 4+ billion file descriptors available. - Stop refusing to start when bandwidthburst == bandwidthrate. - When create cells have been on the onion queue more than five seconds, just send back a destroy and take them off the list.
2005-02-24Add RMD160 digests.agc1-1/+2
2005-02-18This needs zlib, too.jschauma1-2/+3
PKGREVISION++
2005-02-17create RCD_SCRIPTS_EXAMPLEDIR if it doesn't existsjschauma1-1/+2
2005-02-14Make this work correctly as a binary package.jschauma2-6/+21
Bump PKGREVISION.
2005-02-13Update tor to 0.0.9.4.jschauma8-42/+110
pkgsrc changes: - depend on tsocks to allow torification of other applications - create a user for this application to run as - install a suitable rc script ChangeLog says: o Bugfixes on 0.0.9: - Fix an assert bug that took down most of our servers: when a server claims to have 500 GB of bandwidthburst, don't freak out. - Don't crash as badly if we have spawned the max allowed number of dnsworkers, or we're out of file descriptors. - Block more file-sharing ports in the default exit policy. - MaxConn is now automatically set to the hard limit of max file descriptors we're allowed (ulimit -n), minus a few for logs, etc. - Give a clearer message when servers need to raise their ulimit -n when they start running out of file descriptors. - SGI Compatibility patches from Jan Schaumann. - Tolerate a corrupt cached directory better. - When a dirserver hasn't approved your server, list which one. - Go into soft hibernation after 95% of the bandwidth is used, not 99%. This is especially important for daily hibernators who have a small accounting max. Hopefully it will result in fewer cut connections when the hard hibernation starts. - Load-balance better when using servers that claim more than 800kB/s of capacity. - Make NT services work (experimental, only used if compiled in).
2005-02-02Update tor to 0.0.9.3.jschauma4-7/+43
Pkgsrc changes: - make this build under IRIX. - tor has moved to tor.eff.org Version changes since 0.0.9.2: - Backport the cpu use fixes from main branch, so busy servers won't need as much processor time. - Work better when we go offline and then come back, or when we run Tor at boot before the network is up. We do this by optimistically trying to fetch a new directory whenever an application request comes in and we think we're offline -- the human is hopefully a good measure of when the network is back. - Backport some minimal hidserv bugfixes: keep rend circuits open as long as you keep using them; actually publish hidserv descriptors shortly after they change, rather than waiting 20-40 minutes. - Enable Mac startup script by default. - Fix duplicate dns_cancel_pending_resolve reported by Giorgos Pallas. - When you update AllowUnverifiedNodes or FirewallPorts via the controller's setconf feature, we were always appending, never resetting. - When you update HiddenServiceDir via setconf, it was screwing up the order of reading the lines, making it fail. - Do not rewrite a cached directory back to the cache; otherwise we will think it is recent and not fetch a newer one on startup. - Workaround for webservers that lie about Content-Encoding: Tor now tries to autodetect compressed directories and compression itself. This lets us Proxypass dir fetches through apache.
2005-01-11Update to 0.0.9.2 (OK'd by jschauma@netbsd.org).tv3-11/+6
The ChangeLog is huge -- see it for changes. This is still a pre-alpha piece of software, so rapid development and change is currently expected.
2004-11-11Update tor to latest stable version 0.0.8.1:jschauma2-6/+5
Changes in version 0.0.8.1 - 2004-10-14 o Bugfixes: - Fix a seg fault that can be triggered remotely for Tor clients/servers with an open dirport. - Fix a rare assert trigger, where routerinfos for entries in our cpath would expire while we're building the path. - Fix a bug in OutboundBindAddress so it (hopefully) works. - Fix a rare seg fault for people running hidden services on intermittent connections. - Fix a bug in parsing opt keywords with objects. - Fix a stale pointer assert bug when a stream detaches and reattaches. - Fix a string format vulnerability (probably not exploitable) in reporting stats locally. - Fix an assert trigger: sometimes launching circuits can fail immediately, e.g. because too many circuits have failed recently. - Fix a compile warning on 64 bit platforms. Changes in version 0.0.8 - 2004-08-25 o Bugfixes: - Made our unit tests compile again on OpenBSD 3.5, and tor itself compile again on OpenBSD on a sparc64. - We were neglecting milliseconds when logging on win32, so everything appeared to happen at the beginning of each second. - Check directory signature _before_ you decide whether you're you're running an obsolete version and should exit. - Check directory signature _before_ you parse the running-routers list to decide who's running. - Check return value of fclose while writing to disk, so we don't end up with broken files when servers run out of disk space. - Port it to SunOS 5.9 / Athena - Fix two bugs in saving onion keys to disk when rotating, so hopefully we'll get fewer people using old onion keys. - Remove our mostly unused -- and broken -- hex_encode() function. Use base16_encode() instead. (Thanks to Timo Lindfors for pointing out this bug.) - Only pick and establish intro points after we've gotten a directory. - Fix assert triggers: if the other side returns an address 0.0.0.0, don't put it into the client dns cache. - If a begin failed due to exit policy, but we believe the IP address should have been allowed, switch that router to exitpolicy reject *:* until we get our next directory. o Protocol changes: - 'Extend' relay cell payloads now include the digest of the intended next hop's identity key. Now we can verify that we're extending to the right router, and also extend to routers we hadn't heard of before. o Features: - Tor nodes can now act as relays (with an advertised ORPort) without being manually verified by the dirserver operators. - Uploaded descriptors of unverified routers are now accepted by the dirservers, and included in the directory. - Verified routers are listed by nickname in the running-routers list; unverified routers are listed as "$<fingerprint>". - We now use hash-of-identity-key in most places rather than nickname or addr:port, for improved security/flexibility. - AllowUnverifiedNodes config option to let circuits choose no-name routers in entry,middle,exit,introduction,rendezvous positions. Allow middle and rendezvous positions by default. - When picking unverified routers, skip those with low uptime and/or low bandwidth, depending on what properties you care about. - ClientOnly option for nodes that never want to become servers. - Directory caching. - "AuthoritativeDir 1" option for the official dirservers. - Now other nodes (clients and servers) will cache the latest directory they've pulled down. - They can enable their DirPort to serve it to others. - Clients will pull down a directory from any node with an open DirPort, and check the signature/timestamp correctly. - Authoritative dirservers now fetch directories from other authdirservers, to stay better synced. - Running-routers list tells who's down also, along with noting if they're verified (listed by nickname) or unverified (listed by hash-of-key). - Allow dirservers to serve running-router list separately. This isn't used yet. - You can now fetch $DIRURL/running-routers to get just the running-routers line, not the whole descriptor list. (But clients don't use this yet.) - Clients choose nodes proportional to advertised bandwidth. - Clients avoid using nodes with low uptime as introduction points. - Handle servers with dynamic IP addresses: don't just replace options->Address with the resolved one at startup, and detect our address right before we make a routerinfo each time. - 'FascistFirewall' option to pick dirservers and ORs on specific ports; plus 'FirewallPorts' config option to tell FascistFirewall which ports are open. (Defaults to 80,443) - Try other dirservers immediately if the one you try is down. This should tolerate down dirservers better now. - ORs connect-on-demand to other ORs - If you get an extend cell to an OR you're not connected to, connect, handshake, and forward the create cell. - The authoritative dirservers stay connected to everybody, and everybody stays connected to 0.0.7 servers, but otherwise clients/servers expire unused connections after 5 minutes. - When servers get a sigint, they delay 30 seconds (refusing new connections) then exit. A second sigint causes immediate exit. - File and name management: - Look for .torrc if no CONFDIR "torrc" is found. - If no datadir is defined, then choose, make, and secure ~/.tor as datadir. - If torrc not found, exitpolicy reject *:*. - Expands ~/ in filenames to $HOME/ (but doesn't yet expand ~arma). - If no nickname is defined, derive default from hostname. - Rename secret key files, e.g. identity.key -> secret_id_key, to discourage people from mailing their identity key to tor-ops. - Refuse to build a circuit before the directory has arrived -- it won't work anyway, since you won't know the right onion keys to use. - Parse tor version numbers so we can do an is-newer-than check rather than an is-in-the-list check. - New socks command 'resolve', to let us shim gethostbyname() locally. - A 'tor_resolve' script to access the socks resolve functionality. - A new socks-extensions.txt doc file to describe our interpretation and extensions to the socks protocols. - Add a ContactInfo option, which gets published in descriptor. - Write tor version at the top of each log file - New docs in the tarball: - tor-doc.html. - Document that you should proxy your SSL traffic too. - Log a warning if the user uses an unsafe socks variant, so people are more likely to learn about privoxy or socat. - Log a warning if you're running an unverified server, to let you know you might want to get it verified. - Change the default exit policy to reject the default edonkey, kazaa, gnutella ports. - Add replace_file() to util.[ch] to handle win32's rename(). - Publish OR uptime in descriptor (and thus in directory) too. - Remember used bandwidth (both in and out), and publish 15-minute snapshots for the past day into our descriptor. - Be more aggressive about trying to make circuits when the network has changed (e.g. when you unsuspend your laptop). - Check for time skew on http headers; report date in response to "GET /". - If the entrynode config line has only one node, don't pick it as an exitnode. - Add strict{entry|exit}nodes config options. If set to 1, then we refuse to build circuits that don't include the specified entry or exit nodes. - OutboundBindAddress config option, to bind to a specific IP address for outgoing connect()s. - End truncated log entries (e.g. directories) with "[truncated]".
2004-10-03Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10tv1-1/+2
in the process. (More information on tech-pkg.) Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and installing .la files. Bump PKGREVISION (only) of all packages depending directly on the above via a buildlink3 include.
2004-08-13Import tor into pkgsrc:jschauma4-0/+65
The simple version: Tor provides a distributed network of servers ("onion routers"). Users bounce their TCP streams (web traffic, FTP, SSH, etc.) around the routers. This makes it hard for recipients, observers, and even the onion routers themselves to track the source of the stream. The complex version: Onion Routing is a connection-oriented anonymizing communication service. Users choose a source-routed path through a set of nodes, and negotiate a "virtual circuit" through the network, in which each node knows its predecessor and successor, but no others. Traffic flowing down the circuit is unwrapped by a symmetric key at each node, which reveals the downstream node.