Richard Nyberg
42c2605dcb
Bring back the old thread callback code.
16 lat temu
Richard Nyberg
eb0f4388f8
More autotool files to ignore.
16 lat temu
Richard Nyberg
d8e1d6a492
Tell git to ignore files generated by autotools.
16 lat temu
Richard Nyberg
1a10f0fb76
Fix type mismatches in a couple of printf statements.
16 lat temu
Richard Nyberg
19b7e785f5
Turn off warnings for pointer sign mismatches.
16 lat temu
Richard Nyberg
340fbf4737
The "Host" HTTP header should be placed as early as possible and also include
the port number.
17 lat temu
Richard Nyberg
1758597e3e
Recognize both the CRLF sequence and single LF characters as line terminators.
17 lat temu
Richard Nyberg
ff76e2bf6c
Add libraries in the correct place.
17 lat temu
Richard Nyberg
9a08fda26e
Create the peer id and random seed based on the host name, port and
the time of the initialization in seconds and microseconds.
17 lat temu
Richard Nyberg
46fb0c2419
Fix the '--topdir' option for single file torrents without a top directory.
Such torrents were saved as 'name/name' instead of 'name'. The option broke
in rev253.
Patch from borg@uu3.net .
17 lat temu
Richard Nyberg
8f4fde49ee
Fix bug in benc_length. benc_first shouldn't be used here since it returns
NULL on empty lists or dictionaries. This could cause crashes.
Reported by Robert Jonsson.
17 lat temu
Richard Nyberg
2886768d30
Clean up the #include sections in the btpd files. Most common headers and
all btpd headers are included through btpd.h.
17 lat temu
Richard Nyberg
e8a5b6cf28
Added some more info to CHANGES and version information to README.
17 lat temu
Richard Nyberg
24c2c1cd4a
#include order.
17 lat temu
Richard Nyberg
7c2b7b656e
Fix problem introduced in r345. A call to http_get could cause the
callback to be called before http_get returned.
17 lat temu
Richard Nyberg
630f11d18b
I had missed a check for tracker errors. When a torrent is stopping it's
supposed to stop if it can't contact the tracker in STOP_ERRORS tries.
17 lat temu
Richard Nyberg
f26afae214
Fix from libevent r353.
17 lat temu
Richard Nyberg
84ae36cd2b
Only keep one block of outgoing data in memory.
17 lat temu
Richard Nyberg
771e649c41
Don't try to resolve the host if it is already given as an ip address.
17 lat temu
Richard Nyberg
098664da9a
btpd doesn't need pthreads and curl, and libevent is included. Scratch
the dependencies from the README.
17 lat temu
Richard Nyberg
bac7eb9249
Changes for 0.13.
17 lat temu
Richard Nyberg
796e706974
Update the info files regularly. Before they were only updated when a torrent
stopped.
17 lat temu
Richard Nyberg
5e09c5b127
Update for 2007.
17 lat temu
Richard Nyberg
3c59bb01e2
Set torrent deletion flag as parameter to torrent_stop. Update torrent info
in torrent_stop rather than torrent_kill. The data doesn't change but there
may be some time between the two events.
17 lat temu
Richard Nyberg
9bd0fc6cdc
o Rename net_(write|read)32 to (enc|dec)_be32. Add similar functions for 64
bits as well. Implement them in libmisc instead of in btpd.
o Change resume file format and related APIs. The resume files are now memory
mapped.
17 lat temu
Richard Nyberg
c8ab530c95
Some code for udp trackers. Not done yet, so it isn't hooked to the build.
17 lat temu
Richard Nyberg
b2fd196e12
Update to libevent-1.3b.
17 lat temu
Richard Nyberg
564fe5afe1
Some better logging.
18 lat temu
Richard Nyberg
91f85c222b
Update to libevent from patches-1.3 r335.
18 lat temu
Richard Nyberg
372cec7b53
Some clean up of the values sent for tget answers. Send values that makes
sense instead of errors. Fix wrong type for IPC_TVAL_CSIZE, reported by
Arnaud Bergeron.
18 lat temu
Richard Nyberg
02733b16ec
Get rid of tp->relpath.
18 lat temu
Richard Nyberg
e117d81cf3
Only trigger error handling if an error actually occured. :P
18 lat temu
Richard Nyberg
8d7898d728
o Make errors when reading or writing torrent data non fatal. Instead of
killing btpd, only the troublesome torrent will be stopped.
o Some code shuffle.
18 lat temu
Richard Nyberg
d00d1fc36a
Call peer_on_no_reqs at the appropriate time.
18 lat temu
Richard Nyberg
12c3181b65
Add an option to specify the ip the tracker should distribute for this peer.
18 lat temu
Richard Nyberg
eeb9d252e1
Fix bug in get_op. Increase the tracker error counter, and reduce the timeout
for trying the next url, for url's that we can't use. The timeout is in this
case just there to keep btpd from busy looping on a bad url.
18 lat temu
Richard Nyberg
68c4f99b29
Fix evbuffer_add_vprintf. Patch taken from < http://monkeymail.org/archives/libevent-users/2006-October/000299.html >.
18 lat temu
Richard Nyberg
6fbf0b520f
Fix return value from evdns_resolv_conf_parse and initialization of the
dns transaction id.
18 lat temu
Richard Nyberg
393ee77bbc
Update COPYRIGHT to match the current copyrights and licenses in the btpd
package.
18 lat temu
Richard Nyberg
352ed70600
Update the build scripts for the following events:
o Some new source files.
o Inclusion of libevent.
o Removal of curl and pthreads dependencies.
18 lat temu
Richard Nyberg
95371d8453
Remove files not needed by btpd. Make the build scripts more suitable for
btpd.
18 lat temu
Richard Nyberg
ba4efecb6d
Bring in fixes from libevent trunk.
18 lat temu
Richard Nyberg
5ccf414cbf
Include libevent 1.2 in btpd.
18 lat temu
Richard Nyberg
568d116335
Remove a couple of forgotten debug printfs.
18 lat temu
Richard Nyberg
8c5200b568
Instead of immediately reading all data a peer requests into outgoing net
buffers, we put placeholder buffers on the list and fill them as they are
needed. At most 4 blocks will be filled per peer we upload to. This number
should probably be made tunable or be based on SO_SNDBUF or something.
Anyway, this should lower btpd's memory usage if one has many uploads.
18 lat temu
Richard Nyberg
acc03a93e2
Must call next_url if the current url cannot be requested.
18 lat temu
Richard Nyberg
3bb3d2c074
Initialize the interval variable even when we don't read its value from the
tracker reply.
18 lat temu
Richard Nyberg
db7f22db73
Avoid unnecessary operations on tracker stop. Use STOP_ERRORS constant
for the number of tracker errors to tolerate when we're stopping.
18 lat temu
Richard Nyberg
ebef96d5f8
Missed this file in the last commit. Simplify some interfaces by polling
for state changes when appropriate instead of being called directly at any
time.
18 lat temu
Richard Nyberg
95e83bb247
Make the content code unthreaded and remove the no longer needed inter
thread messaging code. Also simplify some interfaces by polling for
state changes when appropriate instead of being called directly at any
time.
18 lat temu