1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
#! /bin/sh
# PCP QA Test No. 145
# Duplicate PMIDs in the PMNS
#
# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved.
#
seq=`basename $0`
echo "QA output created by $seq"
# get standard filters
. ./common.product
. ./common.filter
. ./common.check
trap "rm -f $tmp $tmp.*; exit 0" 0 1 2 3 15
_filter_load()
{
sed -e "s#$tmp#TMP#g"
}
_filter()
{
# initial ones are regular stuff ...
# later ones are for systems that are not network byte ordered
# also, deal with optional pmcd features (16 bits, error PDU);
# squash them all into one common pattern, and when diagnosing
# new failures, refer to seq.full
#
tee -a $seq_full \
| sed \
-e 's/ fd=[0-9][0-9]*/ fd=<n>/' \
-e 's/dump from.*/dump from .../' \
-e 's/^\[[0-9][0-9]*]/[PID]/' \
-e 's/from=[0-9][0-9]*/from=PMCD/' \
-e '/^000:/{
s/\(000:.................. \)......../\1 FROM/
s/\(000:..............7001......... \)........ ......../\1 DATE STAMP/
s/\(000:..............7015......... \)........ ........ ........ *0 ......../\1 DATE STAMP/
}' \
-e 's/ 1000000 b004007 1000000/ 1 740000b 1/' \
-e 's/ 1000000 201/ 1 1020000/' \
-e 's/ 1000000 b004007/ 1 740000b/' \
-e 's/ 1 7fc00001/ 1000000 100c07f/' \
-e 's/ 1 7fc00002/ 1000000 200c07f/' \
-e 's/ffffffff a000000/ffffffff a/' \
-e 's/ffffffff 3000000/ffffffff 3/' \
-e 's/ b004007/ 740000b/' \
-e 's/ ffffcf9e/ 9ecfffff/' \
-e 's/ 7fc00001/ 100c07f/' \
-e 's/ 7fc00002/ 200c07f/' \
-e 's/ ffffcfba/ bacfffff/' \
-e '/ 7000 /{
s/ 2010040/ 2010000/
s/ 2010057/ 2010000/
s/ 2020057/ 2010000/
s/ 102/ 2010000/
s/ 10102/ 2010000/
s/ 20102/ 2010000/
s/ 17000102/ 2010000/
s/ 17010102/ 2010000/
s/ 17020102/ 2010000/
s/ 17060102/ 2010000/
s/ 40000102/ 2010000/
s/ 40010102/ 2010000/
s/ 40020102/ 2010000/
s/ 57000102/ 2010000/
s/ 57010102/ 2010000/
s/ 57020102/ 2010000/
s/ 57060102/ 2010000/
s/ 570e0102/ 2010000/
}' \
-e 's/ 201[0-9][0-9][0-9][0-9]/ 2010000/' \
-e 's/ [0-9][0-9][0-9][0-9]102/ 2010000/' \
-e 's/ 201/ 1020000/' \
-e 's/ 102/ 2010000/' \
| $PCP_AWK_PROG '
BEGIN { seen_challenge = 0 }
seen_challenge == 0 && $3 == 7000 {
sub(/ *[^ ][^ ]* $/, " CHALLENGE ")
seen_challenge = 1
}
{ print }'
}
# real QA test starts here
cat >$tmp <<End-of-File
root {
ten 29:0:11
another_ten 29:0:11
yet
}
yet {
another
again 29:0:11
}
yet.another {
ten 29:0:11
}
End-of-File
pminfo -b1 -N $tmp 2>&1 | _filter_load
pminfo -b1 -Dpdu -n $tmp -fdm 2>&1 | _filter
|