17 lines
518 B
JavaScript
17 lines
518 B
JavaScript
/**
|
|
* Optional FIFO namespace: logical `/run/bare-os/ipc/<name>` maps to `<namespace>__<name>` in `bareOsIpc`.
|
|
*/
|
|
|
|
/**
|
|
* @param {string} logicalName
|
|
* @param {Record<string, string | undefined>} [env]
|
|
*/
|
|
export function bareOsIpcLogicalToActualFifoName(logicalName, env) {
|
|
const n = String(logicalName || '').trim()
|
|
if (!n) return n
|
|
const raw = env && env.BARE_OS_IPC_NAMESPACE
|
|
const ns = raw != null ? String(raw).trim() : ''
|
|
if (!ns || !/^[a-zA-Z0-9._-]+$/.test(ns)) return n
|
|
return `${ns}__${n}`
|
|
}
|