bugmldonkey, a multi-networks file-sharing client - Bugs: bug #17116, HTTP: Can not download URLs...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #17116: HTTP: Can not download URLs containing "+"

Submitter:  spiralvoice <spiralvoice>
Submitted:  Sun 16 Jul 2006 05:03:59 PM UTC
   
 
Category:  Core Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Program malfunction
Status:  Fixed Assigned to:  None
Open/Closed:  Closed Release:  2.7.7
Release:  Operating System:  None
Binaries Origin:  CVS / Self compiled CPU type:  None

Discussion

Sat 17 Mar 2007 06:45:30 PM UTC, comment #4: 

Fixed with patch #5775

spiralvoice <spiralvoice>
Group administrator
Sat 03 Mar 2007 11:32:12 PM UTC, comment #3: 

forget what i said earlier + is allowed, so we need extra encoder for web interface

orbit <orbit>
Sat 03 Mar 2007 02:33:05 AM UTC, comment #2: 

patch works but break web interface ;)

for some shitty reason someone thought submitting command parameters with + as separator is a good idea, it's not

If I get it right in RFC1738,
in http/ftp scheme "+" should be encoded "%2B"



I think we have tree options:

  1. won't fix ;)
  2. write extra encoder for web interface
  3. rewrite web interface code (could break some external e.g. Mozilla protocol handler), but in my view the neatest solution
orbit <orbit>
Fri 02 Mar 2007 11:33:32 PM UTC, comment #1: 

for testing de-/encoding
http://www.bloobe ... s/urlencoding.htm

i don't could test it yet but this could help

diff -u -r1.6 url.ml
--- src/utils/lib/url.ml        25 Feb 2006 21:09:03 -0000        1.6
+++ src/utils/lib/url.ml        2 Mar 2007 23:24:52 -0000
@@ -42,7 +42,7 @@
     else Char.chr (Char.code '0' + x) in
   for i=0 to len-1 do
     match s.[i] with
-    | 'a'..'z' | 'A'..'Z' | '0'..'9' | '.' | '-' | '*' | '_' ->
+    | 'a'..'z' | 'A'..'Z' | '0'..'9' | '.' | '-' | '*' | '_' | '(' | ')' ->
         res.[!pos] <- s.[i]; incr pos
 (*    | ' ' -> res.[!pos] <- '+'; incr pos *)
     | c ->
@@ -68,7 +68,6 @@
   let rec iter i =
     if i < len then
       match s.[i] with
-      | '+' -> Buffer.add_char r  ' '; iter (i+1)
       | '%' ->
           let n =
             try

  • why should '+' be replaced by ' '?
  • to the list above ' should be added but I'm to lazy to look up how to write it, ''' won't work i guess ;)
orbit <orbit>
Sun 16 Jul 2006 05:03:59 PM UTC, original submission:  

These URLs do not work with dllink:

http://beatallica ... 5Bflac%5D.torrent
http://beatallica ... 5Bflac%5D.torrent

but downloading the .torrent files with wget and putting
them into torrents/incoming works.

spiralvoice <spiralvoice>
Group administrator

 

Attached Files

This item currently has no attached files.

 

Dependencies

This item does not depend on any other items.

No items depend on this one.

 

Mail Notification Carbon-Copy List

Carbon-Copy List
  • -email is unavailable- added by spiralvoice (Posted a comment)
  • -email is unavailable- added by orbit (Posted a comment)
  •  

    Votes

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    History

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2007-03-17 spiralvoice StatusNone Fixed
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.16-ed84.
    Corresponding source code