|Disable the private flag in Transmission
||[Feb. 12th, 2008|12:41 am]
The private flag in BitTorrent, which disables any external peer exchange for a torrent, is DRM, plain and simple. It's a malicious feature designed to force the wishes of the content producers (the private trackers) on you. The P2P community shouldn't rail against DRM and simultaneously encourage it when it's convenient. I do sympathize with private trackers, but they can't be hypocritical: DRM isn't the way to go about their issues.
Thankfully, we have open source BitTorrent clients, so we don't have to put up with our computers working against us.
Following is a patch to Transmission 1.05 to remove the private flag. I don't care if Transmission gets banned from trackers for this: it's easy enough to make the client masquerade as other clients.
diff -Naur transmission-1.05/libtransmission/metainfo.c transmission-1.05-noprivate/libtransmission/metainfo.c
--- transmission-1.05/libtransmission/metainfo.c 2008-02-12 00:38:45.000000000 -0600
+++ transmission-1.05-noprivate/libtransmission/metainfo.c 2008-02-12 00:39:32.000000000 -0600
@@ -219,13 +219,7 @@
/* Private torrent */
- val = tr_bencDictFind( beInfo, "private" );
- val2 = tr_bencDictFind( meta, "private" );
- if( ( NULL != val && ( TYPE_INT != val->type || 0 != val->val.i ) ) ||
- ( NULL != val2 && ( TYPE_INT != val2->type || 0 != val2->val.i ) ) )
- inf->isPrivate = 1;
+ /* Disabled in -noprivate branch */
/* Piece length */
val = tr_bencDictFind( beInfo, "piece length" );