about summary refs log tree commit diff
AgeCommit message (Collapse)Author
2010-07-29Added custom formats for list operation.Marq Schneider
Added printf()-style '%' and '\' sequences for custom list formats. Updated btcli manpage to reflect change and start -a. Closes GH-8
2010-07-26Add multiple torrents at once.Marq Schneider
Modified patch from savrus and nicm. Allows adding multiple torrents from one 'btcli add' command. Also made minor improvements to add code. Closes GH-9
2010-07-26Fix warning on no return value from non-void function.Marq Schneider
There was a warning at the end of addrinfo_td because it returns a "void *" but had no return statement. The fix was call pthread_exit().
2010-07-22Implement start all (btcli start -a) functionality.Marq Schneider
Closes GH-7
2010-07-20Don't set a maximum file size. read_file will use the file size.Marq Schneider
There was a hard-coded 2MB file size limit on the .torrent files. Set the limit to 0 so read_file() will use the actual file size. Closes GH-14
2010-07-18Applied patches from OpenBSD to fix addrinfo and HTTP.Marq Schneider
Applied OpenBSD patches from Nicholas Marriott. Closes GH-12
2010-07-17Added man pages for btcli, btinfo, and btpd.Marq Schneider
Lars Nooden originally put these together for OpenBSD. They contain the same information from --help and the README.
2009-02-17Fix possible crash with kqueue.Richard Nyberg
With kqueue, a fdev may be in two active kevents.
2009-02-10test(1)'s equality operator is '=' not '=='.Richard Nyberg
'==' does work in some implementations though.
2009-02-09Text updates for btpd 0.15. v0.15Richard Nyberg
2009-02-09Run timeouts that will expire in less than one millisecond.Richard Nyberg
The timeouts for poll and epoll are given in milliseconds, which caused busy looping in the event loop for timeouts with less time remaining.
2009-02-09Add test case for compiling with pthreads.Richard Nyberg
On some systems no extra flags or libs are needed.
2009-02-08evtimer_gettime was broken on MacOs.Richard Nyberg
2009-02-08Use the correct address length for connect.Richard Nyberg
The incorrect length caused problems on MacOs X.
2009-02-08Log failure of PROG_SILENT_IFELSE to config.log.Richard Nyberg
There really should be a btter way to do this, but I can't find it. :(
2009-02-08Indicate post 0.14 version.Richard Nyberg
2009-02-08Text updates for btpd 0.14. v0.14Richard Nyberg
2009-02-07Find and ban peers with bad data.Richard Nyberg
Log which peer contributed what to a piece. Do not try to download the same piece from the same peers. Don't download at all from peers implicated in 3 bad pieces. When a previously bad piece has been downloaded successfully the bad peer(s) can be found and banned.
2009-02-06Split peer information. Make id hash functions available.Richard Nyberg
struct peer is now peer and meta_peer. meta_peer can be used as a handle that won't be affected if a peer vanishes. The meta_peers are kept in a hash table to enable fast lookup by peer id.
2009-02-06Iterate throught the htbl instead of building an array first.Richard Nyberg
2009-02-06We must now set the ratio when creating hash tables.Richard Nyberg
2009-02-06Hashtable tweaks.Richard Nyberg
o Added ability to set the ratio items:buckets. o One can remove items while iterating. o _htbl_tov now allocates the result array, _htbl_fillv acts as the old _htbl_tov did.
2009-02-03Make net->piece_count properly aligned.Richard Nyberg
The misalignment caused btpd to not work properly on machines like the NSLU2. Reported by John Caldwell.
2009-02-03Set logmask from commandline.Richard Nyberg
2009-02-03More tracker logging, and use switch for log type.Richard Nyberg
2009-02-03Fix port type confusion.Richard Nyberg
Btpd will now be able to use high ports for itself and trackers again.
2009-01-30Use only IPv4 by default.Richard Nyberg
Unfortunately there are some useless IPv6 trackers that will be used instead of their more usefull IPv4 counterparts when IPv6 is enabled. The -4 and -6 options are tweaked once again. If -6 is given only IPv6 will be used. If both are given both will be used and otherwise only IPv4 will be used. The IPvX stuff should probably be set per torrent in the future.
2009-01-30Set failures on individual trackers, not on tiers.Richard Nyberg
Unfortunately many don't understand the tracker tiers and put unrelated trackers in the same tier. Thus btpd can't assume that a failure from one tracker in a tier is valid for all trackers in that tier.
2009-01-29Make the timer code work on MacOS as well.Richard Nyberg
2009-01-29Stop complaints on printf argument types on MacOS.Richard Nyberg
2009-01-29Remove unneeded addrinfo flag which doesn't exist on MacOS.Richard Nyberg
2009-01-29Make sure required versions of autotools are used.Richard Nyberg
2009-01-29Rename timer* to evtimer*.Richard Nyberg
2009-01-26Make the COPYRIGHT file match reality again.Richard Nyberg
2009-01-26Show tracker counts in btcli stat.Richard Nyberg
The counts are for "reachable" trackers, ie. trackers that haven't timed out or been disabled for one reason or other.
2009-01-26Change options to: '-4' => Ipv4 only, '-6' => IPv6 only.Richard Nyberg
2009-01-26Better start from scratch on udp tracker support.Richard Nyberg
2009-01-26Improve the torrent stop and btpd shutdown sequences.Richard Nyberg
Torrents are now considered stopped and may be restarted even if the stop event haven't been sent the trackers yet. The same holds for the del and add commands. A btpd process in shutdown mode that only have stopped torrents, but is still sending the stop event to trackers, will release resources that would block a new btpd to start. It will the silently exit when it's finished with the trackers. This also makes the timeout parameter for shutdown unnecessary.
2009-01-26More files to ignore.Richard Nyberg
2009-01-26Use the correct macro to make automake happy.Richard Nyberg
Reported by <bsdfan666@cyberdude.com>.
2009-01-26Fix a typo in an error message.Richard Nyberg
2009-01-26Print the result of, and not the address of, getpid().Richard Nyberg
2009-01-26Rethink the tracker client code somewhat.Richard Nyberg
btpd now uses all tiers in parallel, so a torrent with two tiers will essentially be treated by btpd as a torrent with two trackers to send each event to. This is not quite what the multitrackes standard says, but it's much easier to implement reasonable behaviour this way. btpd is going to report the number of good trackers for a torrent instead of the number of errors, but for now just report zero errors.
2009-01-15git clean is a better way to clean the tree.Richard Nyberg
2009-01-14Add IPv6 support.Richard Nyberg
Btpd can now use both ipv4 and ipv6. The new options -4 and -6 toggles use of ip v4 and v6 respectively. They are both used by default. Remove restrictions on the --ip option since the spec allows to be a dns name. Ultimately this option may need to be changed on a per tracker/torrent basis.
2009-01-13Added macros for checking supported compiler flags.Richard Nyberg
2009-01-13Start previously active torrents after log file setup.Richard Nyberg
2009-01-12Test for working snprintf at startup.Richard Nyberg
2009-01-12Let the initial process linger until the daemon is initialized.Richard Nyberg
This enables us to report errors in the btpd init sequence to the shell by non zero exit code. Changed from flock to lockf because of solaris troubles. I may be confused though.
2009-01-12Don't use the bsd err and warn family of functions. Solaris doesn't have them.Richard Nyberg