mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/virt-viewer
synced 2025-12-27 14:54:14 +00:00
ovirt: Remove extra '/' from oVirt URI
The 'path' part of the URI will always start with a '/' when present as this is what separates it from the hostname. When rebuilding the final URI, the current code inserts a '/' by itself between the hostname and the path, which results in URIs with an extra '/': https://ovirt.example.com//some/path/api This is not only cosmetic as this can cause issues with cookie handling if libgovirt accesses //some/path/api while the cookie is set for /some/path/api.
This commit is contained in:
parent
49abd71dae
commit
914f75ee8d
@ -649,6 +649,7 @@ parse_ovirt_uri(const gchar *uri_str, char **rest_uri, char **name, char** usern
|
||||
xmlFreeURI(uri);
|
||||
return FALSE;
|
||||
}
|
||||
g_return_val_if_fail(*uri->path == '/', FALSE);
|
||||
|
||||
/* extract VM name from path */
|
||||
path_elements = g_strsplit(uri->path, "/", -1);
|
||||
@ -668,7 +669,7 @@ parse_ovirt_uri(const gchar *uri_str, char **rest_uri, char **name, char** usern
|
||||
/* build final URI */
|
||||
rel_path = g_strjoinv("/", path_elements);
|
||||
/* FIXME: how to decide between http and https? */
|
||||
*rest_uri = g_strdup_printf("https://%s/%s/api/", uri->server, rel_path);
|
||||
*rest_uri = g_strdup_printf("https://%s%s/api/", uri->server, rel_path);
|
||||
*name = vm_name;
|
||||
g_free(rel_path);
|
||||
g_strfreev(path_elements);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user