Commit Graph

338 Commits

Author SHA1 Message Date
Charles Kerr 4d7046fd67 (trunk) #3547 "Wrong speed display in web UI" -- fixed 2010-09-18 23:06:03 +00:00
Daniel Lee ac53f4792f switch trackerRemove and trackerReplace rpc calls to use tracker id instead of announce urls as identifiers 2010-09-14 06:23:48 +00:00
Charles Kerr 2d5ac5b150 (trunk libT) add a string length argument to tr_urlIsValid() 2010-08-21 12:47:28 +00:00
Charles Kerr 6f5c9dcafb (trunk libt) rename tr_date() as tr_time_msec() for clarity 2010-07-11 20:49:19 +00:00
Charles Kerr 52c04a0d06 (trunk) some units formatter cleanup. 2010-07-09 20:53:38 +00:00
Charles Kerr 91d8cbc383 (2.0x trunk) #3397 "checksum errors when downloading files whose names are encoded in iso-8859-1" -- fixed 2010-07-07 16:48:23 +00:00
Charles Kerr 88c61f8cc2 (trunk) #3045 fix oops from last commit 2010-07-06 20:52:54 +00:00
Charles Kerr 6e5af03d78 (trunk) #3045 "speed units" -- change the public API of libtransmission based on feedback from livings 2010-07-04 06:07:21 +00:00
Charles Kerr cdcc4705aa (trunk) #3045 "make libtransmission's API byte-oriented instead of KiB-oriented." -- implemented. This is a largish commit and will break the mac build for a little while. 2010-07-03 00:25:22 +00:00
Charles Kerr a5a1f38393 (trunk libT) fix more issues found by -Wconversion 2010-07-01 05:14:34 +00:00
Charles Kerr 4a9e36e842 (trunk libT) #3381 "replace calls to usleep() with calls to nanosleep()" -- done. 2010-07-01 03:59:06 +00:00
Charles Kerr 254a1f15cb (trunk libT) down the rabbit hole: various minor type correctness changes unearthed by -Wconversion 2010-06-30 16:40:19 +00:00
Charles Kerr d9e4ca49b5 (trunk) avoid a few unnecessary type conversions. remove a few unnecessary mutex locks. 2010-06-30 06:03:55 +00:00
Charles Kerr 1f3ead026d (trunk) #3311 "MingW build of Transmission" -- modify tr_strip_positional_args() to strip out the ' printf flag. Platforms not supporting $ tend to not support ' either 2010-06-25 01:13:35 +00:00
Daniel Lee bbe9e9843a #3298:Prettier formating of percentages 2010-06-22 22:30:58 +00:00
Charles Kerr e6cf296a68 (trunk libT) add an accessor for the formatter unit strings 2010-06-22 13:34:46 +00:00
Charles Kerr 1d63aa4cda (trunk) add tr_formatter_size() and tr_formatter_speed() so that all the client apps don't have to reinvent the wheel 2010-06-22 04:34:16 +00:00
Charles Kerr 08628333d1 (trunk libT) part of rb07's win32 portability patches from ticket #3311 2010-06-21 16:44:35 +00:00
Charles Kerr 0ad06c50e8 (trunk) #3262 "problems with '.' as the first character in a .torrent's filename" -- fixed in trunk for 2.00 2010-06-07 14:25:31 +00:00
Charles Kerr 74216be9df (trunk libT) "transmission.h" should *always* be #included before any other libtransmission header 2010-04-23 16:36:16 +00:00
Charles Kerr 7d7529eb94 (trunk libT) make tr_updateTime() inlined 2010-03-12 19:24:45 +00:00
Charles Kerr c615514944 (trunk libT) add a wrapper function tr_valloc() to try posix_memalign(), getpagesize(), valloc() etc 2010-02-23 06:06:45 +00:00
Charles Kerr 5a9a07b71e (trunk) #2938 "crash when adding a torrent by URL from an ftp source over RPC" -- fixed in trunk for 1.91 2010-02-20 15:57:05 +00:00
Mitchell Livingston 205b21dca3 add a convenience function for determining if an address is an IP address, and when picking a favicon in the Mac UI's tracker tab, use the full IP address when applicable 2010-02-01 23:52:46 +00:00
Charles Kerr a334b422c3 (trunk) remove unnecessary #includes 2010-01-28 13:33:40 +00:00
Charles Kerr 9eb07e9b16 (trunk) No code changes here... filling in some of the blanks in the "peers" and "utils" doxygen groups' documentation. 2010-01-19 19:37:00 +00:00
Charles Kerr 0d91f3cadf (trunk libT) more documentation and doxygen markup 2010-01-06 00:18:33 +00:00
Charles Kerr 182cbb8b90 (trunk) one of the less-interesting commits in a while: remove trailing spaces from lines 2010-01-05 23:47:50 +00:00
Charles Kerr 5c26afdb52 happy new year! 2010-01-04 21:00:47 +00:00
Charles Kerr 283b6d6a36 (trunk libT) rename tr_wait() tr_wait_msec() 2010-01-01 22:30:36 +00:00
Charles Kerr e61e0fcd3d (trunk libT) improved API documentation / commenting for doxygen 2010-01-01 22:13:27 +00:00
Charles Kerr ac202f13bb (trunk libT) remove dead code -- tr_assert() 2009-12-28 23:11:26 +00:00
Charles Kerr ed1df8beac (trunk libT) removed dead code: tr_isTimeval(), tr_timevalMsec(), tr_timevalSet() 2009-12-12 01:05:29 +00:00
Charles Kerr 0f14f62ac1 (trunk libT) new utility function tr_timerAddMsec() 2009-12-10 19:04:10 +00:00
Charles Kerr 78ead8c3dd (trunk) update the copyright notices 2009-12-05 02:19:24 +00:00
Charles Kerr 560ecbe9bb (trunk libT) fix implicit pointer conversion error when #included in C++ 2009-12-02 19:44:01 +00:00
Mitchell Livingston 5392b262d7 10,000 log messages is enough for anyone 2009-12-02 01:55:09 +00:00
Mitchell Livingston ad06c660c8 cap libT's message log 2009-12-01 23:20:00 +00:00
Mitchell Livingston 0563580dda inline tr_removeElementFromArray() 2009-11-30 01:31:05 +00:00
Charles Kerr c7f061cafc (trunk libT) make tr_msgLoggingIsActive() an inlined function. suggested by BentMyWookie 2009-11-27 15:25:14 +00:00
Charles Kerr e1c6b792aa (trunk libT) #2610 "avoid unnecessary calls to time(NULL)" 2009-11-26 18:47:08 +00:00
Charles Kerr 931afc7d2a (trunk libT) fix variable name oops 2009-11-26 16:53:45 +00:00
Charles Kerr f69e335291 (trunk) #2096: Magnet, BEP #9 support 2009-11-24 02:16:31 +00:00
Charles Kerr 9383a6abfd (trunk libT) #2096: add code magnet URL parser and unit tests 2009-11-20 04:38:19 +00:00
Mitchell Livingston aac02231c4 4.3 not 4.2 2009-11-02 01:10:04 +00:00
Mitchell Livingston a43b73aad0 only mark a function as hot when compiled with GCC >= 4.3 2009-11-02 01:09:11 +00:00
Charles Kerr 37dda955a1 (trunk libT) use __attribute__((nonnull)) where appropriate. remove two unused functions tr_int2ptr(), tr_ptr2int() 2009-11-01 01:35:06 +00:00
Charles Kerr 22e3f1175a (trunk libT) #2531: when the user moves a torrent from one location to another, we don't need to reverify if the files are just rename()d 2009-10-27 23:00:34 +00:00
Charles Kerr 306d26a97c (trunk libT) very minor tweak: tr_httpIsValidURL() should return a tr_bool, not an int. 2009-08-12 19:44:32 +00:00
Charles Kerr cb79214854 (trunk) remove trailing spaces 2009-08-10 20:04:08 +00:00
Charles Kerr 69bbff4d92 (trunk libT) fix a couple of minor gcc warnings 2009-07-17 18:00:29 +00:00
Charles Kerr e5ff7d8f3e (trunk) #2271: rounding problem in printf() 2009-07-14 20:09:46 +00:00
Charles Kerr 1be7f51b3d (trunk libT) simplify the evtimer / struct timeval code a little 2009-06-15 03:24:40 +00:00
Charles Kerr 8e676171d4 (trunk libT) move tr_bitfield into its own, package-visible source files. this may break the mac build temporarily until the xcode file gets synced 2009-06-15 00:11:06 +00:00
Charles Kerr ef21704b58 (trunk libT) remove the last calls to tr_getBuffer() and tr_releaseBuffer() 2009-06-14 01:00:36 +00:00
Charles Kerr a2b9fcc592 (trunk libT) possible fix for #2078: Assertion failed: (tv->tv_usec >= 0) 2009-06-12 23:01:35 +00:00
Charles Kerr 452cb27f9e (trunk libT) re-start work on making libT doxygen friendly. still a long ways to go on this. 2009-05-29 19:17:12 +00:00
Charles Kerr ed710be223 (trunk libT) expose tr_memmem() so it can be used by client code. use the OS' implementation if that's available. 2009-05-19 04:48:33 +00:00
Charles Kerr 29b1d3e2cc (trunk) #920: add "move data" to libT so all clients can use it 2009-05-13 15:54:04 +00:00
Charles Kerr 5df2570fdf (trunk libT) make tr_localtime_r() a public function 2009-03-25 18:42:39 +00:00
Charles Kerr 93b3d1ad7e (trunk) #1881: promote tr_strratio() to libtransmission, so that its code doesn't have to be repeated in all the clients 2009-03-04 16:16:02 +00:00
Charles Kerr 65bba3fdfb (trunk libT) #1671: transmission-remote --get option not including all files 2009-02-09 17:25:48 +00:00
Mitchell Livingston af7cbb94ad undo part of last commit....for now 2009-02-07 14:49:01 +00:00
Mitchell Livingston 3cc8440e78 trivial cleanup 2009-02-07 14:46:43 +00:00
Charles Kerr 29661cf245 (trunk libT) new macro, tr_assert(). use it to help smoke out #1749 2009-01-25 16:14:11 +00:00
Charles Kerr 4d228289ce (trunk libT) prefer `int' over `ssize_t' 2009-01-19 14:05:43 +00:00
Charles Kerr b6588f442b (trunk libT) have tr_strndup() take an ssize_t instead of an int 2009-01-18 15:15:41 +00:00
Charles Kerr 2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +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 98420365e9 (trunk libT) remove a small number of redundant or unnecessary asserts 2009-01-08 04:43:00 +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 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 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 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 ad69a937ef (trunk libT) have a pool of reusable evbuffers 2008-12-30 20:32:00 +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 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 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 f8a7c4b347 #1406: need tr_getDefaultDownloadDir() for consistency between apps 2008-11-15 17:39:54 +00:00
Charles Kerr 06939cafa6 (libT) low-hanging fruit discovered from softwareelves' shark profile. 2008-10-26 15:39:04 +00:00
Charles Kerr 188adb1d6a reverse patch #6948. one of the new gcc attributes seems to be causing trouble. 2008-10-23 02:37:21 +00:00
Charles Kerr f0eddb5c20 (libT) move the TR_GNUC macros from utils.h to a standalone header file so other libT headers can use them without getting an extra dependency tree. 2008-10-22 18:42:37 +00:00
Charles Kerr 674307add7 Add a new token, TR_DEFAULT_ENCRYPTION, and use it as the default in the various clients.
Add a new #define, TR_EMBEDDED.  When it's set, gettext is disabled and non-encrypted connections are the default.
2008-10-22 17:16:12 +00:00
Charles Kerr fc99ff6881 (libT) add some extra gcc safeguards. fix a couple of compiler warnings in makemeta 2008-10-22 17:14:50 +00:00
Charles Kerr 0b991a55c7 (libT) try again to get the libevent+libcurl code working 2008-10-15 16:43:51 +00:00
Charles Kerr b04be5fb2e make MAX_PATH_LENGTH private to libtransmission. add tr_dirname() and tr_basename() utility / portability wrappers 2008-10-14 03:39:16 +00:00
Charles Kerr e3a5524189 have tr_buildPath() allocate memory from the heap rather than using an input buffer 2008-10-14 03:03:29 +00:00
Charles Kerr 88ce8a5c44 more changes inspired by spry's `winport' code: for portability, use the standard __VA_ARGS__ macro for variadic macros instead of the CPP extensions. 2008-10-13 22:45:05 +00:00
Charles Kerr b824c704b7 first batch of portability changes based on spry's winport:
(1) added tr_getcwd(), a simple portability wrapper for getcwd()
(2) cli: show the help page if no command-line arguments are provided
(3) daemon: use tr_wait() intead of sleep()
(4) daemon: SIGQUIT, SIGPIPE, SIGHUP aren't defined on windows
(5) libtransmission: a couple of small cleanups to bencode.c, list.c, web.c
(6) libtransmission: win32 portability fixes to platform.c
2008-10-13 22:26:02 +00:00
Charles Kerr 4fab4c9e9b (libT) finish killing tr_errno. 2008-10-03 04:49:06 +00:00
Charles Kerr 4c34b2bc89 rpc-server cleanups. add true wildmat control. break the Mac build a little harder. 2008-09-25 18:48:09 +00:00
Charles Kerr cc89872dd4 run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened 2008-09-23 19:11:04 +00:00
Charles Kerr e07bc3543e (wx) get the wxWidgets port building again. :) 2008-09-19 17:17:34 +00:00
Charles Kerr ee10a8acab (libT) #1255: fails to parse announce URLs that have leading or trailing spaces 2008-09-05 19:11:30 +00:00
Charles Kerr c32491ab3a (libT) remove a little more dead code 2008-08-22 15:33:55 +00:00
Charles Kerr ef68e36a0d (libT) more dead code removal: tr_compareUint32(), tr_compareUint64(), tr_strcmp(), tr_strcasecmp() 2008-08-22 14:52:20 +00:00
Charles Kerr d323a99cdd undo part of r6616 to address the assertion failure reported by andersos and Waldorf 2008-08-22 01:27:00 +00:00
Charles Kerr 7e4fb99f8c * add DISABLE_GETTEXT preprocessor directive to turn off i18n in libtransmission for embedded devices.
* remove `wchar.h' #include from shttpd that broke the compile on embedded devices.
2008-08-21 21:04:57 +00:00
Charles Kerr ca45125259 (libT) more dead code removal: tr_compareTime() and tr_compareDouble() 2008-08-21 20:39:57 +00:00
Charles Kerr 1105dc0038 (libT) remove some dead functions: tr_calloc(), tr_compareUint16(), tr_compareUint32() 2008-08-21 19:03:56 +00:00
Charles Kerr 58881d45be more metainfo/bencode cleanup 2008-08-21 16:12:17 +00:00
Mukund Sivaraman ed7685dd1a Make tr_bitfieldHas() a macro 2008-08-20 13:45:52 +00:00
Mukund Sivaraman de62de3e19 Replace random number generation code 2008-08-14 11:11:25 +00:00
Charles Kerr fc87510be3 (gtk) #1108: transmission includes several unlocalized strings 2008-07-25 11:50:17 +00:00
Charles Kerr 2f239319b0 add a portability wrapper ``tr_snprintf()'' around snprintf() 2008-07-15 17:16:57 +00:00
Charles Kerr 518f277e9f (RPC) add utility arguments for torrent-info: sort by (activity|age|id|name|progress|ratio|state|tracker), filter by (active|all|downloading|paused|seeding) 2008-06-16 22:11:50 +00:00
Charles Kerr f0229ed8ad (libT) allow custom blocklists... now all you need to do is place a file in the blocklists/ folder and Transmission will automatically use it the next time it starts. 2008-06-11 16:15:45 +00:00
Charles Kerr dce24eb1f0 libT: first cut at implementing the internal peers' request queues as pieces rather than blocks, as discussed with erdgeist and denis, to avoid a couple of nasty CPU bottlenecks. 2008-06-09 22:53:45 +00:00
Charles Kerr e3e3bee8b5 #800 initial support for GetRight-style fetching of data through http and ftp servers specified in the .torrent's "url-list" tag 2008-06-07 21:26:41 +00:00
Charles Kerr e212eeceb7 add first draft of tr_bitfieldFindTrue() courtesy of erdgeist 2008-06-07 14:41:31 +00:00
Charles Kerr 041561f232 minor refactoring of tr_bitfield to (a) simplify the tests and (b) make things easier to read 2008-06-07 01:44:54 +00:00
Charles Kerr 7b88afdca7 (libT) 1. tweak tr_bitfieldTestFast(). 2. add tr_memdup() 2008-06-06 23:53:30 +00:00
Charles Kerr 2878d0d32e bitfield speedups written by denis__. Thanks! 2008-06-05 20:21:56 +00:00
Charles Kerr e391ef6e1a on shutdown, close the most active torrents first. That way if we can't get everyting closed in a reasonable amount of time, at least we get the ones that affect stats first. 2008-05-30 17:22:26 +00:00
Charles Kerr 7beacb3032 (1) RPC "add-torrent" now lets clients embed base64-encoded metainfo directly into the request
(2) remove the RISON code; it didn't make the final cut
(3) add base64 encode/decode utilities and unit tests
2008-05-20 17:33:54 +00:00
Charles Kerr d7f0e0fa1e * better RPC handling of requests submitted via http POST
* plug a pair of minor memory leaks reported by valgrind.
2008-05-19 18:16:58 +00:00
Charles Kerr 2c79888a93 RPC/IPC redesign 2008-05-18 16:44:30 +00:00
Charles Kerr 078ea29f37 add tr_strdup_printf() 2008-05-15 15:44:51 +00:00
Charles Kerr 0f9ca34848 #917: when seeding, drop peers that have everything you have (instead of just dropping seeds) 2008-05-06 19:06:46 +00:00
Charles Kerr a362df0a14 #905: update peer_id client lists. add a dozen or so new clients from Azureus (thanks amc1!) 2008-04-29 16:57:16 +00:00
Charles Kerr 47021f1a12 fold most of the "deep logging" functions into a single function 2008-04-25 02:57:33 +00:00
Charles Kerr 7ef2511ca8 #377: preliminary https support. this commit probably breaks mac and cli and is not for the faint of heart. 2008-04-24 01:42:53 +00:00
Mitchell Livingston 1d40202bfc string folding and dead code removal 2008-04-06 04:16:05 +00:00
Charles Kerr 8930e63e8b #840: bencode.c (and others) does not compile without libintl.h 2008-04-05 20:49:51 +00:00
Charles Kerr 39a7583f82 rename tr_httpParseUrl() -> tr_httpParseURL() 2008-03-24 19:29:25 +00:00
Charles Kerr 910d77ae12 (#814) require a valid announce URL when creating torrents 2008-03-24 15:58:06 +00:00
Mitchell Livingston 128fa0aedf Put in function for localization (as suggested on the cocoa dev list) and comment it out because i can't get it working as desired yet. 2008-03-18 19:18:22 +00:00
Charles Kerr 29f092197f #138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages 2008-03-13 03:53:18 +00:00
Charles Kerr daddf2c3ef (gtk) fix minor compiler warning when #including <libtransmission/utils.h> 2008-03-05 01:05:42 +00:00
Mitchell Livingston 052d849b59 get mac build compiling again 2008-03-04 02:23:01 +00:00
Charles Kerr 84a8592d1d first cut at adding i18n hooks into libtransmission. 2008-03-04 02:02:25 +00:00
Charles Kerr 24e05bf3fb harden the bitfield handling to handle corrupt messages from peers. This is in response to Ryoujin's crash report in the forums (http://forum.transmissionbt.com/viewtopic.php?p=20414#20414) 2008-03-02 23:44:34 +00:00
Charles Kerr d2f1c7aff3 added tr_sha1_to_hex() 2008-02-25 20:21:22 +00:00
Charles Kerr deaeb24cb5 cleanup #includes for errno & strerror 2008-02-19 04:16:04 +00:00
Charles Kerr de515ee339 if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged. 2008-01-18 19:13:32 +00:00
Charles Kerr dd75a769c9 fix tr_mkdirp()'s errno/retvals. 2008-01-18 01:40:41 +00:00
Charles Kerr 15ffb4232e tr_stat.ratio now returns TR_RATIO_INF when appropriate 2008-01-04 19:13:30 +00:00
Charles Kerr ce6c33b7bf set copyright info to 2008 2008-01-01 17:20:20 +00:00
Charles Kerr 73ee11f233 Use libnatpmp for port mapping. rewrite the upnp/natpmp manager.
NOTE: this will break the xpjets build until SoftwareElves or a volunteer patches the xcode project file to make a libnatpmp library just like was done for libminiupnp.
2007-12-08 19:34:15 +00:00
Charles Kerr 0663c4aef7 possible fix for Zeph's "too many open files" bug report. 2007-11-26 21:26:01 +00:00
Charles Kerr 0a61e04757 now that libevent has a stable 1.4 release out with the features & fixes we wanted, aim third-party/libevent/ at libevent's 1.4 maintainance branch instead of their trunk. 2007-11-20 03:11:50 +00:00
Charles Kerr 8516860fec fix a bug in tr_stat's availability numbers, reported by BentMyWookie 2007-11-11 16:33:04 +00:00
Charles Kerr fd430fde90 undoing the r3773-r3774 experiment. 2007-11-09 20:07:52 +00:00
Charles Kerr fda79c7eef oops, wrong #include for NSCParameterAssert in r3773. 2007-11-09 19:51:48 +00:00
Charles Kerr 67b719c2de on Darwin, use NSCParameterAssert() instead of assert(). 2007-11-09 19:50:40 +00:00
Charles Kerr 60aab6c433 remove libtransmission code that duplicates functionality in libevent 2007-11-06 21:14:30 +00:00
Charles Kerr 9df263326d use Thomas Bernard's miniupnp library instead of rolling our own. 2007-11-06 16:02:50 +00:00
Charles Kerr 96351b93ef part 1 of the data corruption fix: plug the leaky abstraction in fdlimit 2007-10-30 18:35:06 +00:00
Charles Kerr 6527f4e12a dead code removal. 2007-10-20 15:17:36 +00:00
Charles Kerr 212470560e fix overflow error that caused timers with intervals larger than 35 minutes to be lost... which is nastier than it sounds, since that's shorter than many tracker announce intervals. 2007-10-18 18:32:58 +00:00
Charles Kerr 3210f92085 const-ify tr_msg()'s input arguments 2007-10-17 18:24:53 +00:00
Charles Kerr efe4847204 new utility (tr_loadFile), and reimplement metainfo's "readtorrent" to use it. 2007-10-15 20:15:34 +00:00
Charles Kerr c75f49bc26 * add a per-peer request queue to hold the next 10-15 seconds' worth of requests so that we always have more requests at hand when the current requests start to run low.
* increase the tracker `numwant' variable to grow our peer pool
* bugfixes in cancelling requests.
* make the debug log sexy and readable like uTorrent's ;)
2007-10-06 18:20:52 +00:00
Charles Kerr dd8dc4d87e tweak the bitfield code to be a little faster. 2007-09-25 17:43:39 +00:00
Charles Kerr 28bcf6204b clamp down on the flood of debug messages. 2007-09-20 23:33:46 +00:00
Mitchell Livingston 76da1185ca merge encryption branch to trunk (xcode project is still out of date) 2007-09-20 16:32:01 +00:00
Charles Kerr 53d48e4c37 add utility function for setting libevent timer intervals 2007-08-23 20:33:01 +00:00
Josh Elsasser 7301b39c8b Rework utf-8 string concat function a little and make it more widely available. 2007-08-15 23:02:56 +00:00
Charles Kerr 2bf071543b get some pieces of the new tracker code into svn... 2007-08-14 20:45:23 +00:00
Josh Elsasser b46052826c Include inttypes.h instead of stdint.h to unbreak beos.
Hopefully this won't break anything.
2007-08-04 00:43:47 +00:00
Charles Kerr 26caf4f5dd More Win32 portability changes 2007-08-01 00:40:49 +00:00
Charles Kerr 7cfafc5371 * now that we've got a new function at the top of the CPU hog list, tweak it too.
* reduce large torrents' memory consumption in tr_completion_t.
2007-07-28 22:47:10 +00:00
Charles Kerr 459b8958cb simplify xml.c and utils.c's dependencies 2007-07-19 11:54:37 +00:00
Charles Kerr b73297e799 sync with r2397 2007-07-18 22:59:29 +00:00
Charles Kerr 1c7c8072b4 fix crash on zero-byte torrents 2007-07-15 03:52:51 +00:00
Josh Elsasser c0970d0431 Unbreak the build on my system. 2007-07-14 05:28:35 +00:00
Charles Kerr 790476ac23 clean up #includes a bit. 2007-07-12 17:51:45 +00:00
Charles Kerr f0950d7390 lots of performance improvements. fun!
* dynamically resize the request queue on a per-peer basis based on its speed
* fix a huge bug that sabotaged the `swift' performance
* on startup, unchoke peers much sooner
* bump MAX_PEERS and PERCENT_PEER_WANTED
* do a better job of estimating speed on torrents less than 30 seconds old.
* getting an unrecognized extension ID, ignore it instead of stopping the torrent.
2007-06-29 05:45:17 +00:00
Charles Kerr 47a5ff4120 add tr_torrentCanAdd() as per BentMyWookie's request... clear tracker error string when restarting... fix r2202 "completed" announce bug. 2007-06-27 05:14:38 +00:00
Charles Kerr 06e761d950 * fix error checking large files reported by Gimp_
* portability changes to pathname/filename building
* small gratuitous changes
2007-06-18 19:39:52 +00:00
Mitchell Livingston 0256f4616d Merge file selection and torrent creation into the main branch.
The new code for these features is under a new license.
2007-06-18 03:40:41 +00:00
Charles Kerr 3b8d1e13c4 uninteresting minor stuff like adding const. this commit is just to reduce the shear between trunk and what lands in the file-selection branch. 2007-06-09 15:36:46 +00:00
Josh Elsasser 63bb617fa4 Add more I/O error codes. 2007-04-20 02:05:07 +00:00
Josh Elsasser 09c87aad84 Merge PEX branch, I hope this works. 2007-03-23 08:28:01 +00:00
Josh Elsasser e9b4fd8aff Do bounds checking on bitfields. 2007-03-05 23:03:38 +00:00
Josh Elsasser 6ebeef7924 Correctly bencode strings containing nul characters. 2007-01-28 23:26:57 +00:00
Eric Petit e5e6a8b5df Merge io branch into trunk 2007-01-14 12:00:21 +00:00
Josh Elsasser 0257761670 Merge nat-traversal branch to trunk. 2006-09-25 18:37:45 +00:00
Josh Elsasser 43e6dd56aa Rework the message stuff again to be easier on the frontend. 2006-08-22 02:12:58 +00:00
Josh Elsasser 8bc4cefa2d Allow frontend to change message output level.
Rename tr_setErrorFunction() to tr_setMessageFunction()
2006-08-20 18:15:25 +00:00
Eric Petit f199e0a9d9 Revert [619] 2006-07-16 19:39:23 +00:00
Mitchell Livingston 5d36721a15 Remove old Sparkle... 2006-07-16 19:28:19 +00:00
Josh Elsasser 0600f3d4aa Add support to libtransmission and the MacOS X GUI for saving private copies of
torrent files.
2006-06-09 19:53:35 +00:00
Eric Petit f98fe6a1b0 Added $Id$ keywords and updated a few headers 2006-05-29 21:21:23 +00:00
Eric Petit dfe3bc870a Merged simple_http_parsing branch 2006-04-11 22:37:43 +00:00
Eric Petit 835c3284dd Update 2005-11-24 2006-01-12 18:40:47 +00:00
Eric Petit d2cc6ce7c6 Update 2005-11-17 2006-01-12 18:29:20 +00:00
Eric Petit a6aa884776 Import from 2005-10-26 2006-01-12 17:43:21 +00:00