Broadcom wireless card on BT 5R1
Okay , i have seen allot of problems with broadcom cards and i will try my best to give here a guide that will help configure most of them (if you still get error please post bellow so we can try to fix it)
First of all references i will assume u read.
http://www.backtrack-linux.org/forum...ad.php?t=34469
There is a point there where a wl driver is patched.
Code:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-source-2.6.34'
WARNING: Symbol version dump /usr/src/linux-source-2.6.34/Module.symvers
is missing; modules will have no dependencies and modversions.
LD /root/hybrid-wl/built-in.o
CC [M] /root/hybrid-wl/src/shared/linux_osl.o
CC [M] /root/hybrid-wl/src/wl/sys/wl_linux.o
/root/hybrid-wl/src/wl/sys/wl_linux.c: In function ‘_wl_set_multicast_list’:
/root/hybrid-wl/src/wl/sys/wl_linux.c:1451: warning: assignment from incompatible pointer type
/root/hybrid-wl/src/wl/sys/wl_linux.c:1451: error: ‘struct netdev_hw_addr’ has no member named ‘next’
make[2]: *** [/root/hybrid-wl/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/root/hybrid-wl] Error 2
make[1]: Leaving directory `/usr/src/linux-source-2.6.34'
make: *** [all] Error 2
if this is not similar error than DON'T PATCH IT with the previous code. (similar as in same error in wl_linux.c)
So if you still have errors meaning that the How to didn't helped. I will suggest a few other methods.
First the kernel related files you might need
kernel-devel kernel-headers
You can try getting those with
Code:
apt-get update
apt-get install kernel-devel
apt-get install kernel-headers
OR if that doesn't work use
sudo aptitude install linux-headers-`uname -r`
similar with kernel-devel
Then
download from broadcom official site
http://www.broadcom.com/support/802.11/linux_sta.php
the version 32 bit or 64 bit depending on your system
If you have s BCM4311-, BCM4312-, BCM4313-, BCM4321-, BCM4322-, BCM43224-, and BCM43225-, BCM43227- and BCM43228-based hardware this is probably a good way to go (with the download and setting) and the drivers that i didn't list may work also.
Try following the instructions, i will briefly go through those.
First check if this folder exist
Code:
ls /lib/modules/`uname -r`/build
If it exist then probably there is no need for installation of
build-essential linux-headers-generic
Yet another way from the upper part of installing kernel devel and headers is
Code:
apt-get install build-essential linux-headers-generic
apt-get build-dep linux
If you already installed kernel devel and headers no need for the first line
The second line actually says build all dependancies for linux so that you can build it (later on that if problems occur)
Okay now that you unpacked the downloaded driver in some folder. Go inside the folder and follow the instructions on modeprobing the driver when you can make them
When testing if you have any previously installed drivers ssb\|wl\|b43\|bcma
after the installation you will have a wl (if you have it before delete it but NOT after)
The problem may occur in the second line.
I myself got the following error
Code:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-source-2.6.39.4'
WARNING: Symbol version dump /usr/src/linux-source-2.6.39.4/Module.symvers
is missing; modules will have no dependencies and modversions.
CFG80211 API is prefered for this kernel version
Using CFG80211 API
CC [M] /home/Sharan/Tools/Driver_Za_wireless/hybrid_wl/src/wl/sys/wl_cfg80211.o
/home/Sharan/Tools/Driver_Za_wireless/hybrid_wl/src/wl/sys/wl_cfg80211.c: In function ΓÇÿwl_inform_single_bssΓÇÖ:
/home/Sharan/Tools/Driver_Za_wireless/hybrid_wl/src/wl/sys/wl_cfg80211.c:1817: error: too few arguments to function ΓÇÿieee80211_channel_to_frequencyΓÇÖ
make[2]: *** [/home/Sharan/Tools/Driver_Za_wireless/hybrid_wl/src/wl/sys/wl_cfg80211.o] Error 1
make[1]: *** [_module_/home/Sharan/Tools/Driver_Za_wireless/hybrid_wl] Error 2
make[1]: Leaving directory `/usr/src/linux-source-2.6.39.4'
make: *** [all] Error 2
This means that we weren't able to create binaries (obviously)
The reason (most of you and myself ignored) is written in the error. The error is in 1817 line of the file wl_cfg80211.c on calling the function (ieee80211_channel_to_frequency)
So what i did is entered the file found the line 1817
It says something like this
freq = ieee80211_channel_to_frequency(notif_bss_info->channel
#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
,(notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ
#endif
);
The problem here is that the #if is happening in preprocessing as you don't have two kernel versions also you don't have two types of ieee80211_channel_to_frequency functions
if the error says too few arguments that means that your ieee80211_channel_to_frequency is calling the 2 argument function which is included with the 2.6.39 kernel version
So you can fix that (not a perfect code but it will work on your computer)
Code:
#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
freq = ieee80211_channel_to_frequency(notif_bss_info->channel,(notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ);
#else
freq = ieee80211_channel_to_frequency(notif_bss_info->channel,(notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ);
#endif
Here i just told him to take the same freq to whatever kernel version is running on my pc.
then try
make clean
make
There is a possibility of next error
Code:
make: Entering directory `/usr/src/linux-source-2.6.35.8'
WARNING: Symbol version dump /usr/src/linux-source-2.6.35.8/Module.symvers
is missing; modules will have no dependencies and modversions.
You need to do a full make and make install of the linux-source
There is a fine article here
http://linux.koolsolutions.com/2009/...e-compilation/
and you can google it
Also DON'T FORGET TO
BEFORE testing your drivers!!!
Lets say you tried all this and didn't work (no error message when making the driver just won't work from some weird reasons, you have kernel headers devel all the kernel necessary files also you have the kernel made and installed )
There is just two more ways that may work for you
First try with Synaptic Package Manager and search for
bcmwl-kernel-source
or in console
Code:
apt-get update
apt-get --reinstall install bcmwl-kernel-source
This doesn't work too ? No problem
http://linuxwireless.org/en/users/Drivers/
On this site you have the download of wireless drivers and more
And on this site you have written c programs for wireless
http://lxr.free-electrons.com/ (eg. you need ieee80211.h http://lxr.free-electrons.com/source...ux/ieee80211.h)
Hope all of this helped i know i needed it when i was trying to install my drivers.
If none of this could help (which is less likely to happend) post below your error.
All the best,
Sh
--------------------------------
To computermen2 sorry for the late reply
Change that ndo_set_multicast_list to ndo_set_rx_mode
since on the never kernel versions there is no variable like ndo_set_multicast_list its change to ndo_set_rx_mode try changing that that and then try compiling then reply.
Also read very carefully about the wireless card ussage on Virtual Machines , its delicate
---------------------------------------------------------------------------------
To subnetzero sorry for the late reply,
Maybe try the first method since that method is old, they wont update drivers =(
So try compiling and post errors il try to reply
Also the error above is the same change ndo_set_multicast_list to ndo_set_rx_mode DO NOT FORGET THE '.'
Then try compiling =)
Re: Broadcom wireless card on BT 5R1
i have black track 5 R3 64 bit installed in vmware
and i have Carte Wi-Fi*802.11b/g/n (projet) 1x1*4313GN*Broadcom
when i try to install it i got this error
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-source-3.2.6'
WARNING: Symbol version dump /usr/src/linux-source-3.2.6/Module.symvers
is missing; modules will have no dependencies and modversions.
Wireless Extension is the only possible API for this kernel version
Using Wireless Extension API
LD /root/moh/built-in.o
CC [M] /root/moh/src/shared/linux_osl.o
CC [M] /root/moh/src/wl/sys/wl_linux.o
/root/moh/src/wl/sys/wl_linux.c:388: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
/root/moh/src/wl/sys/wl_linux.c:388: warning: initialization from incompatible pointer type
make[2]: *** [/root/moh/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/root/moh] Error 2
make[1]: Leaving directory `/usr/src/linux-source-3.2.6'
make: *** [all] Error 2
please help i am totaly beginner in blacktrack
Re: Broadcom wireless card on BT 5R1
Dear god my wireless card is living hell. I have an Acer Aspire laptop with a Broadcom Wireless chipset:
Code:
09:00.0 Network controller [0280]: Broadcom Corporation BCM43225 802.11b/g/n [14e4:4357] (rev 01)
I was following your tutorial and at the top where you tell me to use
Code:
sudo aptitude install linux-headers-`uname -r`
I decided it was a good idea to go ahead and run that command first. So it installed with the following output:
Code:
root@bt:~/drivers# sudo aptitude install linux-headers-`uname -r`
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done
The following packages will be REMOVED:
bogl-bterm{u} cryptsetup{u} dmraid{u} ecryptfs-utils{u}
libdebconfclient0{u} libdebian-installer4{u} libdmraid1.0.0.rc16{u}
libecryptfs0{u} python-pyicu{u} rdate{u} reiserfsprogs{u}
The following partially installed packages will be configured:
bcmwl-kernel-source
0 packages upgraded, 0 newly installed, 11 to remove and 28 not upgraded.
Need to get 0B of archives. After unpacking 3,994kB will be freed.
Do you want to continue? [Y/n/?] Y
Writing extended state information... Done
(Reading database ... 278980 files and directories currently installed.)
Removing bogl-bterm ...
Removing cryptsetup ...
update-initramfs: deferring update (trigger activated)
Removing dmraid ...
update-initramfs: deferring update (trigger activated)
Removing ecryptfs-utils ...
Removing libdebconfclient0 ...
Removing libdebian-installer4 ...
Removing libdmraid1.0.0.rc16 ...
Removing libecryptfs0 ...
Removing python-pyicu ...
Removing rdate ...
Removing reiserfsprogs ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.2.6
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for python-support ...
Setting up bcmwl-kernel-source (5.60.48.36+bdcom-0ubuntu3) ...
Removing old bcmwl-5.60.48.36+bdcom DKMS files...
------------------------------
Deleting module version: 5.60.48.36+bdcom
completely from the DKMS tree.
------------------------------
Done.
Loading new bcmwl-5.60.48.36+bdcom DKMS files...
First Installation: checking all kernels...
Building only for 3.2.6
Building for architecture x86_64
Building initial module for 3.2.6
Error! Bad return status for module build on kernel: 3.2.6 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/bcmwl/5.60.48.36+bdcom/build/ for more information.
dpkg: error processing bcmwl-kernel-source (--configure):
subprocess installed post-installation script returned error exit status 10
Errors were encountered while processing:
bcmwl-kernel-source
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
Setting up bcmwl-kernel-source (5.60.48.36+bdcom-0ubuntu3) ...
Removing old bcmwl-5.60.48.36+bdcom DKMS files...
------------------------------
Deleting module version: 5.60.48.36+bdcom
completely from the DKMS tree.
------------------------------
Done.
Loading new bcmwl-5.60.48.36+bdcom DKMS files...
First Installation: checking all kernels...
Building only for 3.2.6
Building for architecture x86_64
Building initial module for 3.2.6
Error! Bad return status for module build on kernel: 3.2.6 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/bcmwl/5.60.48.36+bdcom/build/ for more information.
dpkg: error processing bcmwl-kernel-source (--configure):
subprocess installed post-installation script returned error exit status 10
Errors were encountered while processing:
bcmwl-kernel-source
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done
but it was after that when I went to install the developer kernel when I received a whole bunch of errors:
Code:
root@bt:~/drivers# sudo aptitude install devel-`uname -r`
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Couldn't find any package whose name or description matched "devel-3.2.6"
Couldn't find any package whose name or description matched "devel-3.2.6"
The following partially installed packages will be configured:
bcmwl-kernel-source
0 packages upgraded, 0 newly installed, 0 to remove and 28 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Setting up bcmwl-kernel-source (5.60.48.36+bdcom-0ubuntu3) ...
Removing old bcmwl-5.60.48.36+bdcom DKMS files...
------------------------------
Deleting module version: 5.60.48.36+bdcom
completely from the DKMS tree.
------------------------------
Done.
Loading new bcmwl-5.60.48.36+bdcom DKMS files...
First Installation: checking all kernels...
Building only for 3.2.6
Building for architecture x86_64
Building initial module for 3.2.6
Error! Bad return status for module build on kernel: 3.2.6 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/bcmwl/5.60.48.36+bdcom/build/ for more information.
dpkg: error processing bcmwl-kernel-source (--configure):
subprocess installed post-installation script returned error exit status 10
Errors were encountered while processing:
bcmwl-kernel-source
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
Setting up bcmwl-kernel-source (5.60.48.36+bdcom-0ubuntu3) ...
Removing old bcmwl-5.60.48.36+bdcom DKMS files...
------------------------------
Deleting module version: 5.60.48.36+bdcom
completely from the DKMS tree.
------------------------------
Done.
Loading new bcmwl-5.60.48.36+bdcom DKMS files...
First Installation: checking all kernels...
Building only for 3.2.6
Building for architecture x86_64
Building initial module for 3.2.6
Error! Bad return status for module build on kernel: 3.2.6 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/bcmwl/5.60.48.36+bdcom/build/ for more information.
dpkg: error processing bcmwl-kernel-source (--configure):
subprocess installed post-installation script returned error exit status 10
Errors were encountered while processing:
bcmwl-kernel-source
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
but I said to myself "hey, whatever, lets keep going". After patching the file wl_cfg80211.o like you had said, I was still relieving the same errors as before:
Code:
root@bt:~/drivers# make
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: Entering directory `/usr/src/linux-source-3.2.6'
WARNING: Symbol version dump /usr/src/linux-source-3.2.6/Module.symvers
is missing; modules will have no dependencies and modversions.
Wireless Extension is the only possible API for this kernel version
Using Wireless Extension API
LD /root/drivers/built-in.o
CC [M] /root/drivers/src/shared/linux_osl.o
CC [M] /root/drivers/src/wl/sys/wl_linux.o
/root/drivers/src/wl/sys/wl_linux.c:388: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
/root/drivers/src/wl/sys/wl_linux.c:388: warning: initialization from incompatible pointer type
make[2]: *** [/root/drivers/src/wl/sys/wl_linux.o] Error 1
make[1]: *** [_module_/root/drivers] Error 2
make[1]: Leaving directory `/usr/src/linux-source-3.2.6'
make: *** [all] Error 2
I even pressed on and tried this:
Code:
root@bt:~/drivers# apt-get --reinstall install bcmwl-kernel-source
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 28 not upgraded.
1 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
Do you want to continue [Y/n]? Y
Setting up bcmwl-kernel-source (5.60.48.36+bdcom-0ubuntu3) ...
Removing old bcmwl-5.60.48.36+bdcom DKMS files...
------------------------------
Deleting module version: 5.60.48.36+bdcom
completely from the DKMS tree.
------------------------------
Done.
Loading new bcmwl-5.60.48.36+bdcom DKMS files...
First Installation: checking all kernels...
Building only for 3.2.6
Building for architecture x86_64
Building initial module for 3.2.6
Error! Bad return status for module build on kernel: 3.2.6 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/bcmwl/5.60.48.36+bdcom/build/ for more information.
dpkg: error processing bcmwl-kernel-source (--configure):
subprocess installed post-installation script returned error exit status 10
Errors were encountered while processing:
bcmwl-kernel-source
E: Sub-process /usr/bin/dpkg returned an error code (1)
Please forgive me if I am making some kind of rookie mistake :confused:. I would really like to learn backtrack but the incompatibility of my system is driving me crazy. Any help would be appreciated.