gPodder Bug Tracker – Full Text Bug Listing
|Summary:||Resolved IP leads to HTTP authentication Error|
|Product:||gPodder||Reporter:||Eric Smith <ericsmith.lpi>|
|Component:||Application||Assignee:||Thomas Perl <thp>|
|Attachments:||Rss feed for the feed in question.|
Description Eric Smith 2011-12-13 05:52:50 GMT
Created attachment 673 [details] Rss feed for the feed in question. gPodder is unable to add the rss feed, with username and password, http://www.superfreaksideshow.com/members2/show/?feed=rss2. GUI give following error: Could not add some podcasts Some podcasts could not be added to your list: http://www.superfreaksideshow.com/members2/show/?feed=rss2: Authentication failed Terminal give following output: 1323754117.597577 [gPodder] INFO: QUEUE RUNNER: http://www.superfreaksideshow.com/members2/show/?feed=rss2 1323754117.597981 [MygPoClient] INFO: Flush requested. 1323754117.598507 [Database] INFO: load_channels() Nor will it add http://sjcire%40gmail.com:*firstname.lastname@example.org/members2/exclusive/dv_120811_64.mp3. GUI gives the following error: Could not add some podcasts Some podcasts could not be added to your list: http://sjcire%gmail.com:*email@example.com/members2/show/?feed=rss2: Authentication failed Terminal gives the following output: 1323754117.597577 [gPodder] INFO: QUEUE RUNNER: http://www.superfreaksideshow.com/members2/show/?feed=rss2 1323754117.597981 [MygPoClient] INFO: Flush requested. 1323754117.598507 [Database] INFO: load_channels() Strangely enough it will add http://firstname.lastname@example.org:*email@example.com/members2/exclusive/dv_120811_64.mp3. Note that when added I've used @ in my username. All feed items will show up in feed but gpodder is unable to download the protected mp3s. Terminal gives the follwoing error: 1323754388.182321 [DownloadTask] INFO: HTTP error 401 while downloading "Distorted View Daily: 12/08/11 SIDESHOW": Authorization Required I'm no linux wiz and I don't know all the output you would like to see. However as a test I downloaded an episode with wget. The url of the mp3 comes from the rss feed I have attached. See successful wget below. ---- eric@Bender:~$ wget -d http://sjcire%40gmail.com:*firstname.lastname@example.org/members2/exclusive/dv_120811_64.mp3 DEBUG output created by Wget 1.12 on linux-gnu. --2011-12-12 21:00:45-- http://sjcire%40gmail.com:*email@example.com/members2/exclusive/dv_120811_64.mp3 Resolving www.superfreaksideshow.com... 126.96.36.199 Caching www.superfreaksideshow.com => 188.8.131.52 Connecting to www.superfreaksideshow.com|184.108.40.206|:80... connected. Created socket 3. Releasing 0x08230710 (new refcount 1). ---request begin--- GET /members2/exclusive/dv_120811_64.mp3 HTTP/1.0 User-Agent: Wget/1.12 (linux-gnu) Accept: */* Host: www.superfreaksideshow.com Connection: Keep-Alive ---request end--- HTTP request sent, awaiting response... ---response begin--- HTTP/1.1 401 Authorization Required Date: Tue, 13 Dec 2011 05:00:47 GMT Server: Apache WWW-Authenticate: Basic realm="Restricted Area" Content-Length: 631 Keep-Alive: timeout=2, max=200 Connection: Keep-Alive Content-Type: text/html ---response end--- 401 Authorization Required Registered socket 3 for persistent reuse. Skipping 631 bytes of body: [<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Error 401 - Unauthorized</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="cache-control" content="no-cache" /> </head> <body style="font-family:arial;"> <h1 style="color:#0a328c;font-size:1.0em;">Error 401 - Unauthorized</h1> <p style="font-size:0.8em;">You failed to provide a valid account required for access to page.</p> </body> </html> ] done. Reusing existing connection to www.superfreaksideshow.com:80. Reusing fd 3. ---request begin--- GET /members2/exclusive/dv_120811_64.mp3 HTTP/1.0 User-Agent: Wget/1.12 (linux-gnu) Accept: */* Host: www.superfreaksideshow.com Connection: Keep-Alive Authorization: Basic c2pjaXJlQGdtYWlsLmNvbTpjZW50cmFsNg== ---request end--- HTTP request sent, awaiting response... ---response begin--- HTTP/1.1 200 OK Date: Tue, 13 Dec 2011 05:00:47 GMT Server: Apache Last-Modified: Thu, 08 Dec 2011 21:25:01 GMT ETag: "904a52-c737e1-4ee12b2d" Accept-Ranges: bytes Content-Length: 13055969 Keep-Alive: timeout=2, max=199 Connection: Keep-Alive Content-Type: audio/mpeg ---response end--- 200 OK Length: 13055969 (12M) [audio/mpeg] Saving to: `dv_120811_64.mp3.4' 100%[================================================================================================================================================>] 13,055,969 145K/s in 95s 2011-12-12 21:02:21 (135 KB/s) - `dv_120811_64.mp3.4' saved [13055969/13055969] -- It seems that wget resolves the hostname to an IP, then attempts to get http authentication. It fails. Afterwords it attempts to simply use the hostname. I don't understand how this url is routed (likely cause I'm not so smart with the inter tubes and what not). I also don't know if the strange routing in wget is related to my problem with gpodder. What I'm sure of is this is happening because Tim Henson is a dumb ass (he hosts this podcast). It just seems to me that if I can use wget to download the podcast than shouldn't gpodder also work. I used podget for years, then flexget, and now gpodder. For anyone who wants to hear, I think gpodder is fantastic. Good work.
Comment 1 Thomas Perl 2011-12-13 16:16:03 GMT
Please note that the Authorization: Basic header contains your password (in mangled, unencrypted form). Please change your password to something else and remove the Authorization header in future bug reports. As for the bug itself, I'll hopefully get around to have a look at it soon.
Comment 2 Eric Smith 2011-12-21 18:49:59 GMT
One thing occurred to me last night. I tested downloading a MP3, posted i the feed in question. This may not represent the errors that I received in gpodder. After all I was never really able to add this feed. So I attempted to download the rss feed via wget. I received the same results as below. wget downlads the file only after resolving the host, failing to authenticated and then authenticating via the unresolved hostname. I also was unable to add this feed in the windows version of gpodder 4.0.1. But because I'm ignorant in the ways of windows I could not figure out how to download in the cmd terminal to see if that worked correctly.
Comment 4 Thomas Perl 2012-01-04 11:07:46 GMT
Do you have a test account that I can use to reproduce the bug and debug this?
Comment 5 Eric Smith 2012-01-04 21:32:34 GMT
I asked for a test account. I'll contact you as soon as possible.
Comment 6 Thomas Perl 2012-01-09 13:51:59 GMT
Thanks for the temporary access (via private mail). I've now fixed the issue in Git: http://gpodder.org/commit/0df167ff As a drive-by fix, I've also made sure that for password-protected feed, the authentication data is also used for downloading the cover art (which in the specific feed was indeed a problem - the cover art couldn't be downloaded without authentication - the patch also fixes this one). The fix will be part of the gPodder 3.0.3 release.