On 19/11/2019 23:25, David Lloyd wrote:
:
OK, having read the updated specification (thanks Alan!) I'm now quite
curious why `/C:/helloworld.jar` is considered invalid.  It is in fact
a valid relative URL (colons are allowed in path segments, and the
leading `/` unambiguously delineates the URL path), and thus it seems
that it should be considered valid.
This is a awkward area as the parsing here is very security sensitive. The current implementation is deliberately limited to make it easy to audit. It was a deliberate decision to disallow relative URLs that encode a Windows file path containing a drive letter. You can of course use an absolute file URL here and I would expect "file:/C:/helloworld.jar" to work. The spec was relaxed to allow absolute file URLs for cases like this. I'm not opposed to expanding the parsing to allow for more cases but a detailed security review will be needed on all changes in this area.

-Alan

Reply via email to