Jeff King | 638794c | 2010-05-23 05:17:55 -0400 | [diff] [blame] | 1 | #ifndef URL_H |
| 2 | #define URL_H |
| 3 | |
Elijah Newren | ef3ca95 | 2018-08-15 10:54:05 -0700 | [diff] [blame] | 4 | struct strbuf; |
| 5 | |
Denton Liu | 5545442 | 2019-04-29 04:28:14 -0400 | [diff] [blame] | 6 | int is_url(const char *url); |
| 7 | int is_urlschemechar(int first_flag, int ch); |
| 8 | char *url_decode(const char *url); |
| 9 | char *url_decode_mem(const char *url, int len); |
Matthew DeVore | e987df5 | 2019-06-27 15:54:08 -0700 | [diff] [blame] | 10 | |
| 11 | /* |
| 12 | * Similar to the url_decode_{,mem} methods above, but doesn't assume there |
| 13 | * is a scheme followed by a : at the start of the string. Instead, %-sequences |
| 14 | * before any : are also parsed. |
| 15 | */ |
| 16 | char *url_percent_decode(const char *encoded); |
| 17 | |
Denton Liu | 5545442 | 2019-04-29 04:28:14 -0400 | [diff] [blame] | 18 | char *url_decode_parameter_name(const char **query); |
| 19 | char *url_decode_parameter_value(const char **query); |
Jeff King | 638794c | 2010-05-23 05:17:55 -0400 | [diff] [blame] | 20 | |
Denton Liu | 5545442 | 2019-04-29 04:28:14 -0400 | [diff] [blame] | 21 | void end_url_with_slash(struct strbuf *buf, const char *url); |
| 22 | void str_end_url_with_slash(const char *url, char **dest); |
Tay Ray Chuan | 1966d9f | 2010-11-25 16:21:04 +0800 | [diff] [blame] | 23 | |
Jeff King | 638794c | 2010-05-23 05:17:55 -0400 | [diff] [blame] | 24 | #endif /* URL_H */ |