MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / main_session_context

Function main_session_context

src/main.c:1379–1397  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1377}
1378
1379static bool main_session_context(const char *preferred_root, char root_out[MAIN_PATH_CAP],
1380 char allowed_out[MAIN_PATH_CAP], const char **allowed_out_ptr) {
1381 const char *root = preferred_root && preferred_root[0] ? preferred_root : ".";
1382 if (!cbm_canonical_path(root, root_out, MAIN_PATH_CAP)) {
1383 return false;
1384 }
1385 char configured[MAIN_PATH_CAP];
1386 const char *allowed = cbm_safe_getenv("CBM_ALLOWED_ROOT", configured, sizeof(configured), NULL);
1387 if (allowed && allowed[0]) {
1388 if (!cbm_canonical_path(allowed, allowed_out, MAIN_PATH_CAP)) {
1389 return false;
1390 }
1391 *allowed_out_ptr = allowed_out;
1392 } else {
1393 allowed_out[0] = '\0';
1394 *allowed_out_ptr = NULL;
1395 }
1396 return true;
1397}
1398
1399static bool main_set_client_context(cbm_daemon_runtime_client_t *client, const char *preferred_root,
1400 cbm_mcp_tool_profile_t tool_profile, const char *hook_event,

Callers 2

main_set_client_contextFunction · 0.85

Calls 2

cbm_canonical_pathFunction · 0.85
cbm_safe_getenvFunction · 0.85

Tested by

no test coverage detected