From c19c6c23cb2a36279ee147d335ffbe506b0f485b Mon Sep 17 00:00:00 2001 From: edef Date: Fri, 27 Oct 2023 12:07:13 +0000 Subject: feat(nix-compat/store_path): validate_name takes AsRef<[u8]> Change-Id: I8819e2a7b63008a68f4f82035a08b960ac480dc3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9858 Reviewed-by: flokli Tested-by: BuildkiteCI --- tvix/nix-compat/src/store_path/mod.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'tvix/nix-compat/src/store_path/mod.rs') diff --git a/tvix/nix-compat/src/store_path/mod.rs b/tvix/nix-compat/src/store_path/mod.rs index 56bf639f2129..8c5f6fd5c222 100644 --- a/tvix/nix-compat/src/store_path/mod.rs +++ b/tvix/nix-compat/src/store_path/mod.rs @@ -177,7 +177,9 @@ impl StorePath { /// Checks a given &[u8] to match the restrictions for [StorePath::name], and /// returns the name as string if successful. -pub(crate) fn validate_name(s: &[u8]) -> Result<&str, Error> { +pub(crate) fn validate_name(s: &(impl AsRef<[u8]> + ?Sized)) -> Result<&str, Error> { + let s = s.as_ref(); + // Empty or excessively long names are not allowed. if s.is_empty() || s.len() > 211 { return Err(Error::InvalidLength()); -- cgit 1.4.1