Opened 17 years ago

Last modified 9 years ago

#24 new enhancement

provide URL-safe FURLs

Reported by: Brian Warner Owned by:
Priority: major Milestone: undecided
Component: network Version: 0.1.6
Keywords: Cc:

Description (last modified by Brian Warner)

For several places in Tahoe we need to pass FURLS around in HTTP URL query arguments. The fact that normal FURLs look a lot like HTTP URLs causes problems with this: I've found that even after you URL-quote the FURL, the slashes in it can cause problems for HTTP reverse-proxies (what I observed was that the proxy un-escaped the URL and got confused by the slashes in the query arguments, thinking they were part of the query itself).

To this end, it would be convenient if there were a URL-safe form of a FURL, preferably entirely base32 characters (with perhaps a few other URL-safe characters as delimiters, like maybe a decimal point or comma or something).

I'd like these FURLs to be passable to Tub.getReference just like the normal pb:// FURL.

Zooko describes this in terms of "compressed FURLs", which are packed, non-human readable, and don't necessarily need to be self-describing. I'm hoping he'll chime in with his thoughts on this ticket.

I'm not sure what the best API for this would be.. maybe Tub.compressFURL(oldfurl) ? It doesn't need to be a method of the Tub, really.. foolscap.compressFURL(oldfurl) could work too.

Change History (3)

comment:1 Changed 17 years ago by Brian Warner

Milestone: undecided0.1.7

comment:2 Changed 17 years ago by Brian Warner

Milestone: 0.1.7undecided

comment:3 Changed 9 years ago by Brian Warner

Component: unknownnetwork
Description: modified (diff)
Note: See TracTickets for help on using tickets.