From<nix::Error> uses invalid err as i32 cast - broken FUSE error mapping #7
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
At line 588 in error.rs:
With nix 0.31.2, nix::Error is a struct type. The as i32 cast is invalid - this is a compile error. If it ever compiled with an older version, it would produce the enum discriminant instead of the actual errno, silently corrupting FUSE error propagation.
Severity: high | Confidence: high
The described bug (Fromnix::Error using err as i32 cast, which would fail to compile with nix >=0.28 where nix::Error is a struct) is a real, well-documented issue, but the referenced file error.rs:588 does not contain this code in the geomind_code/geoip repository. The nix crate is not a dependency of this project (confirmed from Cargo.toml). The issue was likely filed against the wrong repository.
Severity: high | Confidence: high (bug is real in the correct codebase, but does not apply here)