#!/bin/bash

. sbs/exec/config/allg
. $(dirname $BASH_SOURCE)/config/functions

ids="device,addr,mask,broadcast,readtime";
labels="Schnittstelle,Addresse,Mask,Broadcast,Lesezeit";
json_writeheader "$ids" "$labels" "readtime:1000" "";

hostname=$(hostname)

prog='/inet[^6]/ { found=1; printf("addr='"'"'%s'"'"'; bcast='"'"'%s'"'"'; mask='"'"'%s'"'"'\n", $2, $6, $4); }
      /inet6/    { found=1; printf("addr='"'"'%s'"'"'; bcast='"'"''"'"'; mask='"'"'%s'"'"'\n", $2, $4); }
      END        { if ( ! found ) printf("addr='"'"''"'"'; bcast='"'"''"'"'; mask='"'"''"'"'\n");}'

echo '  "values"  : ['
for device in `ls /sys/class/net`
do
  if [ "$device" != "lo" ]; then

    ifconfig $device | awk "$prog" | \
    while read line
    do
       eval $line
       if [ "$bcast" != "" ] && [ "$mask" != "" ]; then
         mask="$(ipmask2int $mask)"
       fi
       json_writedata "$device" "$addr" "$mask" "$bcast" "$acttime";
     done
     json_komma=","
   fi
done

echo ']'

exit 0
