From f27b0583e4f011298813ebb27dfdeb99245328e0 Mon Sep 17 00:00:00 2001 From: zhuchunyi Date: Wed, 6 Nov 2019 19:02:52 +0800 Subject: [PATCH] update code --- README.openfwwf | 46 +++++++++++++++++++++++++++++++++++++++++++ b43-openfwwf.spec | 47 ++++++++++++++++++++++++++++++++++++++++++++ openfwwf-5.2.tar.gz | Bin 0 -> 48525 bytes openfwwf.conf | 1 + 4 files changed, 94 insertions(+) create mode 100644 README.openfwwf create mode 100644 b43-openfwwf.spec create mode 100644 openfwwf-5.2.tar.gz create mode 100644 openfwwf.conf diff --git a/README.openfwwf b/README.openfwwf new file mode 100644 index 0000000..be17d89 --- /dev/null +++ b/README.openfwwf @@ -0,0 +1,46 @@ +Open FirmWare for WiFi networks: a UniBS NTW group project + +Realized by Francesco Gringoli and Lorenzo Nava + +Welcome! + + OpenFWWF, Open FirmWare for WiFi networks, is a project that wants to + provide an easy and inexpensive platform to implement new Medium Access + Control (MAC) mechanism, and wants to be a valid alternative to + simulations and expensive ad-hoc platforms. The combination of OpenFWWF + and b43 driver is a complete and cheap tool that makes testing of new + MAC easy achievable. + + This site provides an open source firmware for Broadcom/AirForce + chipset based devices. Currently this firmware has been tested on 4306 + and 4318 chipset revisions and with kernel 2.6.27-rc5 (module b43 from + wireless-testing). Firmware has been developed starting from + specifications in http://bcm-v4.sipsolutions.net: we report here + some information more we discovered, such as important interactions + between the MAC processor, the hardware registers and the operating + mechanisms that rules data frames along the transmission and reception + paths. + This project has been successfully completed thanks to the work of + reverse engineering available at http://bcm-v4.sipsolutions.net and + to the tools that Michael Buesch makes available to the community. + + What this firmware supports: + * works in infrastructured mode as both station and AP, the latter + requires hostapd + * it is compliant with DCF access scheme in b and g modes, not tested + in a bands + * Preliminary testing shows that ad-hoc mode works as it does with + proprietary firmware + + What this firmware does not support: + * does not implement RTS/CTS handshake procedure, must be disabled on + module load + * does not work with hardware cryptography acceleration, use without + encryption! + * does not work with dot11 QoS, must be disabled on module load + + +If you need help: + + If you need help, send a message to the OpenFWWF team: + mailto:openfwwf@ing.unibs.it diff --git a/b43-openfwwf.spec b/b43-openfwwf.spec new file mode 100644 index 0000000..75e36bb --- /dev/null +++ b/b43-openfwwf.spec @@ -0,0 +1,47 @@ +Name: b43-openfwwf +Version: 5.2 +Release: 21 +Summary: Open Source firmware for Broadcom/AirForce chipset based devices +License: GPLv2 +URL: http://www.ing.unibs.it/openfwwf/ +Source0: http://www.ing.unibs.it/openfwwf/firmware/openfwwf-%{version}.tar.gz +Source1: README.openfwwf +Source2: openfwwf.conf +BuildArch: noarch + +BuildRequires: b43-tools gcc-c++ +Requires: udev module-init-tools + +%description +Open Source firmware for Broadcom/AirForce chipset based devices. +Known supported boards until now: 4306, 4311(rev1), 4318 and 4320. + +%package_help + +%prep +%autosetup -n openfwwf-%{version} +sed -i s/"-o 0 -g 0"// Makefile +install -p -m 0644 %{SOURCE1} . +install -p -m 0644 %{SOURCE2} . + +%build +%make_build + +%install +make install PREFIX=$RPM_BUILD_ROOT/lib/firmware/b43-open +install -d $RPM_BUILD_ROOT%{_prefix}/lib/modprobe.d +install -p openfwwf.conf $RPM_BUILD_ROOT%{_prefix}/lib/modprobe.d/openfwwf.conf + +%files +%license COPYING LICENSE +/lib/firmware/b43-open/*.fw +%attr(0644,root,root) %{_prefix}/lib/modprobe.d/openfwwf.conf + +%files help +%doc README.openfwwf + +%changelog +* Fri Oct 11 2019 openEuler Buildteam - 5.2-21 +- Package init + + diff --git a/openfwwf-5.2.tar.gz b/openfwwf-5.2.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..8af81829ceee58d3780f271ae3d4ceddf46c173c GIT binary patch literal 48525 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 literal 0 HcmV?d00001 diff --git a/openfwwf.conf b/openfwwf.conf new file mode 100644 index 0000000..605e1ce --- /dev/null +++ b/openfwwf.conf @@ -0,0 +1 @@ +options b43 nohwcrypt=1 qos=0