[packages] transmission: update to 2.40b1

git-svn-id: svn://svn.openwrt.org/openwrt/packages@28280 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
obsy 2011-09-21 15:19:21 +00:00
parent 6b67905871
commit c37be7ea8b
4 changed files with 14 additions and 135 deletions

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=transmission
PKG_VERSION:=2.33
PKG_VERSION:=2.40b1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://mirrors.m0k.org/transmission/files
PKG_MD5SUM:=082217a65713ac879410c622cbe6eb26
PKG_MD5SUM:=3280e0a271967918abd83aca7414763c
PKG_FIXUP:=libtool
PKG_INSTALL:=1

View File

@ -16,6 +16,8 @@ config transmission
option cache_size_mb 2
option dht_enabled true
option download_dir '/tmp/transmission/done'
option download_queue_enabled true
option download_queue_size 4
option encryption 1
option idle_seeding_limit 30
option idle_seeding_limit_enabled false
@ -37,6 +39,8 @@ config transmission
option port_forwarding_enabled true
option preallocation 1
option prefetch_enabled 1
option queue_stalled_enabled true
option queue_stalled_minutes 30
option ratio_limit 2.0000
option ratio_limit_enabled false
option rename_partial_files true
@ -49,8 +53,11 @@ config transmission
option rpc_username ''
option rpc_whitelist '127.0.0.1,192.168.1.*'
option rpc_whitelist_enabled true
option scrape_paused_torrents_enabled true
option script_torrent_done_enabled false
option script_torrent_done_filename ''
option seed_queue_enabled false
option seed_queue_size 10
option speed_limit_down 100
option speed_limit_down_enabled false
option speed_limit_up 20

View File

