1 #! /usr/bin/ksh 2 # 3 # 4 # This file and its contents are supplied under the terms of the 5 # Common Development and Distribution License ("CDDL"), version 1.0. 6 # You may only use this file in accordance with the terms of version 7 # 1.0 of the CDDL. 8 # 9 # A full copy of the text of the CDDL should have accompanied this 10 # source. A copy of the CDDL is also available via the Internet at 11 # http://www.illumos.org/license/CDDL. 12 # 13 14 # 15 # Copyright 2015, Richard Lowe. 16 # Copyright 2019 Joyent, Inc. 17 # 18 19 /usr/bin/psecflags -s aslr -e sleep 100000 & 20 pid=$! 21 22 cleanup() { 23 kill $pid 24 rm /tmp/output.$$ 25 rm /tmp/expected.$$ 26 } 27 28 trap cleanup EXIT 29 30 cat > /tmp/expected.$$ <<EOF 31 $pid: sleep 100000 32 E: aslr 33 I: aslr 34 EOF 35 36 # We need to wait for sleep to get exec()ed 37 sleep 1 38 39 /usr/bin/psecflags $pid | grep -v '[LU]:' > /tmp/output.$$ 40 41 if ! diff -u /tmp/expected.$$ /tmp/output.$$; then 42 exit 1; 43 fi 44 45 exit 0