#!/bin/sh 
# $Revision: 1.1.1.1.2.2 $
f_getArgs() {

    ARG_ONE=$1
}

f_USAGE()
{
    /usr/bin/printf "`/usr/bin/basename $0` usage:\n\n"
    /usr/bin/printf "\tFiler-Specific Components:  `/usr/bin/basename $0` -c \n"
    /usr/bin/printf "\tOther Filer Packages:\t    `/usr/bin/basename $0` -o \n"
    /usr/bin/printf "\tLong Listing:\t\t    `/usr/bin/basename $0` -l \n"

}



f_LONG()
{
    /usr/bin/printf "\n"    
/usr/bin/echo "\n---Filer Type and Operating System---"
	f_FILEROS
/usr/bin/echo "\n---Filer-Specific Components---"
	f_FILERSP
/usr/bin/echo "\n---All Other Filer Packages---"
	f_OTHER
}


f_FILEROS()
{
    /usr/bin/printf "\n"

    sfmodel_ver=`/usr/bin/more /etc/sfmodel_ver` 
    osver=`/usr/bin/uname -sr`
    /usr/bin/printf "\t$sfmodel_ver\n"
    /usr/bin/printf "\t$osver\n"
}


f_FILERSP()
{
    /usr/bin/printf "\n"

   /usr/bin/pkginfo -l SUNWsfcli > /tmp/pkgtmp
    cliname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$cliname\n"
    cliver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$cliver\n"

    /usr/bin/pkginfo -l SUNWsfadm > /tmp/pkgtmp
    admname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$admname\n"
    admver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }'`
    /usr/bin/printf "\t\t$admver\n"
    
    var=`/usr/bin/cat /etc/sfmodel_ver | /usr/bin/grep -c "N8400"`
    if [ $var -eq 1 ]; then
        /usr/bin/pkginfo -l SUNWsfN84 > /tmp/pkgtmp
    	n84name=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    	/usr/bin/printf "\t$n84name\n"
    	n84ver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }'`
    	/usr/bin/printf "\t\t$n84ver\n"
    else
	/usr/bin/pkginfo -l SUNWsfN86 > /tmp/pkgtmp
    	n86name=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    	/usr/bin/printf "\t$n86name\n"
    	n86ver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }'`
    	/usr/bin/printf "\t\t$n86ver\n"  
    fi
    
/usr/bin/rm /tmp/pkgtmp
}


f_OTHER()
{
    /usr/bin/printf "\n"
    /usr/bin/pkginfo -l SUNWtrku > /tmp/pkgtmp
    trunkname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$trunkname\n"
    trunkver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$trunkver\n"

    /usr/bin/pkginfo -l SUNWsbuc > /tmp/pkgtmp
    buname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$buname\n"
    buver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$buver\n"

    /usr/bin/pkginfo -l STORtools > /tmp/pkgtmp
    STname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$STname\n"
    STver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$STver\n"
    
    /usr/bin/pkginfo -l VRTSvxvm > /tmp/pkgtmp
    vname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$vname\n"
    vver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$vver\n"

    /usr/bin/pkginfo -l SUNWlznb > /tmp/pkgtmp
    pcname=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep NAME: | /usr/bin/awk '{ print $2" "$3" "$4" "$5" "$6; }' `
    /usr/bin/printf "\t$pcname(PC Netlink)\n"
    pcver=`/usr/bin/cat /tmp/pkgtmp | /usr/bin/grep VERSION: | /usr/bin/awk '{ print $2" "$3" "$4" "$5; }' ` 
    /usr/bin/printf "\t\t$pcver\n"

/usr/bin/rm /tmp/pkgtmp
}

if [ $# -lt 1 ] ; then
    f_FILEROS
    exit 1 
fi


f_getArgs $@

case "$ARG_ONE" in
    -l) f_LONG $@ ;;
    -c) f_FILERSP $@ ;; 
    -o) f_OTHER $@ ;;
     *) f_USAGE
       exit 0
       ;;
esac
