[Cyberduck-trac] [Cyberduck] #10542: Make Host Parsing RFC3986 compliant

Cyberduck trac at cyberduck.io
Tue Nov 20 11:01:16 UTC 2018

#10542: Make Host Parsing RFC3986 compliant
    Reporter:  jmalek  |      Owner:  jmalek
        Type:  defect  |     Status:  new
    Priority:  normal  |  Milestone:  7.0
   Component:  core    |    Version:
    Severity:  normal  |   Keywords:
Architecture:          |   Platform:
 Host Parsing in Cyberduck is currently not compliant to RFC3986.

 This affects Cyberduck CLI most as URL handling is not consistent here and
 often violates the standard.

 Things that have been discussed:

 * Profiles with no default hostname must use `scheme://host` for URL
 * Profiles with default hostname may use `scheme://host` for URL, but are
 allowed to use `scheme:/path` (absolute path) or `scheme:path` (relative
 path to default path (if existent)) for URL
 * URL may include user information even if URI is path absolute or path
 relative (`scheme:user at path` `scheme:/user at path`)
 * Omitting third slash in `scheme://host` always uses default path (if
 existent) otherwise fails (`scheme://host/` should be used if no default
 path exists)
 * Special case is profile with no configurable (but default) hostname, no
 (but default) path where URL may look like `scheme:`.

 For handling backwards compatibility if a protocol is not host
 configurable but has a default hostname and user tries to enter
 `scheme://path` this will not throw an error but handle this URL as

Ticket URL: <https://trac.cyberduck.io/ticket/10542>
Cyberduck <https://cyberduck.io>
Libre FTP, SFTP, WebDAV, S3 & OpenStack Swift browser for Mac and Windows

More information about the Cyberduck-trac mailing list