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

Function main_session_context

src/main.c:1377–1395  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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