← Back to team overview

dx-packages team mailing list archive

[Bug 1351222] Re: URL parsing doesn't comply with RFC 3986

 

** Changed in: dialer-app
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of DX
Packages, which is subscribed to url-dispatcher in Ubuntu.
https://bugs.launchpad.net/bugs/1351222

Title:
  URL parsing doesn't comply with RFC 3986

Status in Dialer app for Ubuntu Touch:
  Fix Released
Status in URL Dispatcher:
  Fix Released
Status in “dialer-app” package in Ubuntu:
  Fix Released
Status in “url-dispatcher” package in Ubuntu:
  Fix Released
Status in “dialer-app” package in Ubuntu RTM:
  Confirmed
Status in “url-dispatcher” package in Ubuntu RTM:
  Triaged

Bug description:
  I tried opening a link without a path component (for example
  scheme:?param1=value1&param2=value2) and I got back an error from URL
  dispatcher "com.canonical.URLDispatcher.BadURL: URL
  'scheme:?param1=value1&param2=value2' is not handleable by the URL
  Dispatcher".

  I looked at the code, and it seems URL dispatcher parses URLs with the regex: ^(.*)://([a-z0-9\\.-]*)?/?(.*)?$
  A URL doesn't have to look like that. Here is the URI grammar taken from the RFC:
  URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
  hier-part = "//" authority path-abempty
              / path-absolute
              / path-rootless
              / path-empty

  Links that can't currently be parsed by URL dispatcher are for example magnet links (used for torrents).
  They look like: magnet:?xt=urn:ed2k:31D6CFE0D16AE931B73C59D7E0C089C0
  &xl=0&dn=zero_len.fil
  &xt=urn:bitprint:3I42H3S6NNFQ2MSVX7XZKYAYSCX5QBYJ
  .LWPNACQDBZRYXW3VHJVCJ64QBZNGHOHHHZWCLNQ
  &xt=urn:md5:D41D8CD98F00B204E9800998ECF8427E and therefore also can't be parsed by URL dispatcher.

To manage notifications about this bug go to:
https://bugs.launchpad.net/dialer-app/+bug/1351222/+subscriptions