FreeBSD: Add support for _PC_CASE_INSENSITIVE

FreeBSD now has a pathconf name called _PC_CASE_INSENSITIVE
used to check if a file system performs case insensitive
name lookups.

This patch adds support for this name.

Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com>
 Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Rick Macklem <rmacklem@uoguelph.ca>
Closes #17908
This commit is contained in:
rmacklem 2025-11-08 10:20:23 -08:00 committed by Brian Behlendorf
parent 84dd55510b
commit 583db40030

View File

@ -5760,7 +5760,7 @@ zfs_freebsd_pathconf(struct vop_pathconf_args *ap)
{
ulong_t val;
int error;
#ifdef _PC_CLONE_BLKSIZE
#if defined(_PC_CLONE_BLKSIZE) || defined(_PC_CASE_INSENSITIVE)
zfsvfs_t *zfsvfs;
#endif
@ -5823,6 +5823,15 @@ zfs_freebsd_pathconf(struct vop_pathconf_args *ap)
else
*ap->a_retval = 0;
return (0);
#endif
#ifdef _PC_CASE_INSENSITIVE
case _PC_CASE_INSENSITIVE:
zfsvfs = (zfsvfs_t *)ap->a_vp->v_mount->mnt_data;
if (zfsvfs->z_case == ZFS_CASE_INSENSITIVE)
*ap->a_retval = 1;
else
*ap->a_retval = 0;
return (0);
#endif
default:
return (vop_stdpathconf(ap));