Marq Schneider
64060294ab
Allow changing the upload and download rates at runtime.
This adds a 'rate' command to modify the up and download
rates on the fly.
Closes GH-10
14 vuotta sitten
Marq Schneider
033b776ab2
Fix non-escaped hyphens in man pages.
Patch submitted from Cesare Falco.
Closes GH-19
14 vuotta sitten
Marq Schneider
a7adaf393d
Corrected man pages bug section URL for issue tracker.
14 vuotta sitten
Marq Schneider
f40524eeee
Indicate post 0.16 version.
14 vuotta sitten
Marq Schneider
47ac2e20c5
Merge branch 'master' of github.com:btpd/btpd
14 vuotta sitten
Marq Schneider
eb02e50904
Text updates for btpd 0.16.
14 vuotta sitten
Marq Schneider
950bfcb76a
Text updates for btpd 0.16.
14 vuotta sitten
Marq Schneider
f366f8969c
Correct list '%' sequences to match man page.
14 vuotta sitten
Marq Schneider
76c49475ce
Added custom formats for list operation.
Added printf()-style '%' and '\' sequences for custom list formats.
Updated btcli manpage to reflect change and start -a.
Closes GH-8
14 vuotta sitten
Marq Schneider
79641da4f2
Add multiple torrents at once.
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
14 vuotta sitten
Marq Schneider
2810f88532
Fix warning on no return value from non-void function.
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().
14 vuotta sitten
Marq Schneider
fd18baa9e6
Implement start all (btcli start -a) functionality.
Closes GH-7
14 vuotta sitten
Marq Schneider
b1d891c7b1
Don't set a maximum file size. read_file will use the file size.
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
14 vuotta sitten
Marq Schneider
1b22c92d46
Applied patches from OpenBSD to fix addrinfo and HTTP.
Applied OpenBSD patches from Nicholas Marriott.
Closes GH-12
14 vuotta sitten
Marq Schneider
034ba1a5e4
Added man pages for btcli, btinfo, and btpd.
Lars Nooden originally put these together for OpenBSD.
They contain the same information from --help and the README.
14 vuotta sitten
Richard Nyberg
c94ed423cf
Fix possible crash with kqueue.
With kqueue, a fdev may be in two active kevents.
16 vuotta sitten
Richard Nyberg
86500486e7
test(1)'s equality operator is '=' not '=='.
'==' does work in some implementations though.
16 vuotta sitten
Richard Nyberg
b1328200a1
Text updates for btpd 0.15.
16 vuotta sitten
Richard Nyberg
4539bc6fae
Run timeouts that will expire in less than one millisecond.
The timeouts for poll and epoll are given in milliseconds,
which caused busy looping in the event loop for timeouts
with less time remaining.
16 vuotta sitten
Richard Nyberg
030cc0fb9a
Add test case for compiling with pthreads.
On some systems no extra flags or libs are needed.
16 vuotta sitten
Richard Nyberg
9f4d2b0662
evtimer_gettime was broken on MacOs.
16 vuotta sitten
Richard Nyberg
cf5f386df1
Use the correct address length for connect.
The incorrect length caused problems on MacOs X.
16 vuotta sitten
Richard Nyberg
d3c57e7d14
Log failure of PROG_SILENT_IFELSE to config.log.
There really should be a btter way to do this, but I can't
find it. :(
16 vuotta sitten
Richard Nyberg
c96ede2b09
Indicate post 0.14 version.
16 vuotta sitten
Richard Nyberg
13f376e80d
Text updates for btpd 0.14.
16 vuotta sitten
Richard Nyberg
8b04af7e91
Find and ban peers with bad data.
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.
16 vuotta sitten
Richard Nyberg
89a95cbdf5
Split peer information. Make id hash functions available.
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.
16 vuotta sitten
Richard Nyberg
a32db85e59
Iterate throught the htbl instead of building an array first.
16 vuotta sitten
Richard Nyberg
966dd4f6e7
We must now set the ratio when creating hash tables.
16 vuotta sitten
Richard Nyberg
e5332f1aa9
Hashtable tweaks.
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.
16 vuotta sitten
Richard Nyberg
432be0a103
Make net->piece_count properly aligned.
The misalignment caused btpd to not work properly on machines like
the NSLU2. Reported by John Caldwell.
16 vuotta sitten
Richard Nyberg
74feed32d6
Set logmask from commandline.
16 vuotta sitten
Richard Nyberg
2d7d9c33af
More tracker logging, and use switch for log type.
16 vuotta sitten
Richard Nyberg
40077b7f74
Fix port type confusion.
Btpd will now be able to use high ports for itself and trackers again.
16 vuotta sitten
Richard Nyberg
747c80fbb1
Use only IPv4 by default.
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.
16 vuotta sitten
Richard Nyberg
be9d0e58a6
Set failures on individual trackers, not on tiers.
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.
16 vuotta sitten
Richard Nyberg
ef401997d3
Make the timer code work on MacOS as well.
16 vuotta sitten
Richard Nyberg
f0bd2f35ce
Stop complaints on printf argument types on MacOS.
16 vuotta sitten
Richard Nyberg
3b6ae02d52
Remove unneeded addrinfo flag which doesn't exist on MacOS.
16 vuotta sitten
Richard Nyberg
2bb7a7f6ad
Make sure required versions of autotools are used.
16 vuotta sitten
Richard Nyberg
c6f129faf7
Rename timer* to evtimer*.
16 vuotta sitten
Richard Nyberg
3b7dcfa964
Make the COPYRIGHT file match reality again.
16 vuotta sitten
Richard Nyberg
a32c7814cc
Show tracker counts in btcli stat.
The counts are for "reachable" trackers, ie. trackers that haven't
timed out or been disabled for one reason or other.
16 vuotta sitten
Richard Nyberg
3273c5c1b2
Change options to: '-4' => Ipv4 only, '-6' => IPv6 only.
16 vuotta sitten
Richard Nyberg
5aaf5be2ef
Better start from scratch on udp tracker support.
16 vuotta sitten
Richard Nyberg
438881f16f
Improve the torrent stop and btpd shutdown sequences.
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.
16 vuotta sitten
Richard Nyberg
50b69abbcd
More files to ignore.
16 vuotta sitten
Richard Nyberg
7708f42ebc
Use the correct macro to make automake happy.
Reported by <bsdfan666@cyberdude.com>.
16 vuotta sitten
Richard Nyberg
3857831f8a
Fix a typo in an error message.
16 vuotta sitten
Richard Nyberg
33f309c204
Print the result of, and not the address of, getpid().
16 vuotta sitten