debian/0000755000000000000000000000000011717676046007205 5ustar debian/firmware.dirs.in0000644000000000000000000000001610550204745012271 0ustar etc/wlan sbin debian/firmware.install.in0000644000000000000000000000025110550204745012777 0ustar debian/tmp/etc/wlan/*.hex /etc/wlan/ debian/tmp/etc/wlan/*pda /etc/wlan/ debian/tmp/usr/share/doc/linux-wlan-ng-firmware-files/copyright debian/tmp/sbin/prism2dl /sbin/ debian/prism2-usb-firmware-installer.prerm0000644000000000000000000000032611334110701016035 0ustar #!/bin/sh -e HEXFILE=/lib/firmware/ru010803.hex FWFILE=/lib/firmware/ru010803.fw if [ "$1" = "remove" -o "$1" = "purge" ]; then echo "Deleting downloaded firmware files" rm -f $HEXFILE $FWFILE fi #DEBHELPER# debian/linux-wlan-ng-resume0000755000000000000000000000063710517166202013120 0ustar #!/bin/sh # This script is run on resume to reactivate linux-wlan-ng # iterfaces which were brought down in the suspend script. IFACES=/var/run/linux-wlan-ng.ifaces MODULES=/var/run/linux-wlan-ng.modules [ -e $MODULES ] || exit 0 for module in `cat $MODULES`; do modprobe $module || true done rm -f $MODULES sleep 1 [ -e $IFACES ] || exit 0 for iface in `cat $IFACES`; do ifup $iface done rm -f $IFACES debian/linux-wlan-ng.dirs0000644000000000000000000000002710722275671012561 0ustar etc/pcmcia/ usr/ sbin/ debian/linux-wlan-ng-source.links0000644000000000000000000000012010356774355014236 0ustar /usr/share/modass/packages/default.sh /usr/share/modass/overrides/linux-wlan-ng debian/linux-wlan-ng-pre-up0000755000000000000000000001466110653102125013025 0ustar #!/bin/sh # # This script takes care of bringing up wlan-ng device. # It is run by ifup, and gets information from the # /etc/network/interfaces file. It is derived from the # init.d/wlan script in the wlan-ng distribution case $IFACE in wlan?) # Remainder of script. ;; *) # Not a wlan-ng device. exit 0 ;; esac WLANCTL=/sbin/wlanctl-ng PRIV_GENERATOR=/sbin/nwepgen if [ ! -x $WLANCTL ] ; then exit 0 fi # Create a lock file; remove on script exit. This is a fairly crummy lock, # but all it needs to do is prevent hotplug from calling this script, # which may happen when the module is loaded below. Since it should only # happen when the module is loaded, I don't need a proper lock. if [ -e /var/lock/wlan-$IFACE.lock ]; then exit 0 fi touch /var/lock/wlan-$IFACE.lock cleanup () { rm -f /var/lock/wlan-$IFACE.lock } trap cleanup 0 # Translate some variable names from wireless-tools to make # linux-wlan-ng more compatible with e.g. gnome-system-tools # The new variables are only set if previously unset : ${IF_WLAN_NG_KEY0:=$IF_WIRELESS_KEY} if [ -n "$IF_WIRELESS_KEY" ]; then : ${IF_WIRELESS_ENC:=on} fi # End of translating hacks #if [ -z "$IF_WIRELESS_MODE" ]; then # IF_WIRELESS_MODE="ad_hoc" #fi if [ -z "$IF_WLAN_NG_HOSTWEP" ]; then IF_WLAN_NG_HOSTWEP=false fi if [ -z "$IF_WLAN_NG_DEFAULT_KEY_ID" ]; then IF_WLAN_NG_DEFAULT_KEY_ID=0 fi if [ -z "$IF_WLAN_NG_EXCLUDE_UNENCRYPTED" ]; then IF_WLAN_NG_EXCLUDE_UNENCRYPTED=true fi if [ -z "$IF_WLAN_NG_PRIV_KEY128" ]; then IF_WLAN_NG_PRIV_KEY128=false fi if [ -z "$IF_WLAN_NG_BCINT" ]; then IF_WLAN_NG_BCINT=100 fi if [ -z "$IF_WLAN_NG_BASICRATES" ]; then IF_WLAN_NG_BASICRATES="2 4" fi if [ -z "$IF_WLAN_NG_OPRATES" ]; then IF_WLAN_NG_OPRATES="2 4 11 22" fi if [ -z "$IF_WLAN_NG_AUTHTYPE" ]; then IF_WLAN_NG_AUTHTYPE="opensystem" fi if [ -z "$IF_WIRELESS_CHANNEL" ]; then IF_WIRELESS_CHANNEL=1 fi if [ ! -d /proc/net/p80211 ] && ! modprobe p80211; then echo "Failed to load p80211.ko." >&2 exit 1 fi # NOTE: We don't explicitly insmod the card driver here. The # best thing to do is to specify an alias in /etc/modules.conf. # Then, the first time we call wlanctl with the named device, # the kernel module autoload stuff will take over. # But, if you prefer, you could modprobe it here. # Bring the card up into an operable state. result=`$WLANCTL $IFACE lnxreq_ifstate ifstate=enable` if [ $? = 0 ] ; then eval $result if [ $resultcode != "success" ]; then echo "Failed to enable the device, resultcode=" $resultcode "." >&2 exit 1 fi else echo "Failed to enable the device, exitcode=" $? "." >&2 exit 1 fi # Set user-specified MIB items. for i in $IF_WLAN_NG_USER_MIBS; do result=`$WLANCTL $IFACE dot11req_mibset "mibattribute=$i"` if [ $? = 0 ] ; then eval $result if [ $resultcode != "success" ] ; then echo "Failed to set user MIB $i." >&2 exit 1 fi else echo "Failed to set user MIB $i." >&2 exit 1 fi done # Make the WEP key xx:xx:xx:xx:xx format_key() { KEY="$1" # Don't touch a string key if [ x$(printf "%.2s" "$KEY") != "xs:" ]; then # Strip any delimiters (all non-digits) KEY=$(echo $KEY | tr -d -c '[:xdigit:]') # Inserts colon between pairs of hex digits while [ ${#KEY} -gt 2 ]; do NEWKEY=$(printf "%s%.2s:" "$NEWKEY" "$KEY") KEY=${KEY#??} done KEY=${NEWKEY}${KEY} fi echo $KEY } if [ "$IF_WIRELESS_ENC" = "on" ]; then # Set up WEP. result=`$WLANCTL $IFACE dot11req_mibget mibattribute=dot11PrivacyOptionImplemented` if [ $? = 0 ] ; then eval $result eval $mibattribute else echo "mibget failed." >&2 exit 1 fi if [ "$dot11PrivacyOptionImplemented" != "true" ]; then echo "Cannot enable privacy, dot11PrivacyOptionImplemented=$dot11PrivacyOptionImplemented." >&2 exit 1 fi $WLANCTL $IFACE lnxreq_hostwep decrypt=$IF_WLAN_NG_HOSTWEP encrypt=$IF_WLAN_NG_HOSTWEP >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKeyID=$IF_WLAN_NG_DEFAULT_KEY_ID \ >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11ExcludeUnencrypted=$IF_WLAN_NG_EXCLUDE_UNENCRYPTED \ >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11PrivacyInvoked=true >/dev/null if [ -e "$IF_WLAN_NG_KEYFILE" ]; then IF_WLAN_NG_PRIV_GENSTR=`cat $IF_WLAN_NG_KEYFILE` fi if [ ! -z "$IF_WLAN_NG_PRIV_GENSTR" ]; then if [ "$IF_WLAN_NG_PRIV_KEY128" = "false" ]; then keys=`$PRIV_GENERATOR "$IF_WLAN_NG_PRIV_GENSTR" 5` else keys=`$PRIV_GENERATOR "$IF_WLAN_NG_PRIV_GENSTR" 13` fi knum=0 for i in $keys; do $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKey$knum=$i \ >/dev/null knum=$(expr $knum + 1) done else $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKey0=`format_key $IF_WLAN_NG_KEY0` \ >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKey1=`format_key $IF_WLAN_NG_KEY1` \ >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKey2=`format_key $IF_WLAN_NG_KEY2` \ >/dev/null $WLANCTL $IFACE dot11req_mibset \ mibattribute=dot11WEPDefaultKey3=`format_key $IF_WLAN_NG_KEY3` \ >/dev/null fi fi # MAC startup if [ "$IF_WIRELESS_MODE" = "ad_hoc" ] || [ "$IF_WIRELESS_MODE" = "ad-hoc" ]; then startcmd="$WLANCTL $IFACE dot11req_start " startcmd="$startcmd ssid=$IF_WIRELESS_ESSID" startcmd="$startcmd bsstype=independent" startcmd="$startcmd beaconperiod=$IF_WLAN_NG_BCINT" startcmd="$startcmd dtimperiod=3" startcmd="$startcmd cfpollable=false" startcmd="$startcmd cfpollreq=false" startcmd="$startcmd cfpperiod=3" startcmd="$startcmd cfpmaxduration=100" startcmd="$startcmd probedelay=100" startcmd="$startcmd dschannel=$IF_WIRELESS_CHANNEL" j=1 for i in $IF_WLAN_NG_BASICRATES; do startcmd="$startcmd basicrate$j=$i" j=$(expr $j + 1) done j=1 for i in $IF_WLAN_NG_OPRATES; do startcmd="$startcmd operationalrate$j=$i" j=$(expr $j + 1) done results=`$startcmd` if [ $? = 0 ]; then eval $results if [ $resultcode != "success" ] ; then echo "IBSS not started, resultcode=$resultcode" >&2 exit 1 fi else echo FAILED: $startcmd >&2 exit 1 fi else # Infrastructure mode. results=`$WLANCTL $IFACE lnxreq_autojoin \ "ssid=$IF_WIRELESS_ESSID" \ authtype=$IF_WLAN_NG_AUTHTYPE | sed 's/\([^=]*\)=\(.*\)/\1="\2"/'` if [ $? = 0 ]; then eval $results if [ ${resultcode:-"failure"} != "success" ]; then echo 'error: Autojoin indicated failure!' >&2 exit 1 fi fi fi debian/prism2-usb-firmware-installer.links0000644000000000000000000000015411334110243016030 0ustar /lib/firmware/ru010803.hex /lib/firmware/prism2_ru.hex /lib/firmware/ru010803.fw /lib/firmware/prism2_ru.fw debian/linux-wlan-ng.postinst0000644000000000000000000000124610714056047013502 0ustar #!/bin/sh -e #DEBHELPER# RELOADED= if [ "$1" = configure ]; then # Reload pcmcia config files, as this package drops a new one in. if [ -x /etc/init.d/pcmciautils ]; then # this solves the reload error # but... it's necessary this reload?? if [ -z "$PCIC" ]; then PCIC=foo invoke-rc.d pcmciautils reload || RELOADED=fail else invoke-rc.d pcmciautils reload || RELOADED=fail fi elif [ -x /etc/init.d/pcmcia ]; then invoke-rc.d pcmcia reload || RELOADED=fail fi if [ "$RELOADED" = "fail" ]; then echo "Reloading of pcmcia configuration files failed." fi # Uncomment when debian completely drops #HOTPLUG# rmdir /etc/hotplug 2>/dev/null || true fi debian/rules0000755000000000000000000001420111717675651010264 0ustar #!/usr/bin/make -f include /usr/share/quilt/quilt.make # debug #export DH_VERBOSE=y #export TO_NULL=&>/dev/null #TO_NULL=&>/dev/null #MAKEFLAGS+=-s --no-print-directory # used by debian/config-for-lwng that is sourced by ./Configure # in this way no modules are built and no errors are reported if there are no # kenrel headers ENV=BUILD_MODULES=n BUILD_UTILS=y #export DH_OPTIONS # some shortcuts PWD=$(shell pwd) LWNTMP=.modules LWNS=linux-wlan-ng WARN_MSG="hex files found! please remove them from the source package" SRC_TBALL_MSG="building source tarball" INDEP_DEB_MSG="building deb for -source and doc" UTILS_DEB_MSG="building deb for utilities" UTILS_BUILD_MSG="building utilities" FIRMWARE_DEB_MSG="building deb firmware" NO_DEB_MSG="no debs id dir " #if not set it may be 'cc' and on hppa the cross compiler is named # blablabla-gcc, not blablabla-cc CC := gcc ###################### CONFIGURATION ################################### configure-stamp: @echo detected flavours for current arch are: $(flavours) # to make the configure script happy we have to provide a real # kernel source tree. $(ENV) CC="$(CC)" ./Configure -d debian/config-for-lwng $(TO_NULL) touch configure-stamp ###################### INDEP PART ###################################### # creates the files for the tarball build-stamp-indep: $(QUILT_STAMPFN) configure-stamp printf "\n\n\n***** $(SRC_TBALL_MSG) *****\n\n\n" mkdir -p $(LWNTMP)/modules/$(LWNS) cp -ra * $(LWNTMP)/modules/$(LWNS) make -C $(LWNTMP)/modules/$(LWNS) clean rm -rf $(LWNTMP)/modules/$(LWNS)/debian rm -rf $(LWNTMP)/modules/$(LWNS)/*-stamp mkdir -p $(LWNTMP)/modules/$(LWNS)/debian/ cp debian/changelog debian/compat debian/copyright debian/config-for-lwng \ $(LWNTMP)/modules/$(LWNS)/debian cp debian/*.modules.in \ $(LWNTMP)/modules/$(LWNS)/debian install -m755 debian/rules.modules \ $(LWNTMP)/modules/$(LWNS)/debian/rules # fail if firmware files found: THEY SHOULD NOT BE THERE!!!! if [ -n "`find -name '*.hex'`" ]; then \ printf "\n\n\n***** $(WARN_MSG) *****\n\n\n"; \ exit 1; \ fi # rm -f $(LWNTMP)/modules/$(LWNS)/src/prism2/*.hex touch build-stamp-indep # creates the tarball install-stamp-indep: build-stamp-indep cd $(LWNTMP);\ tar cjf ../$(LWNS).tar.bz2 modules # install the firmware stuff TGT=debian/tmp/usr/share/linux-wlan-ng-firmware/debian/;\ mkdir -p $$TGT;\ mkdir -p debian/tmp/usr/bin/;\ mkdir -p debian/tmp/usr/share/doc/linux-wlan-ng-firmware/;\ cp debian/firmware.install.in \ $$TGT/linux-wlan-ng-firmware-files.install;\ cp debian/firmware.dirs.in \ $$TGT/linux-wlan-ng-firmware-files.dirs;\ cp debian/changelog \ $$TGT;\ cp debian/control.firmware \ $$TGT/control;\ cp debian/rules.firmware \ $$TGT/rules;\ chmod +x $$TGT/rules; \ cp debian/config-for-lwng \ $$TGT;\ echo 4 > $$TGT/compat;\ V=`dpkg-parsechangelog | grep ^Version | cut -f 2 -d : | tr -d " "`;\ sed s/@@VERSION@@/$$V/ debian/linux-wlan-ng-build-firmware-deb >\ debian/tmp/usr/bin/linux-wlan-ng-build-firmware-deb; \ sed s/@@VERSION@@/$$V/ debian/linux-wlan-ng-build-firmware-deb.1 >\ debian/tmp/usr/bin/linux-wlan-ng-build-firmware-deb.1; chmod 0755 debian/tmp/usr/bin/linux-wlan-ng-build-firmware-deb cp debian/linux-wlan-ng-firmware.copyright \ debian/tmp/usr/share/doc/linux-wlan-ng-firmware/ touch install-stamp-indep binary-indep: DH_OPTIONS=-i binary-indep: install-stamp-indep printf "\n\n\n***** $(INDEP_DEB_MSG) *****\n\n\n" dh_install $(DH_OPTIONS) -Xrc.d dh_installchangelogs $(DH_OPTIONS) CHANGES dh_installdocs $(DH_OPTIONS) dh_installexamples $(DH_OPTIONS) dh_link $(DH_OPTIONS) dh_fixperms $(DH_OPTIONS) dh_installdeb $(DH_OPTIONS) dh_gencontrol $(DH_OPTIONS) dh_compress $(DH_OPTIONS) dh_md5sums $(DH_OPTIONS) dh_builddeb $(DH_OPTIONS) ####################### ARCH PART ###################################### # install stuff that is arch dependent install-stamp: DH_OPTIONS=-plinux-wlan-ng -pprism2-usb-firmware-installer install-stamp: build-stamp printf "\n\n\n***** $(UTILS_DEB_MSG) *****\n\n\n" chmod +x debian/linux-wlan-ng-post-down debian/linux-wlan-ng-pre-up \ debian/linux-wlan-ng-resume debian/linux-wlan-ng-suspend dh_testdir $(DH_OPTIONS) dh_testroot $(DH_OPTIONS) dh_prep $(DH_OPTIONS) dh_installdirs $(DH_OPTIONS) # install utils and docs mkdir -p debian/tmp/etc/hotplug/ $(MAKE) install $(TO_NULL) cp src/prism2/*pda debian/tmp/etc/wlan/ mkdir -p debian/tmp/usr/bin cp srec2fw debian/tmp/usr/bin/srec2fw touch install-stamp # build utils and modules (all arch stuff) build-stamp: $(QUILT_STAMPFN) configure-stamp dh_testdir printf "\n\n\n***** $(UTILS_BUILD_MSG) *****\n\n\n" $(MAKE) all $(TO_NULL) $(CC) -o srec2fw debian/srec2fw.c touch build-stamp # package all arch dependent stuff binary-arch: DH_OPTIONS=-plinux-wlan-ng -pprism2-usb-firmware-installer binary-arch: install-stamp dh_install $(DH_OPTIONS) dh_installchangelogs $(DH_OPTIONS) CHANGES dh_installdocs $(DH_OPTIONS) dh_installexamples $(DH_OPTIONS) dh_strip $(DH_OPTIONS) dh_link $(DH_OPTIONS) dh_fixperms $(DH_OPTIONS) dh_shlibdeps $(DH_OPTIONS) dh_installdeb $(DH_OPTIONS) chmod a-x debian/linux-wlan-ng/etc/pcmcia/wlan-ng.* chmod a-x debian/linux-wlan-ng/etc/wlan/wlancfg-DEFAULT chmod a+x debian/linux-wlan-ng/etc/wlan/shared dh_installman $(DH_OPTIONS) man/*.1 dh_installman -pprism2-usb-firmware-installer debian/srec2fw.1 dh_gencontrol $(DH_OPTIONS) dh_compress $(DH_OPTIONS) dh_md5sums $(DH_OPTIONS) dh_builddeb $(DH_OPTIONS) build: build-stamp ############################ CLEAN ################################ clean: $(QUILT_STAMPFN) configure-stamp clean1 unpatch clean1: dh_testdir dh_testroot $(MAKE) mrproper $(TO_NULL) $(MAKE) -C src/prism2/download clean $(TO_NULL) $(MAKE) -C debian/control-generator clean $(TO_NULL) dh_clean debian/postinst # stamps $(RM) configure-stamp build-stamp install-stamp \ build-stamp-indep install-stamp-indep \ install-firmware-stamp # temporary stuff rm -rf $(LWNTMP) $(LWNS).tar.bz2 # firmware rm -rf .firmware ########################## MAIN ################################## binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary debian/linux-wlan-ng-firmware.postinst0000644000000000000000000000013610356774355015324 0ustar #!/bin/sh -e #DEBHELPER# # this is a stupid lintian issue. . /usr/share/debconf/confmodule debian/source/0000755000000000000000000000000011717675737010513 5ustar debian/source/format0000644000000000000000000000001411717675651011714 0ustar 3.0 (quilt) debian/patches/0000755000000000000000000000000011717675737010642 5ustar debian/patches/CONF_etc_pcmcia_wlan-ng.patch0000644000000000000000000000133111717675651016173 0ustar Author: Victor Seva Description: Load network.opts to see if it has been modified. Debian-specific. --- linux-wlan-ng-0.2.9+dfsg.orig/etc/pcmcia/wlan-ng +++ linux-wlan-ng-0.2.9+dfsg/etc/pcmcia/wlan-ng @@ -81,6 +81,16 @@ # ACTION=$1 and DEVICE=$2 are assigned in pcmcia/shared if [ -f /etc/pcmcia/shared ] ; then . /etc/pcmcia/shared ; fi +# Load network.opts to see if it has been modified. Debian-specific. +. ./network.opts +if [ "$INFO" = "Debian network setup" ]; then + # The stuff at the bottom fired, so don't do anything; let the + # network script take over, and ifupdown run. + ./network $1 $2 + exit 0 +fi + + # XXXX we can do stuff with $SCHEME still..? case "$ACTION" in debian/patches/DOC_man_wland_1.patch0000644000000000000000000000062611717675651014527 0ustar Author: Victor Seva Description: fix manpage adding refs to debian specific doc --- linux-wlan-ng-0.2.9+dfsg.orig/man/wland.1 +++ linux-wlan-ng-0.2.9+dfsg/man/wland.1 @@ -19,5 +19,7 @@ .TP .B -u Do not daemonize; run in foreground. +.SH "SEE ALSO" +/usr/share/doc/linux-wlan-ng/README and README.Debian. .SH AUTHOR This minimal man page was written by Joey Hess. debian/patches/BUILD_Makefile.patch0000644000000000000000000000101511717675651014307 0ustar Author: Victor Seva Description: fix clean target --- linux-wlan-ng-0.2.9+dfsg.orig/Makefile +++ linux-wlan-ng-0.2.9+dfsg/Makefile @@ -81,9 +81,11 @@ mrproper: clean rm -f config.out rm -f tags.linux tags TAGS + make -C scripts/ clean clean: set -e; for d in $(DIRS); do $(MAKE) -C $$d clean ; done + make -C scripts/ clean rm -f core core.* *.o .*.o *.s *.a .depend tmp_make *~ tags for i in *_obj; do if [ -d $$i ]; then rm -fr $$i; fi; done rm -f config.mk config.new debian/patches/DOC_man_wlanctl-ng_1.patch0000644000000000000000000000067211717675651015471 0ustar Author: Victor Seva Description: fix manpage adding refs to debian specific doc --- linux-wlan-ng-0.2.9+dfsg.orig/man/wlanctl-ng.1 +++ linux-wlan-ng-0.2.9+dfsg/man/wlanctl-ng.1 @@ -23,5 +23,7 @@ .TP .B interface The name of a wireless network interface, such as wlan0. +.SH "SEE ALSO" +/usr/share/doc/linux-wlan-ng/README and README.Debian. .SH AUTHOR This minimal man page was written by Joey Hess. debian/patches/DOC_man_wlancfg_1.patch0000644000000000000000000000064211717675651015041 0ustar Author: Victor Seva Description: fix manpage adding refs to debian specific doc --- linux-wlan-ng-0.2.9+dfsg.orig/man/wlancfg.1 +++ linux-wlan-ng-0.2.9+dfsg/man/wlancfg.1 @@ -50,5 +50,7 @@ .TP .B version Display the compiled version of wlancfg. +.SH "SEE ALSO" +/usr/share/doc/linux-wlan-ng/README and README.Debian. .SH AUTHOR This minimal man page was written by Joey Hess. debian/patches/BUILD_man_Makefile.patch0000644000000000000000000000120211717675651015140 0ustar Author: Victor Seva Description: prism2dl binary is now on firmware-files package --- linux-wlan-ng-0.2.9+dfsg.orig/man/Makefile +++ linux-wlan-ng-0.2.9+dfsg/man/Makefile @@ -46,6 +46,8 @@ all: @echo "Nothing to do..." + # prism2dl man no + if [ -f prism2dl.1 ]; then mv prism2dl.1 prism2dl.1.no; fi install: mkdir -p $(TARGET_ROOT_ON_HOST)/usr/local/man/man1 @@ -54,4 +56,6 @@ clean: rm -f core core.* *.o .*.o *.s *.a .depend tmp_make *~ tags for i in *_obj; do if [ -d $$i ]; then rm -fr $$i; fi; done + # prism2dl man + if [ -f prism2dl.1.no ]; then mv prism2dl.1.no prism2dl.1; fi debian/patches/series0000644000000000000000000000116011717675651012050 0ustar BUILD_config_in.patch BUILD_Configure.patch BUILD_etc_pcmcia_Makefile.patch BUILD_Makefile.patch BUILD_man_Makefile.patch BUILD_src_Makefile.patch BUILD_src_prism2_Makefile.patch CONF_etc_linux-wlan-ng_rules.patch CONF_etc_Makefile.patch CONF_etc_pcmcia_wlan-ng_conf.patch CONF_etc_pcmcia_wlan-ng.patch CONF_etc_wlan_wlan_conf.patch CONF_etc_wlan_wlan-udev_sh.patch CONF_src_prism2_shared_prism2.patch DOC_man_nwepgen_1.patch DOC_man_wlancfg_1.patch DOC_man_wlanctl-ng_1.patch DOC_man_wland_1.patch DOC_etc_rc_wlan.patch SRC_src_prism2_driver_prism2_usb_c.patch SRC_build_on_2-6-26.patch SRC_fallback-to-prism2-device.patch debian/patches/BUILD_src_prism2_Makefile.patch0000644000000000000000000000053311717675651016456 0ustar Author: Enrico Tassi Description: do not run make -C download/ --- linux-wlan-ng-0.2.9+dfsg.orig/src/prism2/Makefile +++ linux-wlan-ng-0.2.9+dfsg/src/prism2/Makefile @@ -44,7 +44,7 @@ -include ../../config.mk -DIRS=driver ridlist download +DIRS=driver ridlist ifneq ($(wildcard *.addon),) DIRS+=`cat *.addon` debian/patches/BUILD_config_in.patch0000644000000000000000000000041111717675651014524 0ustar Author: Victor Seva Description: used to control the built of utils --- linux-wlan-ng-0.2.9+dfsg.orig/config.in +++ linux-wlan-ng-0.2.9+dfsg/config.in @@ -1,3 +1,4 @@ +UTILS=y WLAN_VERSION=0 WLAN_PATCHLEVEL=2 WLAN_SUBLEVEL=9 debian/patches/SRC_build_on_2-6-26.patch0000644000000000000000000000106311717675651014771 0ustar Author: > Description: Patch from Pavel Roskin (upstream ML) to fix build on 2.6.26 This patch was committed upstream in revision r1867 --- linux-wlan-ng-0.2.9+dfsg.orig/src/p80211/p80211netdev.c +++ linux-wlan-ng-0.2.9+dfsg/src/p80211/p80211netdev.c @@ -947,7 +947,9 @@ #endif #endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24) ) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) ) + dev_net_set(dev, &init_net); +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24) ) dev->nd_net = &init_net; #endif debian/patches/BUILD_etc_pcmcia_Makefile.patch0000644000000000000000000000112311717675651016456 0ustar Author: Victor Seva Description: install pcmcia stuff even if the module is not built --- linux-wlan-ng-0.2.9+dfsg.orig/etc/pcmcia/Makefile +++ linux-wlan-ng-0.2.9+dfsg/etc/pcmcia/Makefile @@ -50,7 +50,9 @@ clean: @echo "Nothing to do" -ifeq ($(PRISM2_PCMCIA), y) +# Debian hack: install pcmcia stuff even if the module is not built. +#ifeq ($(PRISM2_PCMCIA), y) +TARGET_PCMCIA_DIR=$(TARGET_ROOT_ON_HOST)/etc/pcmcia install: mkdir -p $(TARGET_PCMCIA_DIR) ; \ @@ -72,10 +74,3 @@ fi ; \ fi -else - -install: - @echo "Nothing to do" - -endif - debian/patches/CONF_etc_wlan_wlan-udev_sh.patch0000644000000000000000000000220111717675651016726 0ustar Author: Description: only enable the card, do not try to set it up --- linux-wlan-ng-0.2.9+dfsg.orig/etc/wlan/wlan-udev.sh +++ linux-wlan-ng-0.2.9+dfsg/etc/wlan/wlan-udev.sh @@ -8,6 +8,9 @@ # 01-01-2007 (rsk) add check for wlan_wext_write # 31-01-2007 (rsk) get the check right this time :) +# ifupdown udev rules or network-manager take care of configuration, +# only enable the card here (which also loads RAM firmware) + WEXT_PARAM=/sys/module/p80211/parameters/wlan_wext_write DEVICE=$1 @@ -19,27 +22,15 @@ WLAN_WEXT=`cat $WEXT_PARAM` fi +wlan_enable $DEVICE + if [ $WLAN_WEXT = 1 ]; then - wlan_bring_it_up $DEVICE TRUE # set encrypt on card not host result=`$WLANCTL $DEVICE lnxreq_hostwep decrypt="false" encrypt="false"` if [ $? != 0 ]; then echo "Cannot enable wep $result" exit 1 fi -else - echo calling wlan_bring_it_up - wlan_bring_it_up $DEVICE - - if [ $? = 0 ] ; then - echo $DEVICE start OK - #allow time during boot to let other things start - #sleep 5 - /sbin/ifup $DEVICE - else - echo $DEVICE failed to come up! >&2 - exit 1 - fi fi exit 0 debian/patches/BUILD_src_Makefile.patch0000644000000000000000000000126511717675651015165 0ustar Author: Victor Seva Description: Debian hack in order to build utils or modules --- linux-wlan-ng-0.2.9+dfsg.orig/src/Makefile +++ linux-wlan-ng-0.2.9+dfsg/src/Makefile @@ -44,7 +44,18 @@ -include ../config.mk -DIRS=mkmeta shared wlanctl nwepgen wlancfg p80211 prism2 +# If we are building the utils we don't want any modules +# and when we are not building the utils... we want the modules +MODULES= +WLAN_UTILS= +ifeq ($(UTILS), y) +WLAN_UTILS=shared wlanctl nwepgen wlancfg +else +MODULES+=p80211 prism2 +endif + +DIRS=mkmeta $(MODULES) $(WLAN_UTILS) +ALL_DIRS=mkmeta $(MODULES) $(WLAN_UTILS) ifneq ($(wildcard *.addon),) DIRS+=`cat *.addon` debian/patches/CONF_etc_pcmcia_wlan-ng_conf.patch0000644000000000000000000000560211717675651017205 0ustar Author: Victor Seva Description: Comment out some cards better handled by other kernel module --- linux-wlan-ng-0.2.9+dfsg.orig/etc/pcmcia/wlan-ng.conf +++ linux-wlan-ng-0.2.9+dfsg/etc/pcmcia/wlan-ng.conf @@ -2,9 +2,11 @@ device "prism2_cs" class "wlan-ng" module "prism2_cs" -card "Intersil PRISM2 Reference Design 11Mb/s 802.11b WLAN Card" - version "INTERSIL", "HFA384x/IEEE" - bind "prism2_cs" +# This is commented out as the regular orinoco drivers can handle this +# card. +#card "Intersil PRISM2 Reference Design 11Mb/s 802.11b WLAN Card" +# version "INTERSIL", "HFA384x/IEEE" +# bind "prism2_cs" card "Compaq WL100/200 11Mb/s 802.11b WLAN Card" manfid 0x0138, 0x0002 @@ -25,10 +27,11 @@ card "ZoomAir 4100 11Mb/s 802.11b WLAN Card" version "ZoomAir 11Mbps High", "Rate wireless Networking" bind "prism2_cs" - -card "Linksys WPC11 11Mbps 802.11b WLAN Card" - version "Instant Wireless ", " Network PC CARD", "Version 01.02" - bind "prism2_cs" +# Disabled in Debian package because the normal pcmcia drivers handle this +# one. +#card "Linksys WPC11 11Mbps 802.11b WLAN Card" +# version "Instant Wireless ", " Network PC CARD", "Version 01.02" +# bind "prism2_cs" card "Addtron AWP-100 11Mbps 802.11b WLAN Card" version "Addtron", "AWP-100 Wireless PCMCIA", "Version 01.02" @@ -116,9 +119,11 @@ manfid 0x1668, 0x0101 bind "prism2_cs" -card "3Com AirConnect 3CRWE737A" - version "3Com", "3CRWE737A AirConnect Wireless LAN PC Card" - bind "prism2_cs" +# This one is disabled as well due to conflict with the normal pcmcia +# drivers. +#card "3Com AirConnect 3CRWE737A" +# version "3Com", "3CRWE737A AirConnect Wireless LAN PC Card" +# bind "prism2_cs" card "3Com AirConnect 3CRWE777A" version "3Com", "3CRWE777A AirConnect Wireless LAN PCI Card" @@ -145,9 +150,11 @@ manfid 0x028a, 0x0673 bind "prism2_cs" -card "NETGEAR MA401RA 11Mbps 802.11 WLAN Card" - version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA" - bind "prism2_cs" +# This is commented out as the regular orinoco drivers can handle this +# card. +#card "NETGEAR MA401RA 11Mbps 802.11 WLAN Card" +# version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA" +# bind "prism2_cs" card "D-Link DCF-660W 11Mbps 802.11b WLAN Card" manfid 0xd601, 0x0005 @@ -174,9 +181,11 @@ # version "D-Link", "DWL-650 Wireless PC Card RevP", "ISL37101P-10", "A3" bind "prism2_cs" -card "I-Gate 11M PC Card" - version "INTERSIL", "I-GATE 11M PC Card / PC Card plus", "Version 01.02" - bind "prism2_cs" +# This one is commented out since it matches the common lucent/orinoco +# card. +#card "I-Gate 11M PC Card" +# version "INTERSIL", "I-GATE 11M PC Card / PC Card plus", "Version 01.02" +# bind "prism2_cs" card "benQ AWL100 802.11b WLAN Card" version "BENQ", "AWL100 PCMCIA ADAPTER", "ISL37300P", "Eval-RevA" debian/patches/CONF_src_prism2_shared_prism2.patch0000644000000000000000000000160511717675651017372 0ustar Author: Description: check if there are no firmware files installed and complain --- linux-wlan-ng-0.2.9+dfsg.orig/src/prism2/shared.prism2 +++ linux-wlan-ng-0.2.9+dfsg/src/prism2/shared.prism2 @@ -42,6 +42,8 @@ PRISM2DL=/sbin/prism2dl +HEX_FILES="prism2_af.hex prism2_ak.hex prism2_pm.hex prism2_r1.hex prism2_rf.hex prism2_ru.hex" + prism2_fwload () { # $1 == wlandev @@ -51,6 +53,18 @@ $ECHO $PRISM2DL not found, aborting firmware download. return 0 fi + no_firmware_at_all=1 + for hex in $HEX_FILES; do + if [ -e $FIRMWARE_DIR/$hex ]; then + no_firmware_at_all=0 + fi + done + if [ $no_firmware_at_all = 1 ]; then + $ECHO No hex file found, aborting firmware download. + $ECHO If your nic needs a firmware please install the + $ECHO linux-wlan-ng-firmware package. + return 0 + fi # figure out hwtype initnichw="0007" # pci, 1x16 SRAM debian/patches/SRC_fallback-to-prism2-device.patch0000644000000000000000000000247111717675651017217 0ustar Author: > Description: Workaround for missing kernel interface. Fall back to the device name "prism2" since these scripts are only used for prism2 devices anyway. (LP: #478874) --- linux-wlan-ng-0.2.9+dfsg.orig/etc/wlan/shared +++ linux-wlan-ng-0.2.9+dfsg/etc/wlan/shared @@ -119,7 +119,12 @@ { # $1 == wlandev # Writes the given device's name to stdout - grep 'nsd name' /proc/net/p80211/$1/wlandev | sed -e 's/.*: \(.*\)_.*/\1/' + if [ -e "/proc/net/p80211/$1/wlandev" ]; then + grep 'nsd name' "/proc/net/p80211/$1/wlandev" | sed -e 's/.*: \(.*\)_.*/\1/' + else + # this will only be called for prism2 devices anyway + echo 'prism2' + fi } wlan_enable () @@ -272,7 +277,7 @@ # $1 == wlandev if is_true "$WLAN_SCAN" ; then - cat /proc/net/p80211/$1/wlandev | grep 'scan' > /dev/null + grep -qs 'scan' "/proc/net/p80211/$1/wlandev" if [ $? = 0 ] ; then return 0 fi @@ -698,7 +703,7 @@ wlan_join () { # $1 == wlandev - grep 'autojoin' /proc/net/p80211/$1/wlandev > /dev/null + grep -qs 'autojoin' "/proc/net/p80211/$1/wlandev" if [ $? = 0 ]; then wlan_infra $1 else @@ -728,6 +733,7 @@ source_procfile () { # $1 == procfile to source + [ -e "$1" ] || return 1 local fname=`tmpname wlan_procfile` cat "$1" > $fname . $fname debian/patches/BUILD_Configure.patch0000644000000000000000000000577011717675651014527 0ustar Author: Victor Seva Description: Add option to disable building the lwng command line utility --- linux-wlan-ng-0.2.9+dfsg.orig/Configure +++ linux-wlan-ng-0.2.9+dfsg/Configure @@ -200,6 +200,11 @@ $ECHO "" #======================================================================= +# Should we build for linux-wlan tools + +ask_bool "Build linux-wlan-ng tools?" UTILS + +#======================================================================= # Should we build for PCMCIA Card Services? ask_bool "Build Prism2.x PCMCIA Card Services (_cs) driver?" PRISM2_PCMCIA @@ -355,6 +360,12 @@ dump_str "KERNEL_MODFLAGS=$KERNEL_MODFLAGS" #======================================================================= + +if [ $UTILS = "y" ] ; then + write_bool UTILS +fi + +#======================================================================= # If compiling for pcmcia-cs, find the PCMCIA source tree if [ $PRISM2_PCMCIA = "y" ] ; then @@ -382,16 +393,20 @@ $ECHO "pcmcia-cs source tree $PCMCIA_SRC is incomplete or missing!" $ECHO "The wlan driver for pcmcia cannot be built without " $ECHO "the pcmcia-cs source tree present and configured." - fail - fi - if [ ! -f $PCMCIA_SRC/include/pcmcia/config.h ] ; then + PRISM2_PCMCIA=n + write_str PRISM2_PCMCIA + elif [ ! -f $PCMCIA_SRC/include/pcmcia/config.h ] ; then $ECHO "The pcmcia-cs source tree does not appear to be configured." $ECHO "The wlan driver for pcmcia cannot be built without "\ $ECHO "the pcmcia-cs source tree present and configured." - fail + PRISM2_PCMCIA=n + write_str PRISM2_PCMCIA fi $ECHO "" + # Only if we're really building pcmcia.. + if [ $PRISM2_PCMCIA = "y" ] ; then + # Now we need to generate the module options flags. # It's only relevant if modversions is turned on. grep CONFIG_MODVERSIONS=y < $PCMCIA_SRC/config.mk > /dev/null @@ -407,6 +422,7 @@ PCMCIA_MODFLAGS="$KERNEL_MODFLAGS" fi dump_str "PCMCIA_MODFLAGS=$PCMCIA_MODFLAGS" + fi fi fi @@ -485,9 +501,15 @@ $ECHO "" +# Debian mod: Allow CC to be specified to set the compiler. +if [ -z "$CC" ]; then + CC=gcc +fi + + dump_str 'HOST_AS=$(HOST_COMPILE)as' dump_str 'HOST_LD=$(HOST_COMPILE)ld' -dump_str 'HOST_CC=$(HOST_COMPILE)gcc' +dump_str 'HOST_CC=$(HOST_COMPILE)'$CC dump_str 'HOST_CPP=$(HOST_CC) -E' dump_str 'HOST_AR=$(HOST_COMPILE)ar' dump_str 'HOST_NM=$(HOST_COMPILE)nm' @@ -509,7 +531,7 @@ if [ "_$CROSS_COMPILE" = "_" ] ; then dump_str 'AS=$(HOST_COMPILE)as' dump_str 'LD=$(HOST_COMPILE)ld' -dump_str 'CC=$(HOST_COMPILE)gcc' +dump_str 'CC=$(HOST_COMPILE)'$CC dump_str 'CPP=$(HOST_CC) -E' dump_str 'AR=$(HOST_COMPILE)ar' dump_str 'NM=$(HOST_COMPILE)nm' @@ -521,8 +543,8 @@ else dump_str "AS=$CROSS_COMPILE"as dump_str "LD=$CROSS_COMPILE"ld -dump_str "CC=$CROSS_COMPILE"gcc -CC="$CROSS_COMPILE"gcc +dump_str "CC=$CROSS_COMPILE"$CC +CC="$CROSS_COMPILE"$CC dump_str "CPP=$CC -E" dump_str "AR=$CROSS_COMPILE"ar dump_str "NM=$CROSS_COMPILE"nm debian/patches/SRC_src_prism2_driver_prism2_usb_c.patch0000644000000000000000000000125311717675651020473 0ustar Author: Description: Closes #338112 incompatible with 2.4.27 kernels: unresolved symbol "msleep" in prism2_usb.o. msleep chaged to mdelay msleep is on kernel > 2.4.27 --- linux-wlan-ng-0.2.9+dfsg.orig/src/prism2/driver/prism2_usb.c +++ linux-wlan-ng-0.2.9+dfsg/src/prism2/driver/prism2_usb.c @@ -288,8 +288,11 @@ * is "wake up", so that's easy. * (I'd like a better way to do this, really.) */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,28)) + mdelay(100); +#else msleep(100); - +#endif /* Now delete the CTLXs, because no-one else can now. */ list_for_each_safe(entry, temp, &cleanlist) { hfa384x_usbctlx_t *ctlx; debian/patches/CONF_etc_wlan_wlan_conf.patch0000644000000000000000000000043011717675651016302 0ustar Author: Victor Seva Description: removed sheebang --- linux-wlan-ng-0.2.9+dfsg.orig/etc/wlan/wlan.conf +++ linux-wlan-ng-0.2.9+dfsg/etc/wlan/wlan.conf @@ -1,4 +1,3 @@ -#! /bin/sh # Wireless LAN adapter configuration # # etc/wlan/wlan.conf debian/patches/CONF_etc_linux-wlan-ng_rules.patch0000644000000000000000000000107611717675651017234 0ustar Author: Victor Seva Description: udev rule --- /dev/null +++ linux-wlan-ng-0.2.9+dfsg/etc/linux-wlan-ng.rules @@ -0,0 +1,4 @@ +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="prism2_usb", RUN+="/etc/wlan/wlan-udev.sh $env{INTERFACE}" +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="prism2_pci", RUN+="/etc/wlan/wlan-udev.sh $env{INTERFACE}" +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="prism2_plx", RUN+="/etc/wlan/wlan-udev.sh $env{INTERFACE}" +SUBSYSTEM=="net", ACTION=="add", DRIVERS=="prism2_cs", RUN+="/etc/wlan/wlan-udev.sh $env{INTERFACE}" debian/patches/CONF_etc_Makefile.patch0000644000000000000000000000076211717675651015040 0ustar Author: Victor Seva Description: Install the udev stuff. --- linux-wlan-ng-0.2.9+dfsg.orig/etc/Makefile +++ linux-wlan-ng-0.2.9+dfsg/etc/Makefile @@ -65,3 +65,5 @@ rm -f $(TARGET_ROOT_ON_HOST)/etc/hotplug/pci/prism2_pci; \ rm -f $(TARGET_ROOT_ON_HOST)/etc/hotplug/pci/prism2_plx; \ fi + mkdir -p $(TARGET_ROOT_ON_HOST)/lib/udev/rules.d/ + cp linux-wlan-ng.rules $(TARGET_ROOT_ON_HOST)/lib/udev/rules.d/84-linux-wlan-ng.rules debian/patches/DOC_etc_rc_wlan.patch0000644000000000000000000000057311717675651014630 0ustar Author: Enrico Tassi Description: typo --- linux-wlan-ng-0.2.9+dfsg.orig/etc/rc.wlan +++ linux-wlan-ng-0.2.9+dfsg/etc/rc.wlan @@ -31,7 +31,7 @@ # This will implicitly fire off wland via hotplug. echo -n "Starting WLAN Devices: " if ! $MODPROBE p80211; then - echo "Failed to load p80211.o." + echo "Failed to load p80211.ko." exit 1 fi debian/patches/DOC_man_nwepgen_1.patch0000644000000000000000000000077211717675651015067 0ustar Author: Victor Seva Description: fix manpage adding refs to debian specific doc --- linux-wlan-ng-0.2.9+dfsg.orig/man/nwepgen.1 +++ linux-wlan-ng-0.2.9+dfsg/man/nwepgen.1 @@ -9,5 +9,7 @@ typically not run it by hand, but it is called by the linux-wlan-ng initialization scripts if you specify a WEP key string in the config file. .P +.SH "SEE ALSO" +/usr/share/doc/linux-wlan-ng/README and README.Debian. .SH AUTHOR This minimal man page was written by Joey Hess. debian/linux-wlan-ng-build-firmware-deb.10000644000000000000000000000144410714056047015416 0ustar .TH linux-wlan-ng-build-firmware-deb 1 .SH NAME linux-wlan-ng-build-firmware-deb \- Builds a deb package with firmware for linux-wlan-ng supported devices .SH SYNOPSIS .B linux-wlan-ng-build-firmware-deb .SH DESCRIPTION This script builds in the current directory a deb package named .I linux-wlan-ng-firmware-files_@@VERSION@@_all.deb Since the firmware files used by the linux-wlan-ng driver are not freely redistributable they can't be included in Debian, but the upstream authors include them in their pristine tarball. This script will download it and use the .I /usr/share/linux-wlan-ng-firmware/debian stuff to build a package containing these files. .SH AUTHOR This minimal man page was written by Enrico Tassi for Debian, but may be used by others. debian/prism2-usb-firmware-installer.dirs0000644000000000000000000000002711334110701015647 0ustar /usr/bin /lib/firmware debian/README.source0000644000000000000000000000035111332640420011337 0ustar This package uses the dpatch system to save and apply patches to the upstream source code of the software that is packaged. For details about how to use dpatch read /usr/share/doc/dpatch/README.source.gz from the dpatch package. debian/copyright0000644000000000000000000010321611332644354011131 0ustar This is a Debian prepackaged version of linux-wlan-ng. This package was put together originally by Joey Hess , using sources from: http://www.linux-wlan.org/ Files: * License: MPL Copyright: 1999 AbsoluteValue Systems, Inc The following copyright applies to this package: * COPYING * * Copyright (C) 1999 AbsoluteValue Systems, Inc. All Rights Reserved. * -------------------------------------------------------------------- * * linux-wlan * * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * Alternatively, the contents of this file may be used under the * terms of the GNU Public License version 2 (the "GPL"), in which * case the provisions of the GPL are applicable instead of the * above. If you wish to allow the use of your version of this file * only under the terms of the GPL and not to allow others to use * your version of this file under the MPL, indicate your decision * by deleting the provisions above and replace them with the notice * and other provisions required by the GPL. If you do not delete * the provisions above, a recipient may use your version of this * file under either the MPL or the GPL. * * -------------------------------------------------------------------- * * Inquiries regarding the linux-wlan Open Source project can be * made directly to: * * AbsoluteValue Systems Inc. * info@linux-wlan.com * http://www.linux-wlan.com * * -------------------------------------------------------------------- * * Portions of the development of this software were funded by * Intersil Corporation as part of PRISM(R) chipset product development. * * -------------------------------------------------------------------- Unless otherwise indicated, this code is distributed under version 1.1 of the Mozilla Public License ("MPL"), included in the LICENSE file. Where this software is combined with software released under the terms of the GNU Public License ("GPL") and the terms of the GPL would require the combined work to also be released under the terms of the GPL, the terms and conditions of the MPL will apply in addition to those of the GPL with the exception of any terms or conditions of the MPL that conflict with, or are expressly prohibited by, the GPL. -- AbsoluteValue Systems, Inc. Note: This file is derived from a copyrighted work of David Hinds. On debian systems, the complete text of the GPL can be found in /usr/share/common-licenses/GPL-2. The complete text of the MPL license follows: MOZILLA PUBLIC LICENSE Version 1.1 ---------------- 1. Definitions. 1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. 1.1. ''Contributor'' means each entity that creates or contributes to the creation of Modifications. 1.2. ''Contributor Version'' means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. 1.3. ''Covered Code'' means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. 1.4. ''Electronic Distribution Mechanism'' means a mechanism generally accepted in the software development community for the electronic transfer of data. 1.5. ''Executable'' means Covered Code in any form other than Source Code. 1.6. ''Initial Developer'' means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. 1.7. ''Larger Work'' means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. 1.8. ''License'' means this document. 1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. 1.9. ''Modifications'' means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. B. Any new file that contains any part of the Original Code or previous Modifications. 1.10. ''Original Code'' means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. 1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. 1.11. ''Source Code'' means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. 1.12. "You'' (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You'' includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control'' means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. 2. Source Code License. 2.1. The Initial Developer Grant. The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and (b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices. 2.2. Contributor Grant. Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and (b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination). (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. (d) Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor. 3. Distribution Obligations. 3.1. Application of License. The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5. 3.2. Availability of Source Code. Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. 3.3. Description of Modifications. You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code. 3.4. Intellectual Property Matters (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. (b) Contributor APIs. If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. (c) Representations. Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License. 3.5. Required Notices. You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. 3.6. Distribution of Executable Versions. You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. 3.7. Larger Works. You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code. 4. Inability to Comply Due to Statute or Regulation. If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. 5. Application of this License. This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. 6. Versions of the License. 6.1. New Versions. Netscape Communications Corporation (''Netscape'') may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. 6.2. Effect of New Versions. Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License. 6.3. Derivative Works. If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases ''Mozilla'', ''MOZILLAPL'', ''MOZPL'', ''Netscape'', "MPL", ''NPL'' or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.) 7. DISCLAIMER OF WARRANTY. COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. 8. TERMINATION. 8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. 8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that: (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above. (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. 8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. 8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination. 9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. 10. U.S. GOVERNMENT END USERS. The Covered Code is a ''commercial item,'' as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of ''commercial computer software'' and ''commercial computer software documentation,'' as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein. 11. MISCELLANEOUS. This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. 12. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability. 13. MULTIPLE-LICENSED CODE. Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the NPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A. EXHIBIT A -Mozilla Public License. ``The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is ______________________________________. The Initial Developer of the Original Code is ________________________. Portions created by ______________________ are Copyright (C) ______ _______________________. All Rights Reserved. Contributor(s): ______________________________________. Alternatively, the contents of this file may be used under the terms of the _____ license (the "[___] License"), in which case the provisions of [______] License are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the [____] License and not to allow others to use your version of this file under the MPL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the [___] License. If you do not delete the provisions above, a recipient may use your version of this file under either the MPL or the [___] License." [NOTE: The text of this Exhibit A may differ slightly from the text of the notices in the Source Code files of the Original Code. You should use the text of this Exhibit A rather than the text found in the Original Code Source Code for Your Modifications.] ----------------------------------------------------------------------- AMENDMENTS The Netscape Public License Version 1.1 ("NPL") consists of the Mozilla Public License Version 1.1 with the following Amendments, including Exhibit A-Netscape Public License. Files identified with "Exhibit A-Netscape Public License" are governed by the Netscape Public License Version 1.1. Additional Terms applicable to the Netscape Public License. I. Effect. These additional terms described in this Netscape Public License -- Amendments shall apply to the Mozilla Communicator client code and to all Covered Code under this License. II. ''Netscape's Branded Code'' means Covered Code that Netscape distributes and/or permits others to distribute under one or more trademark(s) which are controlled by Netscape but which are not licensed for use under this License. III. Netscape and logo. This License does not grant any rights to use the trademarks "Netscape'', the "Netscape N and horizon'' logo or the "Netscape lighthouse" logo, "Netcenter", "Gecko", "Java" or "JavaScript", "Smart Browsing" even if such marks are included in the Original Code or Modifications. IV. Inability to Comply Due to Contractual Obligation. Prior to licensing the Original Code under this License, Netscape has licensed third party code for use in Netscape's Branded Code. To the extent that Netscape is limited contractually from making such third party code available under this License, Netscape may choose to reintegrate such code into Covered Code without being required to distribute such code in Source Code form, even if such code would otherwise be considered ''Modifications'' under this License. V. Use of Modifications and Covered Code by Initial Developer. V.1. In General. The obligations of Section 3 apply to Netscape, except to the extent specified in this Amendment, Section V.2 and V.3. V.2. Other Products. Netscape may include Covered Code in products other than the Netscape's Branded Code which are released by Netscape during the two (2) years following the release date of the Original Code, without such additional products becoming subject to the terms of this License, and may license such additional products on different terms from those contained in this License. V.3. Alternative Licensing. Netscape may license the Source Code of Netscape's Branded Code, including Modifications incorporated therein, without such Netscape Branded Code becoming subject to the terms of this License, and may license such Netscape Branded Code on different terms from those contained in this License. VI. Litigation. Notwithstanding the limitations of Section 11 above, the provisions regarding litigation in Section 11(a), (b) and (c) of the License shall apply to all disputes relating to this License. EXHIBIT A-Netscape Public License. ''The contents of this file are subject to the Netscape Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/NPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is Mozilla Communicator client code, released March 31, 1998. The Initial Developer of the Original Code is Netscape Communications Corporation. Portions created by Netscape are Copyright (C) 1998-1999 Netscape Communications Corporation. All Rights Reserved. Contributor(s): ______________________________________. Alternatively, the contents of this file may be used under the terms of the _____ license (the "[___] License"), in which case the provisions of [______] License are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the [____] License and not to allow others to use your version of this file under the NPL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the [___] License. If you do not delete the provisions above, a recipient may use your version of this file under either the NPL or the [___] License." Files: debian/srec2fw.c Copyright: 2009 Karl Renton Copyright: 2008 David Woodhouse Copyright: 2005 Jan Harkes License: GPL-2 * Copyright © 2009 Karl Relton * Copyright © 2008 David Woodhouse * Copyright © 2005 Jan Harkes * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. debian/linux-wlan-ng-suspend0000644000000000000000000000107410517166202013272 0ustar #!/bin/sh # This script is run on suspend to force a down of any linux-wlan-ng # iterfaces since the driver does not support suspend. MODULES='prism2_pci prism2_usb prism2_cs prism2_plx' rm -f /var/run/linux-wlan-ng.modules for m in $MODULES; do if grep -wq $m /proc/modules; then echo $m >> /var/run/linux-wlan-ng.modules fi done IFACES=$(ifconfig | grep -B 1 ^wlan | cut -d ' ' -f 1) for iface in $IFACES; do ifdown $iface || ifconfig $iface down done echo "$IFACES" > /var/run/linux-wlan-ng.ifaces for m in $MODULES; do rmmod $m 2>/dev/null done debian/linux-wlan-ng.examples0000644000000000000000000000003310356774355013441 0ustar etc/rc.wlan scripts/pda.pl debian/linux-wlan-ng.install0000644000000000000000000000047211332640420013254 0ustar debian/tmp/etc/wlan debian/tmp/lib/udev debian/tmp/etc/pcmcia debian/tmp/sbin debian/linux-wlan-ng-pre-up etc/network/if-pre-up.d debian/linux-wlan-ng-post-down etc/network/if-post-down.d debian/linux-wlan-ng-resume etc/apm/resume.d debian/linux-wlan-ng-suspend etc/apm/suspend.d src/prism2/shared.prism2 etc/wlan debian/control.firmware0000644000000000000000000000177411334107370012414 0ustar Source: linux-wlan-ng Section: non-free/admin Priority: extra Maintainer: Victor Seva Uploaders: Enrico Tassi Build-Depends: debhelper (>= 4.1.10), dpkg-dev (>= 1.9.0) Standards-Version: 3.7.2 Package: linux-wlan-ng-firmware-files Architecture: any Depends: linux-wlan-ng (>= ${Source-Version}) Recommends: linux-wlan-ng-doc Description: firmware files used by the linux-wlan-ng driver linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package contains the non freely redistributable firmware files used by the linux-wlan-ng driver for some adapters. debian/config-for-lwng0000644000000000000000000000076110425126340012110 0ustar # This script is sourced by the Configure script, when running in # noninteractive mode. if [ "$BUILD_MODULES" = "n" -o "$BUILD_UTILS" = "n" ] ; then # Just building the utilities. Kernel source may not be present; # don't fail. fail () { echo "Not failing since we are building only the utilities" } fi LINUX_SRC=$KSRC PCMCIA_SRC=$PSRC PRISM2_PCMCIA=n PRISM2_PLX=$BUILD_MODULES PRISM2_PCI=$BUILD_MODULES PRISM2_USB=$BUILD_MODULES UTILS=$BUILD_UTILS TARGET_ROOT_ON_HOST=$(pwd)/debian/tmp/ debian/linux-wlan-ng-firmware.dirs0000644000000000000000000000006410356774355014402 0ustar /usr/bin/ /usr/share/linux-wlan-ng-firmware/debian/ debian/linux-wlan-ng-firmware.install0000644000000000000000000000033610425133262015070 0ustar debian/tmp/usr/bin/linux-wlan-ng-build-firmware-deb /usr/bin/ debian/tmp/usr/bin/linux-wlan-ng-build-firmware-deb.1 /usr/share/man/man1/ debian/tmp/usr/share/linux-wlan-ng-firmware/debian /usr/share/linux-wlan-ng-firmware debian/control.modules.in0000644000000000000000000000103310754312112012636 0ustar Source: linux-wlan-ng Section: admin Priority: extra Maintainer: Victor Seva Uploaders: Enrico Tassi Build-Depends: debhelper (>= 5.0.37), dpkg-dev (>= 1.9.0) Standards-Version: 3.7.2 Package: linux-wlan-ng-modules-${kvers} Provides: linux-wlan-ng-${lwnversmajor}-modules Recommends: linux-wlan-ng (>= ${lwnvers}) Architecture: ${arch} Description: drivers for wireless prism2 cards This package contains the set of loadable kernel modules for linux-wlan-ng. debian/changelog0000644000000000000000000010562711717675725011075 0ustar linux-wlan-ng (0.2.9+dfsg-5) unstable; urgency=low [ Tormod Volden ] * debian/control: move packages from admin to kernel section [ Enrico Tassi ] * Remove linux-wlan-ng-source package (Closes: #651792) * Move to quilt and source format 3.0 (abandon dpatch) -- Enrico Tassi Sat, 18 Feb 2012 11:21:39 +0100 linux-wlan-ng (0.2.9+dfsg-4) unstable; urgency=low [ Tormod Volden ] * Add versioned dependency on udev for the udev rules move * Be more explicit in the package descriptions * Drop Recommends on the obsoleted -modules package * Download firmware directly to /lib/firmware and not to /var/lib since /var might not be mounted when the driver initializes * debian/patches/SRC_fallback-to-prism2-device.dpatch: fallback to "prism2" name if /proc interface is missing, helpful for making userspace firmware loading work on some kernels. * Add myself to Uploaders [ Enrico Tassi ] * The active maintainer is Tormod, let's put him in this field and move myself an Victor to uploaders -- Enrico Tassi Mon, 15 Feb 2010 19:38:45 +0100 linux-wlan-ng (0.2.9+dfsg-3) unstable; urgency=low [ Tormod Volden ] * New prism2-usb-firmware-installer binary package for use with kernels with the staging prism2_usb driver using kernel firmware loading. * Install udev rules in /lib/udev and remove old one from /etc/udev * Replace dh_clean -k by dh_prep * Bump Standards-Version to 3.8.4 * Add debian/README.source referring to dpatch * Merge debian/NEWS into changelog * debian/copyright: "GPL" means "GPL-2" * debian/linux-wlan-ng-firmware.copyright: Make machine-readable * add srec2fw.c and mention it in the copyright file * wrote man page for srec2fw [ Enrico Tassi ] * Added ${shlibs:Depends} to prism2-usb-firmware-installer * Added ${misc:Depends} to all packages since we are using debhelper * debian/compat set to 7 * Build-depend on debhelper >= 7 -- Enrico Tassi Thu, 04 Feb 2010 21:08:01 +0100 linux-wlan-ng (0.2.9+dfsg-2) unstable; urgency=low [ Tormod Volden ] * SRC_build_on_2-6-26.dpatch: Cherry-picked upstream r1867 to fix build on 2.6.26 (Closes: #495338) -- Enrico Tassi Sun, 17 Aug 2008 12:27:38 +0200 linux-wlan-ng (0.2.9+dfsg-1) unstable; urgency=low [ Chris Lamb ] * Fix bashism in debian/rules (Closes: #484403) [ Enrico Tassi ] * New upstream release * Watch file fixed to strip +dfsd tag from debian version before comparing it with the upstream version * Bumped standards-version to 3.8.0, no changes needed -- Enrico Tassi Sat, 21 Jun 2008 11:23:42 +0200 linux-wlan-ng (0.2.8+svn1854+dfsg-1) unstable; urgency=low [ Tormod Volden ] * linux-wlan-ng-post-down: Do not disable card on ifdown if wireless extensions are in use * Removed the "sleep 3" in wlan-udev.sh since this is fixed in the driver (since revision 1852) * linux-wlan-ng-build-firmware-deb: bail out if no network is available instead of building empty package, remove misplaced cd command * README.Debian: removed obsolete configuration instructions (Closes: #474485) [ Victor Seva ] * New upstream fixes initialization race condition: Perform the hardware reset/init sequence *before* we register the netdevice. (Karl Renton) [ Enrico Tassi ] * Added a call to dh_installmodules in rules used by m-a (Closes: #480284) -- Enrico Tassi Fri, 09 May 2008 18:25:50 +0200 linux-wlan-ng (0.2.8+svn1851+dfsg-1) unstable; urgency=low [ Victor Seva ] * changed Depends: linux-wlan-ng to Recommends on linux-wlan-ng-modules (Closes: #465329) Thanks to Tormod Volden. * fix for firmware loading from upstream ( rev 1851 ) * removed linux-wlan-ng.modprobe and dh_installmodules on rules. Not needed anymore. (Closes: #192351) Thanks to Tormod Volden. [ Enrico Tassi ] * Version 1851 fixed firmware loading issues affecting wep configuration (Closes: #454684) * Added sleep 3 in wlan-udev.sh to avoid a race condition (Closes: #465681) -- Enrico Tassi Sun, 17 Feb 2008 13:55:16 +0100 linux-wlan-ng (0.2.8+svn1850+dfsg-1) unstable; urgency=low [ Enrico Tassi ] * Removed useless entries in linux-wlan-ng (Thanks Tormod Volden for spotting that) * bumped standsrds-version to 3.7.3, no modifications needed * Removed old conffile installed by dh_installmodules /etc/modutils/linux-wlan-ng (Closes: #455027) * Added Vcs fields in control * moved the -doc package in section: doc [ Victor Seva ] * Added support for 2.6.24 kernels -- Enrico Tassi Fri, 08 Feb 2008 17:33:47 +0100 linux-wlan-ng (0.2.8+svn1839+dfsg-2) unstable; urgency=low * removed hotplug file and activated cleanup preinst and postinst scripts (Thanks Tormod Volden for testing this modification) * fixed typo in etc/rc.wlan (used only as example) * removed -Xetc/init.d from rules and removed etc/init.d dir from .install for package linux-wlan-ng (package content should be the same, just housekeeping) * Removed dbus-send org.freedesktop.NetworkManager.RefreshDevice from wlan-udev.sh since it is no more necessary (Thanks Tormod Volden for spotting this) * Fixed watch file (only tar.bz2 are present) (Closes: #449773) -- Enrico Tassi Sat, 24 Nov 2007 18:32:39 +0100 linux-wlan-ng (0.2.8+svn1839+dfsg-1) unstable; urgency=low * Renamed TEMPDIR in LWNTMP (Closes: #440366) * Added support for 2.6.23 kernels (Closes: #447409) -- Enrico Tassi Sun, 29 Jul 2007 14:16:32 +0200 linux-wlan-ng (0.2.8+svn1832+dfsg-2) unstable; urgency=low * Removed spurious slash in .install file (Closes: #435008) * Fixed prism2_* loading in case p80211 is already loaded (Closes: #429624) * Moved linu-wlan-ng.modules to linux-wlan-ng.modprobe so that it actually does something. Added option wlan_wext_write=1 for 80211 so the wireless extensions are turned on by default. Restored dh_installmodules. * Integrated ubuntu changes to /etc/wlan/wlan-udev.sh that are friendly to NetworkManager. This should also close 429624 since now the firmware is loaded at the right time and the nic should be in an usable state just after plugging it (Closes: #429624) * Removed spurious patches * Removed from postinst the removal of /dev/nul that used to be created in version << 0.1.14-13 that is so obsolete that not even oldstable has it. This also avoids a bogus lintian error -- Enrico Tassi Sun, 29 Jul 2007 14:10:13 +0200 linux-wlan-ng (0.2.8+svn1832+dfsg-1) unstable; urgency=low * Updated to svn revision 1832 that adds support for kernel 2.6.22 (Closes: 434703) -- Enrico Tassi Thu, 26 Jul 2007 10:57:15 +0100 linux-wlan-ng (0.2.8+dfsg-1) unstable; urgency=low [ Victor Seva ] * New upstream release (Closes: #423647) * removed patches: SRC_src_prism2_include_prism2_hfa384x_h.dpatch * modified patches: BUILD_Configure.dpatch BUILD_config_in.dpatch [ Enrico Tassi ] * CONF_etc_wlan_wlan-udev_sh.dpatch removed since it seems that is no more needed. -- Enrico Tassi Sun, 13 May 2007 19:37:41 +0200 linux-wlan-ng (0.2.7+dfsg-2) unstable; urgency=low * Solved script error with prism2dl man file (Closes: #406782) * Override previous upload to experimental, made by mistake -- Enrico Tassi Sun, 14 Jan 2007 13:21:27 +0100 linux-wlan-ng (0.2.7+dfsg-1) experimental; urgency=low [ Victor Seva ] * New upstream release * prism2dl is dual-licenced MPL 1.1 and GPL v2 * solved script error with prism2dl man file (Closes: #406782) * changes from upstream ( svn 1815 ) still 2.7.0 ?? : Configure error Build fix for 2.6.19 ( Same solution from Enrico ) [ Enrico Tassi ] * The RC bug #406782 has already been fixed in t-p-u version 0.2.5+dfsg-1etch2 -- Enrico Tassi Sun, 14 Jan 2007 13:00:19 +0100 linux-wlan-ng (0.2.6+svn20061108+dfsg-1) unstable; urgency=low * removed prism2dl.c file. It is not distributable at all. ( See #387760 ) * add support to the linux-wlan-ng-firmware package to download not only the .hex firmware files but also the non redistributable prism2dl.c from the public upstream svn repository and compile it and put it in the non-free package together with the firmware .hex files. -- Victor Seva Sun, 7 Jan 2007 16:03:49 +0100 linux-wlan-ng (0.2.6+svn20061108-2) unstable; urgency=low * removed udev rules by ubuntu, they make firmware loading fail putting the interface 'active' too early. * restored .pda file in /etc/wlan -- Enrico Tassi Wed, 13 Dec 2006 23:28:01 +0100 linux-wlan-ng (0.2.6+svn20061108-1) unstable; urgency=low [ Victor Seva ] * New upstream release (Closes: #401356) * Added changes from svn rev 1806 ( svn_1806.dpatch) [ Enrico Tassi ] * Added patches from Ubuntu. -- Enrico Tassi Sun, 3 Dec 2006 12:55:51 +0100 linux-wlan-ng (0.2.5-2) unstable; urgency=low * Added patch for hex key reformatting. Kudos to Tormod Volden. (Closes: #389457) -- Enrico Tassi Mon, 25 Sep 2006 23:13:31 +0200 linux-wlan-ng (0.2.5-1) unstable; urgency=low * new upstream release -- Enrico Tassi Fri, 22 Sep 2006 00:18:05 +0200 linux-wlan-ng (0.2.4+svn20060909-4) UNRELEASED; urgency=low * NOT RELEASED YET -- Enrico Tassi Mon, 11 Sep 2006 21:17:01 +0200 linux-wlan-ng (0.2.4+svn20060909-3) unstable; urgency=low [ Victor Seva ] * changed from linux-wlan-ng-source to linux-wlan-ng ( /usr/src/linux-wlan-ng.tar.bz2 ) -- Enrico Tassi Mon, 11 Sep 2006 21:15:09 +0200 linux-wlan-ng (0.2.4+svn20060909-2) unstable; urgency=low [ Victor Seva ] * changed from gzip to bzip2 ( /usr/src/linux-wlan-ng-source.tar.bz2 ) -- Enrico Tassi Sun, 10 Sep 2006 14:07:25 +0200 linux-wlan-ng (0.2.4+svn20060909-1) unstable; urgency=low [ Victor Seva ] * set encryption key using gnome-system-tools (Closes: #386054) Patch by Tormod Volden * default to "managed", rather than "ad-hoc" mode (Closes: #386057) Patch by Tormod Volden * hotplug detection is garbled in /etc/wlan/shared (Closes: #386058) Patch by Tormod Volden [ Enrico Tassi ] * Updated the NEWS file mentioning the default-to-managed and gnome-system-tools-support patches. * Updated upstream to revision 1798. Should build fine with 2.6.18. * Relaxed linux-wlan-ng-firmware dependency on linux-wlan-ng (>= instead of =) since the former is arch:all and the latter arch:any and this makes binNMU not feasible. Thanks lintian. -- Enrico Tassi Sat, 9 Sep 2006 11:29:54 +0200 linux-wlan-ng (0.2.4+svn20060808-2) unstable; urgency=low * removed udev rules, since ifup is called automatically bu wlan.agent (Thanks Marco d'Itri for reporting this bug) -- Enrico Tassi Sun, 20 Aug 2006 15:39:27 +0200 linux-wlan-ng (0.2.4+svn20060808-1) unstable; urgency=low [ Victor Seva ] * update to last SVN ( rev 1794 ) * updated patches: - BUILD_src_Makefile * removed patches ( included by upstream ): - BUILD_src_prism2_driver_Makefile - BUILD_src_p80211_Makefile [ Enrico Tassi ] * Removed manual call to depmod in postinst script (Closes: #381764) * Fixed bug in BUILD_src_Makefile, prism2 should be built after p80211 * Do not fail if reloading of pcmcia confuguration file fails (maybe caused by a missing udev) (Closes: #376048) -- Enrico Tassi Wed, 9 Aug 2006 12:18:15 +0200 linux-wlan-ng (0.2.4+svn20060710-2) unstable; urgency=low * Commented out wlan_bring_it_up call inside /etc/wlan-udev since this could prevent a successful call to ifup (if a network was found, lets say a managed one, and wlan0 was configured by interfaces in ad-hoc mode) -- Enrico Tassi Wed, 26 Jul 2006 23:28:15 +0200 linux-wlan-ng (0.2.4+svn20060710-1) unstable; urgency=low [ Victor Seva ] * updated to last SVN * Solved errors building with 2.6.17 ( Closes: #367270, #378162 ) * Removed build-essential from Build-Depends ( lintian Error ) * added udev to depends ( linux-wlan-ng ) [ Enrico Tassi ] * Since pcmcia configuration reload is not strictly necessary and since this may fail on an upgrade from pcmcia-cs to pcmciautils, is now tolerated (warning the user). (Closes: #377771) -- Enrico Tassi Sat, 15 Jul 2006 14:48:02 +0200 linux-wlan-ng (0.2.4+svn20060414-5) unstable; urgency=low * linux-wlan-ng.postinst prefers pcmciautils reload action to pcmcia-cs one. Fixes some not-clean updates from the latter to the former package. * Standards updated to 3.7.2 -- Enrico Tassi Sat, 17 Jun 2006 17:49:05 +0200 linux-wlan-ng (0.2.4+svn20060414-4) unstable; urgency=low * Move linux-wlan-ng-firmware to contrib. (Closes: #368857) -- Enrico Tassi Sat, 17 Jun 2006 17:47:57 +0200 linux-wlan-ng (0.2.4+svn20060414-3) unstable; urgency=low * shared.prism2 is back (Closes: #365553) -- Enrico Tassi Mon, 1 May 2006 14:06:01 +0200 linux-wlan-ng (0.2.4+svn20060414-2) unstable; urgency=low * By default compilation of the pcmcia driver is turned off, since the upstream sources are not in sync with 2.6.16 kernel pcmcia API. See the NEWS file if you really need the pcmcia driver. (Closes: #365076) * Standards updated to 3.7.0 * The linux-wlan-ng-firmware package now installs the right copyright file * linux-wlan-ng-build-firmware-deb now puts the right copyright file in the generated deb. -- Enrico Tassi Sun, 30 Apr 2006 14:54:21 +0200 linux-wlan-ng (0.2.4+svn20060414-1) unstable; urgency=low [ Victor Seva ] * updated to last SVN * rules.modules: clean rule depends on prepare_all (Closes: #360363 ) * linux-wlan-ng.postinst error solved with an ungly hack (Closes: #356595 ) -- Enrico Tassi Sun, 16 Apr 2006 13:05:01 +0200 linux-wlan-ng (0.2.4+svn20060306-3) UNRELEASED; urgency=low * Changed default operative mode from ad-hoc to managed to conform to the majority of other drivers. * Few more keywords accepted in the interfaces file, so that it should be possible to use the gnome network configuration utility to set up the interface properly (including the WEP key). -- Enrico Tassi Sat, 9 Sep 2006 11:09:24 +0200 linux-wlan-ng (0.2.4+svn20060306-2) UNRELEASED; urgency=low * Sine the upstream sources fail in compiling the pcmcia driver against kernel version 2.6.16, the default is not to build the pcmcia driver. If you use an older kernel and need the pcmcia driver, do as explained in the previous news entry. -- Enrico Tassi Sun, 30 Apr 2006 14:20:38 +0200 linux-wlan-ng (0.2.4+svn20060306-1) UNRELEASED; urgency=low * The user can choose wich modules are built. You have to copy debian/config-for-lwng file to debian/config-foo and modifing this last file you will get only the choosen modules. -- Victor Seva Wed, 8 Mar 2006 15:46:09 +0100 linux-wlan-ng (0.2.4+svn20060306-1) unstable; urgency=low [ Victor Seva ] * removed /etc/wlan/shared call to wland * no src/prism2/*pda file ( rules.firmware ) * added postinst.modules.in file missing ( Closes: #355577 ) * new option to create only the choosen modules. No PCMCIA on kernel need. ( Closes: #355411, #299752 ) [ Enrico Tassi ] * updated to last CVS (debian specific patches applied upstream) * conformed debian/rules of the -source package with modass -- Enrico Tassi Sat, 11 Mar 2006 23:42:23 +0100 linux-wlan-ng (0.2.4+svn20060128-1) UNRELEASED; urgency=low * No more modules packages produced by this source. Use module-assistant or kernel-package instead. * /etc/hotplug/wlan.agent is not invoked anymore by udev, since /lib/udev/net.agent works fine and calls ifup directly. * No more wland since the upstream removed it. -- Enrico Tassi Sun, 29 Jan 2006 21:33:50 +0100 linux-wlan-ng (0.2.4+svn20060128-1) unstable; urgency=low [ Enrico Tassi ] * fixed missing dependencies of the linux-wlan-ng-firwamre package (Closes: 348472) * added support for pcmciautils (Closes: #347797,#347795) * removed useless build-depends * updated to the new upstream 0.2.4 version plus the svn commits up to 28/01/2006 (rev 1768) that mainly include the removal of the broken and unused (at least in Debian) wland code [ Victor Seva ] * remove all package modules -- Enrico Tassi Sat, 28 Jan 2006 17:15:15 +0100 linux-wlan-ng (0.2.3-1) unstable; urgency=low * New upstream release * new linux-wlan-ng-build-firmware-deb using svn -- Victor Seva Sat, 3 Dec 2005 10:05:27 +0100 linux-wlan-ng (0.2.2+dfsg-7) unstable; urgency=low [ Enrico Tassi ] * Added .rules file for udev (Closes: #338742) * Patched the shared.prism2 script to react properly if no .hex file is found [ Victor Seva ] * msleep changed to mdelay on kernels < 2.4.28 ( Closes: #338112 ) -- Victor Seva Sun, 13 Nov 2005 09:13:18 +0100 linux-wlan-ng (0.2.2+dfsg-6) unstable; urgency=low * Improve helper scripts fetch-and-clean-upstream-from-hex.sh and linux-wlan-ng-build-firmware-deb: + Quote strings. * Fix misspellings of prism2 (not prims2). * Fail (not only warn) if any *.hex (not just one test) is in source. * Silence comments in rule files (by not indenting them). Thanks to Jonas Smedegaard * added -O to curl in linux-wlan-ng-build-firmware-deb (Closes: #338144) -- Victor Seva Tue, 8 Nov 2005 20:14:41 +0100 linux-wlan-ng (0.2.2+dfsg-5) unstable; urgency=low * the -source package now produces modules that do not depend on debian specific kernels (Closes: #337613) * removed 2.6.12 modules. Added 2.6.14 modules of all arches. * changed Architecture of linux-wlan-ng to "any". -- Victor Seva Mon, 7 Nov 2005 19:03:56 +0100 linux-wlan-ng (0.2.2+dfsg-4) UNRELEASED; urgency=low * Some devices supported by the linux-wlan-ng driver need a firmware file to work properly. These firmware files are not freely redistributable (or at least it is not sure if they are). The upstream authors of the driver put these firmware in the sources of the driver, but they are removed from the Debian source tarball due to these license problems. This package contains a script that is able to download the pristine source tarball from the http://linux-wlan.org website and build a debian package containing the firmware. The script is called linux-wlan-ng-build-firmware-deb and it creates the desired deb package (named linux-wlan-ng-firmware-files) in the working directory. After invoking that script you still have to install the package by hand. -- Enrico Tassi Sun, 30 Oct 2005 12:12:48 +0100 linux-wlan-ng (0.2.2+dfsg-4) unstable; urgency=low * commented out line: card "NETGEAR MA401RA 11Mbps 802.11 WLAN Card" in wlan-ng.conf since this card is handled by the orinoco driver (Closes: #335393) * fixed loop on p80211.ko (Closes: #335585) * moved non vital informations from debconf to NEWS.Debian (Closes: #335390) * more fixed for 2.6.14+ -- Victor Seva Sun, 30 Oct 2005 12:08:15 +0100 linux-wlan-ng (0.2.2+dfsg-3) unstable; urgency=low * Fix prototype for pci_suspend functions to match 2.6.11+ APIs. * Build fixes for 2.6.14+ ( Closes: #332752 ) * linux vs kernel name -- Victor Seva Thu, 20 Oct 2005 21:21:21 +0200 linux-wlan-ng (0.2.2+dfsg-2) unstable; urgency=low * fixed rules file on linux-wlan-ng-firmware ( script-not-executable ) * fixed linux-wlan-ng-build-firmware-deb ( VERSION with + char ) * fixed lintian warnings -- Victor Seva Fri, 14 Oct 2005 20:04:27 +0200 linux-wlan-ng (0.2.2+dfsg-1) unstable; urgency=low * new ppc64 arch ( Closes: #327686 ) * upstream orig tar without firmware files * clean old stuff on README.Debian * Fixed debian/rules ( Enrico Tassi ) No *.hex on linux-wlan-ng-source package * Endless Loop if only binary-indep or binary-arch rules are called ( Closes: #327695 ) * Added prism2dl/wlan.agent/shared.prism2 to linux-wlan-ng package * New linux-wlan-ng-firmware package with just a small script for build a the firmware package. Not incluided for legal issues. * added Spanish and Italian translations ( es.po it.po ) * Added code to avoid endless loop if shared.dpkg-old file exists ( Closes: #230855, #327694) * Final adopt process ( Closes: #299725 ) -- Victor Seva Wed, 21 Sep 2005 19:16:24 +0200 linux-wlan-ng (0.2.2-2) unstable; urgency=low * added patches for build this version on sarge ( 2.4.27-2, 2.6.8-2 ) -- Victor Seva Tue, 6 Sep 2005 17:47:45 +0200 linux-wlan-ng (0.2.2-1) unstable; urgency=low * New upstream release * new kernel namescene ( linux-headers, linux-kernel ) * Added powerpc modules ( Closes: #242068 ) * Support for 2.6 kernels ( CLoses: #296419, #230593, #212655, #292005 ) * Added amd64 arch ( Closes: #250623 ) * modules for 2.6.12-1 -- Victor Seva Sun, 28 Aug 2005 02:33:34 +0200 linux-wlan-ng (0.2.0+0.2.1pre21-1.1) unstable; urgency=HIGH * NMU * Remove unsafe echo to /tmp/log that I added for debugging ages ago. * Fix unsafe uses of temp files in /etc/wlan/shared (not used by default in Debian) -- use /var/run instead. Closes: #290047 * Built binary modules packages against the new -2 abinamed version of the 2.4.27 kernel. Closes: #286305 -- Joey Hess Tue, 18 Jan 2005 15:18:15 -0500 linux-wlan-ng (0.2.0+0.2.1pre21-1) unstable; urgency=low * New upstream prerelease (Closes: #269678) -- Bradley Bell Tue, 28 Sep 2004 13:42:48 -0700 linux-wlan-ng (0.2.0-15) unstable; urgency=low * Made building of modules for stock kernels clearer/easier (Closes: #184899) -- Bradley Bell Tue, 20 Apr 2004 01:07:07 -0700 linux-wlan-ng (0.2.0-14) unstable; urgency=low * New maintainer (Closes: #216035) * Update for the 2.4.25-1 series of stock kernels. (Closes: #220329, #241381) * Changed default module alias to prism2_usb, since users of other types of adapters should probably be using the hostap driver. -- Bradley Bell Sat, 17 Apr 2004 22:01:58 -0700 linux-wlan-ng (0.2.0-13) unstable; urgency=low * Fix linux-wlan-ng-pre-up to not double-eval the cat command. * Orhpaned the package, maintainer set to debian-qa. -- Joey Hess Mon, 3 Nov 2003 19:43:17 -0500 linux-wlan-ng (0.2.0-12) unstable; urgency=low * Update for the 2.4.21-5 series of stock kernels. -- Joey Hess Wed, 10 Sep 2003 15:43:06 -0400 linux-wlan-ng (0.2.0-11) unstable; urgency=low * Update for the 2.4.21-4 series of stock kernels. -- Joey Hess Fri, 29 Aug 2003 13:05:33 -0400 linux-wlan-ng (0.2.0-10) unstable; urgency=low * Commented out the entry for "ntersil PRISM2 Reference Design 11Mb/s 802.11b WLAN Card" in pcmcia config since the orinoco driver handles this one. Closes: #201424 * Added a FAQ item on binary module packages availability. -- Joey Hess Fri, 8 Aug 2003 17:19:00 -0400 linux-wlan-ng (0.2.0-9) unstable; urgency=low * Remove unnecessary WLAN_KERN_PCMCIA setting from rules file, since the Configure script ignores its original value and sets it based on the kernel configuration. BTW, the test was also inverted. Closes: #200154 * Rebuild binary modules packages for newest debian kernel. Closes: #200753 -- Joey Hess Fri, 11 Jul 2003 14:56:17 -0400 linux-wlan-ng (0.2.0-8) unstable; urgency=low * Avoid segfault in wlancfg (when run on non-wlan-ng interface), caused by P80211_IFREQ ioctl resetting data pointer. Closes: #193744 * CC may be specified when Configure is called to set the compiler to use. * Modules packages updated for kernel-image-2-4-20-3-386. Closes: #195809 -- Joey Hess Mon, 2 Jun 2003 14:02:36 -0400 linux-wlan-ng (0.2.0-7) unstable; urgency=low * post-down: Chain rmmod calls to remove whichever module is in use. Closes: #193090 Also, don't fail in p80211 fails to remove, there might be another interface. And direct all the rmmod stderr to /dev/null. * Typo. Closes: #193091 * In ifpdown scripts, match wlan?, not wlan*, so that wlan0:0 aliases can be brought up. Closes: #193121 * Split off a -doc package. It's 250k split from a 780k package, if you're counting. * I put the README.Debian in both the doc package and the main package, since the doc package must be installable standlone, and since it is important people read it even if they don't have the doc package. * Since the binary modules packages depend on linux-wlan-ng, I can make them link their doc dirs to its doc dir, to save some space. Add postinst code to convert old empty directory to symlink on upgrade too, to work around dpkg limitation. -- Joey Hess Tue, 13 May 2003 13:02:35 -0400 linux-wlan-ng (0.2.0-6) unstable; urgency=low * if-pre-up: Don't even ask if there is WEP support if WEP is not desired. Apparently just asking can flummox certian cards. Closes: #190851 * Configure: If pcmcia is off in the kernel, and there is no pcmcia source tree, just don't build the pcmcia module. Closes: #191478 -- Joey Hess Mon, 5 May 2003 14:35:23 -0400 linux-wlan-ng (0.2.0-5) unstable; urgency=low * Install modules into directory including kernel extraversion. This will make multiple falvours co-exist, and is needed expecially because of the new added version number in debian kernel image packages. -- Joey Hess Thu, 3 Apr 2003 11:13:54 -0500 linux-wlan-ng (0.2.0-4) unstable; urgency=low * Well I was wrong, there are incompatabilities with the old modules. Updated dependancy to be on linux-wlan-ng-0.2.0-modules. Updated control.modules to make modules built with this version provide that. If you've already built modules for 0.2.0, you'll have to force the deps or rebuild them -- my apologies. Closes: #183992 -- Joey Hess Sat, 8 Mar 2003 22:24:12 -0500 linux-wlan-ng (0.2.0-3) unstable; urgency=low * Make it Suggest kernel-pcmcia-modules-${kvers}, and added item to debian FAQ about prism2_cs. Probably fixes bug #180541 (second half). -- Joey Hess Thu, 6 Mar 2003 16:09:40 -0500 linux-wlan-ng (0.2.0-2) unstable; urgency=low * Turns out that linux-wlan-ng has no concept of a "nick" as in wireless-tools, and just returns essid as nick. Removed mentions of nick from README.Debian, specifying one has no effect. * Added note about wireless-tool's pre-up script noisyness, and patch to fix it. See bug #154367 -- Joey Hess Thu, 6 Mar 2003 14:00:41 -0500 linux-wlan-ng (0.2.0-1) unstable; urgency=low * New upstream release. Closes: #183590 * Updated my man pages to match those that went in upstream. * Patch from "warner-debbugs" to shut up the if-pre-up script when setting up WEP. Closes: #180818 * Removed wlan.conf from examples, it is now installed in /etc/wlan. Updated docs. * Updates to keep separated build working. * Removed pcmcia hack, upstream supports in-kernel pcmcia now. * New user-mode *apparently* works with old kernel modules, did not tighten dependencies. * Updated docs about pcmcia source tree; it's not needed anymore if you use the in-kernel pcmcia drivers. -- Joey Hess Thu, 6 Mar 2003 12:38:10 -0500 linux-wlan-ng (0.1.15-6) unstable; urgency=low * Rebuilt the kernel modules with gcc 2.95, to match the compiler used on the debian kernel packages and not get unresolved symbols. Closes: #180541 -- Joey Hess Wed, 12 Feb 2003 20:02:32 -0500 linux-wlan-ng (0.1.15-5) unstable; urgency=low * Added support for host WEP to the debian-specific /etc/network/interfaces. Patch from Martin Buck adds an wlan_ng_hostwep option. -- Joey Hess Fri, 31 Jan 2003 22:49:45 -0500 linux-wlan-ng (0.1.15-4) unstable; urgency=low * Renamed apm resume script to not have an underscore in it, as run-parts has begun to ignore files with underscores. Feh. Also renamed ifupdown scripts for consistency. * Added man pages for all of the binaries. Some a little bit uninformative. -- Joey Hess Mon, 25 Nov 2002 12:34:56 -0500 linux-wlan-ng (0.1.15-3) unstable; urgency=low * Do nasty control file hackery to try to get saner Binary: fields in dsc and changes. Sigh. -- Joey Hess Sun, 3 Nov 2002 11:45:56 -0500 linux-wlan-ng (0.1.15-2) unstable; urgency=low * Updated apm resume script for new upstream version. * Added kdist traget to make .changes file; I will soon be producing precompiled mouldes packages for debian i386. * Make the modules package Depend on kernel-version-${kvers}. -- Joey Hess Sat, 2 Nov 2002 14:29:44 -0500 linux-wlan-ng (0.1.15-1) unstable; urgency=low * New upstream release, incorporating several of my patches, and a lot more.. * The utilities in the linux-wlan-ng package will not work perfectly with the modules from version 0.1.14 of linux-wlan-ng. In my case I couldn't even bring up the interface with a mismatches utils and modules. * Therefore, the utils package conflicts with linux-wlan-ng-modules, which was provided by the old modules packages. * New modules package will provide linux-wlan-ng-0.1.15-modules and will depend on the version of linux-wlan-ng it came from. * Added note to README.Debian about this. * No need to remove all that debian/* stuff in rules file, it is removed upstream. * Comment out the 3com 3CRWE737A, not the 3CRWE777A. * Fixed typo in src/prism2/driver/Makefile -- Joey Hess Mon, 23 Sep 2002 21:54:55 -0400 linux-wlan-ng (0.1.14-14) unstable; urgency=low * Added to wlan-ng.conf an entry for a NETGEAR MA401RA card. Closes: #160399 -- Joey Hess Wed, 11 Sep 2002 20:29:49 -0400 linux-wlan-ng (0.1.14-13) unstable; urgency=low * Removed /dev/nul typo in resume script. Closes: #159627 * Remove /dev/nul if it exists, is a regular file, and contains something about prism2_plx. -- Joey Hess Wed, 4 Sep 2002 19:05:55 -0400 linux-wlan-ng (0.1.14-12) unstable; urgency=low * Don't put KDREV into the package name, put it at the front of the package version. -- Joey Hess Mon, 26 Aug 2002 12:25:46 -0400 linux-wlan-ng (0.1.14-11) unstable; urgency=low * Reworked onmic's pcmcia scheme file patch. -- Joey Hess Mon, 19 Aug 2002 02:07:40 -0400 linux-wlan-ng (0.1.14-10) unstable; urgency=low * Enabled pcmcia support for the D-Link DWL-650, DRC-650 cards, as I have a report that the pcmcia-cs "limited functionality" support for these cards is indeed very limited. Closes: #156877 * Omnic patched /etc/wlan/shared to give debian paths to the pcmcia scheme file. Closes: #156776 * Omnic also patched some bugs in /etc/pcmcia/wlan-ng: - better MAC regexp avoids problems when card is in monitor mode - fixed inverted tests - use is_true consistently * Don't reload pcmcia if pcmcia-cs is not installed. Closes: #156007 -- Joey Hess Sat, 17 Aug 2002 23:49:00 -0400 linux-wlan-ng (0.1.14-9) unstable; urgency=low * Deal with make-kpkg epochs. Closes: #155406 -- Joey Hess Mon, 5 Aug 2002 23:41:24 -0400 linux-wlan-ng (0.1.14-8) unstable; urgency=low * If network.opts is not configured, make the /etc/pcmcia/wlan script not do anything, and just let /etc/pcmcia/network call ifup/down. Closes: #155235 (if I got this right; no test hw so flying blind..) * Updated README.Debian. * Support building on hppa, patch from lamont. Whether this can actually be used on hppa we don't know. Closes: #155480 * Fix typo, Closes: #155404 -- Joey Hess Mon, 5 Aug 2002 22:50:31 -0400 linux-wlan-ng (0.1.14-7) unstable; urgency=low * Fixed infrastructure mode enable line. Really Closes: #154851 -- Joey Hess Tue, 30 Jul 2002 15:27:49 -0400 linux-wlan-ng (0.1.14-6) unstable; urgency=low * Fixed IF_WLAN_MODE/IF_WIRELESS_MODE confusion. Closes: #154851 -- Joey Hess Tue, 30 Jul 2002 13:01:42 -0400 linux-wlan-ng (0.1.14-5) unstable; urgency=low * Deal with apt-src installed pcmcia-cs-verson packages when built by kernel-package by using a wildcard. * Added proper make-kpkg KDREV support. -- Joey Hess Mon, 29 Jul 2002 13:28:20 -0400 linux-wlan-ng (0.1.14-4) unstable; urgency=low * Fixed metacharacter quoting in apt-src invocations. -- Joey Hess Sun, 28 Jul 2002 17:10:19 -0400 linux-wlan-ng (0.1.14-3) unstable; urgency=low * Since pcmcia-source and pcmcia-cs are real package names but whose source package is not usable to build pcmcia modules, they should not be used by apt-src. Instead, import it as just 'pcmcia'. Also, allow use of just 'kernel' for apt-src name of the kernel source. -- Joey Hess Sun, 28 Jul 2002 12:24:24 -0400 linux-wlan-ng (0.1.14-2) unstable; urgency=low * Added support for a wlan_ng_keyfile to the interfaces file. -- Joey Hess Sun, 28 Jul 2002 00:44:49 -0400 linux-wlan-ng (0.1.14-1) unstable; urgency=low * First release. * Modified upstream Makefiles to allow building and installing only modules. * Integrated with ifupdown. * Went over the pcmcia config file and commented out cards that are supported by regular pcmcia modules. This included orinoco.. * Wrote an apm init script. * The following are not tested: - building against a kernel without pcmcia or with in-kernel pcmcia - USB - PCMCIA - WEP - managed mode * Closes: #117417 (not my ITP, but I understand the ITPer lost interest). -- Joey Hess Fri, 26 Jul 2002 10:18:36 -0400 debian/linux-wlan-ng-post-down0000755000000000000000000000102510760761366013556 0ustar #!/bin/sh # # This script takes care of bringing down wlan-ng devices. # It is run by ifdown. WLANCTL=/sbin/wlanctl-ng if [ ! -x $WLANCTL ] ; then exit 0 fi case $IFACE in wlan?) # Reset device to make sure it is not trying to generate # interrupts. # Do not disable card if wireless extensions are in use WEXT=`cat /sys/module/p80211/parameters/wlan_wext_write` [ "$WEXT" = "0" ] && result=`$WLANCTL $IFACE lnxreq_ifstate ifstate=disable` # Remove lock file, just in case. rm -f /var/lock/wlan-$IFACE.lock ;; esac debian/linux-wlan-ng-source.install0000644000000000000000000000003610501232777014557 0ustar linux-wlan-ng.tar.bz2 usr/src debian/linux-wlan-ng.preinst0000644000000000000000000000222011332640420013263 0ustar #!/bin/sh -e #DEBHELPER# rm_conffile() { CONFFILE="$1" if [ -e "$CONFFILE" ]; then md5sum=`md5sum "$CONFFILE" | cut -d ' ' -f 1` old_md5sum=`dpkg-query -W -f='${Conffiles}' linux-wlan-ng | grep $CONFFILE | cut -d ' ' -f 3` if [ "$md5sum" != "$old_md5sum" ]; then echo "Obsolete conffile $CONFFILE has been modified by you, renaming to .dpkg-bak" mv -f "$CONFFILE" "$CONFFILE".dpkg-bak else echo "Removing obsolete conffile $CONFFILE" rm -f "$CONFFILE" fi fi } # Uncomment when debian completely drops #HOTPLUG# if [ "$1" = install -o "$1" = upgrade ]; then if dpkg --compare-versions "$2" lt "0.2.8+svn1839+dfsg-2"; then rm_conffile /etc/hotplug/wlan.agent fi fi # The old modutils file could be there if [ "$1" = install -o "$1" = upgrade ]; then if dpkg --compare-versions "$2" lt "0.2.8+svn1839+dfsg-3"; then rm_conffile /etc/modutils/linux-wlan-ng fi fi # udev rules have moved to /lib/udev if [ "$1" = install -o "$1" = upgrade ]; then if dpkg --compare-versions "$2" lt "0.2.9+dfsg-3"; then rm_conffile /etc/udev/rules.d/84-linux-wlan-ng.rules fi fi debian/rules.modules0000644000000000000000000000610511011076154011710 0ustar #!/usr/bin/make -f # debug #export DH_VERBOSE=y #export TO_NULL=&>/dev/null #TO_NULL=&>/dev/null #MAKEFLAGS+=-s --no-print-directory # used by debian/config-for-lwng that is sourced by ./Configure # in this way modules are built ENV=BUILD_MODULES=y BUILD_UTILS=n # KSRC is something like '/usr/src/linux' # KVERS is something like '2.6.11-9-amd64-k8' # KDREV is something like '2.6.11-2' # # a sample invocation by m-a is # debian/rules KSRC=/usr/src/linux KVERS=2.6.11-9-amd64-k8 KDREV=2.6.11-2 \ # kdist_image # # all the above are passed by m-a PACKAGE=linux-wlan-ng-modules-$(KVERS) MA_DIR ?= /usr/share/modass # load generic variable handling -include $(MA_DIR)/include/generic.make # load default rules -include $(MA_DIR)/include/common-rules.make # Remove epoch from kdrev, and add the kdrev to the front of this # package's version number. LWN_VERSION=$(shell dpkg-parsechangelog |grep ^Version: | cut -d ' ' -f 2) LWN_VERSION_MAJOR=$(shell echo '$(LWN_VERSION)'|sed 's/pre.*//'|sed 's/rc.*//') DEBVERS=$(shell echo '$(KDREV)' | sed 's/[0-9]*://')+$(LWN_VERSION) # Architecture DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) # linux-image vs kernel-image ksublevel:=$(shell egrep '^SUBLEVEL +=' $(KSRC)/Makefile 2>/dev/null | \ sed -e 's/[^0-9]*\([0-9]*\)/\1/') ifeq "$(shell test $(strip $(ksublevel)) -le 11 && echo yes )" "yes" KLINUX=kernel else KLINUX=linux endif prepare_all-stamp: prepare_all prepare_all: @if [ "$(DH_VERBOSE)" = 'y' ] ; then \ echo 'KDREV' $(KDREV) ;\ echo 'KVERS' $(KVERS) ;\ echo 'KSRC' $(KSRC) ;\ echo 'KMAINT' $(KMAINT) ;\ echo 'DEBVERS' $(DEBVERS) ;\ echo 'LWN_VERSION' $(LWN_VERSION) ;\ echo 'LWN_VERSION_MAJOR' $(LWN_VERSION_MAJOR) ;\ echo 'KLINUX' $(KLINUX) ;\ fi # generate control file suitable for modules package cat debian/control.modules.in | \ sed 's/$${lwnversmajor}/$(LWN_VERSION_MAJOR)/g' | \ sed 's/$${lwnvers}/$(LWN_VERSION)/g' | \ sed 's/$${kvers}/$(KVERS)/g' | \ sed 's/$${arch}/$(DEB_HOST_ARCH)/g' \ > debian/control cp debian/install.modules.in \ debian/$(PACKAGE).install touch prepare_all-stamp build: build-stamp build-stamp: prepare_all-stamp dh_testdir @if [ -f debian/config-foo ]; then \ $(ENV) CC=$(CC) ./Configure -d debian/config-foo $(TO_NULL); \ else \ $(ENV) CC=$(CC) ./Configure -d debian/config-for-lwng $(TO_NULL); \ fi $(MAKE) all $(TO_NULL) touch build-stamp clean: prepare_all dh_testdir dh_testroot $(MAKE) mrproper $(TO_NULL) dh_clean debian/postinst build-stamp prepare_all-stamp binary-modules: build-stamp dh_testdir dh_testroot dh_clean -k dh_installdirs $(MAKE) install $(TO_NULL) dh_install -Xrc.d dh_installchangelogs CHANGES dh_installdocs dh_installmodules dh_fixperms dh_installdeb dh_gencontrol -- -Vkvers=$(KVERS) -VKLINUX=$(KLINUX) dh_compress dh_md5sums dh_builddeb --destdir=$(DEB_DESTDIR) # These targets are used by make-kpkg. Just stub in to the real targets. kdist_config: prepare_all-stamp kdist_clean: clean .PHONY: build clean binary-indep binary-arch binary .PHONY: kdist_config kdist_build kdist_clean kdist_image debian/linux-wlan-ng-firmware.copyright0000644000000000000000000000111011332644354015430 0ustar Files: * Copyright: 2005-2006 Victor Seva, Enrico Tassi License: GPL-2 Copyright by Victor Seva and Enrico Tassi , 2005-2006. These scripts are free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-2'. debian/TODO0000644000000000000000000000016010356774355007672 0ustar - add Close:# for all the closed bugs in the bts - check all the README's and FAQ and clean all the old stuff debian/linux-wlan-ng.README.Debian0000644000000000000000000002076210777227046013751 0ustar A big FAT warning: ----------------- A bugreport (see http://bugs.debian.org/367790) says that the driver leaks some memory if put to monitor mode and stressed by kismet. This can be done only by the root user, so this should not worry most users. A quick FAQ: ----------- Q: Where are precompiled module packages for this new kernel image released yesterday? A: Every set of new precompiled module packages for a new kernel release must be manually approved by the ftp masters. This process may take up to one week. Please do not pester them or me in the meantime. I do occasionally miss kernel releases so if it seems that I have not noticed a new kernel release and built drivers for it, check the bug tracking system at and if there is not yet a bug, file one. Failing all else, you can use the instructions later in this file to build linux-wlan-ng modules for your kernel. Q: Why do I get messages from /etc/network/if-pre-up.d/wireless-tools when I bring up the interface? A: The warning messages, such as this one, are harmless: Error for wireless request "Set ESSID" (8B1A) : SET failed on device wlan0 ; Invalid argument. run-parts: /etc/network/if-pre-up.d/wireless-tools exited with return code 251 See bug #154367 for details. You can apply this patch to shut up /etc/network/if-pre-up.d/wireless-tools, this patch will hopefully be applied by the maintainer of wireless-tools in the near future. --- wireless-tools.orig 2003-03-06 13:22:32.000000000 -0500 +++ wireless-tools 2003-03-06 13:30:08.000000000 -0500 @@ -7,6 +7,14 @@ exit 0 fi +# Detect and do nothing for linux-wlan-ng interfaces; +# which are configured by thier own if-pre-up script. +if [ -x /sbin/wlancfg ]; then + if /sbin/wlancfg show $IFACE >/dev/null 2>&1; then + exit 0 + fi +fi + if [ -n "$IF_WIRELESS_SENS" ] then ARGS="$ARGS sens $IF_WIRELESS_SENS" Q: How can I set the "nick" displayed by iwconfig? A: You cannot, linux-wlan-ng does not have a concept of a "nick". iwconfig will always show it being set to your ESSID. Don't worry, it's fairly useless anyway. Q: Who do I get unresolved symbol/depmod warnings/errors when I install the package or boot? A: If is is complaining about prism2_cs, you probably don't have a ds.o module available. You can ignore this if you don't need PCMCIA support for linux-wlan-ng. If you do need it, you should try installing whichever kernel-pcmcia-modules-* package is Suggested by the linux-wlan-ng-modules-* package you've installed. If it is complaining about unresolved symbols in something else, and you are using the precompiled modules packages, file a bug report. Q: Where is the rest of the documentation? A: A lot of the documentation, including the main FAQ and README file is in the linux-wlan-ng-doc package, in the directory /usr/share/doc/linux-wlan-ng-doc Kernel modules: -------------- To get linux-wlan-ng working on your system, you need to install the linux-wlan-ng kernel modules. I try to provide precompiled kernel modules for the stock debian kernels, but these may from time to time be out of date. The precompiled packages are named linux-wlan-ng-modules--, for example, linux-wlan-ng-modules-2.4.25-1-k7, and will depend on the particular kernel image they were built for. Building kernel modules for stock debian kernels: ------------------------------------------------ Run m-a in order to build linux-wlan-ng-modules. If you want to choose wich type of modules will be built. You have to : $cp /usr/src/modules/linux-wlan-ng-source/debian/config-for-lwng /usr/src/modules/linux-wlan-ng-source/debian/config-foo Edit this new file choosing the modules you want to build, for example, if you want to build only the usb driver: # /usr/src/modules/linux-wlan-ng-source/debian/config-foo # This script is sourced by the Configure script, when running in # noninteractive mode. if [ "$BUILD_MODULES" = "n" -o "$BUILD_UTILS" = "n" ] ; then # Just building the utilities. Kernel source may not be present; # don't fail. fail () { echo "Not failing since we are building only the utilities" } fi LINUX_SRC=$KSRC PCMCIA_SRC=$PSRC PRISM2_PCMCIA="n" PRISM2_PLX="n" PRISM2_PCI="n" PRISM2_USB=$BUILD_MODULES UTILS=$BUILD_UTILS TARGET_ROOT_ON_HOST=$(pwd)/debian/tmp/ #EOF Configuring linux-wlan-ng: -------------------------- Once you have the kernel modules built and installed, you must configure linux-wlan-ng to bring up your network interface with the proper wireless parameters for your network. The way this is done currently depends on the type of wireless device you have, be it a pcmcia device, a USB device, or a built-in PCI device. In most cases you can use a network configuration GUI tool provided by your desktop environment, for instance network-manager or network-admin in GNOME. If you however want to configure the network interfaces manually, read on. Configuring a pcmcia device: --------------------------- Debian is moving away from using the old pcmcia scripts, and toward using /etc/network/interfaces to set up pcmcia interfaces as well. Therefore, unless you edit /etc/pcmcia/network.opts and set an IP address or tell it to use a dhcp client or bootp, it uses ifup and ifdown to configure the interface. The same holds true for wlan-ng, and you can follow the instructions below for setting up /etc/network/interfaces. However, if you do choose to configure /etc/pcmcia/network.opts, you should also edit /etc/pcmcia/wlan-ng.opts. Note that a few cards that are supported by the regular pcmcia drivers are commented out in wlan-ng.conf, to make sure that installing this does not break existing set-ups. If you're brave you can try uncommenting them to use the wlan-ng drivers for them. Configuring a PCI or USB device (or a pcmcia device) with /etc/network/interfaces: -------------------------------------------------------------------------- Edit /etc/network/interfaces, and add a stanza for your network device. Here is a sample stanza, for the simplest possible configuration -- bring the device up, associating with any available wireless access point, and use dhcp to get on the network: auto wlan0 iface wlan0 inet dhcp wireless_mode managed Once you've edited this into /etc/network/interfaces, the command "ifup wlan0" should bring up your wireless. More complex configurations are of course possible. For a ad-hoc network, using static IP addresses: auto wlan0 iface wlan0 inet static address 192.168.1.5 gateway 192.168.1.1 netmask 255.255.255.0 wireless_mode ad_hoc wireless_essid mywlan wireless_channel 1 Here is an annotated list of all the available options (also see interfaces(5) for more details): # Should be either ad_hoc or managed. Used managed if you have an AP. wireless_mode managed # Leave this unset to associate with any access point. Set to pick an # access point, or in ad-hoc mode. # wireless_essid # For ad-hoc mode, you must specify a channel. # wireless_channel 1 # # To enable WEP, uncomment the next line. # wireless_enc on # To set a WEP key, either use a string, which will be converted to a key: # wlan_ng_priv_genstr foo # (Using the specified key length.) # wlan_ng_priv_key128 false # Or give a file that contains such a string: # wlan_ng_keyfile /etc/network/wlan # Or set keys explicitly. # wlan_ng_key0 xx:xx:xx:xx:xx # wlan_ng_key1 xx:xx:xx:xx:xx # wlan_ng_key2 xx:xx:xx:xx:xx # wlan_ng_key3 xx:xx:xx:xx:xx # If you set a key, remember to make the file mode 600! # # In managed mode, set to "sharedkey" if a shared key is required. # wlan_ng_authtype opensystem # If you are serving as an AP, uncomment this to require WEP for all STAs. # wlan_ng_exclude_unencrypted true # # Some extra ah-hoc mode settings: # Beacon interval (in Kus) # wlan_ng_bcint 100 # Rates for mgmt&ctl frames (in 500Kb/s) # wlan_ng_basicrates 2 4 # Supported rates in BSS (in 500Kb/s) # wlan_ng_oprates 2 4 11 22 # # You can set arbitrary MIB items with this directive, separated by # whitespace. Each will then be set. # wlan_ng_user_mibs p2CnfRoamingMode=1 Configuring things the upstream way: ----------------------------------- Some of the above is Debian specific. If you prefer to do things the way it's documented in the non-Debian-specific documentation (which is in the linux-wan-ng-doc package), you can do that too. The init script is shipped in /usr/share/doc/linux-wlan-ng/examples/; copy it to /etc/init.d/wlan and the result should be nearly identical to installing this package manually from source. debian/compat0000644000000000000000000000000211332624606010367 0ustar 7 debian/control0000644000000000000000000001171011717675651010611 0ustar Source: linux-wlan-ng Section: kernel Priority: extra Maintainer: Tormod Volden Uploaders: Enrico Tassi , Victor Seva Build-Depends: debhelper (>= 7), bzip2, quilt (>= 0.40) Standards-Version: 3.8.4 Vcs-Svn: svn://svn.debian.org/linux-wlan-ng/ Vcs-Browser: http://svn.debian.org/viewsvn/linux-wlan-ng # Package: linux-wlan-ng-source # Architecture: all # Depends: bzip2, module-assistant, debhelper (>= 4.1.10), ${misc:Depends} # Suggests: kernel-package # Description: linux-wlan-ng driver # linux-wlan-ng is a set of drivers and utilities that is intended to # provide the full range of IEEE 802.11 MAC management capabilities for use # in user-mode utilities and scripts. The package currently supports the # Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for # PCMCIA, PCI, and USB. Additionally, the package includes support for the # PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. # . # This package provides the source code for the linux-wlan-ng kernel # modules. After installing this you must use module-assistant to compile # and install the modules. # . # Please note that you probably do not need this package: The prism2_usb # driver is included in the default kernel packages since 2.6.31. Package: linux-wlan-ng Architecture: any Depends: ${shlibs:Depends}, wireless-tools, udev (>= 0.140-1), ${misc:Depends} Recommends: linux-wlan-ng-doc Conflicts: linux-wlan-ng-modules, linux-wlan-ng-0.1.15-modules Description: utilities for wireless prism2 cards linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . Please note that you probably do not need this package: The prism2_usb driver is included in the default kernel packages since 2.6.31. If you need firmware loading for your prism2_usb device, please just install the prism2-usb-firmware-installer package. . This package ships legacy utilities and scripts for advanced configuration and user-space firmware downloading (support for non-USB devices). Package: linux-wlan-ng-doc Architecture: all Recommends: linux-wlan-ng Section: doc Depends: ${misc:Depends} Description: documentation for wlan-ng linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package contains documentation for linux-wlan-ng that is not included in the main package. Package: linux-wlan-ng-firmware Architecture: all Section: contrib/kernel Depends: linux-wlan-ng (>= ${binary:Version}), build-essential, debhelper, subversion, fakeroot, ${misc:Depends} Description: firmware files used by the linux-wlan-ng driver linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package doesn't contain the firmware files, but a script to download the upstream source tarball and build a deb that contains them. Note that only some adapters really need a firmware file and that firmware files are not completely free (in the sense of freely redistributable), that's why this package exists. . For newer kernels (2.6.31+) which have the in-tree prism2_usb driver, you can install the prism2-usb-firmware-installer package instead. Package: prism2-usb-firmware-installer Architecture: any Section: contrib/kernel Depends: wget, ${shlibs:Depends}, ${misc:Depends} Description: firmware files for the prism2_usb kernel driver prism2-usb-firmware-installer will at the time of its own installation download the firmware files for the prism2_usb devices from the upstream code repository and convert them to the format used by the kernel modules since 2.6.32. . The downloaded file will be used as-is by the 2.6.31 kernel. If you have an earlier kernel you will have to install the linux-wlan-ng-firmware package instead. . Note that only some adapters really need a firmware file and that firmware files are not completely free (in the sense of freely redistributable), which is why this package exists. debian/linux-wlan-ng-build-firmware-deb0000755000000000000000000000357210761113573015266 0ustar #!/bin/bash # copyright by Victor Seva # Enrico Tassi # License: # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License with # the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; # if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA # # See /usr/share/common-licenses/GPL for the full text of the GPL. DEBIAN_SRC="/usr/src/linux-wlan-ng.tar.bz2" DEBIAN="/usr/share/linux-wlan-ng-firmware/debian" SVN="svn://svn.shaftnet.org/linux-wlan-ng/trunk" PWD="`pwd`" my_temp=$(mktemp -d prism2-XXXXXX) || exit 1 cd $my_temp # decompress linux-wlan-ng-source tar xjf "$DEBIAN_SRC" # get *.hex and prism2dl.c files from upstream # and copy them to the proper place mkdir src svn co -N $SVN/src/prism2/ src/prism2 || exit 1 cp src/prism2/*.hex modules/linux-wlan-ng/src/prism2 svn co -N $SVN/src/prism2/download src/prism2/download cp src/prism2/download/prism2dl.c modules/linux-wlan-ng/src/prism2/download # remove upstream directory rm -rf src # put directory tree on the root of the temp directory mv modules/linux-wlan-ng/* . # clean un necessary directories rm -rf modules debian # copy the proper debian directory for firmare package cp -r "$DEBIAN" . chmod a+rx debian/rules dpkg-buildpackage -rfakeroot -us -uc cd .. rm -rf $my_temp debian/control-generator/0000755000000000000000000000000011717675737012657 5ustar debian/control-generator/Makefile0000644000000000000000000000102710364413344014274 0ustar RUNNING_RELEASE:= $(shell uname -r) RUNNING_VERSION=$(shell echo $(RUNNING_RELEASE) | cut -d - -f 1) RUNNING_IMAGE=linux-image-$(RUNNING_RELEASE) RUNNING_HEADERS=linux-headers-$(RUNNING_VERSION) generate: changelog arch @./gencontrol.py @./get_flavours.py > flavours changelog: @aptitude changelog $(RUNNING_RELEASE) > changelog arch: @ln -s /usr/src/$(RUNNING_HEADERS)/arch . || \ echo -e "\n\n*** run : aptitude install $(RUNNING_HEADERS) ***\n\n" clean: @rm -f changelog @rm -f arch @rm -f control @rm -f lib/*.pyc debian/control-generator/templates/0000755000000000000000000000000011717675737014655 5ustar debian/control-generator/templates/control.source.in0000644000000000000000000000067210357520205020143 0ustar Source: linux-wlan-ng Section: admin Priority: extra Maintainer: Victor Seva Uploaders: Enrico Tassi Build-Depends: gcc (>= 4:4.0) [!m68k], gcc-3.3 [m68k], binutils-hppa64 [hppa], gcc-4.0-hppa64 [hppa], debhelper (>= 4.1.0), dpkg-dev (>= 1.10.23), debianutils (>= 1.6), sparc-utils [sparc], dpatch, module-assistant, linux-headers-@version@ Standards-Version: 3.6.2 debian/control-generator/templates/control.modules.in0000644000000000000000000000047610357317441020323 0ustar Package: linux-wlan-ng-modules-@subarch@@version@-@abiname@-@flavour@ Provides: linux-wlan-ng-${Source-Version}-modules Depends: linux-wlan-ng, linux-image-@subarch@@version@-@abiname@-@flavour@ Description: linux-wlan-ng binary kernel module binary modules for the linux-image-@subarch@@version@-@abiname@-@flavour@ debian/control-generator/templates/control.common.in0000644000000000000000000000627510366676774020167 0ustar Package: linux-wlan-ng-source Architecture: all Depends: module-assistant, debhelper (>= 4.1.10) Suggests: kernel-package Description: linux-wlan-ng driver linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package provides the source code for the linux-wlan-ng kernel modules. After installing this you must use module-assistant to compile and install the modules. Package: linux-wlan-ng Architecture: any Depends: ${shlibs:Depends}, wireless-tools, udev Recommends: linux-wlan-ng-doc, linux-wlan-ng-${Source-Version}-modules Conflicts: linux-wlan-ng-modules, linux-wlan-ng-0.1.15-modules Description: utilities for wireless prism2 cards linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package is useless without the appropriate linux-wlan-ng-modules-x.yy.zz package for the kernel you are running. You may have to build that by hand; see the README.Debian for instructions. Package: linux-wlan-ng-doc Architecture: all Recommends: linux-wlan-ng Description: documentation for wlan-ng linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package contains documentation for linux-wlan-ng that is not included in the main package. Package: linux-wlan-ng-firmware Architecture: all Depends: linux-wlan-ng (= ${Source-Version}), fakeroot, build-essential, debhelper Description: firmware files used by the linux-wlan-ng driver linux-wlan-ng is a set of drivers and utilities that is intended to provide the full range of IEEE 802.11 MAC management capabilities for use in user-mode utilities and scripts. The package currently supports the Intersil 802.11b Prism2, Prism2.5, and Prism3 reference designs for PCMCIA, PCI, and USB. Additionally, the package includes support for the PLX9052 based PCI to PCMCIA adapter with a few different PCMCIA cards. . This package doesn't contain the firmware files, but a script to download the upstream source tarball and build a deb that contains them. Note that only some adapters really need a firmware file and that firmware files are not completely free (in the sense of freely redistributable), that's why this package exists. debian/control-generator/get_flavours.py0000755000000000000000000000374410363217773015730 0ustar #!/usr/bin/env python # This is a modified version of gencontrol.py of the Debian kernel team # Thanks to the Debian Kernel Team for their work. # This program prints the 'flavours' var for an arch. Or # prints all dirs if no arch is given. # It need the proper linux-header-2.6.X package installed. There is # a soft link arch point to /usr/linux-header-2.6.X/debian/arch # and a link to /usr/linux-header-2.6.X-X/debian/changelog # # Copyright by # Debian Kernel Team # Victor Seva Lopez # License: # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License with # the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; # if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA # # See /usr/share/common-licenses/GPL for the full text of the GPL. import os, os.path, re, sys, textwrap, ConfigParser sys.path.append("lib") from debian_linux import * def main(): c = config() if len(sys.argv) == 2 : arch = sys.argv[1] if c.has_key(arch): for i in iter( c[arch]['flavours']): print i elif len(sys.argv) == 1: for arch in iter(c['base']['arches']): config_entry = c[arch,] if config_entry.get('available', True): out = '' for flav in iter(c[arch]['flavours']): out += flav + ' ' print arch, out else: print "Just one parameter please" if __name__ == '__main__': main() debian/control-generator/lib/0000755000000000000000000000000011717675737013425 5ustar debian/control-generator/lib/debian_linux.py0000644000000000000000000001340510357445653016432 0ustar import os, os.path, re, sys, textwrap, ConfigParser class schema_item_boolean(object): def __call__(self, i): i = i.strip().lower() if i in ("true", "1"): return True if i in ("false", "0"): return False raise Error class schema_item_list(object): def __call__(self, i): return re.split("\s+", i.strip()) class config(dict): schema = { 'arches': schema_item_list, 'available': schema_item_boolean, 'flavours': schema_item_list, 'subarches': schema_item_list, } config_name = "defines" def __init__(self, overlay_dir = None): self._overlay_dir = overlay_dir self._read_base() def __getitem__(self, key): if isinstance(key, basestring): return super(config, self).__getitem__(key) if isinstance(key, tuple): ret = {} ret.update(super(config, self).__getitem__('base')) if len(key) >= 1: # XXX: workaround del ret['abiname'] del ret['arches'] ret.update(super(config, self).__getitem__(key[0])) if len(key) >= 2: del ret['subarches'] ret.update(super(config, self).__getitem__('-'.join(key[0:2]))) if len(key) >= 3: del ret['flavours'] ret.update(super(config, self).__getitem__('-'.join(key[0:3]))) return ret raise NotImplemented def _get_files(self, name): ret = [] if self._overlay_dir is not None: ret.append(os.path.join(self._overlay_dir, name)) ret.append(name) return ret def _read_arch(self, arch, base): files = self._get_files("arch/%s/%s" % (arch, self.config_name)) c = config_parser(self.schema) c.read(files) t = c.items_convert('base') base.update(t) self[arch] = t subarches = t.get('subarches', []) for subarch in subarches: try: t2 = c.items_convert(subarch) avail = t2.get('available', True) except ConfigParser.NoSectionError: t2 = {} avail = True if avail: self._read_subarch(arch, subarch, t2) else: self['-'.join((arch, subarch))] = t2 flavours = t.get('flavours', None) if flavours: for flavour in flavours: self._read_flavour(arch, 'none', flavour, c) self['-'.join((arch, 'none'))] = {} subarches.insert(0, 'none') t['subarches'] = subarches def _read_base(self): files = self._get_files("arch/%s" % self.config_name) c = config_parser(self.schema) c.read(files) t1 = c.items_convert('base') self['base'] = t1 for arch in t1['arches']: try: t2 = c.items_convert(arch) avail = t2.get('available', True) except ConfigParser.NoSectionError: t2 = {} avail = True if avail: self._read_arch(arch, t2) else: self[arch] = t2 def _read_flavour(self, arch, subarch, flavour, c): try: t = c.items_convert(flavour) except ConfigParser.NoSectionError: try: t = c.items_convert("%s-none-%s" % (arch, flavour)) except ConfigParser.NoSectionError: #raise RuntimeError("Don't find config for %s-none-%s!" % (arch, flavour)) t = {} self["%s-%s-%s" % (arch, subarch, flavour)] = t def _read_subarch(self, arch, subarch, base): files = self._get_files("arch/%s/%s/%s" % (arch, subarch, self.config_name)) c = config_parser(self.schema) c.read(files) t = c.items_convert('base') base.update(t) self['-'.join((arch, subarch))] = t flavours = t.get('flavours', None) for flavour in flavours: self._read_flavour(arch, subarch, flavour, c) class config_parser(object, ConfigParser.ConfigParser): def __init__(self, schema): ConfigParser.ConfigParser.__init__(self) self.schema = schema def items_convert(self, section): items = self.items(section) ret = {} for key, value in items: try: convert = self.schema[key]() value = convert(value) except KeyError: pass ret[key] = value return ret class _sorted_dict(dict): __slots__ = ('_list') def __init__(self): super(_sorted_dict, self).__init__() self._list = [] def __delitem__(self, key): super(_sorted_dict, self).__delitem__(key) self._list.remove(key) def iterkeys(self): for i in iter(self._list): yield i def iteritems(self): for i in iter(self._list): yield (i, self[i]) def itervalues(self): for i in iter(self._list): yield self[i] class sorted_dict(_sorted_dict): __slots__ = () def __setitem__(self, key, value): super(sorted_dict, self).__setitem__(key, value) if key not in self._list: self._list.append(key) class entry(_sorted_dict): __slots__ = () def __setitem__(self, key, value): super(entry, self).__setitem__(key, value) if key not in self._list: if 'Description' in self._list: self._list.insert(len(self._list)-1, key) else: self._list.append(key) class wrap(textwrap.TextWrapper): wordsep_re = re.compile( r'(\s+|' # any whitespace r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w))') # em-dash debian/control-generator/gencontrol.py0000755000000000000000000002530110357445653015376 0ustar #!/usr/bin/env python # This is a modified version of gencontrol.py of the Debian kernel team # Thanks to the Debian Kernel Team for their work. # This program generates a proper control file on debian directory # It need the proper linux-header-2.6.X package installed. There is # a soft link on debian/arch point to /usr/linux-header-2.6.14/debian/arch # # Copyright by # Debian Kernel Team # Victor Seva Lopez # License: # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License with # the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; # if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA # # See /usr/share/common-licenses/GPL for the full text of the GPL. import os, os.path, re, sys, textwrap, ConfigParser sys.path.append("lib") from debian_linux import * class packages_list(sorted_dict): def append(self, package): self[package['Package']] = package def extend(self, packages): for package in packages: self[package['Package']] = package def read_changelog(): r = re.compile(r""" ^ ( (?P
(?P \w[-+0-9a-z.]+ ) \ \( (?P [^\(\)\ \t]+ ) \) \s+ (?P [-0-9a-zA-Z]+ ) \; ) ) """, re.VERBOSE) f = file("changelog") entries = [] act_upstream = None while True: line = f.readline() if not line: break line = line.strip('\n') match = r.match(line) if not match: continue if match.group('header'): e = entry() e['Distribution'] = match.group('header_distribution') e['Source'] = match.group('header_source') version = parse_version(match.group('header_version')) e['Version'] = version if act_upstream is None: act_upstream = version['upstream'] elif version['upstream'] != act_upstream: break entries.append(e) return entries def read_rfc822(f): entries = [] while True: e = entry() while True: line = f.readline() if not line: break line = line.strip('\n') if not line: break if line[0] in ' \t': if not last: raise ValueError('Continuation line seen before first header') e[last] += '\n' + line.lstrip() continue i = line.find(':') if i < 0: raise ValueError("Not a header, not a continuation: ``%s''" % line) last = line[:i] e[last] = line[i+1:].lstrip() if not e: break entries.append(e) return entries def read_template(name): return read_rfc822(file("templates/control.%s.in" % name)) def parse_version(version): version_re = ur""" ^ (?P (?P \d+\.\d+\.\d+\+ )? (?P (?P (?P\d+\.\d+) \. \d+ ) (?: - (?P .+? ) )? ) - (?P[^-]+) ) $ """ match = re.match(version_re, version, re.X) ret = match.groupdict() if ret['parent'] is not None: ret['source_upstream'] = ret['parent'] + ret['upstream'] else: ret['source_upstream'] = ret['upstream'] return ret def process_changelog(in_vars, config, changelog): ret = [None, None, None, None] ret[0] = version = changelog[0]['Version'] vars = in_vars.copy() if version['modifier'] is not None: ret[1] = vars['abiname'] = version['modifier'] ret[2] = "" else: ret[1] = vars['abiname'] = config['base']['abiname'] ret[2] = "-%s" % vars['abiname'] vars['version'] = version['version'] vars['major'] = version['major'] ret[3] = vars return ret def process_depends(key, e, in_e, vars): in_dep = in_e[key].split(',') dep = [] for d in in_dep: d = d.strip() d = substitute(d, vars) if d: dep.append(d) if dep: t = ', '.join(dep) e[key] = t def process_description(e, in_e, vars): desc = in_e['Description'] desc_short, desc_long = desc.split ("\n", 1) desc_pars = [substitute(i, vars) for i in desc_long.split ("\n.\n")] desc_pars_wrapped = [] w = wrap(width = 74, fix_sentence_endings = True) for i in desc_pars: desc_pars_wrapped.append(w.fill(i)) e['Description'] = "%s\n%s" % (substitute(desc_short, vars), '\n.\n'.join(desc_pars_wrapped)) def process_package(in_entry, vars): e = entry() for i in in_entry.iterkeys(): if i in (('Depends', 'Provides', 'Suggests', 'Recommends', 'Conflicts')): process_depends(i, e, in_entry, vars) elif i == 'Description': process_description(e, in_entry, vars) elif i[:2] == 'X-': pass else: e[i] = substitute(in_entry[i], vars) return e def process_packages(in_entries, vars): entries = [] for i in in_entries: entries.append(process_package(i, vars)) return entries def process_real_image(in_entry, vars): in_entry = in_entry.copy() if vars.has_key('desc'): in_entry['Description'] += "\n.\n" + vars['desc'] entry = process_package(in_entry, vars) for i in (('Depends', 'Provides', 'Suggests', 'Recommends', 'Conflicts')): value = [] tmp = entry.get(i, None) if tmp: tmp = tmp.split(',') for t in tmp: value.append(t.strip()) if i == 'Depends': t = vars.get('depends', None) if t is not None: value.append(t) elif i == 'Provides': t = vars.get('provides', None) if t is not None: value.append(t) elif i == 'Suggests': t = vars.get('suggests', None) if t is not None: value.append(t) elif i == 'Recommends': t = vars.get('recommends', None) if t is not None: value.append(t) elif i == 'Conflicts': t = vars.get('conflicts', None) if t is not None: value.append(t) entry[i] = ', '.join(value) return entry def process_real_tree(in_entry, changelog, vars): entry = process_package(in_entry, vars) tmp = changelog[0]['Version']['upstream'] versions = [] for i in changelog: if i['Version']['upstream'] != tmp: break versions.insert(0, i['Version']) for i in (('Depends', 'Provides')): value = [] tmp = entry.get(i, None) if tmp: value.extend([j.strip() for j in tmp.split(',')]) if i == 'Depends': value.append("linux-patch-debian-%(version)s (= %(source)s)" % changelog[0]['Version']) value.append(' | '.join(["linux-source-%(version)s (= %(source)s)" % v for v in versions])) elif i == 'Provides': value.extend(["linux-tree-%(source)s" % v for v in versions]) entry[i] = ', '.join(value) return entry def substitute(s, vars): def subst(match): return vars[match.group(1)] return re.sub(r'@([a-z_]+)@', subst, s) def write_control(list): write_rfc822(file("control", 'w'), list) def write_makefile(list): f = file("rules.gen", 'w') for i in list: f.write("%s\n" % i[0]) if i[1] is not None: list = i[1] if isinstance(list, basestring): list = list.split('\n') for j in list: f.write("\t%s\n" % j) def write_rfc822(f, list): for entry in list: for key, value in entry.iteritems(): f.write("%s:" % key) if isinstance(value, tuple): value = value[0].join(value[1]) for k in value.split('\n'): f.write(" %s\n" % k) f.write('\n') def process_real_arch(packages, config, arch, vars): config_entry = config[arch,] vars.update(config_entry) if not config_entry.get('available', True): return for subarch in config_entry['subarches']: process_real_subarch(packages, config, arch, subarch, vars.copy() ) def process_real_flavour(packages, config, arch, subarch, flavour, vars ): config_entry = config[arch, subarch, flavour] vars.update(config_entry) vars['flavour'] = flavour if not vars.has_key('class'): vars['class'] = '%s-class' % flavour if not vars.has_key('longclass'): vars['longclass'] = vars['class'] module = read_template("modules") packages_own = [] packages_own.append(process_package(module[0], vars)) for package in packages_own: name = package['Package'] if packages.has_key(name): package = packages.get(name) package['Architecture'][1].append(arch) else: package['Architecture'] = (' ', [arch]) packages.append(package) def process_real_main(packages, config, version, abiname, kpkg_abiname, changelog, vars): source = read_template("source") packages['source'] = process_package(source[0], vars) common = read_template("common") packages.extend(process_packages(common, vars)) for arch in iter(config['base']['arches']): process_real_arch(packages, config, arch, vars.copy()) def process_real_subarch(packages, config, arch, subarch, vars ): if subarch == 'none': vars['subarch'] = '' else: vars['subarch'] = '%s-' % subarch config_entry = config[arch, subarch] vars.update(config_entry) for flavour in config_entry['flavours']: process_real_flavour(packages, config, arch, subarch, flavour, vars.copy() ) def main(): changelog = read_changelog() c = config() version, abiname, kpkg_abiname, vars = process_changelog({}, c, changelog) packages = packages_list() process_real_main(packages, c, version, abiname, kpkg_abiname, changelog, vars) write_control(packages.itervalues()) if __name__ == '__main__': main() debian/control-generator/get_header-kernel-dirs.py0000755000000000000000000000365010357734035017526 0ustar #!/usr/bin/env python # This is a modified version of gencontrol.py of the Debian kernel team # Thanks to the Debian Kernel Team for their work. # This program prints the 'kernel-header-dirs' var for an arch. Or # prints all dirs if no arch is given. # It need the proper linux-header-2.6.X package installed. There is # a soft link arch point to /usr/linux-header-2.6.X/debian/arch # and a link to /usr/linux-header-2.6.X-X/debian/changelog # # Copyright by # Debian Kernel Team # Victor Seva Lopez # License: # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License with # the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; # if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA # # See /usr/share/common-licenses/GPL for the full text of the GPL. import os, os.path, re, sys, textwrap, ConfigParser sys.path.append("lib") from debian_linux import * def main(): c = config() if len(sys.argv) == 2 : arch = sys.argv[1] if c.has_key(arch): print c[arch]['kernel-header-dirs'] elif len(sys.argv) == 1: for arch in iter(c['base']['arches']): config_entry = c[arch,] if config_entry.get('available', True): print arch, c[arch]['kernel-header-dirs'] else: print "Just one parameter please" if __name__ == '__main__': main() debian/prism2-usb-firmware-installer.install0000644000000000000000000000004511332372004016360 0ustar debian/tmp/usr/bin/srec2fw /usr/bin/ debian/prism2-usb-firmware-installer.copyright0000644000000000000000000000164711332372004016733 0ustar Copyright by Victor Seva and Enrico Tassi , 2005-2006, Tormod Volden , 2009-2010 These scripts are free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL'. /usr/bin/srec2fw: * Copyright © 2009 Karl Relton * Copyright © 2008 David Woodhouse * Copyright © 2005 Jan Harkes * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. debian/srec2fw.10000644000000000000000000000135711332652067010636 0ustar .\" .\" This man page was written by Tormod Volden for Debian .\" .TH SREC2FW "1" .SH NAME srec2fw \- convert from SREC format to linux kernel format .SH SYNOPSIS .B srec2fw [\fIOPTION\fR]... [\fIsrc.hex\fR] [\fIdst.fw\fR] .SH DESCRIPTION Converts srec firmware files into binary representation for use by Linux kernel. .PP If the source file is `-' stdin will be read, and if destination file is `-' the converted data will be written to stdout. .TP \fB\-w\fR Source file uses wide records (16-bit length) .SH "RETURN VALUE" Returns 0 if no errors were encountered. .SH EXAMPLES .B srec2fw firmware.hex firmware.fw .SH AUTHOR Karl Relton , David Woodhouse , Jan Harkes debian/prism2-usb-firmware-installer.preinst0000644000000000000000000000027011334112610016373 0ustar #!/bin/sh -e # Clean up after 0.2.9+dfsg-3 which used /var/lib if [ "$1" = "upgrade" -a "$2" = "0.2.9+dfsg-3" ]; then rm -rf /var/lib/prism2-usb-firmware-installer fi #DEBHELPER# debian/srec2fw.c0000644000000000000000000001360111332372004010701 0ustar /* * Parser/loader for SREC formatted data. * * Adapted from ihex2fw.c * * Copyright © 2009 Karl Relton * Copyright © 2008 David Woodhouse * Copyright © 2005 Jan Harkes * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #include #include #include #include #include #include #include #include #include #include #include #define _GNU_SOURCE #include /* Define a special address for S7 start address records */ #define S3ADDR_START (0xff400000UL) struct srec_binrec { struct srec_binrec *next; /* not part of the real data structure */ uint32_t addr; uint16_t len; uint8_t data[]; }; /** * nybble/hex are little helpers to parse hexadecimal numbers to a byte value **/ static uint8_t nybble(const uint8_t n) { if (n >= '0' && n <= '9') return n - '0'; else if (n >= 'A' && n <= 'F') return n - ('A' - 10); else if (n >= 'a' && n <= 'f') return n - ('a' - 10); return 0; } static uint8_t hex(const uint8_t *data, uint8_t *crc) { uint8_t val = (nybble(data[0]) << 4) | nybble(data[1]); *crc += val; return val; } static int process_srec(uint8_t *data, ssize_t size); static void file_record(struct srec_binrec *record); static int output_records(int outfd); static int wide_records = 0; int usage(void) { fprintf(stderr, "srec2fw: Convert srec files into binary " "representation for use by Linux kernel\n"); fprintf(stderr, "usage: srec2fw [] \n"); fprintf(stderr, " -w: wide records (16-bit length)\n"); return 1; } int main(int argc, char **argv) { int infd, outfd; struct stat st; uint8_t *data; int opt; while ((opt = getopt(argc, argv, "ws")) != -1) { switch (opt) { case 'w': wide_records = 1; break; default: return usage(); } } if (optind + 2 != argc) return usage(); if (!strcmp(argv[optind], "-")) infd = 0; else infd = open(argv[optind], O_RDONLY); if (infd == -1) { fprintf(stderr, "Failed to open source file: %s", strerror(errno)); return usage(); } if (fstat(infd, &st)) { perror("stat"); return 1; } data = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, infd, 0); if (data == MAP_FAILED) { perror("mmap"); return 1; } if (!strcmp(argv[optind+1], "-")) outfd = 1; else outfd = open(argv[optind+1], O_TRUNC|O_CREAT|O_WRONLY, 0644); if (outfd == -1) { fprintf(stderr, "Failed to open destination file: %s", strerror(errno)); return usage(); } if (process_srec(data, st.st_size)) return 1; output_records(outfd); return 0; } static int process_srec(uint8_t *data, ssize_t size) { struct srec_binrec *record, *record_new; uint32_t offset = 0; uint8_t type, crc, crcbyte = 0; int i, j; int line = 1; int len; i = 0; next_record: /* search for the start of record character */ while (i < size) { if (data[i] == '\n') line++; if (data[i++] == 'S') break; } if (i >= size) return 0; /* Minimum record length would be about 10 characters */ if (i + 10 > size) { fprintf(stderr, "Can't find valid record at line %d\n", line); return -EINVAL; } crc = 1; /* CRC seeded with 1 for each line */ type = nybble(data[i]); i++; len = hex(data + i, &crc); i += 2; if (wide_records) { len <<= 8; len += hex(data + i, &crc); i += 2; } len = len - 5; record = malloc((sizeof (*record) + len + 3) & ~3); if (!record) { fprintf(stderr, "out of memory for records\n"); return -ENOMEM; } memset(record, 0, (sizeof(*record) + len + 3) & ~3); record->len = len; /* now check if we have enough data to read everything */ if (i + 10 + (record->len * 2) > size) { fprintf(stderr, "Not enough data to read complete record at line %d\n", line); return -EINVAL; } record->addr = hex(data + i, &crc) << 24; i += 2; record->addr |= hex(data + i, &crc) << 16; i += 2; record->addr |= hex(data + i, &crc) << 8; i += 2; record->addr |= hex(data + i, &crc); i += 2; for (j = 0; j < record->len; j++, i += 2) record->data[j] = hex(data + i, &crc); /* check CRC */ crcbyte = hex(data + i, &crc); i += 2; if (crc != 0) { fprintf(stderr, "CRC failure at line %d: got 0x%X, expected 0x%X\n", line, crcbyte, (unsigned char)(crcbyte-crc)); return -EINVAL; } /* Done reading the record */ switch (type) { case 7: /* S7 Start Address Record - we will mutate this into a new S3 record, with the address becoming the data portion */ record_new = malloc((sizeof (*record) + 4 + 3) & ~3); if (!record_new) { fprintf(stderr, "out of memory for records\n"); return -ENOMEM; } memset(record_new, 0, (sizeof(*record) + 4 + 3) & ~3); record_new->len = 4; record_new->addr = S3ADDR_START; record->addr = htole32(record->addr); memcpy(record_new->data, &(record->addr), 4); file_record(record_new); goto next_record; case 3: /* S3 Address Record */ file_record(record); goto next_record; default: fprintf(stderr, "Unknown record (type %02X)\n", type); } return -EINVAL; } static struct srec_binrec *records; static void file_record(struct srec_binrec *record) { struct srec_binrec **p = &records; while ((*p) && ((*p)->addr < record->addr)) p = &((*p)->next); record->next = *p; *p = record; } static int output_records(int outfd) { unsigned char zeroes[6] = {0, 0, 0, 0, 0, 0}; struct srec_binrec *p = records; while (p) { uint16_t writelen = (p->len + 9) & ~3; p->addr = htonl(p->addr); p->len = htons(p->len); write(outfd, &p->addr, writelen); p = p->next; } /* EOF record is zero length, since we don't bother to represent the type field in the binary version */ write(outfd, zeroes, 6); return 0; } debian/watch0000644000000000000000000000035011027144430010211 0ustar # test this watch file using: # uscan --watchfile debian/watch --upstream-version 0.0.1 --package linux-wlan-ng # version=3 opts=dversionmangle=s/\+dfsg// \ ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-([\d.]+).tar.bz2 debian/install.modules.in0000644000000000000000000000002010364414707012631 0ustar debian/tmp/lib/ debian/linux-wlan-ng-source.dirs0000644000000000000000000000001110356774355014056 0ustar usr/src/ debian/prism2-usb-firmware-installer.postinst0000644000000000000000000000153711334110243016601 0ustar #!/bin/sh -e UPSTREAM='http://git.shaftnet.org/git/gitweb.cgi?p=linux-wlan-ng.git;a=blob_plain;f=src/prism2/ru010803.hex;hb=HEAD' HEXFILE=/lib/firmware/ru010803.hex FWFILE=/lib/firmware/ru010803.fw checkfile () { md5sum --check <<- EOMD5SUM 3eba76f7e3a10d64071b1822a229f49e $HEXFILE EOMD5SUM } # Fetch firmware if needed if [ ! -s $HEXFILE ] || ! checkfile ; then rm -f $HEXFILE wget -O $HEXFILE $UPSTREAM || cat <<- EOMSG 1>&2 Warning: Failed to download firmware for prism2-usb. Please run "dpkg-reconfigure prism2-usb-firmware-installer" again when networking is up, or copy the firmware manually to $HEXFILE and rerun the command to convert the firmware. EOMSG fi # Convert from SREC format (.hex) to kernel (.fw) if [ -s $HEXFILE ] && checkfile ; then echo Converting firmware file /usr/bin/srec2fw $HEXFILE $FWFILE fi #DEBHELPER# debian/linux-wlan-ng-doc.docs0000644000000000000000000000007110356774355013320 0ustar FAQ README THANKS TODO doc/config.* doc/*.txt doc/prism2 debian/rules.firmware0000644000000000000000000000412510551412321012052 0ustar #!/usr/bin/make -f # debug #export DH_VERBOSE=y #export TO_NULL=&>/dev/null #TO_NULL=&>/dev/null #MAKEFLAGS+=-s --no-print-directory #export DH_OPTIONS # used by debian/config-for-lwng that is sourced by ./Configure # in this way no modules are built and no errors are reported if there are no # kenrel headers ENV=BUILD_MODULES=n BUILD_UTILS=y TARGET_DIR=debian/tmp/etc/wlan/ TARGET_DIR_COPYRIGHT=debian/tmp/usr/share/doc/linux-wlan-ng-firmware-files/ ###################### CONFIGURATION ################################### configure-stamp: @echo detected flavours for current arch are: $(flavours) # to make the configure script happy we have to provide a real # kernel source tree. $(ENV) CC=$(CC) ./Configure -d debian/config-for-lwng $(TO_NULL) touch configure-stamp # install stuff that is arch dependent install-stamp: build-stamp dh_testdir dh_testroot dh_clean -k dh_installdirs # firmware files mkdir -p $(TARGET_DIR) for x in src/prism2/*.hex ; do \ if [ -f "$$x" ]; then \ SUFFIX=`echo $$x | cut -c12-13`;\ cp $$x $(TARGET_DIR)prism2_$$SUFFIX.hex ; \ fi; \ done # copyright mkdir -p $(TARGET_DIR_COPYRIGHT) cp src/prism2/README.firmware $(TARGET_DIR_COPYRIGHT)/copyright # prism2dl mkdir -p debian/tmp/sbin cp src/prism2/download/prism2dl debian/tmp/sbin/ if [ -f man/prism2dl.1.no ]; then \ mv man/prism2dl.1.no man/prism2dl.1; \ fi touch install-stamp binary-indep: build-stamp: configure-stamp dh_testdir # prism2dl binary $(MAKE) -C src/mkmeta $(TO_NULL) $(MAKE) -C src/prism2/download $(TO_NULL) touch build-stamp build: build-stamp ############################ CLEAN ################################ clean: dh_clean debian/postinst # stamps $(RM) configure-stamp build-stamp install-stamp ########################## MAIN ################################## binary-arch: install-stamp dh_installdirs dh_install dh_installchangelogs dh_strip dh_fixperms dh_shlibdeps dh_installdeb dh_installman $(DH_OPTIONS) man/prism2dl.1 dh_gencontrol dh_compress dh_md5sums dh_builddeb binary: binary-arch .PHONY: build clean binary-arch binary