Module Name: src Committed By: mrg Date: Fri Aug 18 21:05:44 UTC 2023
Modified Files: src/sys/fs/msdosfs: msdosfs_vnops.c Log Message: fix the previous to not fail to include the extension in lookups. copy deExtension into the final 3 bytes. previously, this was found by having them next to each other in the containing structure, but as separate strings. thanks to miod for pointing this out. To generate a diff of this commit: cvs rdiff -u -r1.111 -r1.112 src/sys/fs/msdosfs/msdosfs_vnops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/fs/msdosfs/msdosfs_vnops.c diff -u src/sys/fs/msdosfs/msdosfs_vnops.c:1.111 src/sys/fs/msdosfs/msdosfs_vnops.c:1.112 --- src/sys/fs/msdosfs/msdosfs_vnops.c:1.111 Mon Aug 14 05:41:09 2023 +++ src/sys/fs/msdosfs/msdosfs_vnops.c Fri Aug 18 21:05:44 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: msdosfs_vnops.c,v 1.111 2023/08/14 05:41:09 mrg Exp $ */ +/* $NetBSD: msdosfs_vnops.c,v 1.112 2023/08/18 21:05:44 mrg Exp $ */ /*- * Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank. @@ -48,7 +48,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.111 2023/08/14 05:41:09 mrg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.112 2023/08/18 21:05:44 mrg Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -1168,7 +1168,10 @@ msdosfs_readdir(void *v) memcpy(deName, dentp->deName, sizeof dentp->deName); - memset(&deName[8], 0, 3); + memcpy(deName + 8, dentp->deExtension, + sizeof dentp->deExtension); + assert(sizeof(deName) == sizeof(dentp->deName) + + sizeof(dentp->deExtension)); dirbuf->d_namlen = msdosfs_dos2unixfn(deName, (u_char *)dirbuf->d_name,