Bug 674726

Summary: "Tracker Details" tab doesn't fuction properly (patch provided)
Product: [Fedora] Fedora Reporter: "FeRD" (Frank Dana) <ferdnyc>
Component: gtorrentviewerAssignee: Paul Howarth <paul>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 14CC: paul
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: gtorrentviewer-0.2b-21.fc13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-13 08:56:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Patch to make Tracker Details tab functional none

Description "FeRD" (Frank Dana) 2011-02-03 02:53:28 UTC
Created attachment 476693 [details]
Patch to make Tracker Details tab functional

Description of problem:

The Tracker Details tab doesn't function properly, because:
(a) it fails to handle announce-lists with multiple tracker groups, which has become the norm
(b) the scrape code expects the tracker URL to end in an info_hash parameter (which I've never seen), instead of adding that parameter


Version-Release number of selected component (if applicable): 0.2b-20.fc14


Additional info:

The attached patch corrects both of these issues.

I've submitted it upstream as well[1], but there's been no developer activity on the gtorrentviewer sourceforge project in something like 2 years, and its CVS repository doesn't even seem to be accessible anymore, so I'm not optimistic about the patch being applied there anytime soon.

[1]: http://sourceforge.net/tracker/?func=detail&aid=3171158&group_id=120398&atid=686877

Comment 1 "FeRD" (Frank Dana) 2011-02-03 02:55:30 UTC
(Make that 6 years... I don't know why the sourceforge summary page claimed activity 500-something days ago, but the latest released project files are from 2004.)

Comment 2 Paul Howarth 2011-02-03 13:21:03 UTC
Indeed, no activity for many years.

The unpatched upstream version actually crashes if you press the "Refresh" button on the "Tracker Details" tab with a modern gtk library.

Thanks for the patch, it definitely improves things and I'll be pushing updates for Rawhide, F-14 and F-13 shortly.

Comment 3 Fedora Update System 2011-02-03 13:24:05 UTC
gtorrentviewer-0.2b-21.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/gtorrentviewer-0.2b-21.fc14

Comment 4 Fedora Update System 2011-02-03 13:24:12 UTC
gtorrentviewer-0.2b-21.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/gtorrentviewer-0.2b-21.fc13

Comment 5 Fedora Update System 2011-02-03 20:22:33 UTC
gtorrentviewer-0.2b-21.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update gtorrentviewer'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/gtorrentviewer-0.2b-21.fc13

Comment 6 "FeRD" (Frank Dana) 2011-02-05 10:45:12 UTC
Looks good, thanks Paul! I installed the gtorrentviewer-0.2b-21.fc14 build from updates-testing, it functions identically to the local build I used to generate the patch.

It's worth noting that, while I believe my patch is an overall improvement and therefore worth distributing, it's still a hack. The new code should work properly for the majority of "typical" torrents/trackers, but will definitely break (in a graceful way, with connection-failed or bad-data messages) for some URLs. There are a few spots that could use further attention, though... I'll briefly list some outstanding issues here (for lack of a better place). This way, they're documented somewhere public; perhaps someone else can improve the code. (Or maybe I'll feel inspired to revisit it down the road.)

main.c:tracker_scrape()
1. The current quick-and-dirty logic should work for tracker URLs of the form "http://host[:port]/announce" (by far the most common), but the code as patched explicitly still does NOT implement the full logic from the scrape "standard", as documented here:
http://wiki.theory.org/BitTorrentSpecification#Tracker_.27scrape.27_Convention
(...It should.)

mainwindow.c:mainwindow_fill_trackers_tab()
1. the udp: trackers really shouldn't be listed at all, since they can't be scraped. The selections should be limited to http: trackers.
2. As noted above, the scrape "standard" is documented, and includes rules for determining whether a tracker supports scrape based on its URL. Any "non-scrapeable" tracker URLs should also be excluded.

Comment 7 Fedora Update System 2011-02-13 08:56:30 UTC
gtorrentviewer-0.2b-21.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2011-02-13 08:58:33 UTC
gtorrentviewer-0.2b-21.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.