[package] name = "mxaccess-rpc" description = "DCE/RPC PDU codec + NTLMv2 + OBJREF + OXID resolution + RemQI for the NMX transport." version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true authors.workspace = true [dependencies] thiserror = { workspace = true } tokio = { workspace = true } hmac = "0.12" md-5 = "0.10" md4 = "0.10" rc4 = "0.2" rand = "0.8" # F2 — constant-time MAC compare for verify_signature (server-to-client # direction). subtle::ConstantTimeEq prevents timing oracles on the # 8-byte MAC field of inbound NTLM-signed PDUs. subtle = "2" # F6 — Win32 OBJREF emitter via CoMarshalInterface. Optional, gated by the # `windows-com` feature so the default footprint stays slim. windows-rs # pulls a small set of submodules — Win32_System_Com for IUnknown / IStream # / CoCreateInstance / CoMarshalInterface, Win32_System_Memory for # GlobalLock / GlobalSize, Win32_System_Ole for the historical # CreateStreamOnHGlobal / GetHGlobalFromStream re-exports. windows = { version = "0.62", features = [ "Win32_Foundation", "Win32_System_Com", "Win32_System_Com_Marshal", "Win32_System_Com_StructuredStorage", "Win32_System_Memory", ], optional = true } [features] default = [] # Gates the Win32 OBJREF emitter port (`com_objref_provider` module). The # module itself is `cfg(windows)`-gated so non-Windows builds with the # feature on stay green (the `windows` crate compiles to stubs on # non-Windows targets). windows-com = ["dep:windows"] [lints] workspace = true