* Fixed crash on empty bitfield in 'd.bitfield'.
* Fixes a file handle leak in the execute_capture functions. Patch by Josef Drexler.
* Moved ThreadBase to ./src as ./src/utils caused linker problems due to core::PollManager::create_poll_manager().
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1102 e378c898-3ddf-0310-93e7-cc216c733640
* Cleaned up main initialization, SCGI and polling code.
* Fixed a bug that would cause reading of a piece to hang if the incoming data contains only data up to the file boundary, but not the next file's data. The bug did not trigger if the file boundary and piece boundaries were the same.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1101 e378c898-3ddf-0310-93e7-cc216c733640
d.set_custom=key,value
d.get_custom=key (returns "" if not set)
d.get_custom_throw=key (returns error if not set)
* With this patch, rtorrent will detect and complain about .torrent files with broken bencode representation (e.g. where the order of dictionary keys is not lexicographic).
* Choose a different poll type using the RTORRENT_POLL env. variable (if it's implemented), probably only useful as RTORRENT_POLL=select.
* Add the commands execute_capture and execute_capture_nothrow that work like their other counterparts but return the OUTPUT (stdout) of the given command.
Note that the output is not modified in any way, in particular a trailing newline is NOT removed. To work around this, have the command write its output without it e.g. using echo -n. Also note that with execute_capture_nothrow there is no way to check if the command failed.
Example usage: d.set_custom4=$execute_capture=handler.sh
* When logging peer communication errors, show IP and peer ID to help debugging.
All patches above by Josef Drexler.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1088 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed a potential buffer overflow in displaying of non-UTF8
filenames.
* Changed torrent::DownloadList::close_directly() so doesn't save the
session if the underlying file/directory has been moved or
removed. This change, in addition to calling 'd.set_directory=' before
'execute=mv,...', as previously shown in the examples, will make
rtorrent behave correctly when 'check_hash=no' is set.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1084 e378c898-3ddf-0310-93e7-cc216c733640
small. Patch by Josef Drexler.
* Added 'view.persistance' command that makes downloads inserted into
that view persist across sessions. Only call on user-created views.
* Added 'ratio.*' commands that call the 'group.seeding.ratio.*'
equivalents.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1080 e378c898-3ddf-0310-93e7-cc216c733640
commands.
* Enabled different ratio settings for different groups of
downloads.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1079 e378c898-3ddf-0310-93e7-cc216c733640
when a new or a session torrent is added. Ticket #1516.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1075 e378c898-3ddf-0310-93e7-cc216c733640
it. Also set a 5-minute timeout for (previously unlimited) torrent
transfers and fixes the argument type for curl_easy_setopt values.
* Allows bandwidth throttles to work without floating point support.
* Adds a d.add_peer=host[:port] command to manually add a peer (not
for torrents marked "private"), port is 6881 by default.
* Allows banning the selected peer with "B". No unbanning is possible
yet.
All the above patches were written by Josef Drexler.
* Differentiate between commands that have no target, and those that
take generic targets, when using XMLRPC.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1073 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed mix-up in version numbers causing an incompatibility for .so
libraries. Patch by Josef Drexler for ticket #1333.
* Fix excessive HAVE messages being sent after handshake when download
has been active for a while. Patch by Josef Drexler for ticket #1372.
* Make --enable-ipv6 not break DHT on Mac OS X. Patch by Josef Drexler
for ticket #1359.
* Fix crash when contacting tracker. Patch by Josef Drexler for ticket
#1272.
* Fix stopping downloads not working properly. Patch by Josef Drexler
for ticket #1335.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1062 e378c898-3ddf-0310-93e7-cc216c733640
* Add/remove downloads from the 'active' view on resume/pause.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1051 e378c898-3ddf-0310-93e7-cc216c733640
file. Found by Josef Drexler.
* Handle mtime properly in resume_save.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1020 e378c898-3ddf-0310-93e7-cc216c733640
ensure resource usage gets spread out over time.
* Changed element_file_list.cc to use te_command.
* File commands on file list iterators will be called on the File
pointed to.
* Fixed some sigc++ 2.1 compile errors.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@992 e378c898-3ddf-0310-93e7-cc216c733640
* Added 'load_raw*' commands for loading torrents directly from the
data passed through the first argument.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@964 e378c898-3ddf-0310-93e7-cc216c733640
'cwd'.
* Added 'd.{get,set}_custom[1-5]' for user scripts.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@963 e378c898-3ddf-0310-93e7-cc216c733640
to 'd.multicall'.
* Cleanup of 'rpc/parse_commands.h'.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@961 e378c898-3ddf-0310-93e7-cc216c733640
* SocketFd::open_local() should use SOCK_STREAM, not SOCK_DGRAM.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@959 e378c898-3ddf-0310-93e7-cc216c733640
* Properly catch the exceptions being thrown by the 'in_*' events.
* Expand ~ in ExecFile.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@950 e378c898-3ddf-0310-93e7-cc216c733640
* The print command was not properly adding the final nul char to the
buffer.
* Added 'get_d_name' command.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@944 e378c898-3ddf-0310-93e7-cc216c733640
* Moved CommandScheduler into src/rpc.
* Fixed a bug in the "download_list" command.
* Partial cleanup of the tracker list.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@924 e378c898-3ddf-0310-93e7-cc216c733640
list instead of a string when calling a multi-parameter command, which
handles escaped spaces, commas and quotes correctly.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@877 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed two valgrind errors in the ChokeManager code.
* Added 'seeding' view on key 8. Remeber to fix the man page.
* Fixed an exception being thrown in ChokeManager::cycle(...) due to a
missing range check on the number of unchokes we do.
* Moved choke/queued state to a new ChokeManagerNode class.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@869 e378c898-3ddf-0310-93e7-cc216c733640
deleting symbolic links to downloads.
* Added "on_*" options for calling commands on state changes.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@849 e378c898-3ddf-0310-93e7-cc216c733640