{"record":{"id":"2311820629a0f77f","repo":"rustdesk/rustdesk","slug":"failed-to-generate-portable-service-ipc-token-from","errorCode":null,"errorMessage":"failed to generate portable service ipc token from OsRng: {}","messagePattern":"failed to generate portable service ipc token from OsRng: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/ipc.rs","lineNumber":1242,"sourceCode":"            allow_err!(\n                stream\n                    .send(&Data::FileTransferEnabledState(Some(enabled)))\n                    .await\n            );\n        }\n        _ => {}\n    };\n}\n\n#[cfg(target_os = \"windows\")]\npub(crate) fn generate_one_time_ipc_token() -> ResultType<String> {\n    use hbb_common::rand::{rngs::OsRng, RngCore as _};\n    use std::fmt::Write as _;\n\n    let mut random_bytes = [0u8; IPC_TOKEN_RANDOM_BYTES];\n    let mut rng = OsRng;\n    rng.try_fill_bytes(&mut random_bytes).map_err(|err| {\n        hbb_common::anyhow::anyhow!(\n            \"failed to generate portable service ipc token from OsRng: {}\",\n            err\n        )\n    })?;\n\n    let mut token = String::with_capacity(IPC_TOKEN_LEN);\n    for byte in random_bytes {\n        let _ = write!(token, \"{:02x}\", byte);\n    }\n    Ok(token)\n}\n\n#[cfg(target_os = \"windows\")]\npub(crate) fn constant_time_ipc_token_eq(expected: &str, candidate: &str) -> bool {\n    if expected.len() != IPC_TOKEN_LEN || candidate.len() != IPC_TOKEN_LEN {\n        return false;\n    }\n    expected","sourceCodeStart":1224,"sourceCodeEnd":1260,"githubUrl":"https://github.com/rustdesk/rustdesk/blob/7aa98d43cf1962a7a29ec16ffef42974377ef11e/src/ipc.rs#L1224-L1260","documentation":"Error \"failed to generate portable service ipc token from OsRng: {}\" thrown in rustdesk/rustdesk.","triggerScenarios":"Thrown at src/ipc.rs:1242 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7aa98d43cf1962a7a29ec16ffef42974377ef11e","analyzedAt":"2026-08-16T06:17:34.842Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}