summaryrefslogtreecommitdiff
path: root/usr.bin/cmp
diff options
context:
space:
mode:
authorDoug Hogan <doug@cvs.openbsd.org>2015-10-10 05:35:23 +0000
committerDoug Hogan <doug@cvs.openbsd.org>2015-10-10 05:35:23 +0000
commit3f853bf6be0b80b22d041fa03ff6b73d53bfeca6 (patch)
tree6ea4f3daa74e50db5d04c9d8e9b6daaf12918fe7 /usr.bin/cmp
parentbf9f8c3bde89dcc1d1e4e28fdc0e2bac85172acd (diff)
Add pledge support to cmp(1).
This is a simple case of using "stdio rpath" until all files are opened and then dropping down to "stdio" since it includes "rw" on open fds. ok deraadt@
Diffstat (limited to 'usr.bin/cmp')
-rw-r--r--usr.bin/cmp/cmp.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/usr.bin/cmp/cmp.c b/usr.bin/cmp/cmp.c
index 80c9a1db8c8..0b5c86345a1 100644
--- a/usr.bin/cmp/cmp.c
+++ b/usr.bin/cmp/cmp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmp.c,v 1.12 2009/10/27 23:59:36 deraadt Exp $ */
+/* $OpenBSD: cmp.c,v 1.13 2015/10/10 05:35:22 doug Exp $ */
/* $NetBSD: cmp.c,v 1.7 1995/09/08 03:22:56 tls Exp $ */
/*
@@ -57,6 +57,9 @@ main(int argc, char *argv[])
setlocale(LC_ALL, "");
+ if (pledge("stdio rpath", NULL) == -1)
+ err(1, "pledge");
+
while ((ch = getopt(argc, argv, "ls")) != -1)
switch (ch) {
case 'l': /* print all differences */
@@ -109,6 +112,9 @@ main(int argc, char *argv[])
err(ERR_EXIT, "%s", file2);
}
+ if (pledge("stdio", NULL) == -1)
+ err(1, "pledge");
+
skip1 = argc > 2 ? strtoq(argv[2], NULL, 0) : 0;
skip2 = argc == 4 ? strtoq(argv[3], NULL, 0) : 0;