Commit Graph

2287 Commits

Author SHA1 Message Date
Charles Kerr 9c9c94a81d (trunk libT) discard peers from the tracker or pex that have a port of 0 or a multicast address. 2009-01-17 23:14:35 +00:00
Charles Kerr 4f95edf647 (trunk libT) minor cleanup 2009-01-17 22:49:15 +00:00
Charles Kerr c1e1fedff9 (trunk libT) check in some of the extra error logging messages developed last night while chasing down the problem denis found 2009-01-17 15:08:20 +00:00
Charles Kerr f5ace9a71c (trunk daemon) #1704: --info and/or --files should show the download directory 2009-01-17 14:58:50 +00:00
Charles Kerr d95a45b701 (trunk libT) fix IPv6 reported & solved by erdgeist. add debugging message to help track down any future problems. 2009-01-16 23:17:31 +00:00
Charles Kerr bc2b7fcb03 (trunk libT) minor tweaks to reduce libtransmission shear between trunk and 1.5x 2009-01-16 17:29:42 +00:00
Charles Kerr c99f941d16 (trunk libT) make file preallocation optional via settings.json. choices are: full, sparse, and none 2009-01-16 16:38:16 +00:00
Erick Turnquist 88a399eb20 (trunk libT) fix r7717 2009-01-16 06:40:23 +00:00
Charles Kerr 4b414e8f2d (trunk libT) fix tracker IPv6 error reported by the earth spirit 2009-01-16 04:36:36 +00:00
Charles Kerr a6a29923c7 (trunk) add interface versioning to the RPC spec 2009-01-16 01:03:33 +00:00
Charles Kerr 9c5b6e7d15 (trunk libT) #1698: RunTime Check failure 2009-01-14 13:30:51 +00:00
Charles Kerr 7a91840639 (trunk libT) Remove tr_peerMgrHasConnections, it isn't used anywhere 2009-01-14 01:37:24 +00:00
Charles Kerr 2c1afe07a4 (trunk libT) fix an r7707 bug in tr_sessionGetActiveTorrentCount() 2009-01-13 21:06:07 +00:00
Charles Kerr 486c55c1ed (trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash 2009-01-13 21:00:05 +00:00
Charles Kerr f945058de0 (trunk libT) minor torrent iteration cleanup. (wereHamster, charles) 2009-01-13 16:51:38 +00:00
Charles Kerr 08403324bd (trunk libT) Remove tr_torrentNext() from the public libT API (wereHamster) 2009-01-13 16:39:19 +00:00
Charles Kerr db58b89f6e (trunk libT) Clean up RPC server initialization (wereHamster) 2009-01-13 16:35:06 +00:00
Charles Kerr 8b72408948 (trunk libT) Get rid of peer-mgr-private.h (from wereHamster) 2009-01-13 16:32:43 +00:00
Charles Kerr 30c47d3b6f (trunk libT) #1655: rpc-spec 4.2: "session-stats" returns a new object instead of the response arguments 2009-01-13 04:43:38 +00:00
Charles Kerr a13e0755f0 (trunk libT) close open files immediately after they're done downloading 2009-01-12 21:59:53 +00:00
Charles Kerr dab899f132 (trunk libT) #1427: Files are kept open in read/write mode after a torrent finishes 2009-01-12 19:58:16 +00:00
Charles Kerr bb8451344f (trunk libT) #1592: file priorities are not preserved after exiting & starting a new session 2009-01-12 18:02:28 +00:00
Charles Kerr 2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +00:00
Charles Kerr fe816d8135 (trunk) update the GPL code's copyright dates 2009-01-10 23:09:07 +00:00
Charles Kerr c2e1f78cf4 (trunk libT) #1634: better utf8 validation of metainfo "files" field 2009-01-10 22:56:26 +00:00
Charles Kerr 92ee6566db (trunk libT) #1675: better utf8 validation of metainfo name, creator, and comment fields 2009-01-10 22:48:58 +00:00
Charles Kerr d4c5e904b5 (trunk libT) fix minor compiler warning that cropped up when upgrading our ConvertUTF8 2009-01-10 19:29:01 +00:00
Charles Kerr 0321204894 (trunk libT) upgrade our copy of Unicode Inc's freeware ConvertUTF.[ch] 2009-01-10 17:59:49 +00:00
Charles Kerr c6a454d2e2 (trunk libT) win32 portability fixes, reported by Alexey 2009-01-10 02:22:13 +00:00
Charles Kerr 7683452514 (trunk libT) undo r7645 based on feedback that the experimental code did improve performance. 2009-01-09 19:24:40 +00:00
Charles Kerr b545dbe28a (trunk libT) fix downloadDir error reported & tracked down by wereHamster 2009-01-09 18:39:30 +00:00
Charles Kerr a1b2af981c (trunk libT) annotate tr_cpBlockBitfieldSet() as suggested by wereHamster. 2009-01-09 17:55:48 +00:00
Charles Kerr 2702fc289a (trunk libT) finally get around to making upload-slots-per-torrent a settings.json option, thanks to friendly prodding from ful in #transmission 2009-01-09 15:45:44 +00:00
Charles Kerr f7db63329d (trunk libT) clear out the experimental code that accumulated while trying to find the fix to the tracker-announces-never-finish bug. This revision is 1.42's version plus bugfixes. 2009-01-08 20:35:10 +00:00
Charles Kerr e7b9a2eaa2 (trunk libT) fix evbuffer oops 2009-01-08 20:33:33 +00:00
Charles Kerr 55aa6d834f (trunk libT) make the default number of open files 32 rather than 16, and make it configurable via settings.json. (Reported by Lucius Windschuh via denis_) 2009-01-08 19:20:24 +00:00
Charles Kerr f3db4c14b7 (trunk libT) The buffer is static anyway, no need to malloc it 2009-01-08 14:05:30 +00:00
Charles Kerr 98420365e9 (trunk libT) remove a small number of redundant or unnecessary asserts 2009-01-08 04:43:00 +00:00
Charles Kerr 6917cac918 (trunk libT) fix odd handshake bug reported by wereHamster 2009-01-07 22:06:40 +00:00
Charles Kerr 30ebbdaacb (trunk libT) re-enable the completion sanity tests for the benefit of the nightly builds 2009-01-07 17:22:17 +00:00
Charles Kerr 141847b902 (trunk libT) update the copyrights on some files that no longer have old code in them 2009-01-07 06:53:29 +00:00
Charles Kerr c5ecccdd24 (trunk libT) much faster implementation of tr_cpBlockBitfieldSet() 2009-01-07 02:22:11 +00:00
Charles Kerr 196c3c19c3 (trunk libT) apparently the r7629 tr_cpBlockBitfieldSet() speedup introduced a bug. 2009-01-06 14:43:15 +00:00
Charles Kerr c0acf3e920 (trunk libT) hm, checked in the wrong version. 2009-01-06 07:48:30 +00:00
Charles Kerr 7581f04242 (trunk libT) faster tr_cpBlockBitfieldSet() 2009-01-06 07:45:15 +00:00
Erick Turnquist 2a6c7dd0fa (trunk libT) Fix an assertion failure in ptrarrays when values are equal.
This bug manifest itself due to a subtle change in tr_compareAddresses(), but
was always there. An assertion would fail if two (obviously adjacent) values
were equal.
2009-01-06 03:22:10 +00:00
Charles Kerr 73d32850ed (trunk libT) fix refcount error in the new peer-io refcount code 2009-01-06 03:21:22 +00:00
Charles Kerr 3ff145f058 (trunk libT) two bugfixes in one: (1) fix leaking tr_handshake objects reported by BentMyWookie (2) fix yet another permutation of the tr_isBandwidth() assertion failure -- maybe the last one? -- reported by Waldorf 2009-01-06 00:24:44 +00:00
Charles Kerr 30a989f1df (trunk libT) fix the new-code errors reported by ZogG and Rolcol and Spaham 2009-01-05 18:20:47 +00:00
Charles Kerr fd26f21400 (trunk libT) fix a minor memory leak reported by Valgrind 2009-01-05 18:18:13 +00:00
Charles Kerr 1b527610dd (trunk libT) yet another step in the debugging cycle, crash report from ZogG and Rolcol 2009-01-05 07:57:10 +00:00
Charles Kerr 124658791a (trunk libT) probably fix r7618 reported in #transmission by Rolcol 2009-01-05 06:45:08 +00:00
Charles Kerr 5ccd5a7700 (trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it. 2009-01-05 04:27:54 +00:00
Charles Kerr 2eb1faa5e8 (trunk libT) minor speedup tweaks in peer-request hotspots 2009-01-04 18:01:15 +00:00
Charles Kerr 6681107c00 (trunk libT) remove a small memory leak in the request-list unit test s.t. valgrind will be happy 2009-01-04 17:46:27 +00:00
Charles Kerr ca6dd89e10 (trunk libT) minor tr_ptrArray API cleanup 2009-01-04 16:59:15 +00:00
Charles Kerr cf79c87d7e (trunk libT) forgot to "svn add" request-list-test.c before committing... 2009-01-04 16:58:09 +00:00
Charles Kerr 6d21e557f5 (trunk libT) fix r7610 bug reported by BentMyWookie 2009-01-04 16:48:31 +00:00
Charles Kerr 51e68d6e56 (trunk libT) new peer request fifo queue with log(N) search time. new unit tests for the queue. new utility tr_lowerBound() 2009-01-04 16:29:44 +00:00
Charles Kerr a0390c6111 (trunk libT) remove unnecessary prototype 2009-01-04 04:37:47 +00:00
Charles Kerr 2b38f6f81a (trunk libT) don't use void* when doing pointer math. 2009-01-04 04:37:26 +00:00
Charles Kerr 8690d83ba4 (trunk libT) minor improvement to testing to see if two requests are equal 2009-01-04 02:49:30 +00:00
Charles Kerr f2c9d270b0 (trunk libT) do scrape paused torrents. 2009-01-04 02:05:17 +00:00
Charles Kerr 422d1b0f97 (trunk libT) don't scrape paused torrents. 2009-01-04 02:01:57 +00:00
Charles Kerr ead8254b85 (trunk libT) tr_torrentStat() speedups 2009-01-03 23:11:29 +00:00
Mitchell Livingston cc8e16ed20 only increment the tier count for valid tiers 2009-01-03 21:27:48 +00:00
Charles Kerr 78cf80d3c0 (trunk libT) experimental code to get more peers faster 2009-01-03 07:23:26 +00:00
Charles Kerr 7fcad8a45b (trunk libT) fix r7594 typo 2009-01-03 05:07:45 +00:00
Charles Kerr 5afd327b15 (trunk libT) use ssize_t where appropriate in tr_peerIoFlush() 2009-01-03 04:57:40 +00:00
Charles Kerr 1e77d1313e (trunk libT) oh ffs 2009-01-03 03:58:35 +00:00
Charles Kerr dfa0622a6c (trunk libT) add "deep log" message to help track down freeze reported by the|Navigator. also, small + cheap speedup in tr_deepLoggingIsActive() 2009-01-03 02:43:17 +00:00
Charles Kerr 0d2d375125 (trunk libT) inline a few more torrent methods 2009-01-03 00:25:27 +00:00
Charles Kerr cee6610ebb (trunk libT) inline the tr_bencIs*() utility functions 2009-01-03 00:11:31 +00:00
Charles Kerr c86780de8b (trunk libT) avoid unnecessary duplicate calls to tr_date() in tr_bandwidthUsed() 2009-01-02 23:48:51 +00:00
Charles Kerr 49f46dcddb (trunk libT) revert r7548, which broke very low speed download limits.. the simplified peer-msgs parsing didn't distinguish between piece & raw data until the piece was done downloading. 2009-01-02 23:28:57 +00:00
Charles Kerr 4addf02246 (trunk libT) fix a typo that made jhujhiti giggle 2009-01-02 22:06:11 +00:00
Charles Kerr d756d6b58f (trunk libT) commit some debugging messages that were added to trackdown the multicast filter issue 2009-01-02 21:50:51 +00:00
Erick Turnquist 5086cbe47c (trunk libT) use IN_MULTICAST macro 2009-01-02 21:45:55 +00:00
Charles Kerr 86d3e70121 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ratecontrol, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 20:42:35 +00:00
Charles Kerr d202c5ecea (trunk libT) inline the ptrarray one-liners 2009-01-02 20:19:10 +00:00
Charles Kerr 5e9af46612 (trunk libT) make the tr_bandwidth macros into safer inline funcs. inline utils' one-liners. 2009-01-02 20:12:23 +00:00
Charles Kerr b41cf9f231 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bandwidth, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 19:56:06 +00:00
Charles Kerr 73f500e5be (trunk libT) inline parts of peer-io and bandwidth, too 2009-01-02 17:46:22 +00:00
Charles Kerr 199e38dd66 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_completion, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 17:01:55 +00:00
Charles Kerr d6b4db4a78 (trunk libT) add "inline" hint to several one-liner functions 2009-01-02 06:28:22 +00:00
Charles Kerr 5e806dc816 * add autoconf test AC_C_INLINE to do the Right Thing for "inline", "__inline__", and "__inline".
* make tr_isAddress(), tr_isDirection(), and a bunch of the tr_torrent() macro functions into true inline functions
2009-01-02 05:11:50 +00:00
Charles Kerr 0cd572a0da (trunk libT) make tr_isAddress() and tr_isDirection() inline 2009-01-02 04:47:37 +00:00
Charles Kerr 8eda177838 (trunk libT) very minor style cleanup in tr_bandwidthAllocate() 2009-01-02 04:46:38 +00:00
Charles Kerr 2eb2dacd50 (trunk libT) Fix sparse warnings: symbol 'XXX' shadows an earlier one 2009-01-01 18:38:49 +00:00
Charles Kerr 82c5aca513 (trunk libT) Remove UNUSED attribute, the function argument is being used 2009-01-01 18:36:58 +00:00
Charles Kerr e5fc032d9c (trunk libT) Remove unused field: struct tr_peermsgs::peerSentBitfield 2009-01-01 18:35:21 +00:00
Erick Turnquist e9f32d7523 (trunk libT) < Rolcol> For example: I have a lot of addresses in the message
log as "funny looking address" as something like ::ffff:192.168.1.1

These were coming from pex6. Apparently there is a client out there that sends
us IPv4 peers in mapped form. It's valid, but a little strange...
2009-01-01 00:34:44 +00:00
Erick Turnquist bd5463a37e (trunk libT) fix another endian oops 2009-01-01 00:23:09 +00:00
Erick Turnquist 37ac4b3fbf (trunk libT) fix endian oops in tr_suspectAddress() 2009-01-01 00:15:15 +00:00
Erick Turnquist 50d73a884f (trunk libT) Stop trying to connect to multicast addresses. Also, bump "funny
looking address" messages from tr_dbg to tr_err so I can get bug reports with
the message for once!
2008-12-31 21:25:52 +00:00
Charles Kerr 618949aded (trunk libT) take the timeout condition out of tr_bandwidthAllocate(). This may have the short-term effect of adding 1.41's `freeze' behavior into trunk for a bit. Yay! 2008-12-31 21:15:22 +00:00
Charles Kerr 5381e20e9b (trunk libT) improve piece verification speed by providing a larger buffer, and add a mechanism to reuse it when verifying an entire torrent at once. 2008-12-31 18:08:13 +00:00
Charles Kerr 2ea88f30f5 (trunk libT) make the evbuffer pool threadsafe 2008-12-31 14:29:28 +00:00
Charles Kerr 217d3d3c91 (trunk libT) this diff has held #1631 at bay for 18 hours now... is it finally fixed? :) 2008-12-31 14:28:20 +00:00
Charles Kerr 1bcc998694 (trunk libT) fix a couple of minor memory leaks 2008-12-30 22:19:52 +00:00
Charles Kerr 6bec82d0a6 (trunk libT) have tr_bencSaveAsJSON() use an evbuffer 2008-12-30 22:07:39 +00:00
Charles Kerr 71864c18e2 (trunk libT) blockIteratorNew() was overallocating much more memory than it used. 2008-12-30 21:18:30 +00:00
Charles Kerr 20e1222078 (trunk libT) patch from wereHamster to recycle the zlib deflate stream s.t. we don't have to keep reallocating it 2008-12-30 20:40:48 +00:00
Charles Kerr ad69a937ef (trunk libT) have a pool of reusable evbuffers 2008-12-30 20:32:00 +00:00
Charles Kerr 53b25c7b49 (trunk libT) patch from wereHamster to simplify BT message parsing 2008-12-30 19:44:49 +00:00
Charles Kerr 694a980348 (trunk daemon) #1618: patch from er13 to make transmission-daemon's encryption, port, and peer limit command-line arguments similar to transmission-remote's 2008-12-30 18:18:34 +00:00
Charles Kerr 56d04f76ad (trunk libT) use a static buffer for fillOutputBuffer() 2008-12-30 08:25:39 +00:00
Charles Kerr 2b4193b200 (trunk libT) remove obsolete tr_peerMgr.c's getConnectedPeers() 2008-12-30 08:20:16 +00:00
Charles Kerr f2d9179b64 (trunk libT) #1632: bandwidth.c: 428: tr_bandwidthUsed: Assertion `tr_isBandwidth( b )' failed 2008-12-30 03:45:12 +00:00
Charles Kerr d463cdb509 (trunk libT) eliminate a couple more unnecessary malloc() + free() pairs 2008-12-30 03:29:09 +00:00
Charles Kerr 1c71e622e1 (trunk libT) minor cleanup: use symbolic name instead of magic numbers; use tr_bool instead of int 2008-12-30 02:43:51 +00:00
Charles Kerr 640c952ce8 (trunk libT) fix r7535 bug reported by Rolcol 2008-12-30 02:42:45 +00:00
Charles Kerr cad0ec892c (trunk libT) avoid an unnecessary evbuffer_new() + evbuffer_free() pair in message logging 2008-12-30 02:36:17 +00:00
Charles Kerr 68ad6f452c (trunk libT) probable fix for #1631 2008-12-30 01:02:53 +00:00
Charles Kerr f761311018 (trunk libT) avoid a few more unnecessary malloc() + free() pairs 2008-12-30 00:56:10 +00:00
Charles Kerr 246efcbca2 (trunk libT) fix obsolete `iobuf' reference. (wereHamster) 2008-12-29 21:19:31 +00:00
Charles Kerr a8e15578f3 (trunk libT) use torrent's unique ID as the torrent's lookup key 2008-12-29 21:17:48 +00:00
Charles Kerr eff510da18 (trunk libT) simplify web.c's remove_finished_tasks() a bit 2008-12-29 19:02:12 +00:00
Charles Kerr 798bac0fcb (trunk libT) omit unnecessary malloc/free calls in peer-io 2008-12-29 19:01:47 +00:00
Charles Kerr 9ea0489471 this should've been in r7529 2008-12-29 18:12:25 +00:00
Charles Kerr 415f04059f (trunk libT) wrap tr_inf(), tr_msg(), tr_dbg() calls inside a check to see if that debugging level is active. That way that function calls in the vararg list won't be invoked unless that level of verbosity is actually turned on. 2008-12-29 18:11:56 +00:00
Charles Kerr c52d9fedab (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_publisher, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 18:10:07 +00:00
Charles Kerr 3a01d2e619 (trunk libT) recycle the tr_list nodes when possible 2008-12-29 17:28:14 +00:00
Charles Kerr e7ffb4da03 Add "SD" to the clients list as Xunlei as reported by malucas72 in the forums. 2008-12-29 16:34:59 +00:00
Charles Kerr 7a4002dd3a (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bitfield, contain it directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 09:51:54 +00:00
Charles Kerr 427f639664 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ptrArray, contain the tr_ptrArray directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 08:54:36 +00:00
Charles Kerr db381a5e40 (trunk libT) revert #7517 since it didn't do any good. disable http connection reuse. 2008-12-29 07:51:09 +00:00
Charles Kerr 1582135e3c (trunk libT) experimental test for #1631 in web.c::setsock() 2008-12-26 20:14:47 +00:00
Charles Kerr f0efd7fea8 (trunk libT) #1627: OSX mutex lockup in 141 and up to 7490 2008-12-24 17:45:27 +00:00
Charles Kerr 6f8e5352ab (trunk libT) fix connectivity error reported by Stargazer. Also, add more debug statements to track down errors like this in the future 2008-12-24 02:50:08 +00:00
Charles Kerr 460f862dbc (trunk libT) add yet another ACL diagnostic message 2008-12-23 21:34:07 +00:00
Charles Kerr dfcc9173e5 (trunk libT) #include "session.h" cleanup from wereHamster 2008-12-23 17:27:15 +00:00
Charles Kerr 82d349d221 (trunk libT) fix minor r7474 issue 2008-12-23 17:23:07 +00:00
Charles Kerr c4e11a12e3 (trunk libT) socket performance tweak by wereHamster 2008-12-23 17:11:31 +00:00
Charles Kerr 303356d110 (trunk) #1029: When removing local data only remove data from the torrent 2008-12-23 16:04:11 +00:00
Charles Kerr 5d1c109fc4 (trunk libT) speed improvments from wereHamster 2008-12-22 19:16:06 +00:00
Charles Kerr 55f263312f (trunk) patch from wereHamster to finish off tr_handle 2008-12-22 19:14:43 +00:00
Charles Kerr 94a491aefb (trunk libT) remove unused functions tr_list_insert_sorted(), tr_list_foreach(). make tr_list_find_data() private. 2008-12-22 17:35:10 +00:00
Charles Kerr d142a075c4 (trunk libT) fix a Windows portability bug reported by Alexey 2008-12-22 05:19:52 +00:00
Charles Kerr 1310fea91e (trunk libT) peer-io.c: remove dead code and get rid of a couple of GOTOs 2008-12-22 04:55:07 +00:00
Charles Kerr acdd8c860c (trunk libT) minor cleanups found while diffing for backport to 1.4x in r7455 2008-12-22 00:52:44 +00:00
Charles Kerr 32ebb868e7 (trunk libT) one more ACL warning 2008-12-21 19:35:38 +00:00
Charles Kerr d39354c306 (trunk libT) add html and console hints about whitelist status & configuration 2008-12-21 19:23:41 +00:00
Erick Turnquist 38efb62100 add some debugging stuff to track down where some bogus addresses are coming from 2008-12-21 19:13:52 +00:00
Charles Kerr 2b0ece7614 (trunk libT) remove tr_peermsgs.minActiveRequests based on wereHamster's feedback 2008-12-21 18:31:28 +00:00
Charles Kerr 8556ce653f (trunk libT) comments, tr_bool correctness, better runtime tests. 2008-12-21 18:15:00 +00:00
Charles Kerr fefa352b11 (trunk libT) remove unused PEER_PULSE_INTERVAL 2008-12-21 17:51:46 +00:00
Charles Kerr f77ae353bb (trunk) configure.ac portability tweak suggested by fulgas 2008-12-21 00:22:41 +00:00
Charles Kerr cb5d259f21 (trunk libT) fix an r7441 function pointer error reported by fulgas in #transmission 2008-12-21 00:05:54 +00:00
Charles Kerr 72ded3b272 try to rework the bandwidth code yet again s.t. it satisfies all three: (1) fairly distributes bandwidth across all peers, (2) scales well in high-bandwidth situations, (3) is good at hitting and staying at bandwidth limits/goals 2008-12-20 22:19:34 +00:00