Added ability to scan muiltiple Device IDs passed on the command line
Added -O parameter to supress optional property scan
This commit is contained in:
+131
-99
@@ -1,115 +1,147 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
PROG=`basename $0`
|
PROG=`basename $0`
|
||||||
|
OPTIONAL=1
|
||||||
|
|
||||||
usage()
|
usage()
|
||||||
{
|
{
|
||||||
echo "usage: $PROG <<BACnetID>>
|
echo "usage: $PROG [OPTIONS] <<BACnetID>> [ <<BACnetID>> ... ]
|
||||||
|
|
||||||
Will return Required and Optional property values
|
Will return Required and Optional property values
|
||||||
from the requested device.
|
from the requested device.
|
||||||
|
|
||||||
|
-o Display optional properties [default behavior]
|
||||||
|
-O Supress display of optional properties
|
||||||
|
-h Display this help
|
||||||
"
|
"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
while getopts ":oOh" opt; do
|
||||||
|
case $opt in
|
||||||
|
o ) OPTIONAL=1
|
||||||
|
;;
|
||||||
|
O ) OPTIONAL=0
|
||||||
|
;;
|
||||||
|
h ) usage
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
\? ) usage
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift $(($OPTIND -1))
|
||||||
|
|
||||||
if [ $# -eq 0 ] || [ "$1" = "" ] ; then
|
if [ $# -eq 0 ] || [ "$1" = "" ] ; then
|
||||||
usage
|
usage
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if [ $(( $1 + 0 )) -eq 0 ] ; then
|
|
||||||
echo "ERROR: ID must be an integer!!" >&2
|
|
||||||
usage
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Test: Read Required Properties of Device Object $1"
|
run_test()
|
||||||
echo -n "OBJECT IDENTIFIER:"
|
{
|
||||||
./bacrp $1 8 $1 75
|
echo "Test: Read Required Properties of Device Object $1"
|
||||||
echo -n "OBJECT NAME:"
|
echo -n "OBJECT IDENTIFIER:"
|
||||||
./bacrp $1 8 $1 77
|
./bacrp $1 8 $1 75
|
||||||
echo -n "OBJECT TYPE:"
|
echo -n "OBJECT NAME:"
|
||||||
./bacrp $1 8 $1 79
|
./bacrp $1 8 $1 77
|
||||||
echo -n "SYSTEM STATUS:"
|
echo -n "OBJECT TYPE:"
|
||||||
./bacrp $1 8 $1 112
|
./bacrp $1 8 $1 79
|
||||||
echo -n "VENDOR NAME:"
|
echo -n "SYSTEM STATUS:"
|
||||||
./bacrp $1 8 $1 121
|
./bacrp $1 8 $1 112
|
||||||
echo -n "VENDOR IDENTIFIER:"
|
echo -n "VENDOR NAME:"
|
||||||
./bacrp $1 8 $1 120
|
./bacrp $1 8 $1 121
|
||||||
echo -n "MODEL NAME:"
|
echo -n "VENDOR IDENTIFIER:"
|
||||||
./bacrp $1 8 $1 70
|
./bacrp $1 8 $1 120
|
||||||
echo -n "FIRMWARE REVISION:"
|
echo -n "MODEL NAME:"
|
||||||
./bacrp $1 8 $1 44
|
./bacrp $1 8 $1 70
|
||||||
echo -n "APPLICATION SOFTWARE VERSION:"
|
echo -n "FIRMWARE REVISION:"
|
||||||
./bacrp $1 8 $1 12
|
./bacrp $1 8 $1 44
|
||||||
echo -n "PROTOCOL VERSION:"
|
echo -n "APPLICATION SOFTWARE VERSION:"
|
||||||
./bacrp $1 8 $1 98
|
./bacrp $1 8 $1 12
|
||||||
echo -n "PROTOCOL REVISION:"
|
echo -n "PROTOCOL VERSION:"
|
||||||
./bacrp $1 8 $1 139
|
./bacrp $1 8 $1 98
|
||||||
echo -n "PROTOCOL SERVICES SUPPORTED:"
|
echo -n "PROTOCOL REVISION:"
|
||||||
./bacrp $1 8 $1 97
|
./bacrp $1 8 $1 139
|
||||||
echo -n "OBJECT TYPES SUPPORTED:"
|
echo -n "PROTOCOL SERVICES SUPPORTED:"
|
||||||
./bacrp $1 8 $1 96
|
./bacrp $1 8 $1 97
|
||||||
echo -n "OBJECT LIST LENGTH:"
|
echo -n "OBJECT TYPES SUPPORTED:"
|
||||||
./bacrp $1 8 $1 76 0
|
./bacrp $1 8 $1 96
|
||||||
echo -n "OBJECT LIST:"
|
echo -n "OBJECT LIST LENGTH:"
|
||||||
./bacrp $1 8 $1 76
|
./bacrp $1 8 $1 76 0
|
||||||
echo -n "MAX APDU LENGTH ACCEPTED:"
|
echo -n "OBJECT LIST:"
|
||||||
./bacrp $1 8 $1 62
|
./bacrp $1 8 $1 76
|
||||||
echo -n "SEGMENTATION SUPPORTED:"
|
echo -n "MAX APDU LENGTH ACCEPTED:"
|
||||||
./bacrp $1 8 $1 107
|
./bacrp $1 8 $1 62
|
||||||
echo -n "APDU TIMEOUT:"
|
echo -n "SEGMENTATION SUPPORTED:"
|
||||||
./bacrp $1 8 $1 11
|
./bacrp $1 8 $1 107
|
||||||
echo -n "NUMGER OF APDU ENTRIES:"
|
echo -n "APDU TIMEOUT:"
|
||||||
./bacrp $1 8 $1 73
|
./bacrp $1 8 $1 11
|
||||||
echo -n "DEVICE ADDRESS BINDING:"
|
echo -n "NUMGER OF APDU ENTRIES:"
|
||||||
./bacrp $1 8 $1 30
|
./bacrp $1 8 $1 73
|
||||||
echo -n "DATABASE REVISION:"
|
echo -n "DEVICE ADDRESS BINDING:"
|
||||||
./bacrp $1 8 $1 155
|
./bacrp $1 8 $1 30
|
||||||
echo ""
|
echo -n "DATABASE REVISION:"
|
||||||
echo "Test: Read Optional Properties of Device Object $1"
|
./bacrp $1 8 $1 155
|
||||||
echo -n "LOCATION:"
|
if [ $OPTIONAL -eq 1 ] ; then
|
||||||
./bacrp $1 8 $1 58
|
echo "Test: Read Optional Properties of Device Object $1"
|
||||||
echo -n "DESCRIPTION:"
|
echo -n "LOCATION:"
|
||||||
./bacrp $1 8 $1 28
|
./bacrp $1 8 $1 58
|
||||||
echo -n "MAX SEGMENTS SUPPORTED:"
|
echo -n "DESCRIPTION:"
|
||||||
./bacrp $1 8 $1 167
|
./bacrp $1 8 $1 28
|
||||||
echo -n "VT CLASSES SUPPORTED:"
|
echo -n "MAX SEGMENTS SUPPORTED:"
|
||||||
./bacrp $1 8 $1 122
|
./bacrp $1 8 $1 167
|
||||||
echo -n "ACTIVE VT SESSIONS:"
|
echo -n "VT CLASSES SUPPORTED:"
|
||||||
./bacrp $1 8 $1 5
|
./bacrp $1 8 $1 122
|
||||||
echo -n "LOCAL TIME:"
|
echo -n "ACTIVE VT SESSIONS:"
|
||||||
./bacrp $1 8 $1 57
|
./bacrp $1 8 $1 5
|
||||||
echo -n "LOCAL DATE:"
|
echo -n "LOCAL TIME:"
|
||||||
./bacrp $1 8 $1 56
|
./bacrp $1 8 $1 57
|
||||||
echo -n "UTC OFFSET:"
|
echo -n "LOCAL DATE:"
|
||||||
./bacrp $1 8 $1 119
|
./bacrp $1 8 $1 56
|
||||||
echo -n "DAYLIGHT SAVINGS STATUS:"
|
echo -n "UTC OFFSET:"
|
||||||
./bacrp $1 8 $1 24
|
./bacrp $1 8 $1 119
|
||||||
echo -n "APDU SEGMENT TIMEOUT:"
|
echo -n "DAYLIGHT SAVINGS STATUS:"
|
||||||
./bacrp $1 8 $1 10
|
./bacrp $1 8 $1 24
|
||||||
echo -n "LIST OF SESSION KEYS:"
|
echo -n "APDU SEGMENT TIMEOUT:"
|
||||||
./bacrp $1 8 $1 55
|
./bacrp $1 8 $1 10
|
||||||
echo -n "TIME SYNCHRONIZATION RECIPIENTS:"
|
echo -n "LIST OF SESSION KEYS:"
|
||||||
./bacrp $1 8 $1 116
|
./bacrp $1 8 $1 55
|
||||||
echo -n "MAX MASTER:"
|
echo -n "TIME SYNCHRONIZATION RECIPIENTS:"
|
||||||
./bacrp $1 8 $1 64
|
./bacrp $1 8 $1 116
|
||||||
echo -n "MAX INFO FRAMES:"
|
echo -n "MAX MASTER:"
|
||||||
./bacrp $1 8 $1 63
|
./bacrp $1 8 $1 64
|
||||||
echo -n "ACK REQUIRED:"
|
echo -n "MAX INFO FRAMES:"
|
||||||
./bacrp $1 8 $1 1
|
./bacrp $1 8 $1 63
|
||||||
echo -n "CONFIGURATION FILES:"
|
echo -n "ACK REQUIRED:"
|
||||||
./bacrp $1 8 $1 154
|
./bacrp $1 8 $1 1
|
||||||
echo -n "LAST RESTORE TIME:"
|
echo -n "CONFIGURATION FILES:"
|
||||||
./bacrp $1 8 $1 157
|
./bacrp $1 8 $1 154
|
||||||
echo -n "BACKUP FAILURE TIMEOUT:"
|
echo -n "LAST RESTORE TIME:"
|
||||||
./bacrp $1 8 $1 153
|
./bacrp $1 8 $1 157
|
||||||
echo -n "ACTIVE COV SUBSCRIPTIONS:"
|
echo -n "BACKUP FAILURE TIMEOUT:"
|
||||||
./bacrp $1 8 $1 152
|
./bacrp $1 8 $1 153
|
||||||
echo -n "SLAVE PROXY ENABLE:"
|
echo -n "ACTIVE COV SUBSCRIPTIONS:"
|
||||||
./bacrp $1 8 $1 172
|
./bacrp $1 8 $1 152
|
||||||
echo -n "MANUAL SLAVE ADDRESS BINDING:"
|
echo -n "SLAVE PROXY ENABLE:"
|
||||||
./bacrp $1 8 $1 170
|
./bacrp $1 8 $1 172
|
||||||
echo -n "AUTO SLAVE DISCOVERY:"
|
echo -n "MANUAL SLAVE ADDRESS BINDING:"
|
||||||
./bacrp $1 8 $1 169
|
./bacrp $1 8 $1 170
|
||||||
echo -n "SLAVE ADDRESS BINDING:"
|
echo -n "AUTO SLAVE DISCOVERY:"
|
||||||
./bacrp $1 8 $1 171
|
./bacrp $1 8 $1 169
|
||||||
echo -n "PROFILE NAME:"
|
echo -n "SLAVE ADDRESS BINDING:"
|
||||||
./bacrp $1 8 $1 168
|
./bacrp $1 8 $1 171
|
||||||
|
echo -n "PROFILE NAME:"
|
||||||
|
./bacrp $1 8 $1 168
|
||||||
|
fi
|
||||||
|
echo " "
|
||||||
|
}
|
||||||
|
|
||||||
|
while [ $# -gt 0 ] ; do
|
||||||
|
ID=$(( $1 + 0 ))
|
||||||
|
shift
|
||||||
|
if [ $ID -eq 0 ] ; then
|
||||||
|
echo "ERROR: Device ID must be an integer!! [ID=$ID]" >&2
|
||||||
|
fi
|
||||||
|
run_test $ID
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user