git: 3f4f82c0d779 - main - bsdlabel: limit to 8 partitions
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 23 Jan 2024 02:17:53 UTC
The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=3f4f82c0d7791bddf2d6f2c29d9f2f8c48c712e2 commit 3f4f82c0d7791bddf2d6f2c29d9f2f8c48c712e2 Author: Ed Maste <emaste@FreeBSD.org> AuthorDate: 2024-01-23 02:05:58 +0000 Commit: Ed Maste <emaste@FreeBSD.org> CommitDate: 2024-01-23 02:17:23 +0000 bsdlabel: limit to 8 partitions bsdlabel is intended to support up to 20 partitions, but the disklabel struct has a d_partitions array with only BSD_NPARTS_MIN (8) entries. Previously, an attempt to operate on a bsdlabel with more than eight partitions resulted in a buffer overflow. As a stopgap limit bsdlabel to 8 partitions until this is fixed properly. PR: 276517 --- sbin/bsdlabel/bsdlabel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/bsdlabel/bsdlabel.c b/sbin/bsdlabel/bsdlabel.c index 2c03117e344a..b831c8ba4ec6 100644 --- a/sbin/bsdlabel/bsdlabel.c +++ b/sbin/bsdlabel/bsdlabel.c @@ -50,7 +50,7 @@ #include <sys/disk.h> #define DKTYPENAMES #define FSTYPENAMES -#define MAXPARTITIONS 20 +#define MAXPARTITIONS 8 /* XXX should be 20, but see PR276517 */ #include <sys/disklabel.h> #include <unistd.h>