commit 936bd53498d80451f2aeea9ab6295de8df9ab4fc from: Omar Polo date: Sat Aug 13 12:30:06 2022 UTC pledge amused-monitor commit - 3fc7366684dd5a216deed3c8d7c69c1792022d5c commit + 936bd53498d80451f2aeea9ab6295de8df9ab4fc blob - ceaeaaa12c0fda45fd3feec1b535f2eb902e0742 blob + 5c13db34dce8e6805d91d1f1bb2ef66bac18c17c --- contrib/amused-monitor +++ contrib/amused-monitor @@ -302,6 +302,22 @@ keypad 1; my $poll = IO::Poll->new(); $poll->mask(\*STDIN => POLLIN); $poll->mask($monitor => POLLIN); + +if (`uname` =~ "OpenBSD") { + use OpenBSD::Pledge; + use OpenBSD::Unveil; + + my $prog = `which amused`; + chomp $prog; + + unveil($prog, 'rx') or die "unveil $prog: $!"; + if (defined($pfile)) { + unveil($pfile, 'wc') or die "unveil $pfile: $!"; + pledge qw(stdio wpath cpath tty proc exec) or die "pledge: $!"; + } else { + pledge qw(stdio tty proc exec) or die "pledge: $!"; + } +} my $tick = 0; my $tbefore = clock_gettime(CLOCK_MONOTONIC);