# Filename:      net-functions
# Purpose:       network related functions for use in shellscripts
# Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports:   see http://grml.org/bugs/
# License:       This file is licensed under the GPL v2.
# Latest change: Don Okt 12 09:41:32 CEST 2006 [mika]
################################################################################

defaultGWDev() {
  ip r s | awk '/^default/ {print $5}'
}

getLanDevices() {
  ignore="vmnet lo sit $(brctl show | awk '{ if(NR >1 ) print  $1 }' | xargs)"
  filter=$(for mask in $ignore; do echo -n '&& $1 !~ /^'$mask/; done)
  awk 'FS=":" {gsub(" ", ""); if(NR>2 '"$filter"' )  print $1 | "sort" } ' /proc/net/dev
}

getWlanDevices() {
  awk 'FS=":" {gsub(" ", ""); if(NR>2 ) print $1 | "sort" } ' /proc/net/wireless
}

# getLanDriver deviceName
getLanDriver() {
  DEVICE="$1"
  echo $DEVICE | grep -q ath && DEVICE=$(echo $DEVICE | sed 's/ath/wifi/')
  ethtool -i $DEVICE 2>/dev/null | awk '/^driver:/{print $2}'
}

## END OF FILE #################################################################
