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
* Fixes a segfault when configure finds execinfo.h.
* Fix compile errors and warnings with g++ 4.3.x.
* Fixes an interoperability issue in the get_peers handling, now it
behaves according to the clarified BEP-0005. Also fixes a minor issue
of not being able to generate error packets.
* Fix a crash in scgi_local or scgi_port when calling freeaddrinfo
with a NULL pointer.
* Only check the filename cache for loading tied torrents (e.g. from
watch dirs) but not manually loaded ones via <enter>/<bs>, to allow
loading those again (ticket #1227).
* Fix display of multi-byte characters with attributes (i.e. utf-8
filenames in the file list), and make the list aware of characters
occupying two screen positions.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1064 e378c898-3ddf-0310-93e7-cc216c733640
* Cleaned up XMLRPC handling and added support for empty targets so it
will handle print and cat properly.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1039 e378c898-3ddf-0310-93e7-cc216c733640
* Moved most of src/ui/download.cc to use commands for TextElements.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@967 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
* Added "d." to '{create,delete}_link', and marked the old names as
obsolete.
* Added "d.{get,set}_message'.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@962 e378c898-3ddf-0310-93e7-cc216c733640
* Added framework for commands on peers, but due to deficiencies in
the libtorrent API it won't be enabled yet.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@955 e378c898-3ddf-0310-93e7-cc216c733640
* Allow lists as arguments in commands by using '{' and '}'. The list
will be recursed and all '$' will be called, while '~' will only be
expanded when in the first element in the list. E.g "execute =
touch,{~/tmp/,$get_client_version=}"
* Added rak::path_expand that works on char buffers.
* Fixed RequestList::calculate_pipe_size so it doesn't request too
many pieces from fast peers.
* Added 'execute_log' for logging the result of calls to 'execute'.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@952 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 string parser, so it must be preceeded by whitespace.
* Allow escaping of newlines in the resource file.
* Cleanup of the parse_command_* commands.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@936 e378c898-3ddf-0310-93e7-cc216c733640
* Moved TrackerManager::close() call to the DownloadWrapper dtor so
that tracker STOPPED request will be sent when closing a torrent.
* Fixed some portability issues with Solaris, but still some remain.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@872 e378c898-3ddf-0310-93e7-cc216c733640
versions. Patch by falk@debian.org.
* Swapped the use of PCB::m_up.interested() with
PCB::m_down.interested(). This means that m_up.interested()/choked()
says if the remote peer is interested and if upload to it is choked,
while m_down.interested()/choked() says if local is interested and if
download from the remote peer is choked.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@862 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
variables. Variable now has functions for both void and
core::Download*, where the core::Download* is discarded if necessary.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@847 e378c898-3ddf-0310-93e7-cc216c733640
with pkg-config.
* Minor changes to included headers and autoconf scripts required by
Solaris.
* Added const char* to VariableMap::has.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@846 e378c898-3ddf-0310-93e7-cc216c733640
key, since they are never changed nor added from outside. This cut the
stripped binary size by 50KB.
* Use a shared have piece queue for each download. Each connection has
a time-stamp for the last have message they sent, which is checked
against the queue. This also avoids the race condition where some
peers would get incomplete views of our bitfield due to lost have
messages during handshake.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@839 e378c898-3ddf-0310-93e7-cc216c733640
iterate through FileList as if it consisted of directories.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@831 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed setting of TOS so it doesn't always set it to throughput.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@827 e378c898-3ddf-0310-93e7-cc216c733640
request.
* Implemented options for read-ahead of
chunks. 'preload_min_pipelined', 'preload_min_size' and
'preload_required_rate' are used to decide when to read-ahead a chunk.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@800 e378c898-3ddf-0310-93e7-cc216c733640
before any of the open file's last touched timer.
* Display upload total, not download for both, in the download info
screen.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@787 e378c898-3ddf-0310-93e7-cc216c733640
* When testing for mincore, cast the address pointer to (char*).
* Failure during syncing causes the download to stop, unless
flag_ignore_error is set.
* Trigger storage error signal for HashTorrent in
DownloadWrapper::receive_initial_hash.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@774 e378c898-3ddf-0310-93e7-cc216c733640
* Use the list of indirect links in EntryList when checking for
available free diskspace.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@773 e378c898-3ddf-0310-93e7-cc216c733640
being seeded.
* Added a flag to PeerInfo for those that are in handshake, which is
used by PeerList::connect_keep_handshake flag to decide if that
address is to be re-added to the available list when there is already
a connection in progress. This ensures that multiple ports on the same
address don't end up discarded prematurely.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@770 e378c898-3ddf-0310-93e7-cc216c733640
* Bound ^F and ^B for navigating and swapped ^P and ^N in some windows
to get correct behavior.
* Sanitized and added PeerInfo and PeerList to the API.
* HashTorrent now waits for the last outstanding chunks finish before
allowing a chunk mapping error to bork the hashing.
* Lowered the default hash_interval to 5 msec and hash_max_tries to 5.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@765 e378c898-3ddf-0310-93e7-cc216c733640
* Finished the download information screen, removed the redunant
entries in WindowPeerInfo.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@755 e378c898-3ddf-0310-93e7-cc216c733640
* The curl perform loop wasn't properly checking the returned pointer,
which caused a segfault with libcurl 7.15.5.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@754 e378c898-3ddf-0310-93e7-cc216c733640
* Added min/max size to display::Window. Added flags for windows that
should be on located at the left/bottom side of a Frame.
* Reversed print order in WindowLog*.
* Added display::TextElement and subclasses for flexible printing to a
char buffer with associated attributes. Added display::Attributes and
display::Canvas::print_attributes.
* Added display::WindowText for use with display::TextElement's.
* Added ui::ElementMenu for generic menus, and started work adding
this to ui::Download.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@751 e378c898-3ddf-0310-93e7-cc216c733640
and checking if enough disk space is available for MS_ASYNC to be safe.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@743 e378c898-3ddf-0310-93e7-cc216c733640
torrents get the right root directory.
* Properly clean up after catching a storage_error in
EntryList::open().
* Added a funtion to torrent::Download for syncing chunks to disk, and
made torrent::resume_save_progress(...) use it.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@736 e378c898-3ddf-0310-93e7-cc216c733640
* Use DownloadWrapper* to identify hashing chunks, rather than the
info hash.
* When hashing fails, retry the most common blocks.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@729 e378c898-3ddf-0310-93e7-cc216c733640
* Show chunks with only queued transfers with an underscore in chunks
seen view. Patch by Josef Drexler, public domain.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@719 e378c898-3ddf-0310-93e7-cc216c733640
filesystems with less space left than what was passed as the
argument. Patch by Josef Drexler, public domain.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@703 e378c898-3ddf-0310-93e7-cc216c733640
* Remove redundant BitField::update calls now that updating
Bitfield::m_set gets handled properly in hash_resume_load.
* Fixed the error message when trying to lock non-existant session
directories.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@687 e378c898-3ddf-0310-93e7-cc216c733640
* Added torrent::TrackerList::{set_,}key() and made rtorrent save the
key between sessions.
* Added import option to the man page.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@665 e378c898-3ddf-0310-93e7-cc216c733640
throw on some obscure bug. Not going to be looking for this one anyway
as there is a rewrite scheduled.
* Added "tos = default|lowdelay|throughput|reliability|mincost" option.
* Made EntryList::value_type a pointer, fixed so FileMeta is
initialized and path set before Download::open().
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@662 e378c898-3ddf-0310-93e7-cc216c733640
* Prepared SocketManager for inclusion in the api.
* From <nornagon@gmail.com>: bound some control keys in text input.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@650 e378c898-3ddf-0310-93e7-cc216c733640