@ -56,13 +56,16 @@ start_service() {
append_params "$s" \
alt_speed_down alt_speed_enabled alt_speed_time_begin alt_speed_time_day \
alt_speed_time_enabled alt_speed_time_end alt_speed_up blocklist_enabled \
cache_size_mb dht_enabled encryption idle_seeding_limit idle_seeding_limit_enabled \
cache_size_mb download_queue_enabled download_queue_size \
dht_enabled encryption idle_seeding_limit idle_seeding_limit_enabled \
incomplete_dir_enabled lazy_bitfield_enabled lpd_enabled message_level \
open_file_limit peer_limit_global peer_limit_per_torrent peer_port \
peer_port_random_high peer_port_random_low peer_port_random_on_start \
peer_socket_tos pex_enabled port_forwarding_enabled preallocation prefetch_enabled \
ratio_limit ratio_limit_enabled rename_partial_files rpc_authentication_required \
rpc_enabled rpc_port rpc_whitelist_enabled script_torrent_done_enabled \
rpc_enabled rpc_port rpc_whitelist_enabled queue_stalled_enabled \
queue_stalled-minutes scrape_paused_torrents_enabled script_torrent_done_enabled \
seed_queue_enabled seed_queue_size \
speed_limit_down speed_limit_down_enabled speed_limit_up \
speed_limit_up_enabled start_added_torrents trash_original_torrent_files \
umask upload_slots_per_torrent utp_enabled scrape_paused_torrents \

View File

@ -1,131 +0,0 @@
Index: transmission-2.31/libtransmission/announcer.c
===================================================================
--- transmission-2.31.orig/libtransmission/announcer.c 2011-05-23 13:34:54.000000000 +0200
+++ transmission-2.31/libtransmission/announcer.c 2011-05-23 13:48:03.000000000 +0200
@@ -1433,11 +1433,13 @@
tor = NULL;
while(( tor = tr_torrentNext( announcer->session, tor ))) {
struct tr_torrent_tiers * tt = tor->tiers;
+ const bool paused = !tor->isRunning;
+ const bool scrapePaused = tr_sessionGetScrapePaused( announcer->session );
for( i=0; tt && i<tt->tier_count; ++i ) {
tr_tier * tier = &tt->tiers[i];
if( tierNeedsToAnnounce( tier, now ) )
tr_ptrArrayAppend( &announceMe, tier );
- else if( tierNeedsToScrape( tier, now ) )
+ else if( tierNeedsToScrape( tier, now ) && ( !paused || scrapePaused ) )
tr_ptrArrayAppend( &scrapeMe, tier );
}
}
@@ -1505,6 +1507,7 @@
tr_tracker_stat * ret;
struct tr_torrent_tiers * tt;
const time_t now = tr_time( );
+ bool scrapePaused;
assert( tr_isTorrent( torrent ) );
assert( tr_torrentIsLocked( torrent ) );
@@ -1515,6 +1518,8 @@
*setmeTrackerCount = tt->tracker_count;
ret = tr_new0( tr_tracker_stat, tt->tracker_count );
+ scrapePaused = tr_sessionGetScrapePaused( torrent->session );
+
/* populate the stats */
for( i=0; i<tt->tier_count; ++i )
{
@@ -1559,7 +1564,7 @@
if( tier->isScraping )
st->scrapeState = TR_TRACKER_ACTIVE;
- else if( !tier->scrapeAt )
+ else if( !tier->scrapeAt || ( !torrent->isRunning && !scrapePaused ) )
st->scrapeState = TR_TRACKER_INACTIVE;
else if( tier->scrapeAt > now )
{
Index: transmission-2.31/libtransmission/session.c
===================================================================
--- transmission-2.31.orig/libtransmission/session.c 2011-05-23 13:41:05.000000000 +0200
+++ transmission-2.31/libtransmission/session.c 2011-05-23 13:50:23.000000000 +0200
@@ -359,6 +359,7 @@
tr_bencDictAddStr ( d, TR_PREFS_KEY_BIND_ADDRESS_IPV4, TR_DEFAULT_BIND_ADDRESS_IPV4 );
tr_bencDictAddStr ( d, TR_PREFS_KEY_BIND_ADDRESS_IPV6, TR_DEFAULT_BIND_ADDRESS_IPV6 );
tr_bencDictAddBool( d, TR_PREFS_KEY_START, true );
+ tr_bencDictAddBool( d, TR_PREFS_KEY_SCRAPE_PAUSED_TORRENTS, true );
tr_bencDictAddBool( d, TR_PREFS_KEY_TRASH_ORIGINAL, false );
}
@@ -424,6 +425,7 @@
tr_bencDictAddStr ( d, TR_PREFS_KEY_BIND_ADDRESS_IPV4, tr_address_to_string( &s->public_ipv4->addr ) );
tr_bencDictAddStr ( d, TR_PREFS_KEY_BIND_ADDRESS_IPV6, tr_address_to_string( &s->public_ipv6->addr ) );
tr_bencDictAddBool( d, TR_PREFS_KEY_START, !tr_sessionGetPaused( s ) );
+ tr_bencDictAddBool( d, TR_PREFS_KEY_SCRAPE_PAUSED_TORRENTS, tr_sessionGetScrapePaused( s ) );
tr_bencDictAddBool( d, TR_PREFS_KEY_TRASH_ORIGINAL, tr_sessionGetDeleteSource( s ) );
}
@@ -776,6 +778,8 @@
tr_blocklistSetURL( session, str );
if( tr_bencDictFindBool( settings, TR_PREFS_KEY_START, &boolVal ) )
tr_sessionSetPaused( session, !boolVal );
+ if( tr_bencDictFindBool( settings, TR_PREFS_KEY_SCRAPE_PAUSED_TORRENTS, &boolVal ) )
+ tr_sessionSetScrapePaused( session, boolVal );
if( tr_bencDictFindBool( settings, TR_PREFS_KEY_TRASH_ORIGINAL, &boolVal) )
tr_sessionSetDeleteSource( session, boolVal );
@@ -1636,6 +1640,22 @@
}
void
+tr_sessionSetScrapePaused( tr_session * session, bool enable )
+{
+ assert( tr_isSession( session ) );
+
+ session->scrapePausedTorrents = enable;
+}
+
+bool
+tr_sessionGetScrapePaused( const tr_session * session )
+{
+ assert( tr_isSession( session ) );
+
+ return session->scrapePausedTorrents;
+}
+
+void
tr_sessionSetDeleteSource( tr_session * session, bool deleteSource )
{
assert( tr_isSession( session ) );
Index: transmission-2.31/libtransmission/session.h
===================================================================
--- transmission-2.31.orig/libtransmission/session.h 2011-05-23 13:45:30.000000000 +0200
+++ transmission-2.31/libtransmission/session.h 2011-05-23 13:46:12.000000000 +0200
@@ -106,6 +106,7 @@
bool isIdleLimited;
bool isIncompleteDirEnabled;
bool pauseAddedTorrent;
+ bool scrapePausedTorrents;
bool deleteSourceTorrent;
tr_benc removedTorrents;
Index: transmission-2.31/libtransmission/transmission.h
===================================================================
--- transmission-2.31.orig/libtransmission/transmission.h 2011-05-23 13:48:11.000000000 +0200
+++ transmission-2.31/libtransmission/transmission.h 2011-05-23 13:49:15.000000000 +0200
@@ -213,6 +213,7 @@
#define TR_PREFS_KEY_UMASK "umask"
#define TR_PREFS_KEY_UPLOAD_SLOTS_PER_TORRENT "upload-slots-per-torrent"
#define TR_PREFS_KEY_START "start-added-torrents"
+#define TR_PREFS_KEY_SCRAPE_PAUSED_TORRENTS "scrape-paused-torrents"
#define TR_PREFS_KEY_TRASH_ORIGINAL "trash-original-torrent-files"
@@ -731,6 +732,9 @@
void tr_sessionSetPaused ( tr_session *, bool isPaused );
bool tr_sessionGetPaused ( const tr_session * );
+void tr_sessionSetScrapePaused ( tr_session *, bool enable );
+bool tr_sessionGetScrapePaused ( const tr_session * );
+
void tr_sessionSetDeleteSource ( tr_session *, bool deleteSource );
bool tr_sessionGetDeleteSource ( const tr_session * );