| 930 | } |
| 931 | |
| 932 | const char *md_util_schemify(apr_pool_t *p, const char *s, const char *def_scheme) |
| 933 | { |
| 934 | const char *cp = s; |
| 935 | while (*cp) { |
| 936 | if (*cp == ':') { |
| 937 | /* could be an url scheme, leave unchanged */ |
| 938 | return s; |
| 939 | } |
| 940 | else if (!apr_isalnum(*cp)) { |
| 941 | break; |
| 942 | } |
| 943 | ++cp; |
| 944 | } |
| 945 | return apr_psprintf(p, "%s:%s", def_scheme, s); |
| 946 | } |
| 947 | |
| 948 | static apr_status_t uri_check(apr_uri_t *uri_parsed, apr_pool_t *p, |
| 949 | const char *uri, const char **perr) |
no outgoing calls
no test coverage detected