found another path case for usb networking cards, requires special handling

This commit is contained in:
inxi-svn 2011-06-06 03:54:28 +00:00
parent 1e3003f2a3
commit f9e7b6916c

18
inxi
View file

@ -1,8 +1,8 @@
#!/bin/bash
########################################################################
#### Script Name: inxi
#### version: 1.5.11
#### Date: May 30 2011
#### version: 1.5.12
#### Date: June 5 2011
########################################################################
#### SPECIAL THANKS
########################################################################
@ -3902,7 +3902,7 @@ get_networking_data()
get_network_advanced_data()
{
eval $LOGFS
local a_network_adv_working='' if_path='' working_path='' dir_path=''
local a_network_adv_working='' if_path='' working_path='' working_uevent_path='' dir_path=''
local if_id='' speed='' duplex='' mac_id='' oper_state=''
local usb_data='' usb_vendor='' usb_product='' product_path='' driver_test=''
@ -3947,19 +3947,25 @@ get_network_advanced_data()
# now ls that directory and get the numeric starting sub directory and that should be the full path
# to the /net directory part
dir_path=$( ls ${working_path} 2>/dev/null | grep -sE '^[0-9]' )
working_path="${working_path}${dir_path}"
working_uevent_path="${working_path}${dir_path}"
fi
fi
# /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/uevent grep for DRIVER=
# /sys/devices/pci0000:00/0000:00:0b.1/usb1/1-1/1-1:1.0/uevent
if [[ -n $usb_data ]];then
driver_test=$( grep -si 'DRIVER=' $working_path/uevent | cut -d '=' -f 2 )
driver_test=$( grep -si 'DRIVER=' $working_uevent_path/uevent | cut -d '=' -f 2 )
if [[ -n $driver_test ]];then
a_network_adv_working[1]=$driver_test
fi
fi
if [[ -e $working_path/net ]];then
if [[ -e $working_uevent_path/net ]];then
if_path=$( ls $working_uevent_path/net 2>/dev/null )
if_id=$if_path
working_path=$working_uevent_path/net/$if_path
# this case, from debian squeeze:
# /sys/devices/pci0000:00/0000:00:0b.1/usb1/1-1/net/wlan0/address
elif [[ -e $working_path/net ]];then
if_path=$( ls $working_path/net 2>/dev/null )
if_id=$if_path
working_path=$working_path/net/$if_path