ports/64736: [MAINTAINER] sysutils/e2fsprogs: update wrapper and Makefile

Matthias Andree matthias.andree at gmx.de
Fri Mar 26 03:50:27 UTC 2004


>Number:         64736
>Category:       ports
>Synopsis:       [MAINTAINER] sysutils/e2fsprogs: update wrapper and Makefile
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 25 19:50:14 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     Matthias Andree
>Release:        FreeBSD 4.9-STABLE i386
>Organization:
>Environment:
System: FreeBSD libertas.emma.line.org 4.9-STABLE FreeBSD 4.9-STABLE #94: Wed Mar 24 12:34:25 CET 2004
>Description:
- Update fsck_ext2fs wrapper to make it safe in sudo - the old would copy
  unlimited arguments over.
- Replace MACHINE_ARCH by ARCH (and woe betide the fellow who complains
  that the port now needs bsd.port.pre.mk!)
- Bump portrevision.

Generated with FreeBSD Port Tools 0.50
>How-To-Repeat:
>Fix:

--- e2fsprogs-1.35_3.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/sysutils/e2fsprogs/Makefile /usr/home/emma/e2fsprogs/Makefile
--- /usr/ports/sysutils/e2fsprogs/Makefile	Mon Mar 15 12:23:45 2004
+++ /usr/home/emma/e2fsprogs/Makefile	Fri Mar 26 04:38:11 2004
@@ -7,7 +7,7 @@
 
 PORTNAME=	e2fsprogs
 PORTVERSION=	1.35
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	sysutils
 MASTER_SITES=	${MASTER_SITE_SOURCEFORGE_EXTENDED}
 MASTER_SITE_SUBDIR=	${PORTNAME}
@@ -65,6 +65,8 @@
 	${CHMOD} u+w ${WRKSRC}/po/*.po ${WRKSRC}/po/*.pot \
 		${WRKSRC}/${CONFIGURE_SCRIPT}
 
+.include <bsd.port.pre.mk>
+
 post-patch:
 	${REINPLACE_CMD} -e 's|-DRESOURCE_TRACK||' ${WRKSRC}/e2fsck/Makefile.in
 	${GUNZIP_CMD} ${WRKSRC}/tests/m_*/expect*.gz
@@ -73,7 +75,7 @@
 	-e 's|group root|group wheel|' \
 	-e '/Exit status is 0/ N;s/Exit status is 0\n/Exit status is 0/' \
 	${WRKSRC}/tests/m_*/expect.1
-.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64"
+.if ${ARCH} == "alpha" || ${ARCH} == "sparc64"
 	${RM} -rf ${WRKSRC}/tests/m_large_file
 .endif
 
@@ -93,4 +95,4 @@
 	@${CAT} ${PKGMESSAGE}
 	@${ECHO_MSG}
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff -ruN --exclude=CVS /usr/ports/sysutils/e2fsprogs/files/fsck_ext2fs.c /usr/home/emma/e2fsprogs/files/fsck_ext2fs.c
--- /usr/ports/sysutils/e2fsprogs/files/fsck_ext2fs.c	Mon Mar 15 12:23:45 2004
+++ /usr/home/emma/e2fsprogs/files/fsck_ext2fs.c	Fri Mar 26 04:04:53 2004
@@ -6,7 +6,7 @@
  *
  * $FreeBSD: ports/sysutils/e2fsprogs/files/fsck_ext2fs.c,v 1.3 2004/03/11 21:51:30 glewis Exp $
  *
- * Upstream: $Id: fsck_ext2fs.c,v 1.3 2004/03/09 01:10:22 emma Exp $
+ * Upstream: $Id: fsck_ext2fs.c,v 1.4 2004/03/20 15:51:01 emma Exp $
  *
  * format: gindent -kr
  */
@@ -19,6 +19,7 @@
 #include <sys/wait.h>
 #include <sys/time.h>
 #include <sys/resource.h>
+#include <errno.h>
 
 __attribute__ ((noreturn))
 static int die(const char *tag)
@@ -94,11 +95,21 @@
 		cmd[i++] = b;
 	}
 
+	/* silently limit verbose to 15 so we don't overflow the cmd array */
+	if (verbose > 15)
+	    verbose = 15;
+
 	for (t = verbose; t > 1; t--)
 	    cmd[i++] = "-v";
 
-	while (optind < argc)
+	while (optind < argc) {
 		cmd[i++] = argv[optind++];
+		/* sanity check so we don't overflow the cmd buffer */
+		if (i+1 == sizeof(cmd)/sizeof(cmd[0])) {
+		    errno = E2BIG;
+		    die(argv[0]);
+		}
+	}
 
 	cmd[i++] = 0;
 
--- e2fsprogs-1.35_3.patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list