running_process/broker/lifecycle/mod.rs
1//! Per-user, per-machine derivations for broker pipe naming and SID
2//! hashing.
3//!
4//! Phase 1 of #228 (issue #230). Two submodules:
5//!
6//! - [`sid`] — derives a 16-character hex blake3 hash of the caller's
7//! user identity. On Windows that is the user's SID (from
8//! `OpenProcessToken` → `GetTokenInformation(TokenUser)`). On Linux
9//! it is `format!("{uid}:{machine_id}")`. On macOS it is
10//! `format!("{uid}:{IOPlatformUUID}")`.
11//! - [`names`] — uses the SID hash to build the four canonical broker
12//! pipe names defined in #228.
13
14pub mod crash_dump;
15pub mod names;
16pub mod names_v2;
17pub mod privilege;
18pub mod process_tree;
19pub mod sid;
20
21pub use crash_dump::{CrashDumpError, CRASH_DUMP_DIR_ENV};
22pub use names::{
23 backend_pipe, explicit_instance_pipe, private_broker_pipe, shared_broker_pipe, PipePath,
24 PipePathError,
25};
26pub use privilege::{
27 refuse_privileged_run, PrivilegeError, PrivilegedIdentity, ALLOW_PRIVILEGED_ENV,
28};
29pub use process_tree::{ProcessTreeCleanup, ProcessTreeError};
30pub use sid::{user_sid_hash, SidError};