-work on #6948
This commit is contained in:
parent
2ce37548c0
commit
3a6ae694ec
@ -183,6 +183,15 @@ TALER_project_data_default (void);
|
||||
char *
|
||||
TALER_urlencode (const char *s);
|
||||
|
||||
/**
|
||||
* Test if all characters in @a url are valid for
|
||||
* a URL.
|
||||
*
|
||||
* @param url URL to sanity-check
|
||||
* @return true if @a url only contains valid characters
|
||||
*/
|
||||
bool
|
||||
TALER_url_valid_charset (const char *url);
|
||||
|
||||
/**
|
||||
* Check if @a lang matches the @a language_pattern, and if so with
|
||||
|
@ -365,4 +365,20 @@ TALER_url_absolute_raw (const char *proto,
|
||||
}
|
||||
|
||||
|
||||
bool
|
||||
TALER_url_valid_charset (const char *url)
|
||||
{
|
||||
for (unsigned int i = 0; '\0' != url[i]; i++)
|
||||
{
|
||||
#define ALLOWED_CHARACTERS \
|
||||
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/:&?-.,=_~%"
|
||||
if (NULL == strchr (ALLOWED_CHARACTERS,
|
||||
(int) url[i]))
|
||||
return false;
|
||||
#undef ALLOWED_CHARACTERS
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/* end of url.c */
|
||||
|
Loading…
Reference in New Issue
Block a user