Ensure path starts with / in data endpoint
Fixes issue #84
diff --git a/ChangeLog b/ChangeLog
index 7fc1c4c..3481a80 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
2.6.3
- Bugfixes
- Prevent buffer overflow if digest realm too long
+ - Ensure path starts with '/' in client data endpoint
2.6.2
- Features
diff --git a/src/lib/wsman-client.c b/src/lib/wsman-client.c
index 8011e85..981af71 100644
--- a/src/lib/wsman-client.c
+++ b/src/lib/wsman-client.c
@@ -2028,8 +2028,11 @@
#ifdef _WIN32
wsc->session_handle = 0;
#endif
- wsc->data.endpoint = u_strdup_printf("%s://%s:%d%s",
- wsc->data.scheme, wsc->data.hostname, wsc->data.port, wsc->data.path);
+ wsc->data.endpoint = u_strdup_printf("%s://%s:%d%s%s",
+ wsc->data.scheme, wsc->data.hostname,
+ wsc->data.port,
+ (*wsc->data.path == '/') ? "" : "/",
+ wsc->data.path);
debug("Endpoint: %s", wsc->data.endpoint);
wsc->authentication.verify_host = 1; //verify CN in server certicates by default
wsc->authentication.verify_peer = 1; //validate server certificates by default