{"record":{"id":"7d1cd454e877945e","repo":"rustdesk/rustdesk","slug":"failed-to-inspect-acl-target-directory","errorCode":null,"errorMessage":"Failed to inspect ACL target directory '{}': {}","messagePattern":"Failed to inspect ACL target directory '(.+?)': (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/platform/windows/acl.rs","lineNumber":139,"sourceCode":"        )\n    };\n    if set_named_result.0 != 0 {\n        bail!(\n            \"SetNamedSecurityInfoW failed for '{}': win32_error={}\",\n            path.display(),\n            set_named_result.0\n        );\n    }\n    Ok(())\n}\n\n/// Grants `Everyone` on `dir` recursively for helper/runtime files that must be\n/// readable/executable across user contexts.\n///\n/// `access_mask` is the Win32 file access mask to grant recursively.\npub fn set_path_permission(dir: &Path, access_mask: u32) -> ResultType<()> {\n    let metadata = fs::symlink_metadata(dir).map_err(|e| {\n        anyhow!(\n            \"Failed to inspect ACL target directory '{}': {}\",\n            dir.display(),\n            e\n        )\n    })?;\n    if is_reparse_point(&metadata) {\n        bail!(\n            \"ACL target directory is a reparse point and is rejected: '{}'\",\n            dir.display()\n        );\n    }\n    if !metadata.file_type().is_dir() {\n        bail!(\"ACL target is not a directory: '{}'\", dir.display());\n    }\n\n    let everyone_sid = sid_string_to_local_alloc_guard(\"S-1-1-0\")?;\n    let mut stack = vec![dir.to_path_buf()];\n    while let Some(path) = stack.pop() {","sourceCodeStart":121,"sourceCodeEnd":157,"githubUrl":"https://github.com/rustdesk/rustdesk/blob/7aa98d43cf1962a7a29ec16ffef42974377ef11e/src/platform/windows/acl.rs#L121-L157","documentation":"Error \"Failed to inspect ACL target directory '{}': {}\" thrown in rustdesk/rustdesk.","triggerScenarios":"Thrown at src/platform/windows/acl.rs:139 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"}