mirror of
https://gitlab.xiph.org/xiph/icecast-server.git
synced 2024-06-16 06:15:24 +00:00
Fix: remove tailing dots in URI.
This works around the problem that windows ignores tailing dots. This way you could trick Icecast2 to send a XSLT file as plain text. Please test. Closes: #2247
This commit is contained in:
parent
ceec48201a
commit
95516eb0b9
|
@ -348,6 +348,9 @@ char *util_url_unescape (const char *src)
|
|||
*/
|
||||
char *util_normalise_uri(const char *uri) {
|
||||
char *path;
|
||||
#ifdef _WIN32
|
||||
size_t len;
|
||||
#endif
|
||||
|
||||
if(uri[0] != '/')
|
||||
return NULL;
|
||||
|
@ -359,6 +362,12 @@ char *util_normalise_uri(const char *uri) {
|
|||
return NULL;
|
||||
}
|
||||
|
||||
#ifdef _WIN32
|
||||
/* If we are on Windows, strip trailing dots, as Win API strips it anyway */
|
||||
for (len = strlen(path); len > 0 && path[len-1] == '.'; len--)
|
||||
path[len-1] = '\0';
|
||||
#endif
|
||||
|
||||
/* We now have a full URI-decoded path. Check it for allowability */
|
||||
if(verify_path(path))
|
||||
return path;
|
||||
|
|
Loading…
Reference in New Issue
Block a user