diff options
| author | Dan Engelbrecht <[email protected]> | 2024-06-14 13:58:23 +0200 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2024-06-14 13:58:23 +0200 |
| commit | 6308d771f63cb8680f88420a9500646d481ce796 (patch) | |
| tree | b0051dcdaedca4dda893654b003640c67ce662a4 /src/zenserver-test/zenserver-test.cpp | |
| parent | improve mutex startup error (#96) (diff) | |
| download | zen-6308d771f63cb8680f88420a9500646d481ce796.tar.xz zen-6308d771f63cb8680f88420a9500646d481ce796.zip | |
workspace share path hardening (#95)
* resolve relative paths for root path
* block share paths that go outside of root path
* fix test using invalid share_path
* validate that root path is absolute
Diffstat (limited to 'src/zenserver-test/zenserver-test.cpp')
| -rw-r--r-- | src/zenserver-test/zenserver-test.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/zenserver-test/zenserver-test.cpp b/src/zenserver-test/zenserver-test.cpp index 15f863002..15993f5c9 100644 --- a/src/zenserver-test/zenserver-test.cpp +++ b/src/zenserver-test/zenserver-test.cpp @@ -3383,10 +3383,10 @@ TEST_CASE("workspaces.lifetimes") CHECK(Client.Put(fmt::format("/ws/{}", WorkspaceId), HttpClient::KeyValueMap{{"root_path", RootPath.string()}}).StatusCode == HttpResponseCode::OK); - CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", SharePath.string()}}) + CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", "shared_folder"}}) .StatusCode == HttpResponseCode::Created); CHECK(Client.Get(fmt::format("/ws/{}/{}", WorkspaceId, ShareId)).AsObject()["id"sv].AsObjectId() == ShareId); - CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", SharePath.string()}}) + CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", "shared_folder"}}) .StatusCode == HttpResponseCode::OK); } @@ -3445,8 +3445,8 @@ TEST_CASE("workspaces.share") CHECK(Client.Get(fmt::format("/ws/{}", WorkspaceId)).AsObject()["id"sv].AsObjectId() == WorkspaceId); Oid ShareId = Oid::NewOid(); - CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", SharePath.string()}}) - .StatusCode == HttpResponseCode::Created); + CHECK(Client.Put(fmt::format("/ws/{}/{}", WorkspaceId, ShareId), HttpClient::KeyValueMap{{"share_path", "shared_folder"}}).StatusCode == + HttpResponseCode::Created); CHECK(Client.Get(fmt::format("/ws/{}/{}", WorkspaceId, ShareId)).AsObject()["id"sv].AsObjectId() == ShareId); CHECK(Client.Get(fmt::format("/ws/{}/{}/files", WorkspaceId, ShareId)).AsObject()["files"sv].AsArrayView().Num() == 8); |