about summary refs log tree commit diff
path: root/tvix/nix-compat/src/nixbase32.rs
diff options
context:
space:
mode:
authorRyan Lahfa <tvl@lahfa.xyz>2024-08-19T18·12+0200
committerclbot <clbot@tvl.fyi>2024-08-19T22·32+0000
commita4e40d1dfa0630568841bb713be14aefca867160 (patch)
treedefdaacc86b70cc7bd852192e301b8eec3e33978 /tvix/nix-compat/src/nixbase32.rs
parenta259613c76a17f7a6719c18809e054605ef2cfa2 (diff)
feat(tvix/nix-compat): entry locator in listing structures r/8541
This implements a simple DFS locator in listing structures.

It is interoperable with the Rust standard library paths, we also build our
own errors to restrict path values to reasonable secure defaults, e.g.
relative paths with no `..` component.

Tests are added for this new feature for a positive and a negative
check.

In addition, a path validation test was added. The Windows-style prefix
is gated on the Windows platform as UNIX does not parse `C:\\` as a
`Component::Prefix(_)` but as a `Component::Normal(_)`.

Change-Id: Iae2a80bebd8138e41af94aa7d09f2842c3c5a786
Signed-off-by: Ryan Lahfa <tvl@lahfa.xyz>
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12255
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/nix-compat/src/nixbase32.rs')
0 files changed, 0 insertions, 0 deletions