message in the buffer, it required an additional byte beyond the size
of the request body.
* More work on ClientInfo.
* Bound 'k' to disconnecting a peer. Consider a better key.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@647 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
~(char)0 giving an inverted integer rather than char.
* Fixed a segfault due to too small screen size, snprintf returns the
number of bytes that could have been written rather than how much
actually was.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@626 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
* Remove torrents that are already tied from the expanded paths.
* Move the loop counter to Control.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@618 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
requested, this needs to be fixed.
* Minor adjustments to the usage of rak::priority_queue_insert.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@611 e378c898-3ddf-0310-93e7-cc216c733640
* Added download time left display, need to tweak it.
* Removed libtorrent/src/download/download_setup.cc.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@607 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
throws torrent::input_error and rtorrent catches those and prints good
error messages.
* torrent::set_{bind,local}_address now accepts dns addresses.
* Fixed bug that caused multiple instances of the setting
up/download_rate to change the relative rate, rather than constant.
* Minor change to the way PCB decides to not request more pieces.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@601 e378c898-3ddf-0310-93e7-cc216c733640
downloads now have longer timeout than tracker requests.
* Bound the '*' key in tracker list to disable a tracker.
* Added PollKQueue placeholder, implementation will come later.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@598 e378c898-3ddf-0310-93e7-cc216c733640
* Tweaked the http get timeout, now it has a 60 second connect timeout
and a 360 second download timeout.
* Moved libtorrent/src/parse/download_constructor to src/download.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@595 e378c898-3ddf-0310-93e7-cc216c733640
* More throttle fiddling.
* Pop the currently uploaded piece from the send list.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@591 e378c898-3ddf-0310-93e7-cc216c733640
* Enabled throttle dependent global upload limit and added some stats
display to the client.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@584 e378c898-3ddf-0310-93e7-cc216c733640
downloading with curl on epoll unless sockets triggered events.
* Checking whetever we're interested in a peer's pieces wasn't
finished, doh.
* Don't use shorter timeout for "stopped" tracker request, the client
now makes sure it shuts down within 5 seconds.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@577 e378c898-3ddf-0310-93e7-cc216c733640
* Adding incomplete PeerConnectionSeed.
* For every new peer connection it would traverse the local bitfield
to check if it was zero'ed, instead of using a cached value. Forgot to
change over when changing it from the BitFieldExt to the normal class.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@547 e378c898-3ddf-0310-93e7-cc216c733640
* Make initialization and cleanup of display::Canvast safer.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@533 e378c898-3ddf-0310-93e7-cc216c733640
* When sending stopped state to a tracker, use 5 second timeout.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@525 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
'epoll' code. The client selects whichever is available on the current
platform.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@510 e378c898-3ddf-0310-93e7-cc216c733640
default.
* Added some checks to the keyboard input code in the client, perhaps
it'll fix the bug some OpenBSD people are encountering.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@501 e378c898-3ddf-0310-93e7-cc216c733640
addresses.
* Tracker key is now an uint32_t instead of std::string.
* Added client address to UDP tracker requests.
* Added a check for FD_SETSIZE and _SC_OPEN_MAX in the client. A
warning is issued if max open files and sockets exceed either of these.
* Cleaned up the API, propably quite close to what will be in the
slush'ed API.
* Swapped emit and close order in TrackerHttp.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@499 e378c898-3ddf-0310-93e7-cc216c733640
* Cleaned up the shutdown code, moved some unnessesary stuff out of
the main loop.
* Made a TrackerBase and an empty TrackerUdp class. The proper
Tracker* class is selected based on the url.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@492 e378c898-3ddf-0310-93e7-cc216c733640
parts of the API to return torrent::Rate instead of specific functions
for each stat.
* Use 600 second time span for peer rates.
* Added core::DownloadFactory which allows for an async http get and
changing of settings. This will allow the implementation of a
configuration screen when pressing "return", while the client is
downloading or finished downloading a torrent file.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@491 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
the problem where doing hash checking of completed torrents would
cause wrong messages to be sent.
Added option to the client for opening a random port in the supplied
port range.
Cleaned up ui::Download and ui::DownloadList handling of throttle keys
and status bar.
Added 60s timeout for handshakes.
Added ignore key function to input::Bindings.
Made the time span of torrent::Rate configurable.
Seperate torrent::Rate object for quick and slow time span in
torrent::ThrottleControl. Also limited the amount the throttle could
over-allocate per tick, not completely fixed.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@480 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
Ignore SIGPIPE.
Fixed(?) bug in hash queue code when a queued torrent got
deleted. Also reorganized core::Manager to catch all
torrent::local_error's.
Fixed display bug in display::FileList which hid the last element.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@441 e378c898-3ddf-0310-93e7-cc216c733640