diff --git a/inxi b/inxi index a0623ef..8910d7f 100755 --- a/inxi +++ b/inxi @@ -2,8 +2,8 @@ ######################################################################## #### Script Name: inxi #### version: 1.7.24 -#### Date: October 3 2011 -#### Patch Number: 00 +#### Date: November 21 2011 +#### Patch Number: 01 ######################################################################## #### SPECIAL THANKS ######################################################################## @@ -4469,11 +4469,20 @@ get_network_advanced_data() # /sys/bus/pci/devices/0000:02:02.0/net/eth1 # real paths are: /sys/devices/pci0000:00/0000:00:1e/0/0000:02:02.0/net/eth1/uevent # and on older debian kernels: /sys/devices/pci0000:00/0000:02:02.0/net:eth1/uevent + # but broadcom shows this sometimes: + # /sys/devices/pci0000:00/0000:00:03.0/0000:03:00.0/ssb0:0/uevent:['DRIVER=b43', 'MODALIAS=ssb:v4243id0812rev0D']: working_path="/sys/bus/pci/devices/0000:${a_network_adv_working[4]}" # now we want the real one, that xiin also displays, without symbolic links. if [[ -e $working_path ]];then working_path=$( readlink -f $working_path 2>/dev/null ) fi + # sometimes there is another directory between the path and /net + if [[ ! -e $working_path/net ]];then + # using find here, probably will need to also use it in usb part since the grep + # method seems to not be working now. Slice off the rest, which leaves the basic path + working_path=$( find $working_path/*/uevent 2>/dev/null | \ + sed 's|/net.*||' ) + fi # working_path=$( ls /sys/devices/pci*/*/0000:${a_network_adv_working[4]}/net/*/uevent ) else # slice off the usb- part