DragonFlyBSD Kernel Audit
DF-0854 / fix.diff
← back to finding ↓ download raw
diff --git a/vfs/msdosfs/msdosfs_vfsops.c b/vfs/msdosfs/msdosfs_vfsops.c
--- a/vfs/msdosfs/msdosfs_vfsops.c
+++ b/vfs/msdosfs/msdosfs_vfsops.c
@@ -115,6 +115,8 @@
 	if (pmp->pm_flags & MSDOSFSMNT_KICONV && msdosfs_iconv) {
 		memcpy(cs_local, argp->cs_local, sizeof(cs_local));
 		memcpy(cs_dos, argp->cs_dos, sizeof(cs_dos));
+		cs_local[sizeof(cs_local) - 1] = '\0';
+		cs_dos[sizeof(cs_dos) - 1] = '\0';
 		kprintf("local: %s dos: %s\n",argp->cs_local, argp->cs_dos);
 		error = msdosfs_iconv->open(cs_local, ENCODING_UNICODE,
 					    &pmp->pm_w2u);