which now holds ThrottleNode*. Moved Rate from PCB to ThrottleNode.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@596 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
"rtorrent/CLIENT_VERSION/LIBRARY_VERSION".
* Using libcurl's timeout, set to 60 seconds, rather than in
TrackerHttp. This should make libcurl try different IP's.
* Minor cleanup of how file priorities are updated.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@594 e378c898-3ddf-0310-93e7-cc216c733640
rate and chunk size.
* Changed torrent::download_remove to take a torrent::Download, rather
than the info hash.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@592 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
* 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
* 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
* Changed print_hhmmss/ddmmyyyy to use a char buffer.
* Added error messages for failed torrent http/file downloads which
includes the url/filename.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@581 e378c898-3ddf-0310-93e7-cc216c733640
lightweight version. This cut the size of the library w/debug by more
than 300kb. All (almost) the signals the client connects to are now in
DownloadWrapper.
* Fixed off-by-one error in the month displayed.
* Moved tracker url cleanup to src/parse and improved it.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@580 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
* Modified rak::accumulate to require accessing ::result instead of
using a reference.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@568 e378c898-3ddf-0310-93e7-cc216c733640
* Don't increment beyond end when incrementing a entry's completed
counter.
* Don't allow ChokeManager::try_unchoke to succeed when it has been
less than 10 seconds since the last unchoke.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@562 e378c898-3ddf-0310-93e7-cc216c733640
reference counter.
* Get errno message when chunks can't be allocated.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@556 e378c898-3ddf-0310-93e7-cc216c733640
* Fixed a bug where PeerConnectionSeed was reading the wrong type of
message.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@554 e378c898-3ddf-0310-93e7-cc216c733640
* Display the connection types for a download.
* Fixed HashTorrent so it properly erases the Chunks it holds.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@549 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
off by one.
* Removed ProtocolChunk, moved the functions to PeerConnectionBase,
remains to clean it up.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@546 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
* Make initialization and cleanup of display::Canvast safer.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@533 e378c898-3ddf-0310-93e7-cc216c733640
reading ints from ProtocolBuffer.
* Don't round the task for ThrottleScheduler to the nearest second
since it has a sub-second timeout. Change the other timeouts to first
add cached and timespan, then round to the nearest seconds.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@529 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
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
peers, currently doesn't handle multi-trackers nor do various safety
checks.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@520 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
peers and HandshakeManager. Some other address releated code was
cleaned up.
* Made a seperate AvailableList class for unconnected peers. Using the
tracker success signal to call a function in ConnectionList that
removes already connected peers from the list.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@514 e378c898-3ddf-0310-93e7-cc216c733640
* Cleaned up torrent::DownloadNet and created torrent::ConnectionList
that handles the connections in a download.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@513 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
is abit hacky and normal select based polling is temporarily disabled.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@509 e378c898-3ddf-0310-93e7-cc216c733640
PollSelect available. Started work on PollEPoll.
* Fixed a bug that caused blank characters to be inserted into the
tracker request url.
* Added display of the options field in the peer info view.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@508 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
* Added enums to torrent::Tracker to allow the client to check
whetever the tracker is an UDP or HTTP tracker.
* Added "enable_udp_trackers" setting for disabling the use of UDP
trackers, enabled by default.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@498 e378c898-3ddf-0310-93e7-cc216c733640
* Cleaned up the code that handles printing of download stats, uses a
char* for buffer for output more flexible concatenation. Closed
torrents are displayed correctly now.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@497 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