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 years ago
Richard Nyberg
02733b16ec
Get rid of tp->relpath.
18 years ago
Richard Nyberg
e117d81cf3
Only trigger error handling if an error actually occured. :P
18 years ago
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 years ago
Richard Nyberg
d00d1fc36a
Call peer_on_no_reqs at the appropriate time.
18 years ago
Richard Nyberg
12c3181b65
Add an option to specify the ip the tracker should distribute for this peer.
18 years ago
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 years ago
Richard Nyberg
68c4f99b29
Fix evbuffer_add_vprintf. Patch taken from < http://monkeymail.org/archives/libevent-users/2006-October/000299.html >.
18 years ago
Richard Nyberg
6fbf0b520f
Fix return value from evdns_resolv_conf_parse and initialization of the
dns transaction id.
18 years ago
Richard Nyberg
393ee77bbc
Update COPYRIGHT to match the current copyrights and licenses in the btpd
package.
18 years ago
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 years ago
Richard Nyberg
95371d8453
Remove files not needed by btpd. Make the build scripts more suitable for
btpd.
18 years ago
Richard Nyberg
ba4efecb6d
Bring in fixes from libevent trunk.
18 years ago
Richard Nyberg
5ccf414cbf
Include libevent 1.2 in btpd.
18 years ago
Richard Nyberg
568d116335
Remove a couple of forgotten debug printfs.
18 years ago
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 years ago
Richard Nyberg
acc03a93e2
Must call next_url if the current url cannot be requested.
18 years ago
Richard Nyberg
3bb3d2c074
Initialize the interval variable even when we don't read its value from the
tracker reply.
18 years ago
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 years ago
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 years ago
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 years ago
Richard Nyberg
00e242ce2b
Add bts_filename which gets the current filename from a bt_stream.
18 years ago
Richard Nyberg
abe4001938
Add initialization of evdns.
18 years ago
Richard Nyberg
fb64d693f1
Now that btpd doesn't use select, we don't need to limit fd's to FD_SETSIZE
unless libevent uses the select method.
18 years ago
Richard Nyberg
4466a515e7
Remove calls to the already removed old http code.
18 years ago
Richard Nyberg
1d7b396fc7
Some cleanup. Use names for some numeric constants.
18 years ago
Richard Nyberg
03c3b7ec49
Split the tracker code into a generic part and a http specific part. This
allows me to add code for other types of trackers.
Remove the curl interface glue, since I use my own http client now. The curl
code was my main reason for using threads, so I'm a large step closer to make
btpd unthreaded again.
18 years ago
Richard Nyberg
80dcfecbe5
Rename callback type, add timeouts and and allow any http version in the
reply.
18 years ago
Richard Nyberg
f939819e28
No parenthesis needed around a string value.
18 years ago
Richard Nyberg
d5700c2f20
Add max(x, y) macro.
18 years ago
Richard Nyberg
1b7bb76fb7
Add a simple http client. Since it uses libevent it's a better fit for btpd
than curl.
18 years ago
Richard Nyberg
4f1d44297a
Don't really know why I did setlocale. Get rid of it since I want the CTYPE
to be standard.
18 years ago
Richard Nyberg
798a7f0c1b
Random changes :)
18 years ago
Richard Nyberg
e0c4fea13e
Rewrote parts of the README and updated it with information on the new stuff
in 0.12.
18 years ago
Richard Nyberg
0c01e277cf
Help text format change.
18 years ago
Richard Nyberg
1a17b22bb3
Don't call mkdirs unnecessarily. Note that this code is only needed because
the content code shuts down btpd on errors. When that is fixed this code can
be removed.
18 years ago
Richard Nyberg
cd8a3d5ecd
Make mkdirs behave more like 'mkdir -p' and make btpd create the directory
hierarchy to a specified torrent content directory if neccessary.
18 years ago
Richard Nyberg
ff3f222885
OpenBSD doesn't have stdint.h. It'd be great if they would implement basic c99
library support some day...
18 years ago
Richard Nyberg
f20c481b11
There's no need to fsync here, so remove the call. This should improve
write performance.
18 years ago
Richard Nyberg
110b1d7e22
Always update the tlib info when a torrent is stopped. Some code shuffle.
18 years ago
Richard Nyberg
29495ab53b
Add and use the function make_abs_path. realpath didn't fit my needs.
make_abs_path doesn't need the directories to actually exist in the
file system.
18 years ago
Richard Nyberg
25788505fa
Forgot to free some memory. Remove some broken code; it wasn't needed
yet anyway. glibc doesn't have the d_namlen field in struct dirent, so
we'll have to use strlen instead.
18 years ago
Richard Nyberg
b306439636
Update for the read_whole_file -> read_file change.
18 years ago
Richard Nyberg
b0b50e29b6
Create all files of a torrent at startup.
18 years ago
Richard Nyberg
0b9d19de09
Add missing include.
18 years ago
Richard Nyberg
11f7e1ce1f
Safer way to initialize the address.
18 years ago
Richard Nyberg
3fb4e5a894
Simplify read_whole_file and rename to read_file.
18 years ago
Richard Nyberg
51e084f144
Document changes for 0.12.
18 years ago
Richard Nyberg
535991f085
Bump version to 0.12.
18 years ago
Richard Nyberg
45bf9f2658
Allow empty files in torrents. Create them in stat_and_adjust and let the
stream abstraction skip past them.
18 years ago