Commit graph

60 commits

Author SHA1 Message Date
agc
b12d62efb5 Add RMD160 digests. 2005-02-24 12:13:41 +00:00
jschauma
de65cb4332 This needs zlib, too.
PKGREVISION++
2005-02-18 04:13:04 +00:00
jschauma
b6a49f4b65 create RCD_SCRIPTS_EXAMPLEDIR if it doesn't exists 2005-02-17 17:53:45 +00:00
jschauma
0360cbf258 Make this work correctly as a binary package.
Bump PKGREVISION.
2005-02-14 18:51:58 +00:00
jschauma
19dad1b8a1 Update tor to 0.0.9.4.
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-13 20:27:53 +00:00
jschauma
2a3e955656 Update tor to 0.0.9.3.
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-02-02 16:41:22 +00:00
tv
eecb01b9fa Update to 0.0.9.2 (OK'd by jschauma@netbsd.org).
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.
2005-01-11 21:02:20 +00:00
jschauma
70b2412163 Update tor to latest stable version 0.0.8.1:
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-11-11 20:52:46 +00:00
tv
c487cb967a Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10
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-10-03 00:12:51 +00:00
jschauma
00ba74d734 Import tor into pkgsrc:
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.
2004-08-13 19:33:41 +00:00