[PATCH 2/3] xfs: create a predicate to determine if two xfs_names are the same

Darrick J. Wong
2023-12-31T22:06:28Z

Create a simple predicate to determine if two xfs_names are the same
objects or have the exact same name. The comparison is always case
sensitive.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
libxfs/xfs_dir2.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/libxfs/xfs_dir2.h b/libxfs/xfs_dir2.h
index 7d7cd8d808e..ac3c264402d 100644
--- a/libxfs/xfs_dir2.h
+++ b/libxfs/xfs_dir2.h
@@ -24,6 +24,15 @@ struct xfs_dir3_icleaf_hdr;
extern const struct xfs_name xfs_name_dotdot;
extern const struct xfs_name xfs_name_dot;

+static inline bool
+xfs_dir2_samename(
+ const struct xfs_name *n1,
+ const struct xfs_name *n2)
+{
+ return n1 == n2 || (n1->len == n2->len &&
+ !memcmp(n1->name, n2->name, n1->len));
+}
+
/*
* Convert inode mode to directory entry filetype
*/