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
Drexler.
* Finished converting the variables in core::Download to use the new
get/set_d(core::Download, ...) functions.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@848 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
is_open().
* Added multi-line parser to VariableMap and replaced the various
calls to process_command in main.cc with a single call.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@845 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
* Resume data was not being used as it was comparing the number of
entries with size_bytes, not size_files.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@812 e378c898-3ddf-0310-93e7-cc216c733640
* Moved more encryption related code to HandshakeEncryption.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@797 e378c898-3ddf-0310-93e7-cc216c733640
the tracker.
* Added display for the up/down rate total in download info.
* Use completed bytes from Content for download progress reported to
the tracker, rather than download rate total.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@786 e378c898-3ddf-0310-93e7-cc216c733640
* Added timeout to WindowText and updated download and peer info.
* Moved default http agent string to rtorrent/configure.ac.
* Periodic syncing of chunks now tries to only sync tightly packed
ranges of chunks unless timeout_sync has been reached.
* ChunkManager now checks if max memory is set to RLIM_INFINITY, if so
use 2^32.
* Added safe_sync option that forces MS_SYNC to be used before
unmapping chunks.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@757 e378c898-3ddf-0310-93e7-cc216c733640
* If a storage error was thrown from make_directory in
EntryList::open, it would try to erase a FileMeta that wasn't inserted.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@753 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
DownloadList::pause is called it clears the "hashing" variable.
* Added convenience functions for retriving torrent::Object key's of
specific types.
* Iterate to the first visible transfer in the chunks seen view. Patch
by Josef Drexler.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@732 e378c898-3ddf-0310-93e7-cc216c733640
Drexler, public domain.
* Made autogen.sh detect glibtoolize.
* Don't resume torrents that are marked as completed yet the initial
hash check returns failed chunks.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@704 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
core::Manager instead.
* Added a new :rtorrent:hashing state so we can distinguish between
initial hashing and manual rehashes. The former is cleared if the
download is paused.
* Added a hash failed flag to core::Download. This is used to skip
entries in the hashing view that either failed to open or are in the
process of being erased from DownloadList.
* torrent::Bitfield::unset was incrementing, rather than decrementing,
the m_set counter.
* Replaced all torrent::internal_error's in rtorrent with
torrent::client_error.
* ^D now checks :rtorrent:state to decide whetever to stop or erase a
download. Downloads queued for hashing will now stop rather than be
deleted.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@688 e378c898-3ddf-0310-93e7-cc216c733640
after restart.
* Stop a torrent and show a message when it finishes the final
hash-check and finds some chunks incomplete. This prevents full disk
from causing a torrent to go into an infinit loop of re-downloading
the data.
* Moved various slots from core::Manager to core::DownloadList.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@679 e378c898-3ddf-0310-93e7-cc216c733640
* Added "state_changed" variable to downloads that returns the last
time the download called DownloadList::pause/resume.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@674 e378c898-3ddf-0310-93e7-cc216c733640
* Added views for downloads, that can be sorted.
* Added options "view_add", "view_sort" and "view_new".
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@671 e378c898-3ddf-0310-93e7-cc216c733640
class to object.h.
* torrent::download_add(...) now takes an torrent::Object*.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@653 e378c898-3ddf-0310-93e7-cc216c733640
* Moved option file parsing to VariableMap and added "import" and
"try_import" options for loading option files.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@636 e378c898-3ddf-0310-93e7-cc216c733640
pid is not running.
* Added rak::timer::from_seconds(uint32_t) and converted all uses to
this to avoid overflows etc.
* For each cycle through the tracker list without any successfull
connections, increase the timeout by 20 seconds.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@635 e378c898-3ddf-0310-93e7-cc216c733640
* Added percentage completed to active unfinished torrents.
* Re-enabled different seeding and leeching priorities.
* Make a temporary container in AvailableList::insert(AddressList*)
when doing std::set_differernce. AvailableList's std::vector would
resize and cause invalidated iterators to be used.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@630 e378c898-3ddf-0310-93e7-cc216c733640
* Added "session_on_completion" option which saves the session torrent
when a download finishes.
* Handle SIGTERM gracefully, saving session torrents etc.
* Implemented session directory lockfile, use "session_lock" option to
disable.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@629 e378c898-3ddf-0310-93e7-cc216c733640
bencoded data.
* Make it safe to remove torrents that are selected.
* Delete the rtorrent and libtorrent sections when loading non-session
torrents.
* Added ^O to change a torrent's root dir, ^P to set a variable.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@628 e378c898-3ddf-0310-93e7-cc216c733640
* Allow the torrent's priority to be changed with '+'.
* More work on the variables thing.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@625 e378c898-3ddf-0310-93e7-cc216c733640
caught when loading a torrent.
* Added VariableMap to core::Download and started moving various
settings.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@624 e378c898-3ddf-0310-93e7-cc216c733640
* Moved several settings to use the new variables and made the parser
better.
* Use "-O2" rather than "-O3".
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@623 e378c898-3ddf-0310-93e7-cc216c733640
redirect get/set operations.
* Fixed(?) a bug in RequestList::downloading(...) that could cause a
segfault when pieces in the canceled list start downloading.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@622 e378c898-3ddf-0310-93e7-cc216c733640
didn't get re-added to the task scheduler until a new event happened.
* Added redraw delay interval of 100ms, consider 50ms.
* Removed exceptions from core::DownloadStore::save.
* Added load, load_run, tied_stop and tied_remove to man-page.
* Cleaned up the command/option instances, move them to Control.
* PCB::load_up_chunk grabbed the errno from m_downChunk, not m_upChunk.
* Various string operations were moved to rak/string_manip.h.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@617 e378c898-3ddf-0310-93e7-cc216c733640
empty directories.
* When receiving zero length pieces, remove them from the request list.
* Send the interested state before any requests as some clients,
BitTornado 0.7.14 and uTorrent 0.3.0, disconnect if a request has been
received while uninterested.
* WITH_POSIX_FALLOCATE configure macro should check against "yes", not
"no".
* The new priority queue would cause arg torrents to load before
session torrents in some cases. Fixed to perform the session torrent
tasks before loading arg torrents.
* Allow '*' wildcard in filenames when loading torrents.
* Added load, load_run, stop_tied and remove_tied settings which can
be used to scan a directory for new/removed torrents. These torrents
are tied to the lifetime of the torrent file.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@616 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed an exception caused by initial hash check not properly
cleaning up HashQueue when canceling.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@606 e378c898-3ddf-0310-93e7-cc216c733640
would in some rare occasions cause memory to be corrupted. leading to
a crash.
* Added option for setting the http proxy and proccess's umask.
* Save the total uploaded for downloads between sessions.
* Moved from sigc++ to my own lightweight slot class for the task
scheduler. This saves some 5-600kb when compiled with debugging
symbols, 1-200kb without.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@605 e378c898-3ddf-0310-93e7-cc216c733640
* Added position affinity to ChunkSelector, still needs more work to
make it move forward without needing to finish all pieces.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@604 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed a bug that caused idle looping due to epoll_wait timeout using
msecs rather than usecs resolution.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@590 e378c898-3ddf-0310-93e7-cc216c733640
due task when executing.
* Moved stuff from torrent/torrent.cc to torrent::Manager.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@535 e378c898-3ddf-0310-93e7-cc216c733640
according to sysconf(_SC_OPEN_MAX).
* Added timeout to torrent::TrackerHttp so connections that are left
open, but with no data being transmitted get closed after a resonable
time.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@524 e378c898-3ddf-0310-93e7-cc216c733640
tracker control. It will support different modes like f.ex trying to
request more peers from the trackers.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@519 e378c898-3ddf-0310-93e7-cc216c733640
Disabled Mozilla's NSS SHA1 code and added OpenSSL SHA1, use NSS if
you need Debian-strict GPL compliance. Added note in README.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@484 e378c898-3ddf-0310-93e7-cc216c733640
Using displayScheduler for updating windows, much more efficient.
Added saving of some parts of the state of torrents.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@482 e378c898-3ddf-0310-93e7-cc216c733640
Added support for quotation in settings.
Added key for changing the priority of all files in a torrent.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@477 e378c898-3ddf-0310-93e7-cc216c733640
finished downloads in DownloadList, moved stuff from core::Manager to
the slot maps.
* Added check hash key ^r, though triggering check hash on finished
signals currently borks.
* Made tracker dump into an option.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@470 e378c898-3ddf-0310-93e7-cc216c733640