- echo desc: \"$description\" >>/var/ipfire/ethernet/scanned_nics
- echo driver: $driver >>/var/ipfire/ethernet/scanned_nics
- echo network.hwaddr: $hwaddr >>/var/ipfire/ethernet/scanned_nics
- fi
+ #Default if not avaiable in /sys/class/net
+ if [ "a$type" == "a" ]; then
+ type="???"
+ fi
+ if [ "a$driver" == "a" ]; then
+ driver="Unknown Network Interface ($card)"
+ fi
+ description=`echo $type: $driver`
+
+ #Get more details for pci and usb devices
+ if [ "$type" == "pci" ]; then
+ slotname=`grep PCI_SLOT_NAME= /sys/class/net/$card/device/uevent | cut -d"=" -f2`
+ name=`lspci -s $slotname | cut -d':' -f3 | cut -c 2-`
+ description=`echo $type: $name`
+ fi
+ if [ "$type" == "usb" ]; then
+ bus=`grep DEVICE= /sys/class/net/$card/device/uevent | cut -d"/" -f5`
+ dev=`grep DEVICE= /sys/class/net/$card/device/uevent | cut -d"/" -f6`
+ #work around the base8 convert
+ let bus=`echo 1$bus`-1000
+ let dev=`echo 1$dev`-1000
+ name=`lsusb -s $bus:$dev | cut -d':' -f3 | cut -c 6-`
+ description=`echo $type: $name`
+ fi
+
+ echo desc: \"$description\" >>/var/ipfire/ethernet/scanned_nics
+ echo driver: $driver >>/var/ipfire/ethernet/scanned_nics
+ echo network.hwaddr: $hwaddr >>/var/ipfire/ethernet/scanned_nics
+ fi
+ fi
+ fi