From a certain probably buggy host I'm getting a redirect to a
URL. Standards.URI doesn't like this, since it wants
but would it be possible to fix this by changing
(Standards.URI:)
// Parse authority/login // // hier-part = "//" authority path-abempty / path-absolute // / path-rootless / path-empty if(sscanf(uri, "//%[^/]%s", authority, uri)) { DEBUG("Found authority %O", authority); }
to
... if(sscanf(uri, "//%[^/?]%s", authority, uri)) ...
?
A password (which is part of the "userinfo" nonterminal) may not contain unencoded "?":s anyway. You have to use %3f.
userinfo = *( unreserved / pct-encoded / sub-delims / ":" ) unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~" pct-encoded = "%" HEXDIG HEXDIG sub-delims = "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="
pike-devel@lists.lysator.liu.se