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,