Commit Graph

234 Commits

Author SHA1 Message Date
rakshasa 2a1f3e12cc * Renamed read/write stuff to down/up.
* 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
2005-08-29 18:39:34 +00:00
rakshasa 7f2b66d601 * Add includes of headers for select.
* Make initialization and cleanup of display::Canvast safer.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@533 e378c898-3ddf-0310-93e7-cc216c733640
2005-08-17 16:58:07 +00:00
rakshasa 8b1afe2485 * Added byte alignment check, if required use a different means of
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
2005-08-16 18:13:43 +00:00
rakshasa 407f3383f0 * Automagically set the max open sockets and files to resonable values
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
2005-08-12 16:05:54 +00:00
rakshasa 6590f5608f * Added tracker re-requesting when connected to less than minimum
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
2005-08-09 14:49:00 +00:00
rakshasa dc5476e3f4 * Moved Hanshake* to protocol/, moved peer/* to protocol/*.
* Show in client which tracker has the focus.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@516 e378c898-3ddf-0310-93e7-cc216c733640
2005-08-04 15:41:15 +00:00
rakshasa e5aad7ed6a * Using SocketAddress instead of PeerInfo in Tracker*, unconnected
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
2005-08-03 18:50:36 +00:00
rakshasa 91a6950c01 * Added information about which side initiates a connection.
* 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
2005-08-02 14:59:04 +00:00
rakshasa 424a20b3f5 * Changed the API to support different Poll objects and made
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
2005-07-25 15:28:03 +00:00
rakshasa 81c36a7d96 * Using SocketAddress instead of std::string/uint16_t for peer
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
2005-07-18 17:22:17 +00:00
rakshasa 7a9010445b * Cleaned up torrent::ProtocolBuffer.
* 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
2005-07-13 18:51:19 +00:00
rakshasa d02ded1d4c * Changed function calls in torrent::Download to be const.
* 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
2005-07-13 13:05:08 +00:00
rakshasa 26a7907f0a * Cleaned up torrent::Rate and moved it to the API. Changed various
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
2005-07-09 15:28:56 +00:00
rakshasa fc8ca7df20 Fixed bug that cause exception to be thrown when erasing a download.
Moved to using SocketAddress within src/net.

Enabled SocketManager.

Changed API to use uint32_t instead of int.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@485 e378c898-3ddf-0310-93e7-cc216c733640
2005-07-04 16:14:13 +00:00
rakshasa 0588e66eaf Added license exception for linking toward OpenSSL.
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
2005-07-01 22:41:16 +00:00
rakshasa 98ad8e8791 Cleaned up ui::Root, fixed updating and hiding status bar.
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
2005-06-30 16:42:22 +00:00
rakshasa bc27fd19cb Cleaned up option_handler_rules.*, it now uses the slot_map_* properly.
Erases the screen upon quit.

Added option for checking the hash for completed downloads.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@471 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-21 16:23:34 +00:00
rakshasa 9a3d75490f Adding tracker group cycle.
Adding creation date display.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@468 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-19 20:44:56 +00:00
rakshasa 2e83af28ac Fixed freebsd compile errors.
Added global rate display.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@463 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-15 09:28:52 +00:00
rakshasa 693ce38317 Cleaned up the API.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@456 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-07 22:20:03 +00:00
rakshasa 2e7333792f Changed api for listen ip and bind.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@454 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-07 01:19:18 +00:00
rakshasa 3092a583ca Adding a bunch of options.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@450 e378c898-3ddf-0310-93e7-cc216c733640
2005-06-02 18:31:02 +00:00
rakshasa a2248f584f Cleaned up configure.ac and fixed it to properly handles CXXFLAGS.
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
2005-05-26 03:25:55 +00:00
rakshasa d898b9db01 Adding controls for download throttle.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@426 e378c898-3ddf-0310-93e7-cc216c733640
2005-05-02 01:20:51 +00:00
rakshasa 98676e5531 Removed choke delay in the peer list window.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@421 e378c898-3ddf-0310-93e7-cc216c733640
2005-04-28 01:15:39 +00:00
rakshasa f139621c4c Switched from tracker dump in bencode to std::istream*.
Various *BSD port fixes.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@406 e378c898-3ddf-0310-93e7-cc216c733640
2005-04-20 14:20:09 +00:00
rakshasa f8bbf8bfad Added "-d" to change the default root dir.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@388 e378c898-3ddf-0310-93e7-cc216c733640
2005-04-09 21:48:59 +00:00
rakshasa 8bf6a42048 Added "-b" for binding the listening ip addresse.
Throw an error if no listening port is opened.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@386 e378c898-3ddf-0310-93e7-cc216c733640
2005-04-09 18:19:14 +00:00
rakshasa 874e46fc64 Proper '/' on the end of directories in the find-file window.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@381 e378c898-3ddf-0310-93e7-cc216c733640
2005-04-03 16:36:19 +00:00
rakshasa fe11d1936d Fixed some *BSD compatibility bugs.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@371 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-26 17:44:22 +00:00
rakshasa 74e3b4fc1c Minor tweak to file list.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@364 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-19 00:05:49 +00:00
rakshasa 072a38c8fc Find file now shows a directory listing.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@362 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-18 21:20:46 +00:00
rakshasa a16a88ebeb Added changed signal to list_focus and connected it to
WindowDownloadList.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@361 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-18 16:09:49 +00:00
rakshasa cefa2b584d Tab completion functional.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@357 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-17 01:07:54 +00:00
rakshasa dfa6c9cd05 Added our id to the peer info screen.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@354 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-14 20:37:57 +00:00
rakshasa 3efadf69ec Minor cleanup of the interface.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@352 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-13 03:08:13 +00:00
rakshasa da764db3b9 Adding copyright claim to source files.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@348 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-12 23:30:11 +00:00
rakshasa 010d5cfbe3 Cleanup of log time display.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@346 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-12 23:22:28 +00:00
rakshasa c36ee96550 New log window available through 'l'.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@343 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-12 19:16:30 +00:00
rakshasa ab69ae3fe6 Cleanup.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@341 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-11 01:01:39 +00:00
rakshasa f664e1ce0c Adding view of tracker list.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@338 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-10 18:59:24 +00:00
rakshasa a4dbdffcb8 Seperated out my template algorithms and stuff.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@334 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-08 18:25:34 +00:00
rakshasa f379abb200 Fixed a mispelled name in utils::for_each_pre(...).
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@333 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-07 20:49:16 +00:00
rakshasa 1dc51a1b13 Refactored code for positioning the focus and the start of iteration.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@327 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-05 22:16:12 +00:00
rakshasa ddf619f934 Added changing of the file priorities.
Seperated the algorithm extensions from functional.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@326 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-05 20:56:12 +00:00
rakshasa 2dc7ffdb8f Fixed bug in display code for peer percentage progress.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@325 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-05 02:20:45 +00:00
rakshasa 9e0db66b58 Added file view.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@322 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-04 22:00:39 +00:00
rakshasa fd0c10d962 Moved over to a next time based display update.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@320 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-03 20:09:04 +00:00
rakshasa b840476527 Added -t for dumping tracker requests.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@315 e378c898-3ddf-0310-93e7-cc216c733640
2005-03-01 19:21:49 +00:00
rakshasa ef3a8fcd83 Task Scheduler, log viewer pops up and disapperes. good good
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@308 e378c898-3ddf-0310-93e7-cc216c733640
2005-02-26 21:58:59 +00:00