#! /bin/sh
##
## nstat: display networking statistics
##

case $1 in -*) echo "use: $0 [ip | icmp | tcp | udp]" ; exit 1 ;; esac
what="$1"

##
## bash v2.0 failed to use -l like /bin/test; so look about binary:
##
test=test
for f in /bin/test /usr/bin/test ; do
    if [ -f $f ] ; then test=$f ; fi
done

exec < /proc/net/snmp

for p in ip icmp tcp udp 
do
	read desc ; read val
	if [ "$val" = "" ] ; then break ; else set $val ; fi

	if [ "$what" = "" -o "$what" = $p ] ; then
		if [ "$what" = ""  -a $p != ip ] ; then echo "" ; fi
		for f in $desc ; do
			if $test -l "$p$f " -le 15 ; then 
			    pad="	" ; else pad="" ; fi 2>/dev/null
			if $test -l "$p$f " -le 7 ; then 
			    pad="$pad	" ; fi 2>/dev/null
			if [ "$f" != "$1"  ] ; then 
			    echo "$p$f:$pad	$1" ; fi
			shift
		done
	fi
done

exit 0
