pgrep-j.t revision 225736
1190207Srpaulo#!/bin/sh
2127668Sbms# $FreeBSD: stable/9/tools/regression/usr.bin/pkill/pgrep-j.t 164558 2006-11-23 11:55:17Z yar $
398524Sfenner
498524Sfennerbase=`basename $0`
598524Sfenner
698524Sfennerecho "1..3"
798524Sfenner
898524Sfennername="pgrep -j <jid>"
956893Sfennerif [ `id -u` -eq 0 ]; then
1098524Sfenner	sleep=`mktemp /tmp/$base.XXXXXX` || exit 1
1156893Sfenner	ln -sf /bin/sleep $sleep
1256893Sfenner	jail / $base-1 127.0.0.1 $sleep 5 &
1356893Sfenner	chpid=$!
1456893Sfenner	jail / $base-2 127.0.0.1 $sleep 5 &
1556893Sfenner	chpid2=$!
1656893Sfenner	$sleep 5 &
1756893Sfenner	chpid3=$!
1856893Sfenner	sleep 0.5
1956893Sfenner	jid=`jls | awk "/127\\.0\\.0\\.1.*${base}-1/ {print \$1}"`
2056893Sfenner	pid=`pgrep -f -j $jid $sleep`
2156893Sfenner	if [ "$pid" = "$chpid" ]; then
2256893Sfenner		echo "ok 1 - $name"
2356893Sfenner	else
2456893Sfenner		echo "not ok 1 - $name"
2556893Sfenner	fi
2656893Sfenner	kill $chpid $chpid2 $chpid3
2756893Sfenner	rm -f $sleep
2856893Sfennerelse
2956893Sfenner	echo "ok 1 - $name # skip Test needs uid 0."
3056893Sfennerfi
3156893Sfenner
3256893Sfennername="pgrep -j any"
3356893Sfennerif [ `id -u` -eq 0 ]; then
3456893Sfenner	sleep=`mktemp /tmp/$base.XXXXXX` || exit 1
3556893Sfenner	ln -sf /bin/sleep $sleep
3656893Sfenner	jail / $base-1 127.0.0.1 $sleep 5 &
3756893Sfenner	chpid=$!
3856893Sfenner	jail / $base-2 127.0.0.1 $sleep 5 &
3956893Sfenner	chpid2=$!
4056893Sfenner	$sleep 5 &
4156893Sfenner	chpid3=$!
4256893Sfenner	sleep 0.5
4356893Sfenner	pids=`pgrep -f -j any $sleep | sort`
4456893Sfenner	refpids=`{ echo $chpid; echo $chpid2; } | sort`
4556893Sfenner	if [ "$pids" = "$refpids" ]; then
4656893Sfenner		echo "ok 2 - $name"
4756893Sfenner	else
4856893Sfenner		echo "not ok 2 - $name"
4956893Sfenner	fi
5056893Sfenner	kill $chpid $chpid2 $chpid3
5156893Sfenner	rm -f $sleep
5256893Sfennerelse
5356893Sfenner	echo "ok 2 - $name # skip Test needs uid 0."
5456893Sfennerfi
5556893Sfenner
5656893Sfennername="pgrep -j none"
5756893Sfennerif [ `id -u` -eq 0 ]; then
5856893Sfenner	sleep=`mktemp /tmp/$base.XXXXXX` || exit 1
5956893Sfenner	ln -sf /bin/sleep $sleep
6056893Sfenner	$sleep 5 &
6156893Sfenner	chpid=$!
6256893Sfenner	jail / $base 127.0.0.1 $sleep 5 &
6356893Sfenner	chpid2=$!
6456893Sfenner	sleep 0.5
6556893Sfenner	pid=`pgrep -f -j none $sleep`
6656893Sfenner	if [ "$pid" = "$chpid" ]; then
6756893Sfenner		echo "ok 3 - $name"
6856893Sfenner	else
6956893Sfenner		echo "not ok 3 - $name"
7056893Sfenner	fi
7156893Sfenner	kill $chpid $chpid2
7256893Sfenner	rm -f $sleep
7356893Sfennerelse
7456893Sfenner	echo "ok 3 - $name # skip Test needs uid 0."
7556893Sfennerfi
7656893Sfenner