From 58a1113c3841aea0bdd61b5f16d164d2290404c6 Mon Sep 17 00:00:00 2001 From: ColorfulRhino <131405023+ColorfulRhino@users.noreply.github.com> Date: Sat, 29 Jun 2024 13:01:43 +0200 Subject: [PATCH] packages: Remove all extras-buildpkgs since they're not used anymore These extras are leftovers of a legacy from the past. See https://github.com/armbian/build/issues/6820#issuecomment-2198054353 --- .../extras-buildpkgs/90-hostapd-realtek.conf | 17 - packages/extras-buildpkgs/90-hostapd.conf | 17 - packages/extras-buildpkgs/90-htop.conf | 25 - packages/extras-buildpkgs/90-sunxi-tools.conf | 18 - packages/extras-buildpkgs/README.md | 31 - packages/extras-buildpkgs/SOURCES | 11 - packages/extras-buildpkgs/buildpkg-public.gpg | Bin 1548 -> 0 bytes packages/extras-buildpkgs/buildpkg.gpg | Bin 2942 -> 0 bytes packages/extras-buildpkgs/buildpkg.key | 38 - .../hostapd-realtek/debian/NEWS | 20 - .../hostapd-realtek/debian/README.source | 128 - .../hostapd-realtek/debian/changelog | 39 - .../hostapd-realtek/debian/changelog.hostapd | 54 - .../hostapd-realtek/debian/compat | 1 - .../debian/config/config_realtek | 209 - .../debian/config/hostapd.conf | 48 - .../hostapd-realtek/debian/control | 55 - .../hostapd-realtek/debian/copyright | 422 -- .../debian/hostapd-realtek.README.Debian | 38 - .../debian/hostapd-realtek.default | 20 - .../debian/hostapd-realtek.examples | 6 - .../debian/hostapd-realtek.init | 67 - .../debian/hostapd-realtek.install | 2 - .../debian/hostapd-realtek.links | 2 - .../debian/hostapd-realtek.manpages | 2 - .../debian/hostapd-realtek.preinst | 30 - .../debian/ifupdown/hostapd.sh | 146 - .../debian/patches/300-noscan.patch | 62 - .../debian/patches/realtek.patch | 2770 ------------- .../hostapd-realtek/debian/patches/series | 3 - .../debian/patches/session-ticket.patch | 12 - .../hostapd-realtek/debian/rules | 67 - .../hostapd-realtek/debian/source/format | 1 - .../hostapd-realtek/debian/source/options | 2 - packages/extras-buildpkgs/hostapd/debian/NEWS | 20 - .../hostapd/debian/README.source | 128 - .../extras-buildpkgs/hostapd/debian/changelog | 2357 ----------- .../hostapd/debian/changelog.hostapd | 483 --- .../extras-buildpkgs/hostapd/debian/compat | 1 - .../hostapd/debian/config/config_default | 316 -- .../hostapd/debian/config/hostapd.conf | 48 - .../extras-buildpkgs/hostapd/debian/control | 56 - .../extras-buildpkgs/hostapd/debian/copyright | 422 -- .../hostapd/debian/hostapd.README.Debian | 38 - .../hostapd/debian/hostapd.default | 20 - .../hostapd/debian/hostapd.examples | 6 - .../hostapd/debian/hostapd.init | 67 - .../hostapd/debian/hostapd.install | 2 - .../hostapd/debian/hostapd.links | 2 - .../hostapd/debian/hostapd.lintian-overrides | 3 - .../hostapd/debian/hostapd.manpages | 2 - .../hostapd/debian/hostapd.preinst | 30 - .../hostapd/debian/ifupdown/hostapd.sh | 146 - ..._freq_to_channel_ext-to-cover-channe.patch | 46 - .../hostapd/debian/patches/300-noscan.patch | 58 - .../hostapd/debian/patches/series | 3 - .../debian/patches/session-ticket.patch | 12 - .../extras-buildpkgs/hostapd/debian/rules | 64 - .../hostapd/debian/source/format | 1 - .../extras-buildpkgs/htop/debian/changelog | 532 --- packages/extras-buildpkgs/htop/debian/clean | 2 - packages/extras-buildpkgs/htop/debian/compat | 1 - packages/extras-buildpkgs/htop/debian/control | 29 - .../extras-buildpkgs/htop/debian/copyright | 34 - packages/extras-buildpkgs/htop/debian/docs | 2 - packages/extras-buildpkgs/htop/debian/install | 1 - .../patches/780-fix-option-string.patch | 23 - .../patches/avafinger-cpu-monitor.patch | 3577 ----------------- .../patches/cpu-temperatute-from-hwmon.patch | 14 - .../fix-cpufreq-meter-for-non-root.patch | 56 - .../fix-cpufreq-meter-on-biglittle.patch | 29 - .../debian/patches/fix-linux-process.patch | 13 - ...ffer-writes-in-avafinger-cpu-monitor.patch | 129 - .../patches/remove-fancy-flashing.patch | 356 -- .../htop/debian/patches/series | 8 - packages/extras-buildpkgs/htop/debian/rules | 23 - .../htop/debian/source/format | 1 - .../htop/debian/upstream/signing-key.asc | 65 - packages/extras-buildpkgs/htop/debian/watch | 4 - .../sunxi-tools/debian/changelog | 23 - .../sunxi-tools/debian/compat | 1 - .../sunxi-tools/debian/control | 29 - .../sunxi-tools/debian/copyright | 96 - .../extras-buildpkgs/sunxi-tools/debian/rules | 21 - .../sunxi-tools/debian/source/format | 1 - .../sunxi-tools/debian/source/patch-header | 5 - .../sunxi-tools/debian/sunxi-tools.dirs | 2 - .../sunxi-tools/debian/sunxi-tools.docs | 1 - .../sunxi-tools/debian/sunxi-tools.postinst | 26 - .../sunxi-tools/debian/sunxi-tools.udev | 1 - 90 files changed, 13799 deletions(-) delete mode 100644 packages/extras-buildpkgs/90-hostapd-realtek.conf delete mode 100644 packages/extras-buildpkgs/90-hostapd.conf delete mode 100644 packages/extras-buildpkgs/90-htop.conf delete mode 100644 packages/extras-buildpkgs/90-sunxi-tools.conf delete mode 100644 packages/extras-buildpkgs/README.md delete mode 100644 packages/extras-buildpkgs/SOURCES delete mode 100644 packages/extras-buildpkgs/buildpkg-public.gpg delete mode 100644 packages/extras-buildpkgs/buildpkg.gpg delete mode 100644 packages/extras-buildpkgs/buildpkg.key delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/NEWS delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/README.source delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/changelog delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/changelog.hostapd delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/compat delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/config/config_realtek delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/config/hostapd.conf delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/control delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/copyright delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.README.Debian delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.default delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.examples delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.init delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.install delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.links delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.manpages delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.preinst delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/ifupdown/hostapd.sh delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/patches/300-noscan.patch delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/patches/realtek.patch delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/patches/series delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/patches/session-ticket.patch delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/rules delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/source/format delete mode 100644 packages/extras-buildpkgs/hostapd-realtek/debian/source/options delete mode 100644 packages/extras-buildpkgs/hostapd/debian/NEWS delete mode 100644 packages/extras-buildpkgs/hostapd/debian/README.source delete mode 100644 packages/extras-buildpkgs/hostapd/debian/changelog delete mode 100644 packages/extras-buildpkgs/hostapd/debian/changelog.hostapd delete mode 100644 packages/extras-buildpkgs/hostapd/debian/compat delete mode 100644 packages/extras-buildpkgs/hostapd/debian/config/config_default delete mode 100644 packages/extras-buildpkgs/hostapd/debian/config/hostapd.conf delete mode 100644 packages/extras-buildpkgs/hostapd/debian/control delete mode 100644 packages/extras-buildpkgs/hostapd/debian/copyright delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.README.Debian delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.default delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.examples delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.init delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.install delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.links delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.lintian-overrides delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.manpages delete mode 100644 packages/extras-buildpkgs/hostapd/debian/hostapd.preinst delete mode 100644 packages/extras-buildpkgs/hostapd/debian/ifupdown/hostapd.sh delete mode 100644 packages/extras-buildpkgs/hostapd/debian/patches/0006-Extend-ieee80211_freq_to_channel_ext-to-cover-channe.patch delete mode 100644 packages/extras-buildpkgs/hostapd/debian/patches/300-noscan.patch delete mode 100644 packages/extras-buildpkgs/hostapd/debian/patches/series delete mode 100644 packages/extras-buildpkgs/hostapd/debian/patches/session-ticket.patch delete mode 100644 packages/extras-buildpkgs/hostapd/debian/rules delete mode 100644 packages/extras-buildpkgs/hostapd/debian/source/format delete mode 100644 packages/extras-buildpkgs/htop/debian/changelog delete mode 100644 packages/extras-buildpkgs/htop/debian/clean delete mode 100644 packages/extras-buildpkgs/htop/debian/compat delete mode 100644 packages/extras-buildpkgs/htop/debian/control delete mode 100644 packages/extras-buildpkgs/htop/debian/copyright delete mode 100644 packages/extras-buildpkgs/htop/debian/docs delete mode 100644 packages/extras-buildpkgs/htop/debian/install delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/780-fix-option-string.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/avafinger-cpu-monitor.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/cpu-temperatute-from-hwmon.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-for-non-root.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-on-biglittle.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/fix-linux-process.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/fix-unchecked-buffer-writes-in-avafinger-cpu-monitor.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/remove-fancy-flashing.patch delete mode 100644 packages/extras-buildpkgs/htop/debian/patches/series delete mode 100755 packages/extras-buildpkgs/htop/debian/rules delete mode 100644 packages/extras-buildpkgs/htop/debian/source/format delete mode 100644 packages/extras-buildpkgs/htop/debian/upstream/signing-key.asc delete mode 100644 packages/extras-buildpkgs/htop/debian/watch delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/changelog delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/compat delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/control delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/copyright delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/rules delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/source/format delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/source/patch-header delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.dirs delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.docs delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.postinst delete mode 100644 packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.udev diff --git a/packages/extras-buildpkgs/90-hostapd-realtek.conf b/packages/extras-buildpkgs/90-hostapd-realtek.conf deleted file mode 100644 index 4ca3afbba1b2..000000000000 --- a/packages/extras-buildpkgs/90-hostapd-realtek.conf +++ /dev/null @@ -1,17 +0,0 @@ -# hostapd-realtek -local package_name="hostapd-realtek" -local package_repo="http://w1.fi/hostap.git" -local package_ref="tag:hostap_2_5" -local package_upstream_version="3:2.5-4" -local package_install_target="hostapd-realtek" -local package_component="${release}-utils" - -package_checkbuild() -{ - true -} - -package_checkinstall() -{ - false -} diff --git a/packages/extras-buildpkgs/90-hostapd.conf b/packages/extras-buildpkgs/90-hostapd.conf deleted file mode 100644 index cc53c93a0c89..000000000000 --- a/packages/extras-buildpkgs/90-hostapd.conf +++ /dev/null @@ -1,17 +0,0 @@ -# hostapd -local package_name="hostapd" -local package_repo="http://w1.fi/hostap.git" -local package_ref="tag:hostap_2_10" -local package_upstream_version="3:2.10-6" -local package_install_target="hostapd" -local package_component="${release}-utils" - -package_checkbuild() -{ - true -} - -package_checkinstall() -{ - true -} diff --git a/packages/extras-buildpkgs/90-htop.conf b/packages/extras-buildpkgs/90-htop.conf deleted file mode 100644 index 6e93beb215e2..000000000000 --- a/packages/extras-buildpkgs/90-htop.conf +++ /dev/null @@ -1,25 +0,0 @@ -# hostapd -local package_name="htop" -local package_repo="https://github.com/hishamhm/htop" -local package_ref="tag:2.2.0" - -local package_upstream_version="2.2.0-5" -local package_builddeps="debhelper dpkg-dev libhwloc-dev libncurses5-dev libncursesw5-dev pkg-config" -local package_install_target="htop" -local package_component="${release}-utils" - -if [[ $release == focal || $release == groovy || $release == bullseye ]]; then - package_builddeps+=" python3-minimal:native" -else - package_builddeps+=" python-minimal:native" -fi - -package_checkbuild() -{ - [[ $release != stretch && $release != jessie ]] -} - -package_checkinstall() -{ - true -} diff --git a/packages/extras-buildpkgs/90-sunxi-tools.conf b/packages/extras-buildpkgs/90-sunxi-tools.conf deleted file mode 100644 index 4d34cfdde1c1..000000000000 --- a/packages/extras-buildpkgs/90-sunxi-tools.conf +++ /dev/null @@ -1,18 +0,0 @@ -# sunxi-tools -local package_name="sunxi-tools" -local package_repo="https://github.com/linux-sunxi/sunxi-tools.git" -local package_ref="branch:master" -local package_upstream_version="1.4.2-2" - -local package_install_target="sunxi-tools" -local package_component="${release}-utils" - -package_checkbuild() -{ - true -} - -package_checkinstall() -{ - [[ $LINUXFAMILY == sun*i ]] -} diff --git a/packages/extras-buildpkgs/README.md b/packages/extras-buildpkgs/README.md deleted file mode 100644 index e6452854c7e8..000000000000 --- a/packages/extras-buildpkgs/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# Requirements - -* Xenial build host - -* Extra 5GB of disk space - -# Limitations - -* Packages are built only for Jessie, Xenial and Stretch targets, installing on older distributions may be done manually if dependencies can be satisfied - -# TODO - -### Process - -* Switch from qemu & distcc to multiarch cross-compiling if possible - -### Package-specific: - -* libvdpau-sunxi: select branch (master or dev) - -## Notes - -libcedrus compiled without USE_UMP=1 requires access to /dev/ion - -libcedrus compiled with USE_UMP=1 caused segfault last time I tested video playback with mpv - -libmali-sunxi-r3p0 contains *.so symlinks (instead of libmali-sunxi-dev) to help searching libraries by SONAME for libMali.so - -libmali-sunxi-r3p0 is packaged differently for [Debian](https://www.debian.org/doc/debian-policy/ap-pkg-diversions.html) and [Ubuntu](https://wiki.ubuntu.com/X/EGLDriverPackagingHOWTO) - -libglshim1 is installed to private directory (`/usr/lib/arm-linux-gnueabihf/glshim`) and can be activated by using LD_LIBRARY_PATH diff --git a/packages/extras-buildpkgs/SOURCES b/packages/extras-buildpkgs/SOURCES deleted file mode 100644 index dade96c50635..000000000000 --- a/packages/extras-buildpkgs/SOURCES +++ /dev/null @@ -1,11 +0,0 @@ -Origin of "debianization" archives/overlays: -guvcview: http://packages.ubuntu.com/xenial/guvcview / http://archive.ubuntu.com/ubuntu/pool/universe/g/guvcview/ -hostapd: http://packages.ubuntu.com/xenial/hostapd / http://archive.ubuntu.com/ubuntu/pool/main/w/wpa/ -libcedrus: http://ppa.launchpad.net/longsleep/ubuntu-pine64-flavour-makers/ubuntu/pool/main/libc/libcedrus/ -libcsptr-dev: http://ppa.launchpad.net/snaipewastaken/ppa/ubuntu/pool/main/libc/libcsptr-dev/ -libdri2-1: http://packages.ubuntu.com/xenial/libdri2-1 / http://archive.ubuntu.com/ubuntu/pool/universe/libd/libdri2/ -libump: https://github.com/rellla/libump (http://ppa.launchpad.net/longsleep/ubuntu-pine64-flavour-makers/ubuntu/pool/main/libu/libump/ can be used too) -libvdpau-sunxi: http://ppa.launchpad.net/longsleep/ubuntu-pine64-flavour-makers/ubuntu/pool/main/libv/libvdpau-sunxi/ -sunxi-tools: http://packages.ubuntu.com/ru/xenial/sunxi-tools / http://archive.ubuntu.com/ubuntu/pool/universe/s/sunxi-tools/ -swconfig: https://github.com/jekader/swconfig -xf86-video-fbturbo: https://github.com/igorpecovnik/lib/pull/384 diff --git a/packages/extras-buildpkgs/buildpkg-public.gpg b/packages/extras-buildpkgs/buildpkg-public.gpg deleted file mode 100644 index 690417f822a8b5532fa6476adecea567395dced1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1548 zcmV+n2J`uu0SyFKq_DC92mrMoE>yyVicJ_%*1jH~y}upImXcYEjaa5CiVS>u7r#eG zBHlUK0(<_a)9wnD8SxCdjem*k5!}{l$Y7&RPazquyA$H$>OZh)uVKlU&4Z79hvwY{Z?nKpcRcQe3<&ntD#GIA`+%_31;#5}JMHe?L%b4BSXhJ{%Qa zvDowfBd~53;(6)rjk3JgEg4%niJF%^G>5yBJG2PdwYzOtnzY;&J4xW{u95~#y2HJG zw-W`aV4%uddWUt>=nnu90RRECWN0LVQg$^Zf78HVPk7yXJvCBWOZ_BZf77ta&2O1VQwI4ZDD6+AY*c6VRUJ4 zZYdxRKx}VgVQgq`b96q50XPH`0RjLb1p-&3u(ARhF9r(<2nPcK1{DYb2?`4Y z76JnS0v-VZ7k~f?2@sOG4dIejM5bb`2mqbH(iAzKjrFrdmH6Du{4@$Vb}ov&GPIBX7BEq~LCQih$N>XfY-c1>wn%dV?x4}-+9_o=X|2uzsHAY*OKEHn8Q)Up zoNmt_sOUe@jTBlC64OHTj#MPEdH_ljYPDZ%Udpzr_iM1*@6~T32C}YYH-(Dw;w&Zh zfPTr!FYXt&9j*tsiElM79WB-DyRvwV&3K0oK8AVUJI>Dj8mG<$Llv4UHoqX&Y}=Ay zt*Ly98S?dFg-nq4RQ1VY#c^wk(!+V${|nyZrj}aW%_UZ9x}JWGo^_opC0Zmtvfpvx zcY+-srSwaVOI2g*RU{mU?#g4Ax^b`q00X%J4Fp%Du(AON0Le-iwu~dE__6Xfc-Xe* z7PIaS;d31-yG_>z3I+s@&Zo*=E?C$lAHauf2{7UuF{kCvh&isv>MVy?6*BkaP5xgU zKNzS-VHk-z&(r2tu7KSQ{`=)ofzq^jb#=@wh#U*Fm&w@rfu^1>4pgE8j>f`d{M zGb4XtJ8Oz!2fFS`ngH=3ux?fVRn~9QYi?j4z6gl}i+vuEqDJ760tRdhsQ%=40)q?@L5 z$w(rxQO0?#{Yu4Z%mlEH&bXvfMM?Wq>n(HrUvRY_XeO8`gpRDw3RrJPVE%(b|F9|z z-GG{WpiDCqkma8H;s$DEBkGm3{VAZ%@LM9--K>s5Hi<(Qq~BKPh!m3|uOPSyyVicJ_%*1jH~y}upImXcYEjaa5CiVS>u7r#eG zBHlUK0(<_a)9wnD8SxCdjem*k5!}{l$Y7&RPazquyA$H$>OZh)uVKlU&4Z79hvwY{Z?nKpcRcQe3<&ntD#GIA`+%_31;#5}JMHe?L%b4BSXhJ{%Qa zvDowfBd~53;(6)rjk3JgEg4%niJF%^G>5yBJG2PdwYzOtnzY;&J4xW{u95~#y2HJG zw-W`aV4%uddWUt>=nnu90RRF12Ll3aiYaZEm$TPkH{Mc0a}R^SO!Ck8h?@bu@~VZI zB!jh;f)X*B=D0uvRpG8bs?)3IYD$TMyr01~jzdD2nZBFVQ%O)0rFfH}(O}$L0rMyd zkF<32N|?(8U_a)ooCX<$8^oF!3+n|k#Nu2y+o*T05)3kHHoAapP8(Agfj(!pj%!TNiJ%bQIhVuWEf)zLsQn*i1C88SGEB?yHm4(*r`(flwPvI4XsBv> zHSml|wbuJQ(CJvt8kMaZEQVa7I47AE*EH^$ljUHB(1WNG6ZlXO9dywrL><7utOlvT zsheQKBX_*j{<=$Be#i?Li7KxN9Eb>wd*H|K%W~!hrtHs0(}$;28)R@rNqhz?tx}Vv z4C-*G7rolr-f>}9NE5^xsBa@1668m*ObUJ+Yg$Di+GdFci&7~t&N3y=6Imgf5?~`X z*nPepM+9+Q7KjnYbFw^~EX;QzIdqc;9o$q;$Z=ug03DuJsn!YSv}QqaZDMI*ZXjZH zX>4R=av&&FWo>Y8a$$0LAZulLAZBlJAZc!MbYX04X>MmAaA9L>VP|D?AY^rNX>MmA zL2_+kX<=?4X>DO=Wgug6Wnpw_Z*D0dJaTVubU{v3dYX6Kb_zY+lN? zs`qQK+wawHBL=drWjBS2^5QHd_JDrL$}jF0w;iqrxQTByE*&k^?7Omfjm>z64?c!@ z-#gCE{u-yw1w$2@D>lC%)@<97VXdiriW&0tVuehQ_Eh!BW5sc6i_*h++W!mQs2Hii0;Z`m%4GV0ssJ=1I7eb zq_DC92mr}S7`BWfr}(k*Hh9>!=N7Z>4&iehD!WbB2MPuRj?SmbUM^VJB_F_tYzZ*p z95JWm&xkp$$m%SISQRq&xa?0DQ%`J zDx_TI@vL0Lk3h@09+IiGT#_?n{Y@gbfPu2?+qiU*Qvg<~0Jgf)Bv>86GA+0ArE0-( zB+3$p-u^^)+&^nIK;V7~0RRF12Ll3aiYaZEm$TPk7RYq{DNyA$@q3>n#K?L&#Vwk=%QSqRqoE-Ig9ww~ zyf;+$=;49KZhAW{baG64f+CHTv^o7pT*k5>QC(yXHcRGs6p-IQ&sr7QnqrkD+8S-fDZ}*KP^hcV-iMI(m zj|@fv9zl6Nb+*K_xi-PT0Sfk4EHX$wf8Hvs6RtreAju!wk;IU3RN$d`d3vNzh65Nh zfsOYXwH@AZ)sdKSYNS;wLy74i(hAiuXY)1yH?He(wmnGLsIKU39bq#bYgrE<+=Kjd z+!g34QGEYLVPRF0bwml_0cFe$lRNm_7@s=d_7Qh-@6%@GunWFLUrI`HjC~WqUR8iq z6LbJN=~QjEUW%eO;K9g0dD($pBxs@Xzf;tZ*; zmZMm>?|<=EDl8Zb8KL)K@>0ZK=6G;6y9nwl`8wO^oRWq7TN(-&aFLS7<9Rz^8!J_GL}ASHlAENPrgOKbNyd%wI66Em??ygtj`KqZ%1JMgF^qXDh=I$ntY&4GZc{J zp8MhkYGotpm9+gSpw94HBG}!mjzKnwLl>mqR_KTnlOnGmxE44+pI1VS(?=Sxn0vq| zfT@NPR&1)`;l{P7goh<~xj`@to`okU zK-xO;hD5u(tn`QXub|BUot`346p(K0Mw6v<^TWy diff --git a/packages/extras-buildpkgs/buildpkg.key b/packages/extras-buildpkgs/buildpkg.key deleted file mode 100644 index 59f80d5afd61..000000000000 --- a/packages/extras-buildpkgs/buildpkg.key +++ /dev/null @@ -1,38 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1 - -mQENBFeksLIBCAC1Hy5UwoSKTRhR1r4eoL2/HcyWklmLjVimKooMfHoXv0dHIt45 -2QJ7/qfT7gqVGfEMuo1/iewR3NZqyGCjTk8hGa67E+Lj6j+6VTYOMJDnCJC176rB -XSq3IJIkm1ipQBweYarvNvXq9WOFP/Yv820oyS+1vaWImTZ8eXczwIjPK3XOMnkT -RvOetXf9Ngc1m2WKmejoYz33RXcMBxYhSMSWwzNkl42j6cF+bPXpQ8YSmn3mfz9Q -awzcSE8+HBVfsdjz/yOwbhbieenujbK81y0ZWzqJmpc9NIe7kzu0CNm1u21YmrTc -FjtJ4OuukgZNusO9frcTBalgoMpbeod10+gPABEBAAG0ZkFybWJpYW4gYnVpbGRl -ciAoVGVtcG9yYXJ5IGtleSBmb3IgaW5zdGFsbGluZyBwYWNrYWdlcyBkdXJpbmcg -QXJtYmlhbiBpbWFnZSBjcmVhdGlvbikgPHJvb3RAbG9jYWxob3N0PokBOAQTAQIA -IgUCV6SwsgIbLwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQkrkN4ZJWRKZi -rQgAncDSFDmejfWzRZX43Mz8NAo5di6KxMMg6lDVZHeQMrSP/xYwUbxBykIyyAED -XGxnJFO2SHMC7qDR5dopZTZprc4CqKRw3EtpbBAZ31LnnG7PH6joP9GNFFoQEtNC -9I5UJLF6AEoTarVfbF7Ktqr3a7Db79VvIwayrmU3hYry4iwl9oB+ycov7he3Ha4H -uIlvNS4dLdXsu7J4jc14hw8+hnnfO87O/hqnzgVDFZorNr8g1mzbkmGtqXyKGfL1 -YoVMkPZU9cljxXFri9LDedr/C97jppZa3c0lVmq6nn6NnnWdLCVaJD6y33Hhd4Id -H6X0S45LVWPrVSQciO7KY5e6cbkBDQRXpLCyAQgAyUoYtowjp/ix8jZ42LbnFrPu -DuFzHSq7TdcHCgYEjs6nyl4uWNglH8CHbAkw4hwxp+XPiDmuyOosh1gVMvfkTf5f -HT8YqEdhGIk6z9PmV66A3Q3+++VRgdK0eXV1zC2IHAu0l8nY+oGmni8OVKIDjsbC -ZPzcRNczI39hO2uKYge67kqaAPD+kTIlLVwa2+uH0bopbaYrKqRc5vGsXMSPQMu5 -HpKptVySM2T9TSK3gIGy7Nu4dJFTAFaqALa60iRYHcEyLbfypWrBcSTKEofe/kR3 -3D9rNUDtPYHXkPr291DJd/W2oLVaRmvAMJsJzUJpalkndeY91EDhdZLuRH7sAQAR -AQABiQI+BBgBAgAJBQJXpLCyAhsuASkJEJK5DeGSVkSmwF0gBBkBAgAGBQJXpLCy -AAoJELH9KFlTzV8e4Z0H/1gSFktFVo3WMc42YDgM5IKmnYksdJ+yMkO35QWqhJ3g -3DLWj53kkefmMOF8s5d6vV13gtyaGk3h8ghqL+u6X1Kum4mSaouz9F4UOfk62+ic -koX8WxoKGHCRksfjeTtgGytVdERhzPOSm6SbpnPJSCKxUcZ5rf1KxWrMBLCPzrik -UkVJ+1TrLXP9X3C1H2gmmCmEjqzPClhvR2D+g0L/sCoN3YCafKBMMxSQ5Z774gZq -ZSPqlbT9KaDO8Fsi2N2sjkE2iUMXpN9W6IgUkyKvILgWOD+fV0KN00casJh7wCiA -qYYT48Ul1YVXMR8PhyK/jbsw9x9NHtNvy+Uf+YIffueXxwgApsIAH9z07rhbFq78 -StiCqKb0eSsKbmGbGERjFAsvNqVrFDw5tfSkqYI+GClYqOu4QK16s8nvllkA3/1F -QGWtfoxAOjw1AZjdaWkcF041Dfi8ksWiJ31Wk0NOn1SMP/nkTn3x/HWdPolWI9oc -JaF9WxtL57SVwwI0VSWAd1JPIhXhpmuJwI8NpzWeN4if8ffA+cKmyxO1tlZsquLh -xrWohIcleLlBMAyehScoQNo68oZEu7ys9If3r6Dhicy0PsNkwgJ+yZnar3v35bqW -W/Wfd+vKufrULTWFHlBMSXL1O8PXNqmHvm6dGkq/ZX3mUgQTf+14oeKq63kpIJ1f -MkHaDA== -=6CjZ ------END PGP PUBLIC KEY BLOCK----- diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/NEWS b/packages/extras-buildpkgs/hostapd-realtek/debian/NEWS deleted file mode 100644 index 6291eb688a79..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/NEWS +++ /dev/null @@ -1,20 +0,0 @@ -wpasupplicant (0.6.2-1) unstable; urgency=low - - The -w (wait for network interface to exist) command line option no longer - exists. If you have scripts that require this option, it is time to change - them, or use one of the two supported modes of operation explained at - /usr/share/doc/wpasupplicant/README.modes.gz. - - ifupdown supports hot-plugged network devices via the "allow-hotplug" class - of operation. An example /etc/network/interfaces configuration stanza would - look like: - - allow-hotplug wlan0 - iface wlan0 inet dhcp - wpa-ssid myssid - wpa-psk mysecretpassphrase - - network-manager is also able to handle hot-plugged network devices. - - -- Kel Modderman Mon, 14 Jan 2008 18:02:17 +1000 - diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/README.source b/packages/extras-buildpkgs/hostapd-realtek/debian/README.source deleted file mode 100644 index bb7a4a9d743c..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/README.source +++ /dev/null @@ -1,128 +0,0 @@ -"wpa" sources for Debian ------------------------- - -This "wpa" source package merges wpa_supplicant and hostapd sources, which are -maintained in one source repository[1] upstream and share considerable/ -duplicate amounts of source. Starting with the 1.x branch, both wpa_supplicant -and hostapd are built from this common source package for Debian, while not -released together as tarball by upstream, the source can be obtained from the -upstream git repositories. - -The preferred way to generate the orig.tar.gz is by calling - - $ debian/rules get-orig-source - -which will clone the upstream git repository under $TMPDIR, using mktemp(1), -and create a new tarball based on the git tag corresponding to the top most -entry in debian/changelog. This newly generated tarball will be stored as -../wpa_${VERSION}.orig.tar.gz or ../tarballs/wpa_${VERSION}.orig.tar.gz, if -a directory called ../tarballs/ exists. Eventually existing tarballs -corresponding to the current version will not be overwritten. - -Required dependencies to generate a new orig.tar.gz: -- a SUSv3 compatible shell, like dash or bash -- dpkg-parsechangelog, available from dpkg-dev -- git -- xz, available from xz-utils or busybox -- mktemp and rm, available from coreutils or busybox -- sed, available from sed or busybox -- tar, available from tar or busybox - -It is recommended to base tarballs for development snapshots of "wpa" on -according git tags from the upstream git repository, the available git tags -can be queried by: - - $ git clone git://w1.fi/srv/git/hostap-1.git # 1.x branch - -or - - $ git clone git://w1.fi/srv/git/hostap.git # >= 2.x branches - -changing into the corresponding directory (hostap-1 or hostapd) and calling -git tag. - - $ cd hostapd-1 - $ git tag - hostap_0_6_3 - […] - hostap_1_0 - […] - hostap_1_0_rc3 - […] - -The Debian versions for these tags would be 0.6.3-1, 1.0 or 1.0~rc3 in -debian/changelog. Intermediate states between tags or HEAD are usually best -dealt with by creating a patch series based on the newest matching tag. - -Exporting commits between "hostap_1_0" and the current git HEAD: - - $ git format-patch hostap_1_0..HEAD - -Exporting commits between "hostap_1_0_rc3" and "hostap_1_0": - - $ git format-patch hostap_1_0_rc3..hostap_1_0 - -In both cases numbered patches will be dropped in the base directory of the -git clone. These numbered patches can be imported to the Debian package using -standard procedures for "3.0 (quilt)" source packages. - -Tarballs can also be created manually from the upstream git repository: - - $ git clone git://w1.fi/srv/git/hostap-1.git - $ cd hostap-1 - $ git archive \ - --format=tar \ - --prefix="wpa-1.0/" \ - hostap_1_0 \ - README COPYING patches src wpa_supplicant hostapd | \ - xz -c6 > wpa_1.0.orig.tar.gz - -Arbitrary git tags or commit IDs can be used for this purpose. - - -Upstream git snapshots can be exported by using a specially crafted version -syntax used in the top most (pending) changelog entry. The required syntax for -correctly parsing this is: - - +git.+- - upstream_version := [0-9\.]* --> 2.0 - date := [0-9]* --> 20131120 (YYYYMMDD) - revision := [0-9]* --> 1 - git_hash := [0-9a-f]* --> 594516b - debian_revision := [0-9*] --> 1 - -e.g.: - - 2.0+git20131120.1+594516b-1 - -Technically any incrementing number can be used for , but it's strongly -recommended to use YYYYMMDD (date --utc +%Y%m%d) and follow it by an -strictly incrementing arbitrary revision number (typically '.1'). The supplied -git hash can be abbreviated, but must be unique (see git describe, without -leading 'g'). - -The debian/rules get-orig-source target will automatically switch between -hostapd-1.git and hostapd.git (for >= 2.0) as needed, but it will only fetch -the explicitly specified version from a properly formatted, top most, -debian/changelog entry; it will not fetch the last upstream release or git -HEAD automatically. - - -The Debian packaging for wpa_supplicant/ hostapd is maintained in a subversion -repository at: - - Vcs-Svn: svn://anonscm.debian.org/svn/pkg-wpa/wpa/trunk/ - Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-wpa/wpa/trunk/ - -The development mailing list and its mailing list archive is located at: - - http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-wpa-devel - -Work for the wpa package can be coordinated on this mailing list through: - - Debian wpasupplicant Maintainers - - -- Stefan Lippers-Hollmann Sat, 28 Dec 2013 22:37:03 +0100 - -[1] http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap-1.git [1.x branch] - http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git [development] diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/changelog b/packages/extras-buildpkgs/hostapd-realtek/debian/changelog deleted file mode 100644 index 782e7629338c..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/changelog +++ /dev/null @@ -1,39 +0,0 @@ -wpa (2.4-0ubuntu6) xenial; urgency=medium - - * debian/patches/wpasupplicant_band_selection_aa517ae2.patch: add the last - missing 5 GHz band selection related cherry-pick from Debian that was not - included in wpa 2.4 (LP: #1517040) - - -- Timo Jyrinki Tue, 19 Jan 2016 12:36:00 +0200 - -wpa (2.4-0ubuntu5) xenial; urgency=medium - - * SECURITY UPDATE: unauthorized WNM Sleep Mode GTK control - - debian/patches/CVE-2015-5310.patch: Ignore Key Data in WNM Sleep Mode - Response frame if no PMF in use in wpa_supplicant/wnm_sta.c. - - CVE-2015-5310 - * SECURITY UPDATE: EAP-pwd missing last fragment length validation - - debian/patches/CVE-2015-5315-1.patch: Fix last fragment length - validation in src/eap_peer/eap_pwd.c. - - debian/patches/CVE-2015-5315-2.patch: Fix last fragment length - validation in src/eap_server/eap_server_pwd.c. - - CVE-2015-5315 - * SECURITY UPDATE: EAP-pwd peer error path failure on unexpected Confirm - message - - debian/patches/CVE-2015-5316.patch: fix error path in - src/eap_peer/eap_pwd.c. - - CVE-2015-5316 - * SECURITY UPDATE: denial of service in NDEF record parser - - debian/patches/CVE-2015-8041.patch: validate payload lengths in - src/wps/ndef.c. - - CVE-2015-8041 - - -- Marc Deslauriers Tue, 10 Nov 2015 13:38:25 -0500 - -wpa (2.4-0ubuntu4) xenial; urgency=medium - - * Add debian/system-sleep/wpasupplicant: Call wpa_cli suspend/resume - before/after suspend, like the pm-utils hook. In some cases this brings - back missing Wifi connection after resuming. (LP: #1422143) - - -- Martin Pitt Mon, 26 Oct 2015 14:24:30 +0100 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/changelog.hostapd b/packages/extras-buildpkgs/hostapd-realtek/debian/changelog.hostapd deleted file mode 100644 index a9b987f6f92d..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/changelog.hostapd +++ /dev/null @@ -1,54 +0,0 @@ -hostapd (1:0.7.3-5) UNRELEASED; urgency=low - - * NOT RELEASED YET - * bump standards version to 3.9.3, no changes necessary. - * update dep-5 version to final 1.0: - - add format qualifier - - s/Upstream-Maintainer/Upstream-Contact/ - - s/Upstream-Source/Source/ - - use "or" instead of "BSD | GPL-2" for dual-licensed sources - - order licenses alphabetically. - - fix lists of copyright holders for the final syntax - - fix license continuation. - - -- Stefan Lippers-Hollmann Mon, 27 Feb 2012 22:07:19 +0100 - -hostapd (1:0.7.3-4) unstable; urgency=low - - * add myself to uploaders. - * add "hostap: Allow linking with libnl-3" from Ben Greear - to allow building against libnl3 3.2. - * switch build dependency from libnl-dev (libnl1) to libnl-3-dev && - libnl-genl-3-dev accordingly. - * add libpcap-dev and libbsd-dev to kFreeBSD specific build-depends. - * disable IAPP on kFreeBSD, to avoid FTBS. - * restrict hostapd to linux-any and kfreebsd-any, hurd lacks kernel support. - * raise versioned build-dependency to (>= 3.2.3-2~), we need - libnl-genl-3-200-udeb and expect it in /lib/. - * add "For MS-CHAP, convert the password from UTF-8 to UCS-2" from - Evan Broder , accepted upstream into hostap-1.git - * fix long description, driver_madwifi is no longer enabled, while driver_bsd - got enabled. - - -- Stefan Lippers-Hollmann Tue, 20 Dec 2011 02:51:49 +0100 - -hostapd (1:0.7.3-3) unstable; urgency=low - - [ Kel Modderman ] - * Use /run/sendsigs.omit.d/ for sendsigs omission pid file and depend on - initscripts (>= 2.88dsf-13.3). (Closes: #633026) - * Migrate existing sendsigs omission pid files from /lib/init/rw to /run. - * Add a loop to ifupdown.sh to wait for creation of hostapd pid file before - attempting creation of sensigs omission pid file, in some cases hostapd - daemon can return before creation of the pid file has been written to disk. - * Adjust standards version to 3.9.2, no further changes required to - satisfy that. - * Only test that DAEMON_CONF is set in init.d script, do not test if what is - set is readable (which assumes only one configuration file is being used). - (Closes: #615821) - - [ Stefan Lippers-Hollmann ] - * use new anonscm URIs for alioth. - - -- Kel Modderman Sun, 11 Dec 2011 20:32:06 +1000 - diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/compat b/packages/extras-buildpkgs/hostapd-realtek/debian/compat deleted file mode 100644 index ec635144f600..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/config/config_realtek b/packages/extras-buildpkgs/hostapd-realtek/debian/config/config_realtek deleted file mode 100644 index bd68495be53b..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/config/config_realtek +++ /dev/null @@ -1,209 +0,0 @@ -# Example hostapd build time configuration -# -# This file lists the configuration options that are used when building the -# hostapd binary. All lines starting with # are ignored. Configuration option -# lines must be commented out complete, if they are not to be included, i.e., -# just setting VARIABLE=n is not disabling that variable. -# -# This file is included in Makefile, so variables like CFLAGS and LIBS can also -# be modified from here. In most cass, these lines should use += in order not -# to override previous values of the variables. - -# Driver interface for Host AP driver -#CONFIG_DRIVER_HOSTAP=y -CONFIG_DRIVER_RTW=y - -# Driver interface for wired authenticator -#CONFIG_DRIVER_WIRED=y - -# Driver interface for madwifi driver -#CONFIG_DRIVER_MADWIFI=y -#CFLAGS += -I../../madwifi # change to the madwifi source directory - -# Driver interface for drivers using the nl80211 kernel interface -#CONFIG_DRIVER_NL80211=y - -# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) -#CONFIG_DRIVER_BSD=y -#CONFIG_SUPPORT_RTW_DRIVER=y -#CFLAGS += -I/usr/local/include -#LIBS += -L/usr/local/lib -#LIBS_p += -L/usr/local/lib -#LIBS_c += -L/usr/local/lib - -# Driver interface for no driver (e.g., RADIUS server only) -#CONFIG_DRIVER_NONE=y - -# IEEE 802.11F/IAPP -#CONFIG_IAPP=y - -# WPA2/IEEE 802.11i RSN pre-authentication -#CONFIG_RSN_PREAUTH=y - -# PeerKey handshake for Station to Station Link (IEEE 802.11e DLS) -#CONFIG_PEERKEY=y - -# IEEE 802.11w (management frame protection) -# This version is an experimental implementation based on IEEE 802.11w/D1.0 -# draft and is subject to change since the standard has not yet been finalized. -# Driver support is also needed for IEEE 802.11w. -#CONFIG_IEEE80211W=y - -# Integrated EAP server -CONFIG_EAP=y - -# EAP-MD5 for the integrated EAP server -#CONFIG_EAP_MD5=y - -# EAP-TLS for the integrated EAP server -#CONFIG_EAP_TLS=y - -# EAP-MSCHAPv2 for the integrated EAP server -#CONFIG_EAP_MSCHAPV2=y - -# EAP-PEAP for the integrated EAP server -#CONFIG_EAP_PEAP=y - -# EAP-GTC for the integrated EAP server -#CONFIG_EAP_GTC=y - -# EAP-TTLS for the integrated EAP server -#CONFIG_EAP_TTLS=y - -# EAP-SIM for the integrated EAP server -#CONFIG_EAP_SIM=y - -# EAP-AKA for the integrated EAP server -#CONFIG_EAP_AKA=y - -# EAP-AKA' for the integrated EAP server -# This requires CONFIG_EAP_AKA to be enabled, too. -#CONFIG_EAP_AKA_PRIME=y - -# EAP-PAX for the integrated EAP server -#CONFIG_EAP_PAX=y - -# EAP-PSK for the integrated EAP server (this is _not_ needed for WPA-PSK) -#CONFIG_EAP_PSK=y - -# EAP-SAKE for the integrated EAP server -#CONFIG_EAP_SAKE=y - -# EAP-GPSK for the integrated EAP server -#CONFIG_EAP_GPSK=y -# Include support for optional SHA256 cipher suite in EAP-GPSK -#CONFIG_EAP_GPSK_SHA256=y - -# EAP-FAST for the integrated EAP server -# Note: Default OpenSSL package does not include support for all the -# functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL, -# the OpenSSL library must be patched (openssl-0.9.9-session-ticket.patch) -# to add the needed functions. -#CONFIG_EAP_FAST=y - -# Wi-Fi Protected Setup (WPS) -CONFIG_WPS=y -# Enable WSC 2.0 support -#CONFIG_WPS2=y -# Enable UPnP support for external WPS Registrars -#CONFIG_WPS_UPNP=y - -CONFIG_TLS=internal -CONFIG_INTERNAL_LIBTOMMATH=y - -# EAP-IKEv2 -#CONFIG_EAP_IKEV2=y - -# Trusted Network Connect (EAP-TNC) -#CONFIG_EAP_TNC=y - -# PKCS#12 (PFX) support (used to read private key and certificate file from -# a file that usually has extension .p12 or .pfx) -#CONFIG_PKCS12=y - -# RADIUS authentication server. This provides access to the integrated EAP -# server from external hosts using RADIUS. -#CONFIG_RADIUS_SERVER=y - -# Build IPv6 support for RADIUS operations -#CONFIG_IPV6=y - -# IEEE Std 802.11r-2008 (Fast BSS Transition) -#CONFIG_IEEE80211R=y - -# Use the hostapd's IEEE 802.11 authentication (ACL), but without -# the IEEE 802.11 Management capability (e.g., madwifi or FreeBSD/net80211) -#CONFIG_DRIVER_RADIUS_ACL=y - -# IEEE 802.11n (High Throughput) support -CONFIG_IEEE80211N=y - -# Remove debugging code that is printing out debug messages to stdout. -# This can be used to reduce the size of the hostapd considerably if debugging -# code is not needed. -#CONFIG_NO_STDOUT_DEBUG=y - -# Add support for writing debug log to a file: -f /tmp/hostapd.log -# Disabled by default. -#CONFIG_DEBUG_FILE=y - -# Remove support for RADIUS accounting -#CONFIG_NO_ACCOUNTING=y - -# Remove support for RADIUS -#CONFIG_NO_RADIUS=y - -# Remove support for VLANs -#CONFIG_NO_VLAN=y - -# Enable support for fully dynamic VLANs. This enables hostapd to -# automatically create bridge and VLAN interfaces if necessary. -#CONFIG_FULL_DYNAMIC_VLAN=y - -# Remove support for dumping state into a file on SIGUSR1 signal -# This can be used to reduce binary size at the cost of disabling a debugging -# option. -#CONFIG_NO_DUMP_STATE=y - -# Enable tracing code for developer debugging -# This tracks use of memory allocations and other registrations and reports -# incorrect use with a backtrace of call (or allocation) location. -#CONFIG_WPA_TRACE=y -# For BSD, comment out these. -#LIBS += -lexecinfo -#LIBS_p += -lexecinfo -#LIBS_c += -lexecinfo - -# Use libbfd to get more details for developer debugging -# This enables use of libbfd to get more detailed symbols for the backtraces -# generated by CONFIG_WPA_TRACE=y. -#CONFIG_WPA_TRACE_BFD=y -# For BSD, comment out these. -#LIBS += -lbfd -liberty -lz -#LIBS_p += -lbfd -liberty -lz -#LIBS_c += -lbfd -liberty -lz - -# hostapd depends on strong random number generation being available from the -# operating system. os_get_random() function is used to fetch random data when -# needed, e.g., for key generation. On Linux and BSD systems, this works by -# reading /dev/urandom. It should be noted that the OS entropy pool needs to be -# properly initialized before hostapd is started. This is important especially -# on embedded devices that do not have a hardware random number generator and -# may by default start up with minimal entropy available for random number -# generation. -# -# As a safety net, hostapd is by default trying to internally collect -# additional entropy for generating random data to mix in with the data -# fetched from the OS. This by itself is not considered to be very strong, but -# it may help in cases where the system pool is not initialized properly. -# However, it is very strongly recommended that the system pool is initialized -# with enough entropy either by using hardware assisted random number -# generatior or by storing state over device reboots. -# -# If the os_get_random() is known to provide strong ramdom data (e.g., on -# Linux/BSD, the board in question is known to have reliable source of random -# data from /dev/urandom), the internal hostapd random pool can be disabled. -# This will save some in binary size and CPU use. However, this should only be -# considered for builds that are known to be used on devices that meet the -# requirements described above. -#CONFIG_NO_RANDOM_POOL=y diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/config/hostapd.conf b/packages/extras-buildpkgs/hostapd-realtek/debian/config/hostapd.conf deleted file mode 100644 index eba944400a1d..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/config/hostapd.conf +++ /dev/null @@ -1,48 +0,0 @@ -# -# armbian hostapd configuration example -# -# realtek mode -# - -ssid=ARMBIAN -interface=wlan0 -hw_mode=g -channel=5 -bridge=br0 -driver=rtl871xdrv - -logger_syslog=0 -logger_syslog_level=0 -wmm_enabled=1 -wpa=2 -preamble=1 - -wpa_psk=66eb31d2b48d19ba216f2e50c6831ee11be98e2fa3a8075e30b866f4a5ccda27 -wpa_passphrase=12345678 -wpa_key_mgmt=WPA-PSK -wpa_pairwise=TKIP -rsn_pairwise=CCMP -auth_algs=1 -macaddr_acl=0 - -### IEEE 802.11n -#ieee80211n=1 -#ht_capab= -#country_code=US -#ieee80211d=1 -### IEEE 802.11n - -### IEEE 802.11a -#hw_mode=a -### IEEE 802.11a - -### IEEE 802.11ac -#ieee80211ac=1 -#vht_capab=[MAX-MPDU-11454][SHORT-GI-80][TX-STBC-2BY1][RX-STBC-1][MAX-A-MPDU-LEN-EXP3] -#vht_oper_chwidth=1 -#vht_oper_centr_freq_seg0_idx=42 -### IEEE 802.11ac - -# controlling enabled -ctrl_interface=/var/run/hostapd -ctrl_interface_group=0 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/control b/packages/extras-buildpkgs/hostapd-realtek/debian/control deleted file mode 100644 index 54f2e089153d..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/control +++ /dev/null @@ -1,55 +0,0 @@ -Source: wpa -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Debian wpasupplicant Maintainers -Uploaders: Stefan Lippers-Hollmann , - Jan Dittberner -Section: net -Priority: optional -Build-Depends: debhelper (>> 9.20120115), - libdbus-1-dev, - libssl-dev | libssl1.0-dev, - libncurses5-dev, - libpcsclite-dev, - libnl-3-dev [linux-any], - libnl-genl-3-dev [linux-any], - libnl-route-3-dev [linux-any], - libpcap-dev [kfreebsd-any], - libbsd-dev [kfreebsd-any], - libreadline-dev, - pkg-config, - docbook-to-man, - docbook-utils, -Standards-Version: 3.9.6 -Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-wpa/wpa/trunk/ -Vcs-Svn: svn://anonscm.debian.org/pkg-wpa/wpa/trunk/ -Homepage: http://w1.fi/wpa_supplicant/ - -Package: hostapd-realtek -Architecture: linux-any kfreebsd-any -Multi-Arch: foreign -Depends: ${shlibs:Depends}, - ${misc:Depends}, - lsb-base -Breaks: initscripts (<< 2.88dsf-13.3) -Provides: hostapd -Conflicts: hostapd, armbian-hostapd -Replaces: hostapd, armbian-hostapd -Description: IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator - Originally, hostapd was an optional user space component for Host AP - driver. It adds more features to the basic IEEE 802.11 management - included in the kernel driver: using external RADIUS authentication - server for MAC address based access control, IEEE 802.1X Authenticator - and dynamic WEP keying, RADIUS accounting, WPA/WPA2 (IEEE 802.11i/RSN) - Authenticator and dynamic TKIP/CCMP keying. - . - The current version includes support for other drivers, an integrated - EAP authenticator (i.e., allow full authentication without requiring - an external RADIUS authentication server), and RADIUS authentication - server for EAP authentication. - . - hostapd works with the following drivers: - . - * mac80211 based drivers with support for master mode [linux] - * Host AP driver for Prism2/2.5/3 [linux] - * Driver interface for FreeBSD net80211 layer [kfreebsd] - * Any wired Ethernet driver for wired IEEE 802.1X authentication. diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/copyright b/packages/extras-buildpkgs/hostapd-realtek/debian/copyright deleted file mode 100644 index 0810beecb13f..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/copyright +++ /dev/null @@ -1,422 +0,0 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: hostapd -Upstream-Contact: Jouni Malinen -Source: git://w1.fi/srv/git/hostap.git - -Files: * -Copyright: 2002-2014, Jouni Malinen -License: BSD-3-clause - -Files: hostapd/logwatch/* -Copyright: 2005, Henrik Brix Andersen -License: BSD-3-clause or GPL-2 - -Files: hostapd/Android.mk -Copyright: 2008, The Android Open Source Project -License: BSD-3-clause - -Files: hostapd/hostapd.8 - hostapd/hostapd_cli.1 -Copyright: 2005, Faidon Liambotis -License: BSD-3-clause - -Files: hs20/* -Copyright: 2012-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: patches/* -Copyright: 2005, Alexey Kobozev - 2005-2012, Jouni Malinen -License: BSD-3-clause - -Files: src/ap/acs.* -Copyright: 2011, Atheros Communications - 2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/ap_list.* - src/ap/ap_mlme.* - src/ap/beacon.* - src/ap/hw_features.* - src/ap/vlan_init.* - src/ap/wmm.* -Copyright: 2002-2009, Jouni Malinen - 2002-2004, Instant802 Networks, Inc. - 2005-2006, Devicescape Software, Inc. -License: BSD-3-clause - -Files: src/ap/dfs.* -Copyright: 2002-2013, Jouni Malinen - 2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/gas_serv.* - src/ap/wnm_ap.* - src/common/ieee802_1x_defs.h - src/common/qca-vendor* -Copyright: 2011-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/hs20.* - wpa_supplicant/hs20_supplicant.* -Copyright: 2009, Atheros Communications, Inc. - 2011-2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/ieee802_11_ht.c -Copyright: 2002-2009, Jouni Malinen - 2007-2008, Intel Corporation -License: BSD-3-clause - -Files: src/ap/p2p_hostapd.* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/ap/vlan_util.* -Copyright: 2012, Michael Braun -License: BSD-3-clause - -Files: src/common/gas.* -Copyright: 2009, Atheros Communications - 2011-2012, Qualcomm Atheros -License: BSD-3-clause - -Files: src/common/ieee802_11_defs.h -Copyright: 2002-2009, Jouni Malinen - 2007-2008, Intel Corporation -License: BSD-3-clause - -Files: src/common/wpa_helpers.* -Copyright: 2010-2011, Atheros Communications, Inc. - 2011-2012, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/crypto/aes-internal* -Copyright: 2000, Vincent Rijmen - 2000, Antoon Bosselaers - 2000, Paulo Barreto - 2003-2012, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/des-internal.c -Copyright: 2005, Tom St Denis - 2006-2009, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/md4-internal.c -Copyright: 1993, Colin Plumb - 2004, Todd C. Miller - 2006, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/md5-internal.c -Copyright: 1993, Colin Plumb - 2003-2005, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/sha1-internal.c -Copyright: 1998, Steve Reid - 1998, James H. Brown - 2001, Saul Kravitz - 2001-2005, Jouni Malinen -License: BSD-3-clause - -Files: src/drivers/driver_atheros.c -Copyright: 2004, Sam Leffler - 2004, Video54 Technologies - 2005-2007, Jouni Malinen - 2009, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_bsd.c -Copyright: 2004, Sam Leffler - 2004, 2Wire, Inc -License: BSD-3-clause - -Files: src/drivers/driver_macsec_qca.c -Copyright: 2004, Gunter Burchardt - 2005-2009, Jouni Malinen - 2013-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/drivers/driver_madwifi.c -Copyright: 2004, Sam Leffler - 2004, Video54 Technologies - 2004-2007, Jouni Malinen -License: BSD-3-clause - -Files: src/drivers/driver_nl80211.c -Copyright: 2002-2014, Jouni Malinen - 2003-2004, Instant802 Networks, Inc. - 2005-2006, Devicescape Software, Inc. - 2007, Johannes Berg - 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_none.c -Copyright: 2008, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_openbsd.c -Copyright: 2013, Mark Kettenis -License: BSD-3-clause - -Files: src/drivers/driver_roboswitch.c -Copyright: 2008-2009, Jouke Witteveen -License: BSD-3-clause - -Files: src/drivers/driver_wired.c -Copyright: 2005-2009, Jouni Malinen - 2004, Gunter Burchardt -License: BSD-3-clause - -Files: src/drivers/nl80211_copy.h -Copyright: 2006-2010, Johannes Berg - 2008, Michael Wu - 2008, Luis Carlos Cobo - 2008, Michael Buesch - 2008-2009, Luis R. Rodriguez - 2008, Jouni Malinen - 2008, Colin McCabe -License: ISC - -Files: src/eap_common/eap_pwd_common.* - src/eap_peer/eap_pwd.c - src/eap_server/eap_server_pwd.c -Copyright: 2010, Dan Harkins -License: BSD-3-clause - -Files: src/eap_peer/eap_proxy* -Copyright: 2011-2013 Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/l2_packet/l2_packet_freebsd.c -Copyright: 2003-2005, Jouni Malinen - 2005, Sam Leffler -License: BSD-3-clause - -Files: src/p2p/* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/pae/* -Copyright: 2013-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/rsn_supp/tdls.c -Copyright: 2010-2011, Atheros Communications -License: BSD-3-clause - -Files: src/tls/libtommath.c -Copyright: 2005-2007, Tom St Denis -License: public-domain - -Files: src/utils/browser* - src/utils/http* - src/utils/xml* -Copyright: 2012-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/utils/radiotap.c -Copyright: 2007, Andy Green - 2009, Johannes Berg -License: BSD-3-clause - -Files: src/utils/radiotap.h -Copyright: 2003-2004, David Young -License: BSD-3-clause - -Files: src/wps/http.h - src/wps/upnp_xml.* - src/wps/wps_upnp.* - src/wps/wps_upnp_event.c - src/wps/wps_upnp_i.h - src/wps/wps_upnp_ssdp.c - src/wps/wps_upnp_web.c -Copyright: 2000-2003, Intel Corporation - 2006-2007, Sony Corporation - 2008-2009, Atheros Communications - 2009, Jouni Malinen -License: BSD-3-clause - -Files: src/wps/httpread.* -Copyright: 2008, Ted Merrill, Atheros Communications -License: BSD-3-clause - -Files: src/wps/ndef.c -Copyright: 2009-2012, Masashi Honma -License: BSD-3-clause - -Files: src/wps/wps_validate.c -Copyright: 2010, Atheros Communications, Inc. -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_common.* - wpa_supplicant/dbus/dbus_common_i.h - wpa_supplicant/dbus/dbus_new.* - wpa_supplicant/dbus/dbus_new_handlers.* - wpa_supplicant/dbus/dbus_new_handlers_wps.c - wpa_supplicant/dbus/dbus_new_helpers.* - wpa_supplicant/dbus/dbus_new_introspect.c -Copyright: 2006, Dan Williams and Red Hat, Inc. - 2009-2010, Witold Sowa - 2009-2010, Jouni Malinen -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_dict_helpers.* - wpa_supplicant/dbus/dbus_old* -Copyright: 2006, Dan Williams and Red Hat, Inc. -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_new_handlers_p2p.* - wpa_supplicant/examples/p2p/* - wpa_supplicant/examples/dbus-listen-preq.py -Copyright: 2011-2012, Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/utils/log2pcap.py -Copyright: Johannes Berg , Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/wpa_gui-qt4/icons/ap.svg -Copyright: 2008, mystica -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/group.svg -Copyright: 2009, Andrew Fitzsimon / Anonymous -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/invitation.svg -Copyright: 2009, Jean Victor Balin -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/laptop.svg -Copyright: 2008, metalmarious -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/wpa_gui.svg -Copyright: 2008, Bernard Gray -License: BSD-3-clause or GPL-2 - -Files: wpa_supplicant/wpa_gui-qt4/peers.* - wpa_supplicant/wpa_gui-qt4/stringquery.* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: wpa_supplicant/wpa_gui-qt4/signalbar.* -Copyright: 2011, Kel Modderman -License: BSD-3-clause - -Files: wpa_supplicant/Android.mk - wpa_supplicant/wpa_supplicant_conf.* -Copyright: 2008-2010, The Android Open Source Project -License: BSD-3-clause - -Files: wpa_supplicant/ap.* -Copyright: 2003-2009, Jouni Malinen - 2009, Atheros Communications -License: BSD-3-clause - -Files: wpa_supplicant/autoscan* -Copyright: 2012, Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/gas_query.* - wpa_supplicant/offchannel.* - wpa_supplicant/p2p_supplicant.* - wpa_supplicant/wifi_display.* -Copyright: 2009-2011, Atheros Communications - 2011-2014, Qualcomm Atheros - 2011-2014, Jouni Malinen -License: BSD-3-clause - -Files: wpa_supplicant/interworking.* - wpa_supplicant/wnm_sta.* - wpa_supplicant/wpas_kay.* -Copyright: 2011-2014, Qualcomm Atheros - 2011-2014, Jouni Malinen -License: BSD-3-clause - -Files: debian/* -Copyright: 2004-2006, Kyle McMartin - 2005-2009, Faidon Liambotis - 2006-2008, Reinhard Tartler - 2006-2012, Kel Modderman - 2010, Jan Dittberner - 2010-2014, Stefan Lippers-Hollmann -License: BSD-3-clause - -License: BSD-3-clause - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - . - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - . - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - . - 3. Neither the name(s) of the above-listed copyright holder(s) nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - . - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -License: GPL-2 - 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. - . - 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 - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - . - On Debian GNU/Linux systems, the complete text of the GNU General Public - License version 2 can be found in `/usr/share/common-licenses/GPL-2'. - . - Note that this distribution of hostapd comes with configuration options that - link it to the OpenSSL library. The OpenSSL license is GPL-incompatible, - therefore in this distribution only the BSD license applies. - -License: ISC - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - . - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -License: public-domain - Minimal code for RSA support from LibTomMath 0.41 - http://libtom.org/ - http://libtom.org/files/ltm-0.41.tar.bz2 - This library was released in public domain by Tom St Denis. - . - The combination in this file may not use all of the optimized algorithms - from LibTomMath and may be considerable slower than the LibTomMath with its - default settings. The main purpose of having this version here is to make it - easier to build bignum.c wrapper without having to install and build an - external library. - diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.README.Debian b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.README.Debian deleted file mode 100644 index 3218a613f6ad..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.README.Debian +++ /dev/null @@ -1,38 +0,0 @@ -hostapd for Debian ------------------- - -This package provides two methods for managing hostapd process(es); an -initscript and an ifupdown hook. Both methods require creation of a -hostapd daemon configuration file (eg. /etc/hostapd/hostapd.conf) to -function correctly. - -An example hostapd.conf may be used as a template but _must_ be edited -to suit your local configuration. An example is located at: - /usr/share/doc/hostapd/examples/hostapd.conf.gz - -To use the example as a template: - # zcat /usr/share/doc/hostapd/examples/hostapd.conf.gz > \ - /etc/hostapd/hostapd.conf - # $EDITOR /etc/hostapd/hostapd.conf - -To use the initscript method of starting a hostapd daemon see -/etc/default/hostapd. - -To use the ifupdown method, the path to hostapd configuration file can -be specified in a network interfaces configuration stanza in -/etc/network/interfaces like so: - -iface eth1 inet static - hostapd /etc/hostapd/hostapd.conf - ... - -The hostapd process will be started in the pre-up phase of ifup, and be -terminated in the post-down phase of ifdown. - - -- Kel Modderman Tue, 27 Oct 2009 12:03:01 +1000 - -Please note: -* If you want to use hostapd with a Prism2/2.5/3 card in WPA mode, you'll need - STA firmware version >= 1.7.0. - - -- Faidon Liambotis , Mon, 10 Oct 2005 14:57:11 +0300 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.default b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.default deleted file mode 100644 index daeb75ebad44..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.default +++ /dev/null @@ -1,20 +0,0 @@ -# Defaults for hostapd initscript -# -# See /usr/share/doc/hostapd/README.Debian for information about alternative -# methods of managing hostapd. -# -# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration -# file and hostapd will be started during system boot. An example configuration -# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz -# -#DAEMON_CONF="/etc/hostapd.conf" - -# Additional daemon options to be appended to hostapd command:- -# -d show more debug messages (-dd for even more) -# -K include key data in debug messages -# -t include timestamps in some debug messages -# -# Note that -B (daemon mode) and -P (pidfile) options are automatically -# configured by the init.d script and must not be added to DAEMON_OPTS. -# -#DAEMON_OPTS="" diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.examples b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.examples deleted file mode 100644 index a02eefc9fb7f..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.examples +++ /dev/null @@ -1,6 +0,0 @@ -hostapd/hostapd.accept -hostapd/hostapd.conf -hostapd/hostapd.deny -hostapd/hostapd.eap_user -hostapd/hostapd.radius_clients -hostapd/hostapd.wpa_psk diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.init b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.init deleted file mode 100644 index 548840c6ae80..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.init +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: hostapd -# Required-Start: $remote_fs -# Required-Stop: $remote_fs -# Should-Start: $network -# Should-Stop: -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Advanced IEEE 802.11 management daemon -# Description: Userspace IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP -# Authenticator -### END INIT INFO - -PATH=/sbin:/bin:/usr/sbin:/usr/bin -DAEMON_SBIN=/usr/sbin/hostapd -DAEMON_DEFS=/etc/default/hostapd -DAEMON_CONF= -NAME=hostapd -DESC="advanced IEEE 802.11 management" -PIDFILE=/run/hostapd.pid - -[ -x "$DAEMON_SBIN" ] || exit 0 -[ -s "$DAEMON_DEFS" ] && . /etc/default/hostapd -[ -n "$DAEMON_CONF" ] || exit 0 - -DAEMON_OPTS="-B -P $PIDFILE $DAEMON_OPTS $DAEMON_CONF" - -. /lib/lsb/init-functions - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - start-stop-daemon --start --oknodo --quiet --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" -- $DAEMON_OPTS >/dev/null - log_end_msg "$?" - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - start-stop-daemon --stop --oknodo --quiet --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" - log_end_msg "$?" - ;; - reload) - log_daemon_msg "Reloading $DESC" "$NAME" - start-stop-daemon --stop --signal HUP --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" - log_end_msg "$?" - ;; - restart|force-reload) - $0 stop - sleep 8 - $0 start - ;; - status) - status_of_proc "$DAEMON_SBIN" "$NAME" - exit $? - ;; - *) - N=/etc/init.d/$NAME - echo "Usage: $N {start|stop|restart|force-reload|reload|status}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.install b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.install deleted file mode 100644 index 5db606f8e989..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.install +++ /dev/null @@ -1,2 +0,0 @@ -hostapd/hostapd usr/sbin/ -hostapd/hostapd_cli usr/sbin/ diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.links b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.links deleted file mode 100644 index 471b6f50ec71..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.links +++ /dev/null @@ -1,2 +0,0 @@ -etc/hostapd/ifupdown.sh /etc/network/if-pre-up.d/hostapd -etc/hostapd/ifupdown.sh /etc/network/if-post-down.d/hostapd diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.manpages b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.manpages deleted file mode 100644 index ef6882fa0282..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.manpages +++ /dev/null @@ -1,2 +0,0 @@ -hostapd/hostapd.8 -hostapd/hostapd_cli.1 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.preinst b/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.preinst deleted file mode 100644 index af53de47620f..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/hostapd-realtek.preinst +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh - -set -e - -rm_conffile() { - local PKGNAME="$1" - local CONFFILE="$2" - - [ -e "$CONFFILE" ] || return 0 - - local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')" - local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PKGNAME | \ - sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")" - if [ "$md5sum" = "$old_md5sum" ]; then - echo "Removing obsolete conffile $CONFFILE ..." - rm -f "$CONFFILE" - fi -} - -case "$1" in - install|upgrade) - if dpkg --compare-versions "$2" le "1:0.6.9-3"; then - rm_conffile hostapd /etc/hostapd/hostapd.conf - fi - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/ifupdown/hostapd.sh b/packages/extras-buildpkgs/hostapd-realtek/debian/ifupdown/hostapd.sh deleted file mode 100644 index c5d235776a71..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/ifupdown/hostapd.sh +++ /dev/null @@ -1,146 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2006-2009 Debian hostapd maintainers -# Faidon Liambotis -# Kel Modderman -# -# 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. -# -# On Debian GNU/Linux systems, the text of the GPL license, -# version 2, can be found in /usr/share/common-licenses/GPL-2. - -# quit if we're called for lo -if [ "$IFACE" = lo ]; then - exit 0 -fi - -if [ -n "$IF_HOSTAPD" ]; then - HOSTAPD_CONF="$IF_HOSTAPD" -else - exit 0 -fi - -HOSTAPD_BIN="/usr/sbin/hostapd" -HOSTAPD_PNAME="hostapd" -HOSTAPD_PIDFILE="/run/hostapd.$IFACE.pid" -HOSTAPD_OMIT_PIDFILE="/run/sendsigs.omit.d/hostapd.$IFACE.pid" - -if [ ! -x "$HOSTAPD_BIN" ]; then - exit 0 -fi - -if [ "$VERBOSITY" = "1" ]; then - TO_NULL="/dev/stdout" -else - TO_NULL="/dev/null" -fi - -hostapd_msg () { - case "$1" in - verbose) - shift - echo "$HOSTAPD_PNAME: $@" > "$TO_NULL" - ;; - stderr) - shift - echo "$HOSTAPD_PNAME: $@" > /dev/stderr - ;; - *) - ;; - esac -} - -test_hostapd_pidfile () { - if [ -n "$1" ] && [ -f "$2" ]; then - if start-stop-daemon --stop --quiet --signal 0 \ - --exec "$1" --pidfile "$2"; then - return 0 - else - rm -f "$2" - return 1 - fi - else - return 1 - fi -} - -init_hostapd () { - HOSTAPD_OPTIONS="-B -P $HOSTAPD_PIDFILE $HOSTAPD_CONF" - HOSTAPD_MESSAGE="$HOSTAPD_BIN $HOSTAPD_OPTIONS" - - test_hostapd_pidfile "$HOSTAPD_BIN" "$HOSTAPD_PIDFILE" && return 0 - - hostapd_msg verbose "$HOSTAPD_MESSAGE" - start-stop-daemon --start --oknodo --quiet --exec "$HOSTAPD_BIN" \ - --pidfile "$HOSTAPD_PIDFILE" -- $HOSTAPD_OPTIONS > "$TO_NULL" - - if [ "$?" -ne 0 ]; then - return "$?" - fi - - HOSTAPD_PIDFILE_WAIT=0 - until [ -s "$HOSTAPD_PIDFILE" ]; do - if [ "$HOSTAPD_PIDFILE_WAIT" -ge 5 ]; then - hostapd_msg stderr \ - "timeout waiting for pid file creation" - return 1 - fi - - HOSTAPD_PIDFILE_WAIT=$(($HOSTAPD_PIDFILE_WAIT + 1)) - sleep 1 - done - cat "$HOSTAPD_PIDFILE" > "$HOSTAPD_OMIT_PIDFILE" - - return 0 -} - -kill_hostapd () { - HOSTAPD_MESSAGE="stopping $HOSTAPD_PNAME via pidfile: $HOSTAPD_PIDFILE" - - test_hostapd_pidfile "$HOSTAPD_BIN" "$HOSTAPD_PIDFILE" || return 0 - - hostapd_msg verbose "$HOSTAPD_MESSAGE" - start-stop-daemon --stop --oknodo --quiet --exec "$HOSTAPD_BIN" \ - --pidfile "$HOSTAPD_PIDFILE" > "$TO_NULL" - - [ "$HOSTAPD_OMIT_PIDFILE" ] && rm -f "$HOSTAPD_OMIT_PIDFILE" -} - -case "$MODE" in - start) - case "$PHASE" in - pre-up) - init_hostapd || exit 1 - ;; - *) - hostapd_msg stderr "unknown phase: \"$PHASE\"" - exit 1 - ;; - esac - ;; - stop) - case "$PHASE" in - post-down) - kill_hostapd - ;; - *) - hostapd_msg stderr "unknown phase: \"$PHASE\"" - exit 1 - ;; - esac - ;; - *) - hostapd_msg stderr "unknown mode: \"$MODE\"" - exit 1 - ;; -esac - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/300-noscan.patch b/packages/extras-buildpkgs/hostapd-realtek/debian/patches/300-noscan.patch deleted file mode 100644 index fba0bf32f3e1..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/300-noscan.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff --git a/hostapd/config_file.c b/hostapd/config_file.c -index 82ac61d..3570d96 100644 ---- a/hostapd/config_file.c -+++ b/hostapd/config_file.c -@@ -2795,6 +2795,8 @@ static int hostapd_config_fill(struct hostapd_config *conf, - } - #endif /* CONFIG_IEEE80211W */ - #ifdef CONFIG_IEEE80211N -+ } else if (os_strcmp(buf, "noscan") == 0) { -+ conf->noscan = atoi(pos); - } else if (os_strcmp(buf, "ieee80211n") == 0) { - conf->ieee80211n = atoi(pos); - } else if (os_strcmp(buf, "ht_capab") == 0) { -diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h -index de470a9..f2a0235 100644 ---- a/src/ap/ap_config.h -+++ b/src/ap/ap_config.h -@@ -626,6 +626,7 @@ struct hostapd_config { - - int ht_op_mode_fixed; - u16 ht_capab; -+ int noscan; - int ieee80211n; - int secondary_channel; - int no_pri_sec_switch; -diff --git a/src/ap/hw_features.c b/src/ap/hw_features.c -index fc8786d..0d5b384 100644 ---- a/src/ap/hw_features.c -+++ b/src/ap/hw_features.c -@@ -472,7 +472,7 @@ static int ieee80211n_check_40mhz(struct hostapd_iface *iface) - struct wpa_driver_scan_params params; - int ret; - -- if (!iface->conf->secondary_channel) -+ if (!iface->conf->secondary_channel || iface->conf->noscan) - return 0; /* HT40 not used */ - - hostapd_set_state(iface, HAPD_IFACE_HT_SCAN); -diff --git a/src/ap/ieee802_11_ht.c b/src/ap/ieee802_11_ht.c -index 11fde2a..87fb67b 100644 ---- a/src/ap/ieee802_11_ht.c -+++ b/src/ap/ieee802_11_ht.c -@@ -221,6 +221,9 @@ void hostapd_2040_coex_action(struct hostapd_data *hapd, - if (!(iface->conf->ht_capab & HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET)) - return; - -+ if (iface->conf->noscan) -+ return; -+ - if (len < IEEE80211_HDRLEN + 2 + sizeof(*bc_ie)) - return; - -@@ -345,6 +348,9 @@ void ht40_intolerant_add(struct hostapd_iface *iface, struct sta_info *sta) - if (iface->current_mode->mode != HOSTAPD_MODE_IEEE80211G) - return; - -+ if (iface->conf->noscan) -+ return; -+ - wpa_printf(MSG_INFO, "HT: Forty MHz Intolerant is set by STA " MACSTR - " in Association Request", MAC2STR(sta->addr)); - diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/realtek.patch b/packages/extras-buildpkgs/hostapd-realtek/debian/patches/realtek.patch deleted file mode 100644 index 722b7f3b0a80..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/realtek.patch +++ /dev/null @@ -1,2770 +0,0 @@ -diff --git a/hostapd/main.c b/hostapd/main.c -index 6c7406a..07dda78 100644 ---- a/hostapd/main.c -+++ b/hostapd/main.c -@@ -422,7 +422,7 @@ static int hostapd_global_run(struct hapd_interfaces *ifaces, int daemonize, - static void show_version(void) - { - fprintf(stderr, -- "hostapd v" VERSION_STR "\n" -+ "hostapd v" VERSION_STR " for Realtek rtl871xdrv\n" - "User space daemon for IEEE 802.11 AP management,\n" - "IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator\n" - "Copyright (c) 2002-2015, Jouni Malinen " -diff --git a/src/ap/beacon.c b/src/ap/beacon.c -index 5fe8fd5..5f7c077 100644 ---- a/src/ap/beacon.c -+++ b/src/ap/beacon.c -@@ -1007,6 +1007,11 @@ int ieee802_11_build_ap_params(struct hostapd_data *hapd, - #ifdef CONFIG_IEEE80211N - tailpos = hostapd_eid_ht_capabilities(hapd, tailpos); - tailpos = hostapd_eid_ht_operation(hapd, tailpos); -+ -+ //DRIVER_RTW ADD -+ if(hapd->iconf->ieee80211n) -+ hapd->conf->wmm_enabled = 1; -+ - #endif /* CONFIG_IEEE80211N */ - - tailpos = hostapd_eid_ext_capab(hapd, tailpos); -diff --git a/src/ap/hw_features.c b/src/ap/hw_features.c -index fc8786d..efd3841 100644 ---- a/src/ap/hw_features.c -+++ b/src/ap/hw_features.c -@@ -494,7 +494,10 @@ static int ieee80211n_check_40mhz(struct hostapd_iface *iface) - iface->num_ht40_scan_tries = 1; - eloop_cancel_timeout(ap_ht40_scan_retry, iface, NULL); - eloop_register_timeout(1, 0, ap_ht40_scan_retry, iface, NULL); -- return 1; -+ -+ //DRIVER_RTW Modify -+ //return -1; -+ return 0;//ignore this error - } - - if (ret < 0) { -diff --git a/src/drivers/driver_bsd.c b/src/drivers/driver_bsd.c -index bab1f03..555d0d8 100644 ---- a/src/drivers/driver_bsd.c -+++ b/src/drivers/driver_bsd.c -@@ -47,6 +47,12 @@ - - #include "l2_packet/l2_packet.h" - -+#ifdef HOSTAPD -+#ifdef CONFIG_SUPPORT_RTW_DRIVER -+#define RTW_BSD_HOSTAPD_SET_BEACON (1100) -+#endif -+#endif -+ - struct bsd_driver_data { - struct hostapd_data *hapd; /* back pointer */ - -@@ -800,6 +806,296 @@ handle_read(void *ctx, const u8 *src_addr, const u8 *buf, size_t len) - drv_event_eapol_rx(drv->hapd, src_addr, buf, len); - } - -+#ifdef CONFIG_SUPPORT_RTW_DRIVER -+static int rtw_set_beacon_ops(void *priv, const u8 *head, size_t head_len, -+ const u8 *tail, size_t tail_len, int dtim_period, -+ int beacon_int) -+{ -+ int ret=0; -+ u8 *pbuf; -+ size_t sz; -+ struct bsd_driver_data *drv = priv; -+ -+ if((head_len<24) ||(!head)) -+ return -1; -+ -+ sz = head_len+tail_len - 24; // 24 = wlan hdr -+ -+ printf("%s, beacon_sz=%d\n", __func__, sz); -+ -+ pbuf = os_zalloc(sz); -+ if (pbuf == NULL) { -+ return -ENOMEM; -+ } -+ -+ os_memcpy(pbuf, (head+24), (head_len-24));// 24=beacon header len. -+ -+ os_memcpy(&pbuf[head_len-24], tail, tail_len); -+ -+ ret = set80211var(drv, RTW_BSD_HOSTAPD_SET_BEACON, pbuf, sz); -+ -+ os_free(pbuf); -+ -+ return ret; -+ -+} -+ -+static struct hostapd_hw_modes *rtw_get_hw_feature_data_ops( -+ void *priv, u16 *num_modes, u16 *flags) -+{ -+ -+#define MAX_NUM_CHANNEL (14) -+#define MAX_NUM_CHANNEL_5G (24) -+ -+ struct hostapd_hw_modes *modes; -+ size_t i; -+ int k; -+ -+ printf("%s\n", __func__); -+ -+ *num_modes = 3; -+ *flags = 0; -+ -+ modes = os_zalloc(*num_modes * sizeof(struct hostapd_hw_modes)); -+ if (modes == NULL) -+ return NULL; -+ -+ //.1 -+ modes[0].mode = HOSTAPD_MODE_IEEE80211G; -+ modes[0].num_channels = MAX_NUM_CHANNEL; -+ modes[0].num_rates = 12; -+ modes[0].channels = -+ os_zalloc(MAX_NUM_CHANNEL * sizeof(struct hostapd_channel_data)); -+ modes[0].rates = os_zalloc(modes[0].num_rates * sizeof(int)); -+ if (modes[0].channels == NULL || modes[0].rates == NULL) -+ goto fail; -+ for (i = 0; i < MAX_NUM_CHANNEL; i++) { -+ modes[0].channels[i].chan = i + 1; -+ modes[0].channels[i].freq = 2412 + 5 * i; -+ modes[0].channels[i].flag = 0; -+ if (i >= 13) -+ modes[0].channels[i].flag = HOSTAPD_CHAN_DISABLED; -+ } -+ modes[0].rates[0] = 10; -+ modes[0].rates[1] = 20; -+ modes[0].rates[2] = 55; -+ modes[0].rates[3] = 110; -+ modes[0].rates[4] = 60; -+ modes[0].rates[5] = 90; -+ modes[0].rates[6] = 120; -+ modes[0].rates[7] = 180; -+ modes[0].rates[8] = 240; -+ modes[0].rates[9] = 360; -+ modes[0].rates[10] = 480; -+ modes[0].rates[11] = 540; -+ -+ -+ //.2 -+ modes[1].mode = HOSTAPD_MODE_IEEE80211B; -+ modes[1].num_channels = MAX_NUM_CHANNEL; -+ modes[1].num_rates = 4; -+ modes[1].channels = -+ os_zalloc(MAX_NUM_CHANNEL * sizeof(struct hostapd_channel_data)); -+ modes[1].rates = os_zalloc(modes[1].num_rates * sizeof(int)); -+ if (modes[1].channels == NULL || modes[1].rates == NULL) -+ goto fail; -+ for (i = 0; i < MAX_NUM_CHANNEL; i++) { -+ modes[1].channels[i].chan = i + 1; -+ modes[1].channels[i].freq = 2412 + 5 * i; -+ modes[1].channels[i].flag = 0; -+ if (i >= 11) -+ modes[1].channels[i].flag = HOSTAPD_CHAN_DISABLED; -+ } -+ modes[1].rates[0] = 10; -+ modes[1].rates[1] = 20; -+ modes[1].rates[2] = 55; -+ modes[1].rates[3] = 110; -+ -+ -+ //.3 -+ modes[2].mode = HOSTAPD_MODE_IEEE80211A; -+#ifdef CONFIG_DRIVER_RTL_DFS -+ modes[2].num_channels = MAX_NUM_CHANNEL_5G; -+#else /* CONFIG_DRIVER_RTL_DFS */ -+ modes[2].num_channels = 9; -+#endif /* CONFIG_DRIVER_RTL_DFS */ -+ -+ modes[2].num_rates = 8; -+ modes[2].channels = os_zalloc(modes[2].num_channels * sizeof(struct hostapd_channel_data)); -+ modes[2].rates = os_zalloc(modes[2].num_rates * sizeof(int)); -+ if (modes[2].channels == NULL || modes[2].rates == NULL) -+ goto fail; -+ -+ -+ k = 0; -+ // 5G band1 Channel: 36, 40, 44, 48 -+ for (i=0; i < 4; i++) { -+ modes[2].channels[k].chan = 36+(i*4); -+ modes[2].channels[k].freq = 5180+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+#ifdef CONFIG_DRIVER_RTL_DFS -+ // 5G band2 Channel: 52, 56, 60, 64 -+ for (i=0; i < 4; i++) { -+ modes[2].channels[k].chan = 52+(i*4); -+ modes[2].channels[k].freq = 5260+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+ // 5G band3 Channel: 100, 104, 108. 112, 116, 120, 124, 128, 132, 136, 140 -+ for (i=0; i < 11; i++) { -+ modes[2].channels[k].chan = 100+(i*4); -+ modes[2].channels[k].freq = 5500+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+#endif /* CONFIG_DRIVER_RTL_DFS */ -+ -+ // 5G band4 Channel: 149, 153, 157, 161, 165 -+ for (i=0; i < 5; i++) { -+ modes[2].channels[k].chan = 149+(i*4); -+ modes[2].channels[k].freq = 5745+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+ modes[2].rates[0] = 60; -+ modes[2].rates[1] = 90; -+ modes[2].rates[2] = 120; -+ modes[2].rates[3] = 180; -+ modes[2].rates[4] = 240; -+ modes[2].rates[5] = 360; -+ modes[2].rates[6] = 480; -+ modes[2].rates[7] = 540; -+ -+ -+ // -+#if 0 -+#define HT_CAP_INFO_LDPC_CODING_CAP ((u16) BIT(0)) -+#define HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET ((u16) BIT(1)) -+#define HT_CAP_INFO_SMPS_MASK ((u16) (BIT(2) | BIT(3))) -+#define HT_CAP_INFO_SMPS_STATIC ((u16) 0) -+#define HT_CAP_INFO_SMPS_DYNAMIC ((u16) BIT(2)) -+#define HT_CAP_INFO_SMPS_DISABLED ((u16) (BIT(2) | BIT(3))) -+#define HT_CAP_INFO_GREEN_FIELD ((u16) BIT(4)) -+#define HT_CAP_INFO_SHORT_GI20MHZ ((u16) BIT(5)) -+#define HT_CAP_INFO_SHORT_GI40MHZ ((u16) BIT(6)) -+#define HT_CAP_INFO_TX_STBC ((u16) BIT(7)) -+#define HT_CAP_INFO_RX_STBC_MASK ((u16) (BIT(8) | BIT(9))) -+#define HT_CAP_INFO_RX_STBC_1 ((u16) BIT(8)) -+#define HT_CAP_INFO_RX_STBC_12 ((u16) BIT(9)) -+#define HT_CAP_INFO_RX_STBC_123 ((u16) (BIT(8) | BIT(9))) -+#define HT_CAP_INFO_DELAYED_BA ((u16) BIT(10)) -+#define HT_CAP_INFO_MAX_AMSDU_SIZE ((u16) BIT(11)) -+#define HT_CAP_INFO_DSSS_CCK40MHZ ((u16) BIT(12)) -+#define HT_CAP_INFO_PSMP_SUPP ((u16) BIT(13)) -+#define HT_CAP_INFO_40MHZ_INTOLERANT ((u16) BIT(14)) -+#define HT_CAP_INFO_LSIG_TXOP_PROTECT_SUPPORT ((u16) BIT(15)) -+#endif -+ -+ //HOSTAPD_MODE_IEEE80211G -+ modes[0].ht_capab = HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET|HT_CAP_INFO_SHORT_GI20MHZ| -+ HT_CAP_INFO_SHORT_GI40MHZ|HT_CAP_INFO_MAX_AMSDU_SIZE|HT_CAP_INFO_DSSS_CCK40MHZ; -+ -+ modes[0].mcs_set[0]= 0xff; -+ modes[0].mcs_set[1]= 0xff; -+ -+ //HOSTAPD_MODE_IEEE80211B -+ modes[1].ht_capab = 0; -+ -+ //HOSTAPD_MODE_IEEE80211A -+ modes[2].ht_capab = modes[0].ht_capab; -+ -+ modes[2].mcs_set[0]= 0xff; -+ modes[2].mcs_set[1]= 0xff; -+ -+ return modes; -+ -+fail: -+ if (modes) { -+ for (i = 0; i < *num_modes; i++) { -+ os_free(modes[i].channels); -+ os_free(modes[i].rates); -+ } -+ os_free(modes); -+ } -+ -+ return NULL; -+ -+} -+ -+#if 0 -+#define IEEE80211_FC0_TYPE_MASK 0x0c -+#define IEEE80211_FC0_TYPE_SHIFT 2 -+#define IEEE80211_FC0_TYPE_MGT 0x00 -+#define IEEE80211_FC0_TYPE_CTL 0x04 -+#define IEEE80211_FC0_TYPE_DATA 0x08 -+#define IEEE80211_FC0_SUBTYPE_MASK 0xf0 -+#define IEEE80211_FC0_SUBTYPE_SHIFT 4 -+#define IEEE80211_FC0_SUBTYPE_ASSOC_REQ 0x00 -+#define IEEE80211_FC0_SUBTYPE_ASSOC_RESP 0x10 -+#define IEEE80211_FC0_SUBTYPE_REASSOC_REQ 0x20 -+#define IEEE80211_FC0_SUBTYPE_REASSOC_RESP 0x30 -+#define IEEE80211_FC0_SUBTYPE_PROBE_REQ 0x40 -+#define IEEE80211_FC0_SUBTYPE_PROBE_RESP 0x50 -+#define IEEE80211_FC0_SUBTYPE_BEACON 0x80 -+#define IEEE80211_FC0_SUBTYPE_ATIM 0x90 -+#define IEEE80211_FC0_SUBTYPE_DISASSOC 0xa0 -+#define IEEE80211_FC0_SUBTYPE_AUTH 0xb0 -+#define IEEE80211_FC0_SUBTYPE_DEAUTH 0xc0 -+#define IEEE80211_FC0_SUBTYPE_ACTION 0xd0 -+#define IEEE80211_FC0_SUBTYPE_ACTION_NOACK 0xe0 -+ -+#define IEEE80211_APPIE_WPA (IEEE80211_FC0_TYPE_MGT | IEEE80211_FC0_SUBTYPE_BEACON | \ -+ IEEE80211_FC0_SUBTYPE_PROBE_RESP) -+ -+#endif -+ -+#define RTW_IEEE80211_APPIE_BEACON (IEEE80211_FC0_TYPE_MGT|IEEE80211_FC0_SUBTYPE_BEACON) -+#define RTW_IEEE80211_APPIE_PROBE_RESP (IEEE80211_FC0_TYPE_MGT|IEEE80211_FC0_SUBTYPE_PROBE_RESP) -+#define RTW_IEEE80211_APPIE_ASSOC_RESP (IEEE80211_FC0_TYPE_MGT|IEEE80211_FC0_SUBTYPE_ASSOC_RESP) -+ -+ -+static int rtw_set_wps_assoc_resp_ie(void *priv, const void *ie, size_t len) -+{ -+ return bsd_set80211(priv, IEEE80211_IOC_APPIE, RTW_IEEE80211_APPIE_ASSOC_RESP, -+ ie, len); -+} -+ -+static int rtw_set_wps_beacon_ie(void *priv, const void *ie, size_t len) -+{ -+ return bsd_set80211(priv, IEEE80211_IOC_APPIE, RTW_IEEE80211_APPIE_BEACON, -+ ie, len); -+} -+ -+static int rtw_set_wps_probe_resp_ie(void *priv, const void *ie, size_t len) -+{ -+ return bsd_set80211(priv, IEEE80211_IOC_APPIE, RTW_IEEE80211_APPIE_PROBE_RESP, -+ ie, len); -+} -+ -+static int rtw_set_ap_wps_ie_ops(void *priv, const struct wpabuf *beacon, -+ const struct wpabuf *proberesp, const struct wpabuf *assocresp) -+{ -+ if (rtw_set_wps_assoc_resp_ie(priv, assocresp ? wpabuf_head(assocresp) : NULL, -+ assocresp ? wpabuf_len(assocresp) : 0)) -+ return -1; -+ -+ if (rtw_set_wps_beacon_ie(priv, beacon ? wpabuf_head(beacon) : NULL, -+ beacon ? wpabuf_len(beacon) : 0)) -+ return -1; -+ -+ return rtw_set_wps_probe_resp_ie(priv, -+ proberesp ? wpabuf_head(proberesp) : NULL, -+ proberesp ? wpabuf_len(proberesp): 0); -+ -+} -+#endif -+ -+ - static void * - bsd_init(struct hostapd_data *hapd, struct wpa_init_params *params) - { -@@ -854,6 +1150,12 @@ bsd_init(struct hostapd_data *hapd, struct wpa_init_params *params) - goto bad; - } - -+#ifdef CONFIG_SUPPORT_RTW_DRIVER -+ /* mark up after init */ -+ if (bsd_ctrl_iface(drv, 1) < 0) -+ goto bad; -+#endif -+ - return drv; - bad: - if (drv->sock_xmit != NULL) -@@ -1292,6 +1594,15 @@ wpa_driver_bsd_event_receive(int sock, void *ctx, void *sock_ctx) - event.interface_status.ifname); - wpa_supplicant_event(ctx, EVENT_INTERFACE_STATUS, &event); - } -+ else{ -+ os_strlcpy(event.interface_status.ifname, drv->ifname, -+ sizeof(event.interface_status.ifname)); -+ event.interface_status.ievent = EVENT_INTERFACE_ADDED; -+ wpa_printf(MSG_DEBUG, "RTM_IFINFO: Interface '%s' UP", -+ event.interface_status.ifname); -+ wpa_supplicant_event(ctx, EVENT_INTERFACE_STATUS, &event); -+ } -+ - break; - } - } -@@ -1609,7 +1920,52 @@ wpa_driver_bsd_get_capa(void *priv, struct wpa_driver_capa *capa) - } - #endif /* HOSTAPD */ - -- -+#ifdef CONFIG_SUPPORT_RTW_DRIVER -+const struct wpa_driver_ops wpa_driver_bsd_ops = { -+ .name = "bsd", -+ .desc = "BSD 802.11 support", -+#ifdef HOSTAPD -+ .hapd_init = bsd_init, -+ .hapd_deinit = bsd_deinit, -+ .set_privacy = bsd_set_privacy,//del ? -+ .get_seqnum = bsd_get_seqnum,//del ? -+ .flush = bsd_flush, -+ .read_sta_data = bsd_read_sta_driver_data,//del ? -+ .sta_disassoc = bsd_sta_disassoc, -+ .sta_deauth = bsd_sta_deauth, -+ .get_hw_feature_data = rtw_get_hw_feature_data_ops,//add -+ //.sta_remove = rtl871x_sta_remove_ops,//add -+ .set_beacon = rtw_set_beacon_ops, //add -+ .set_ap_wps_ie = rtw_set_ap_wps_ie_ops,//add -+#else /* HOSTAPD */ -+ .init = wpa_driver_bsd_init, -+ .deinit = wpa_driver_bsd_deinit, -+ .get_bssid = wpa_driver_bsd_get_bssid, -+ .get_ssid = wpa_driver_bsd_get_ssid, -+ .set_countermeasures = wpa_driver_bsd_set_countermeasures, -+ .scan2 = wpa_driver_bsd_scan, -+ .get_scan_results2 = wpa_driver_bsd_get_scan_results2, -+ .deauthenticate = wpa_driver_bsd_deauthenticate, -+ .disassociate = wpa_driver_bsd_disassociate, -+ .associate = wpa_driver_bsd_associate, -+ .get_capa = wpa_driver_bsd_get_capa, -+ .set_freq = bsd_set_freq, //only for wpa_supplicant -+ .set_ieee8021x = bsd_set_ieee8021x,//only for wpa_supplicant -+ .hapd_set_ssid = bsd_set_ssid,//only for wpa_supplicant -+ .hapd_get_ssid = bsd_get_ssid,//only for wpa_supplicant -+ .sta_set_flags = bsd_set_sta_authorized, //only for wpa_supplicant -+ .set_generic_elem = bsd_set_opt_ie, //only for wpa_supplicant -+#endif /* HOSTAPD */ -+ //.set_freq = bsd_set_freq, //only for wpa_supplicant -+ .set_key = bsd_set_key, -+ //.set_ieee8021x = bsd_set_ieee8021x, //only for wpa_supplicant -+ //.hapd_set_ssid = bsd_set_ssid, //only for wpa_supplicant -+ //.hapd_get_ssid = bsd_get_ssid, //only for wpa_supplicant -+ .hapd_send_eapol = bsd_send_eapol, //only for wpa_supplicant -+ //.sta_set_flags = bsd_set_sta_authorized, //only for wpa_supplicant -+ //.set_generic_elem = bsd_set_opt_ie, //only for wpa_supplicant -+}; -+#else - const struct wpa_driver_ops wpa_driver_bsd_ops = { - .name = "bsd", - .desc = "BSD 802.11 support", -@@ -1644,3 +2000,4 @@ const struct wpa_driver_ops wpa_driver_bsd_ops = { - .hapd_send_eapol = bsd_send_eapol, - .set_generic_elem = bsd_set_opt_ie, - }; -+#endif -diff --git a/src/drivers/driver_rtl.h b/src/drivers/driver_rtl.h -new file mode 100644 -index 0000000..2200e18 ---- /dev/null -+++ b/src/drivers/driver_rtl.h -@@ -0,0 +1,114 @@ -+ -+#ifndef _DRIVER_RTL_H_ -+#define _DRIVER_RTL_H_ -+ -+ -+#define RTL_IOCTL_HOSTAPD (SIOCIWFIRSTPRIV + 28) -+ -+#define IEEE_CRYPT_ALG_NAME_LEN (16) -+ -+/* RTL871X_IOCTL_HOSTAPD ioctl() cmd: */ -+enum { -+ RTL871X_HOSTAPD_FLUSH = 1, -+ RTL871X_HOSTAPD_ADD_STA = 2, -+ RTL871X_HOSTAPD_REMOVE_STA = 3, -+ RTL871X_HOSTAPD_GET_INFO_STA = 4, -+ /* REMOVED: PRISM2_HOSTAPD_RESET_TXEXC_STA = 5, */ -+ RTL871X_HOSTAPD_GET_WPAIE_STA = 5, -+ RTL871X_SET_ENCRYPTION = 6, -+ RTL871X_GET_ENCRYPTION = 7, -+ RTL871X_HOSTAPD_SET_FLAGS_STA = 8, -+ RTL871X_HOSTAPD_GET_RID = 9, -+ RTL871X_HOSTAPD_SET_RID = 10, -+ RTL871X_HOSTAPD_SET_ASSOC_AP_ADDR = 11, -+ RTL871X_HOSTAPD_SET_GENERIC_ELEMENT = 12, -+ RTL871X_HOSTAPD_MLME = 13, -+ RTL871X_HOSTAPD_SCAN_REQ = 14, -+ RTL871X_HOSTAPD_STA_CLEAR_STATS = 15, -+ RTL871X_HOSTAPD_SET_BEACON = 16, -+ RTL871X_HOSTAPD_SET_WPS_BEACON = 17, -+ RTL871X_HOSTAPD_SET_WPS_PROBE_RESP = 18, -+ RTL871X_HOSTAPD_SET_WPS_ASSOC_RESP = 19, -+ RTL871X_HOSTAPD_SET_HIDDEN_SSID = 20, -+}; -+ -+typedef struct ieee_param { -+ u32 cmd; -+ u8 sta_addr[ETH_ALEN]; -+ union { -+ struct { -+ u8 name; -+ u32 value; -+ } wpa_param; -+ struct { -+ u32 len; -+ u8 reserved[32]; -+ u8 data[0]; -+ } wpa_ie; -+ struct{ -+ int command; -+ int reason_code; -+ } mlme; -+ struct { -+ u8 alg[IEEE_CRYPT_ALG_NAME_LEN]; -+ u8 set_tx; -+ u32 err; -+ u8 idx; -+ u8 seq[8]; /* sequence counter (set: RX, get: TX) */ -+ u16 key_len; -+ u8 key[0]; -+ } crypt; -+ struct { -+ u16 aid; -+ u16 capability; -+ int flags; -+ u8 tx_supp_rates[16]; -+ //struct ieee80211_ht_capability ht_cap; -+ struct ieee80211_ht_capabilities ht_cap; -+ } add_sta; -+ struct { -+ u8 reserved[2];//for set max_num_sta -+ u8 buf[0]; -+ } bcn_ie; -+ -+ } u; -+ -+} ieee_param; -+ -+ -+ -+#define IEEE80211_CCK_RATE_LEN 4 -+#define IEEE80211_OFDM_RATE_LEN 8 -+ -+#define IEEE80211_CCK_RATE_1MB 0x02 -+#define IEEE80211_CCK_RATE_2MB 0x04 -+#define IEEE80211_CCK_RATE_5MB 0x0B -+#define IEEE80211_CCK_RATE_11MB 0x16 -+#define IEEE80211_OFDM_RATE_6MB 0x0C -+#define IEEE80211_OFDM_RATE_9MB 0x12 -+#define IEEE80211_OFDM_RATE_12MB 0x18 -+#define IEEE80211_OFDM_RATE_18MB 0x24 -+#define IEEE80211_OFDM_RATE_24MB 0x30 -+#define IEEE80211_OFDM_RATE_36MB 0x48 -+#define IEEE80211_OFDM_RATE_48MB 0x60 -+#define IEEE80211_OFDM_RATE_54MB 0x6C -+#define IEEE80211_BASIC_RATE_MASK 0x80 -+ -+#define IEEE80211_CCK_RATE_1MB_MASK (1<<0) -+#define IEEE80211_CCK_RATE_2MB_MASK (1<<1) -+#define IEEE80211_CCK_RATE_5MB_MASK (1<<2) -+#define IEEE80211_CCK_RATE_11MB_MASK (1<<3) -+#define IEEE80211_OFDM_RATE_6MB_MASK (1<<4) -+#define IEEE80211_OFDM_RATE_9MB_MASK (1<<5) -+#define IEEE80211_OFDM_RATE_12MB_MASK (1<<6) -+#define IEEE80211_OFDM_RATE_18MB_MASK (1<<7) -+#define IEEE80211_OFDM_RATE_24MB_MASK (1<<8) -+#define IEEE80211_OFDM_RATE_36MB_MASK (1<<9) -+#define IEEE80211_OFDM_RATE_48MB_MASK (1<<10) -+#define IEEE80211_OFDM_RATE_54MB_MASK (1<<11) -+ -+#define IEEE80211_CCK_RATES_MASK 0x0000000F -+#define IEEE80211_OFDM_RATES_MASK 0x00000FF0 -+ -+#endif -+ -diff --git a/src/drivers/driver_rtw.c b/src/drivers/driver_rtw.c -new file mode 100644 -index 0000000..436dd14 ---- /dev/null -+++ b/src/drivers/driver_rtw.c -@@ -0,0 +1,1993 @@ -+/* -+ * hostapd / Driver interface for rtl871x driver -+ * Copyright (c) 2010, -+ * -+ * 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. -+ * -+ * Alternatively, this software may be distributed under the terms of BSD -+ * license. -+ * -+ * See README and COPYING for more details. -+ */ -+ -+//#define CONFIG_MGNT_L2SOCK 1 -+#define CONFIG_MLME_OFFLOAD 1 -+ -+ -+#include "includes.h" -+#include -+#include -+ -+#include "common.h" -+ -+/*#include "wireless_copy.h"*/ -+#include "linux_wext.h" -+ -+#include "driver.h" -+#include "eloop.h" -+#include "priv_netlink.h" -+#include "l2_packet/l2_packet.h" -+#include "common/ieee802_11_defs.h" -+#include "netlink.h" -+#include "linux_ioctl.h" -+ -+//#include "../src/ap/hostapd.h" -+//#include "../src/ap/ap_config.h" -+#include "ap/hostapd.h" -+#include "ap/ap_config.h" -+ -+#ifdef USE_KERNEL_HEADERS -+/* compat-wireless does not include linux/compiler.h to define __user, so -+ * define it here */ -+#ifndef __user -+#define __user -+#endif /* __user */ -+#include -+#include -+#include /* The L2 protocols */ -+#include -+#include -+#else /* USE_KERNEL_HEADERS */ -+#include -+#include -+//#include "wireless_copy.h" -+#endif /* USE_KERNEL_HEADERS */ -+ -+//#include -+ -+ -+#ifndef ETH_P_80211_RAW -+#define ETH_P_80211_RAW 0x0019 -+#endif -+ -+#if 0 -+#include "hostapd.h" -+#include "driver.h" -+#include "ieee802_1x.h" -+#include "eloop.h" -+#include "priv_netlink.h" -+#include "sta_info.h" -+#include "l2_packet/l2_packet.h" -+ -+#include "wpa.h" -+#include "accounting.h" -+#include "ieee802_11.h" -+#include "hw_features.h" -+#include "radius/radius.h" -+#endif -+ -+#include "driver_rtl.h" -+ -+ -+//static int rtl871x_sta_remove_ops(void *priv, const u8 *addr); -+ -+struct rtl871x_driver_data { -+ struct hostapd_data *hapd; -+ -+ char iface[IFNAMSIZ + 1]; -+ int ifindex; -+ struct l2_packet_data *l2_sock;/* socket for sending eapol frames*/ -+ struct l2_packet_data *l2_sock_recv;/* raw packet recv socket from bridge interface*/ -+#ifdef CONFIG_MGNT_L2SOCK -+ struct l2_packet_data *mgnt_l2_sock; /* socket for tx/rx management frames*/ -+#else -+ int mgnt_sock;/* socket for tx/rx management frames*/ -+#endif -+ int ioctl_sock; /* socket for ioctl() use */ -+ int wext_sock; /* socket for wireless events */ -+ -+ struct netlink_data *netlink; -+ -+ int we_version; -+ -+ u8 hw_mac[ETH_ALEN]; -+ -+ u8 acct_mac[ETH_ALEN]; -+ -+ struct hostap_sta_driver_data acct_data; -+ -+}; -+ -+/* -+static const char *ether_sprintf(const u8 *addr) -+{ -+ static char buf[sizeof(MACSTR)]; -+ -+ if (addr != NULL) -+ snprintf(buf, sizeof(buf), MACSTR, MAC2STR(addr)); -+ else -+ snprintf(buf, sizeof(buf), MACSTR, 0,0,0,0,0,0); -+ -+ return buf; -+} -+*/ -+ -+#ifndef CONFIG_MLME_OFFLOAD -+static int rtl871x_set_iface_flags(void *priv, int dev_up) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ struct ifreq ifr; -+ -+ wpa_printf(MSG_DEBUG, "%s: dev_up=%d", __func__, dev_up); -+ -+ if (drv->mgnt_sock < 0) -+ return -1; -+ -+ memset(&ifr, 0, sizeof(ifr)); -+ //os_strlcpy(ifr.ifr_name, drv->iface, IFNAMSIZ); -+ //os_strlcpy(ifr.ifr_name, "mgnt.wlan", IFNAMSIZ); -+ snprintf(ifr.ifr_name, IFNAMSIZ, "mgnt.%s", "wlan0"); -+ -+ if (ioctl(drv->mgnt_sock, SIOCGIFFLAGS, &ifr) != 0) { -+ perror("ioctl[SIOCGIFFLAGS]"); -+ return -1; -+ } -+ -+ if (dev_up) -+ ifr.ifr_flags |= IFF_UP; -+ else -+ ifr.ifr_flags &= ~IFF_UP; -+ -+ if (ioctl(drv->mgnt_sock, SIOCSIFFLAGS, &ifr) != 0) { -+ perror("ioctl[SIOCSIFFLAGS]"); -+ return -1; -+ } -+ -+#if 0 -+ if (dev_up) { -+ memset(&ifr, 0, sizeof(ifr)); -+ os_strlcpy(ifr.ifr_name, drv->iface, IFNAMSIZ); -+ ifr.ifr_mtu = HOSTAPD_MTU; -+ if (ioctl(drv->ioctl_sock, SIOCSIFMTU, &ifr) != 0) { -+ perror("ioctl[SIOCSIFMTU]"); -+ printf("Setting MTU failed - trying to survive with " -+ "current value\n"); -+ } -+ } -+#endif -+ -+ return 0; -+} -+#endif -+ -+static int rtl871x_hostapd_ioctl(struct rtl871x_driver_data *drv, ieee_param *param, int len) -+{ -+ struct iwreq iwr; -+ -+ memset(&iwr, 0, sizeof(iwr)); -+ os_strlcpy(iwr.ifr_name, drv->iface, IFNAMSIZ); -+ iwr.u.data.pointer = (caddr_t) param; -+ iwr.u.data.length = len; -+ -+ if (ioctl(drv->ioctl_sock, RTL_IOCTL_HOSTAPD, &iwr) < 0) { -+ perror("ioctl[RTL_IOCTL_HOSTAPD]"); -+ return -1; -+ } -+ -+ return 0; -+} -+ -+static int rtl871x_set_mode(struct rtl871x_driver_data *drv, u32 mode) -+{ -+ struct iwreq iwr; -+ -+ if (drv->ioctl_sock < 0) -+ return -1; -+ -+ memset(&iwr, 0, sizeof(iwr)); -+ -+ os_strlcpy(iwr.ifr_name, drv->iface, IFNAMSIZ); -+ -+ //iwr.u.mode = IW_MODE_MASTER; -+ iwr.u.mode = mode; -+ -+ if (ioctl(drv->ioctl_sock, SIOCSIWMODE, &iwr) < 0) { -+ perror("ioctl[SIOCSIWMODE]"); -+ printf("Could not set interface to mode(%d)!\n", mode); -+ return -1; -+ } -+ -+ return 0; -+ -+} -+ -+/* -+static int rtl871x_notif_assoc(struct hostapd_data *hapd, const u8 *addr, -+ const u8 *ie, size_t ielen) -+{ -+ struct sta_info *sta; -+ int new_assoc, res; -+ -+ //hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211, -+ // HOSTAPD_LEVEL_INFO, "associated"); -+ -+ sta = ap_get_sta(hapd, addr); -+ if (sta) { -+ accounting_sta_stop(hapd, sta); -+ } else { -+ sta = ap_sta_add(hapd, addr); -+ if (sta == NULL) -+ { -+ rtl871x_sta_remove_ops(hapd->drv_priv, addr); -+ return -1; -+ } -+ } -+ sta->flags &= ~(WLAN_STA_WPS | WLAN_STA_MAYBE_WPS); -+ -+ if (hapd->conf->wpa) { -+ if (ie == NULL || ielen == 0) { -+ if (hapd->conf->wps_state) { -+ wpa_printf(MSG_DEBUG, "STA did not include " -+ "WPA/RSN IE in (Re)Association " -+ "Request - possible WPS use"); -+ sta->flags |= WLAN_STA_MAYBE_WPS; -+ goto skip_wpa_check; -+ } -+ -+ wpa_printf(MSG_DEBUG, "No WPA/RSN IE from STA"); -+ return -1; -+ } -+ if (hapd->conf->wps_state && ie[0] == 0xdd && ie[1] >= 4 && -+ os_memcmp(ie + 2, "\x00\x50\xf2\x04", 4) == 0) { -+ sta->flags |= WLAN_STA_WPS; -+ goto skip_wpa_check; -+ } -+ -+ if (sta->wpa_sm == NULL) -+ sta->wpa_sm = wpa_auth_sta_init(hapd->wpa_auth, -+ sta->addr); -+ if (sta->wpa_sm == NULL) { -+ wpa_printf(MSG_ERROR, "Failed to initialize WPA state " -+ "machine"); -+ return -1; -+ } -+ res = wpa_validate_wpa_ie(hapd->wpa_auth, sta->wpa_sm, -+ ie, ielen, NULL, 0); -+ if (res != WPA_IE_OK) { -+ wpa_printf(MSG_DEBUG, "WPA/RSN information element " -+ "rejected? (res %u)", res); -+ wpa_hexdump(MSG_DEBUG, "IE", ie, ielen); -+ return -1; -+ } -+ } else if (hapd->conf->wps_state) { -+ if (ie && ielen > 4 && ie[0] == 0xdd && ie[1] >= 4 && -+ os_memcmp(ie + 2, "\x00\x50\xf2\x04", 4) == 0) { -+ sta->flags |= WLAN_STA_WPS; -+ } else -+ sta->flags |= WLAN_STA_MAYBE_WPS; -+ } -+skip_wpa_check: -+ -+ new_assoc = (sta->flags & WLAN_STA_ASSOC) == 0; -+ sta->flags |= WLAN_STA_AUTH | WLAN_STA_ASSOC; -+ wpa_auth_sm_event(sta->wpa_sm, WPA_ASSOC); -+ -+ hostapd_new_assoc_sta(hapd, sta, !new_assoc); -+ -+ ieee802_1x_notify_port_enabled(sta->eapol_sm, 1); -+ -+ return 0; -+} -+*/ -+ -+static int rtl871x_get_sta_wpaie(struct rtl871x_driver_data *drv, u8 *iebuf, u8 *addr) -+{ -+ struct ieee_param param; -+ -+ printf("+%s, " MACSTR " is sta's address\n", __func__, MAC2STR(addr)); -+ -+ memset(¶m, 0, sizeof(param)); -+ -+ param.cmd = RTL871X_HOSTAPD_GET_WPAIE_STA; -+ -+ memcpy(param.sta_addr, addr, ETH_ALEN); -+ -+ if (rtl871x_hostapd_ioctl(drv, ¶m, sizeof(param))) { -+ printf("Could not get sta wpaie from kernel driver.\n"); -+ return -1; -+ } -+ -+ -+ if(param.u.wpa_ie.len > 32) -+ return -1; -+ -+ memcpy(iebuf, param.u.wpa_ie.reserved, param.u.wpa_ie.len); -+ -+ return 0; -+ -+} -+ -+static int rtl871x_del_sta(struct rtl871x_driver_data *drv, u8 *addr) -+{ -+ struct hostapd_data *hapd = drv->hapd; -+ -+#if 1 -+ -+ //union wpa_event_data event; -+ //os_memset(&event, 0, sizeof(event)); -+ //event.disassoc_info.addr = addr; -+ //wpa_supplicant_event(hapd, EVENT_DISASSOC, &event); -+ -+ drv_event_disassoc(hapd, addr); -+ -+#else -+ -+ struct sta_info *sta; -+ -+ //hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211, -+ // HOSTAPD_LEVEL_INFO, "disassociated"); -+ -+ sta = ap_get_sta(hapd, addr); -+ if (sta != NULL) -+ { -+ sta->flags &= ~(WLAN_STA_AUTH | WLAN_STA_ASSOC); -+ wpa_auth_sm_event(sta->wpa_sm, WPA_DISASSOC); -+ sta->acct_terminate_cause = RADIUS_ACCT_TERMINATE_CAUSE_USER_REQUEST; -+ ieee802_1x_notify_port_enabled(sta->eapol_sm, 0); -+ ap_free_sta(hapd, sta); -+ } -+ else -+ { -+ wpa_printf(MSG_DEBUG, "Disassociation notification for " -+ "unknown STA " MACSTR, MAC2STR(addr)); -+ } -+#endif -+ -+ return 0; -+ -+} -+ -+static int rtl871x_new_sta(struct rtl871x_driver_data *drv, u8 *addr) -+{ -+ struct hostapd_data *hapd = drv->hapd; -+ //struct ieee80211req_wpaie ie; -+ int ielen = 0, res=0; -+ //u8 *iebuf = NULL; -+ u8 iebuf[32], *piebuf=NULL; -+ -+ /* -+ * Fetch negotiated WPA/RSN parameters from the driver. -+ */ -+ //memset(&ie, 0, sizeof(ie)); -+ //memcpy(ie.wpa_macaddr, addr, IEEE80211_ADDR_LEN); -+ memset(iebuf, 0 , sizeof(iebuf)); -+ if (rtl871x_get_sta_wpaie(drv, iebuf, addr)) { -+ //if (set80211priv(drv, IEEE80211_IOCTL_GETWPAIE, &ie, sizeof(ie))) { -+ -+ wpa_printf(MSG_DEBUG, "%s: Failed to get WPA/RSN IE: %s", -+ __func__, strerror(errno)); -+ goto no_ie; -+ } -+ -+ //wpa_hexdump(MSG_MSGDUMP, "req WPA IE", -+ // ie.wpa_ie, IEEE80211_MAX_OPT_IE); -+ -+ //wpa_hexdump(MSG_MSGDUMP, "req RSN IE", -+ // ie.rsn_ie, IEEE80211_MAX_OPT_IE); -+ -+ //iebuf = ie.wpa_ie; -+ -+/* -+ if (iebuf[0] != WLAN_EID_VENDOR_SPECIFIC) -+ iebuf[1] = 0; -+ if (iebuf[1] == 0 && ie.rsn_ie[1] > 0) { -+ iebuf = ie.rsn_ie; -+ if (iebuf[0] != WLAN_EID_RSN) -+ iebuf[1] = 0; -+ } -+*/ -+ -+ if ((iebuf[0] == WLAN_EID_VENDOR_SPECIFIC) || (iebuf[0] == WLAN_EID_RSN) ) -+ { -+ piebuf = iebuf; -+ ielen = iebuf[1]; -+ -+ if (ielen == 0) -+ piebuf = NULL; -+ else -+ ielen += 2; -+ } -+ -+no_ie: -+ -+ //res = rtl871x_notif_assoc(hapd, addr, piebuf, ielen); -+ //drv_event_assoc(hapd, addr, piebuf, ielen); -+ drv_event_assoc(hapd, addr, piebuf, ielen, 0); -+ -+ if (memcmp(addr, drv->acct_mac, ETH_ALEN) == 0) { -+ /* Cached accounting data is not valid anymore. */ -+ memset(drv->acct_mac, 0, ETH_ALEN); -+ memset(&drv->acct_data, 0, sizeof(drv->acct_data)); -+ } -+ -+ return res; -+ -+} -+ -+static void rtl871x_wireless_event_wireless(struct rtl871x_driver_data *drv, -+ char *data, int len) -+{ -+ struct iw_event iwe_buf, *iwe = &iwe_buf; -+ char *pos, *end, *custom, *buf; -+ -+ pos = data; -+ end = data + len; -+ -+ while (pos + IW_EV_LCP_LEN <= end) { -+ /* Event data may be unaligned, so make a local, aligned copy -+ * before processing. */ -+ memcpy(&iwe_buf, pos, IW_EV_LCP_LEN); -+ wpa_printf(MSG_MSGDUMP, "Wireless event: cmd=0x%x len=%d", -+ iwe->cmd, iwe->len); -+ if (iwe->len <= IW_EV_LCP_LEN) -+ return; -+ -+ custom = pos + IW_EV_POINT_LEN; -+ if (drv->we_version > 18 && -+ (iwe->cmd == IWEVMICHAELMICFAILURE || -+ iwe->cmd == IWEVCUSTOM)) { -+ /* WE-19 removed the pointer from struct iw_point */ -+ char *dpos = (char *) &iwe_buf.u.data.length; -+ int dlen = dpos - (char *) &iwe_buf; -+ memcpy(dpos, pos + IW_EV_LCP_LEN, -+ sizeof(struct iw_event) - dlen); -+ } else { -+ memcpy(&iwe_buf, pos, sizeof(struct iw_event)); -+ custom += IW_EV_POINT_OFF; -+ } -+ -+ //printf("got wireless event, iwe->cmd=%d\n", iwe->cmd); -+ -+ switch (iwe->cmd) { -+ case IWEVEXPIRED: -+ rtl871x_del_sta(drv, (u8 *)iwe->u.addr.sa_data); -+ break; -+ case IWEVREGISTERED: -+ if(rtl871x_new_sta(drv, (u8 *)iwe->u.addr.sa_data)) -+ { -+ printf("Failed to add new sta: "MACSTR" \n", MAC2STR((u8 *)iwe->u.addr.sa_data)); -+ } -+ break; -+ case IWEVCUSTOM: -+ if (custom + iwe->u.data.length > end) -+ return; -+ buf = malloc(iwe->u.data.length + 1); -+ if (buf == NULL) -+ return; /* XXX */ -+ memcpy(buf, custom, iwe->u.data.length); -+ buf[iwe->u.data.length] = '\0'; -+ //madwifi_wireless_event_wireless_custom(drv, buf); -+ free(buf); -+ break; -+ } -+ -+ pos += iwe->len; -+ } -+ -+} -+ -+#if 1 -+static void rtl871x_wireless_event_rtm_newlink(void *ctx, -+ struct ifinfomsg *ifi, u8 *buf, size_t len) -+{ -+ struct rtl871x_driver_data *drv = ctx; -+ int attrlen, rta_len; -+ struct rtattr *attr; -+ -+ if (ifi->ifi_index != drv->ifindex) -+ return; -+ -+ attrlen = len; -+ attr = (struct rtattr *) buf; -+ -+ rta_len = RTA_ALIGN(sizeof(struct rtattr)); -+ while (RTA_OK(attr, attrlen)) { -+ if (attr->rta_type == IFLA_WIRELESS) { -+ rtl871x_wireless_event_wireless( -+ drv, ((char *) attr) + rta_len, -+ attr->rta_len - rta_len); -+ } -+ attr = RTA_NEXT(attr, attrlen); -+ } -+} -+ -+#else -+static void rtl871x_wireless_event_rtm_newlink(struct rtl871x_driver_data *drv, -+ struct nlmsghdr *h, int len) -+{ -+ struct ifinfomsg *ifi; -+ int attrlen, nlmsg_len, rta_len; -+ struct rtattr * attr; -+ -+ if (len < (int) sizeof(*ifi)) -+ return; -+ -+ ifi = NLMSG_DATA(h); -+ -+ if (ifi->ifi_index != drv->ifindex) -+ return; -+ -+ nlmsg_len = NLMSG_ALIGN(sizeof(struct ifinfomsg)); -+ -+ attrlen = h->nlmsg_len - nlmsg_len; -+ if (attrlen < 0) -+ return; -+ -+ attr = (struct rtattr *) (((char *) ifi) + nlmsg_len); -+ -+ rta_len = RTA_ALIGN(sizeof(struct rtattr)); -+ while (RTA_OK(attr, attrlen)) { -+ if (attr->rta_type == IFLA_WIRELESS) { -+ rtl871x_wireless_event_wireless( -+ drv, ((char *) attr) + rta_len, -+ attr->rta_len - rta_len); -+ } -+ attr = RTA_NEXT(attr, attrlen); -+ } -+} -+#endif -+ -+/* -+static void rtl871x_wireless_event_receive(int sock, void *eloop_ctx, void *sock_ctx) -+{ -+ char buf[256];//!!! -+ int left; -+ struct sockaddr_nl from; -+ socklen_t fromlen; -+ struct nlmsghdr *h; -+ struct rtl871x_driver_data *drv = eloop_ctx; -+ -+ //printf("+rtl871x_wireless_event_receive\n"); -+ -+ fromlen = sizeof(from); -+ left = recvfrom(sock, buf, sizeof(buf), MSG_DONTWAIT, -+ (struct sockaddr *) &from, &fromlen); -+ if (left < 0) { -+ if (errno != EINTR && errno != EAGAIN) -+ perror("recvfrom(netlink)"); -+ return; -+ } -+ -+ h = (struct nlmsghdr *)buf; -+ while (left >= (int) sizeof(*h)) { -+ int len, plen; -+ -+ len = h->nlmsg_len; -+ plen = len - sizeof(*h);//payload len -+ if (len > left || plen < 0) { -+ printf("Malformed netlink message: " -+ "len=%d left=%d plen=%d\n", -+ len, left, plen); -+ break; -+ } -+ -+ switch (h->nlmsg_type) { -+ case RTM_NEWLINK: -+ rtl871x_wireless_event_rtm_newlink(drv, h, plen); -+ break; -+ } -+ -+ len = NLMSG_ALIGN(len); -+ left -= len; -+ h = (struct nlmsghdr *) ((char *) h + len); -+ } -+ -+ if (left > 0) { -+ printf("%d extra bytes in the end of netlink message\n", left); -+ } -+ -+} -+*/ -+ -+static int rtl871x_wireless_event_init(struct rtl871x_driver_data *drv) -+{ -+ struct netlink_config *cfg; -+ -+ //madwifi_get_we_version(drv); -+ -+ cfg = os_zalloc(sizeof(*cfg)); -+ if (cfg == NULL) -+ return -1; -+ cfg->ctx = drv; -+ cfg->newlink_cb = rtl871x_wireless_event_rtm_newlink; -+ drv->netlink = netlink_init(cfg); -+ if (drv->netlink == NULL) { -+ os_free(cfg); -+ return -1; -+ } -+ -+ return 0; -+} -+ -+/* -+static int rtl871x_wireless_event_init_ops(void *priv) -+{ -+ int s; -+ struct sockaddr_nl local; -+ struct rtl871x_driver_data *drv = priv; -+ -+ //madwifi_get_we_version(drv); -+ -+ drv->wext_sock = -1; -+ -+ s = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); -+ if (s < 0) { -+ perror("socket(PF_NETLINK,SOCK_RAW,NETLINK_ROUTE)"); -+ return -1; -+ } -+ -+ memset(&local, 0, sizeof(local)); -+ local.nl_family = AF_NETLINK; -+ local.nl_groups = RTMGRP_LINK; -+ if (bind(s, (struct sockaddr *) &local, sizeof(local)) < 0) { -+ perror("bind(netlink)"); -+ close(s); -+ return -1; -+ } -+ -+ eloop_register_read_sock(s, rtl871x_wireless_event_receive, drv, NULL); -+ drv->wext_sock = s; -+ -+ return 0; -+ -+} -+ -+static void rtl871x_wireless_event_deinit_ops(void *priv) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ -+ if (drv != NULL) { -+ if (drv->wext_sock < 0) -+ return; -+ eloop_unregister_read_sock(drv->wext_sock); -+ close(drv->wext_sock); -+ } -+} -+*/ -+ -+#if 1 -+static void rtl871x_handle_read(void *ctx, const u8 *src_addr, const u8 *buf, size_t len) -+{ -+ struct rtl871x_driver_data *drv = ctx; -+ drv_event_eapol_rx(drv->hapd, src_addr, buf + sizeof(struct l2_ethhdr), -+ len - sizeof(struct l2_ethhdr)); -+} -+#else -+static void rtl871x_handle_read(void *ctx, const u8 *src_addr, const u8 *buf, size_t len) -+{ -+ struct rtl871x_driver_data *drv = ctx; -+ struct hostapd_data *hapd = drv->hapd; -+ struct sta_info *sta; -+ -+ sta = ap_get_sta(hapd, src_addr); -+ if (!sta || !(sta->flags & WLAN_STA_ASSOC)) { -+ printf("Data frame from not associated STA %s\n", -+ ether_sprintf(src_addr)); -+ /* XXX cannot happen */ -+ return; -+ } -+ ieee802_1x_receive(hapd, src_addr, buf + sizeof(struct l2_ethhdr), -+ len - sizeof(struct l2_ethhdr)); -+} -+#endif -+ -+static int rtl871x_send_eapol_ops(void *priv, const u8 *addr, const u8 *data, size_t data_len, -+ int encrypt, const u8 *own_addr, u32 flags) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ unsigned char buf[3000]; -+ unsigned char *bp = buf; -+ struct l2_ethhdr *eth; -+ size_t len; -+ int status; -+ -+ printf("+rtl871x_send_eapol\n"); -+ -+ /* -+ * Prepend the Ethernet header. If the caller left us -+ * space at the front we could just insert it but since -+ * we don't know we copy to a local buffer. Given the frequency -+ * and size of frames this probably doesn't matter. -+ */ -+ len = data_len + sizeof(struct l2_ethhdr); -+ if (len > sizeof(buf)) { -+ bp = malloc(len); -+ if (bp == NULL) { -+ printf("EAPOL frame discarded, cannot malloc temp " -+ "buffer of size %lu!\n", (unsigned long) len); -+ return -1; -+ } -+ } -+ -+ eth = (struct l2_ethhdr *) bp; -+ memcpy(eth->h_dest, addr, ETH_ALEN); -+ memcpy(eth->h_source, own_addr, ETH_ALEN); -+ eth->h_proto = htons(ETH_P_EAPOL); -+ memcpy(eth+1, data, data_len); -+ -+ wpa_hexdump(MSG_MSGDUMP, "TX EAPOL", bp, len); -+ -+ status = l2_packet_send(drv->l2_sock, addr, ETH_P_EAPOL, bp, len); -+ -+ if (bp != buf) -+ free(bp); -+ -+ return status; -+ -+} -+ -+#ifndef CONFIG_MLME_OFFLOAD -+static void rtl871x_receive_mgnt(struct rtl871x_driver_data *drv , const u8 *buf, size_t len) -+{ -+ const struct ieee80211_mgmt *mgmt; -+ //const u8 *end, *ie; -+ u16 fc, type, stype; -+ //size_t ie_len; -+ struct hostapd_data *hapd = drv->hapd; -+ -+ //printf("+rtl871x_receive_mgnt, " MACSTR " is our address\n", MAC2STR(hapd->own_addr)); -+ -+ -+#if 0 -+ { -+ int i; -+ for(i=0; iu.probe_req)) -+ return; -+ -+ mgmt = (const struct ieee80211_mgmt *)buf; -+ -+ fc = le_to_host16(mgmt->frame_control); -+ type = WLAN_FC_GET_TYPE(fc); -+ stype = WLAN_FC_GET_STYPE(fc); -+ -+#if 1 -+ if (WLAN_FC_GET_TYPE(fc) == WLAN_FC_TYPE_MGMT && -+ WLAN_FC_GET_STYPE(fc) == WLAN_FC_STYPE_PROBE_RESP) -+ { -+ //printf("MGNT Frame - PROBE_RESP Frame\n"); -+ } -+#endif -+ -+ //end = buf + len; -+ //ie = mgmt->u.probe_req.variable; -+ //ie_len = len - (IEEE80211_HDRLEN + sizeof(mgmt->u.probe_req)); -+ //hostapd_wps_probe_req_rx(drv->hapd, mgmt->sa, ie, ie_len); -+ -+ switch (type) { -+ case WLAN_FC_TYPE_MGMT: -+ if (stype != WLAN_FC_STYPE_BEACON) -+ wpa_printf(MSG_MSGDUMP, "MGMT"); -+ -+ -+ -+ if (stype == WLAN_FC_STYPE_PROBE_REQ) -+ { -+ -+ } -+ else -+ { -+ //printf("rtl871x_receive_mgnt, type=0x%x, stype=0x%x\n", type, stype); -+ } -+ -+ -+ //ieee802_11_mgmt(hapd, (u8 *)buf, len, stype, NULL); -+ -+ break; -+ case WLAN_FC_TYPE_CTRL: -+ printf("rtl871x_receive_mgnt, CTRL\n"); -+ break; -+ case WLAN_FC_TYPE_DATA: -+ printf("rtl871x_receive_mgnt, DATA\n"); -+ //handle_data(hapd, buf, data_len, stype); -+ break; -+ default: -+ printf("unknown frame type %d\n", type); -+ break; -+ } -+ -+ -+} -+ -+#ifdef CONFIG_MGNT_L2SOCK -+static void rtl871x_recvive_mgmt_frame(void *ctx, const u8 *src_addr, const u8 *buf, -+ size_t len) -+{ -+ struct rtl871x_driver_data *drv = ctx; -+ -+ rtl871x_receive_mgnt(drv, buf, len); -+} -+#else -+static void rtl871x_recvive_mgmt_frame(int sock, void *eloop_ctx, void *sock_ctx) -+{ -+#if 0 -+ int len; -+ unsigned char buf[1024]; -+ struct hostapd_data *hapd = (struct hostapd_data *)eloop_ctx; -+ struct rtl871x_driver_data *drv = (struct rtl871x_driver_data *)hapd->drv_priv; -+ -+ len = recv(sock, buf, sizeof(buf), 0); -+ if (len < 0) { -+ perror("recv"); -+ return; -+ } -+ -+ rtl871x_receive_mgnt(drv, buf, len); -+#endif -+} -+ -+static int rtl871x_mgnt_sock_init(struct rtl871x_driver_data *drv, const char *name) -+{ -+ int sock; -+ struct ifreq ifr; -+ struct sockaddr_ll addr; -+ -+ sock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); -+ if (sock < 0) { -+ perror("socket[PF_PACKET,SOCK_RAW]"); -+ return -1; -+ } -+ -+ if (eloop_register_read_sock(sock, rtl871x_recvive_mgmt_frame, drv->hapd, NULL)) -+ { -+ printf("Could not register read socket\n"); -+ return -1; -+ } -+ -+ memset(&ifr, 0, sizeof(ifr)); -+ //snprintf(ifr.ifr_name, sizeof(ifr.ifr_name), "%sap", drv->iface); -+ os_strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); -+ if (ioctl(sock, SIOCGIFINDEX, &ifr) != 0) { -+ perror("ioctl(SIOCGIFINDEX)"); -+ return -1; -+ } -+ -+ //if (rtl871x_set_iface_flags(drv, 1)) { -+ // return -1; -+ //} -+ -+ memset(&addr, 0, sizeof(addr)); -+ addr.sll_family = AF_PACKET; -+ addr.sll_ifindex = ifr.ifr_ifindex; -+ wpa_printf(MSG_DEBUG, "Opening raw packet socket for ifindex %d", -+ addr.sll_ifindex); -+ -+ if (bind(sock, (struct sockaddr *) &addr, sizeof(addr)) < 0) { -+ perror("bind"); -+ return -1; -+ } -+ -+ memset(&ifr, 0, sizeof(ifr)); -+ os_strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); -+ if (ioctl(sock, SIOCGIFHWADDR, &ifr) != 0) { -+ perror("ioctl(SIOCGIFHWADDR)"); -+ return -1; -+ } -+ -+ -+ if (ifr.ifr_hwaddr.sa_family != ARPHRD_ETHER) { -+ printf("Invalid HW-addr family 0x%04x\n", -+ ifr.ifr_hwaddr.sa_family); -+ return -1; -+ } -+ -+ //memcpy(drv->hapd->own_addr, ifr.ifr_hwaddr.sa_data, ETH_ALEN); -+ -+ return sock; -+ -+} -+#endif -+#endif -+ -+static void rtl871x_handle_tx_callback(struct hostapd_data *hapd, u8 *buf, size_t len, -+ int ok) -+{ -+#if 0 -+ struct ieee80211_hdr *hdr; -+ u16 fc, type, stype; -+ struct sta_info *sta; -+ -+ //printf("%s\n", __func__); -+ -+ hdr = (struct ieee80211_hdr *) buf; -+ fc = le_to_host16(hdr->frame_control); -+ -+ type = WLAN_FC_GET_TYPE(fc); -+ stype = WLAN_FC_GET_STYPE(fc); -+ -+ switch (type) { -+ case WLAN_FC_TYPE_MGMT: -+ //printf("MGMT (TX callback) %s\n", -+ // ok ? "ACK" : "fail"); -+ ieee802_11_mgmt_cb(hapd, buf, len, stype, ok); -+ break; -+ case WLAN_FC_TYPE_CTRL: -+ printf("CTRL (TX callback) %s\n", -+ ok ? "ACK" : "fail"); -+ break; -+ case WLAN_FC_TYPE_DATA: -+ printf("DATA (TX callback) %s\n", -+ ok ? "ACK" : "fail"); -+ sta = ap_get_sta(hapd, hdr->addr1); -+ if (sta && sta->flags & WLAN_STA_PENDING_POLL) { -+ wpa_printf(MSG_DEBUG, "STA " MACSTR -+ " %s pending activity poll", -+ MAC2STR(sta->addr), -+ ok ? "ACKed" : "did not ACK"); -+ if (ok) -+ sta->flags &= ~WLAN_STA_PENDING_POLL; -+ } -+ if (sta) -+ ieee802_1x_tx_status(hapd, sta, buf, len, ok); -+ break; -+ default: -+ printf("unknown TX callback frame type %d\n", type); -+ break; -+ } -+#endif -+} -+ -+static int rtl871x_send_mgnt(struct rtl871x_driver_data *drv, const void *msg, size_t len) -+{ -+ int res=0; -+ -+ return res; -+} -+ -+static int rtl871x_send_mgmt_frame_ops(void *priv, const void *msg, size_t len, -+ int flags) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ //struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msg; -+ int res=0; -+ -+ //printf("%s\n", __func__); -+ -+ -+ //hdr->frame_control |= host_to_le16(BIT(1));/* Request TX callback */ -+#ifdef CONFIG_MGNT_L2SOCK -+ //res = send(drv->mgnt_l2_sock, msg, len, flags); -+ //res = l2_packet_send(drv->mgnt_l2_sock, addr, ETH_P_EAPOL, msg, len); -+ if(drv->mgnt_l2_sock == NULL) -+ return res; -+ -+ res = l2_packet_send(drv->mgnt_l2_sock, NULL, ETH_P_80211_RAW, msg, len); -+#else -+ -+ if(drv->mgnt_sock < 0) -+ return res; -+ -+ res = send(drv->mgnt_sock, msg, len, flags); -+#endif -+ //hdr->frame_control &= ~host_to_le16(BIT(1)); -+ -+ -+ rtl871x_send_mgnt(drv, msg, len); -+ -+ rtl871x_handle_tx_callback(drv->hapd, (u8*)msg, len, 1); -+ -+ return res; -+ -+} -+ -+/* -+static int rtl871x_driver_send_ether_ops(void *priv, const u8 *dst, const u8 *src, -+ u16 proto, const u8 *data, size_t data_len) -+{ -+ return 0; -+} -+*/ -+ -+static struct hostapd_hw_modes *rtl871x_get_hw_feature_data_ops(void *priv, -+ u16 *num_modes, -+ u16 *flags) -+{ -+ -+#define MAX_NUM_CHANNEL (14) -+#define MAX_NUM_CHANNEL_5G (24) -+ -+ struct hostapd_hw_modes *modes; -+ size_t i; -+ int k; -+ -+ *num_modes = 3; -+ *flags = 0; -+ -+ modes = os_zalloc(*num_modes * sizeof(struct hostapd_hw_modes)); -+ if (modes == NULL) -+ return NULL; -+ -+ //.1 -+ modes[0].mode = HOSTAPD_MODE_IEEE80211G; -+ modes[0].num_channels = MAX_NUM_CHANNEL; -+ modes[0].num_rates = 12; -+ modes[0].channels = -+ os_zalloc(MAX_NUM_CHANNEL * sizeof(struct hostapd_channel_data)); -+ modes[0].rates = os_zalloc(modes[0].num_rates * sizeof(int)); -+ if (modes[0].channels == NULL || modes[0].rates == NULL) -+ goto fail; -+ for (i = 0; i < MAX_NUM_CHANNEL; i++) { -+ modes[0].channels[i].chan = i + 1; -+ modes[0].channels[i].freq = 2412 + 5 * i; -+ modes[0].channels[i].flag = 0; -+ if (i >= 13) -+ modes[0].channels[i].flag = HOSTAPD_CHAN_DISABLED; -+ } -+ modes[0].rates[0] = 10; -+ modes[0].rates[1] = 20; -+ modes[0].rates[2] = 55; -+ modes[0].rates[3] = 110; -+ modes[0].rates[4] = 60; -+ modes[0].rates[5] = 90; -+ modes[0].rates[6] = 120; -+ modes[0].rates[7] = 180; -+ modes[0].rates[8] = 240; -+ modes[0].rates[9] = 360; -+ modes[0].rates[10] = 480; -+ modes[0].rates[11] = 540; -+ -+ -+ //.2 -+ modes[1].mode = HOSTAPD_MODE_IEEE80211B; -+ modes[1].num_channels = MAX_NUM_CHANNEL; -+ modes[1].num_rates = 4; -+ modes[1].channels = -+ os_zalloc(MAX_NUM_CHANNEL * sizeof(struct hostapd_channel_data)); -+ modes[1].rates = os_zalloc(modes[1].num_rates * sizeof(int)); -+ if (modes[1].channels == NULL || modes[1].rates == NULL) -+ goto fail; -+ for (i = 0; i < MAX_NUM_CHANNEL; i++) { -+ modes[1].channels[i].chan = i + 1; -+ modes[1].channels[i].freq = 2412 + 5 * i; -+ modes[1].channels[i].flag = 0; -+ if (i >= 11) -+ modes[1].channels[i].flag = HOSTAPD_CHAN_DISABLED; -+ } -+ modes[1].rates[0] = 10; -+ modes[1].rates[1] = 20; -+ modes[1].rates[2] = 55; -+ modes[1].rates[3] = 110; -+ -+ -+ //.3 -+ modes[2].mode = HOSTAPD_MODE_IEEE80211A; -+#ifdef CONFIG_DRIVER_RTL_DFS -+ modes[2].num_channels = MAX_NUM_CHANNEL_5G; -+#else /* CONFIG_DRIVER_RTL_DFS */ -+ modes[2].num_channels = 9; -+#endif /* CONFIG_DRIVER_RTL_DFS */ -+ -+ modes[2].num_rates = 8; -+ modes[2].channels = os_zalloc(modes[2].num_channels * sizeof(struct hostapd_channel_data)); -+ modes[2].rates = os_zalloc(modes[2].num_rates * sizeof(int)); -+ if (modes[2].channels == NULL || modes[2].rates == NULL) -+ goto fail; -+ -+ -+ k = 0; -+ // 5G band1 Channel: 36, 40, 44, 48 -+ for (i=0; i < 4; i++) { -+ modes[2].channels[k].chan = 36+(i*4); -+ modes[2].channels[k].freq = 5180+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+#ifdef CONFIG_DRIVER_RTL_DFS -+ // 5G band2 Channel: 52, 56, 60, 64 -+ for (i=0; i < 4; i++) { -+ modes[2].channels[k].chan = 52+(i*4); -+ modes[2].channels[k].freq = 5260+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+ // 5G band3 Channel: 100, 104, 108. 112, 116, 120, 124, 128, 132, 136, 140 -+ for (i=0; i < 11; i++) { -+ modes[2].channels[k].chan = 100+(i*4); -+ modes[2].channels[k].freq = 5500+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+#endif /* CONFIG_DRIVER_RTL_DFS */ -+ -+ // 5G band4 Channel: 149, 153, 157, 161, 165 -+ for (i=0; i < 5; i++) { -+ modes[2].channels[k].chan = 149+(i*4); -+ modes[2].channels[k].freq = 5745+(i*20); -+ modes[2].channels[k].flag = 0; -+ k++; -+ } -+ -+ modes[2].rates[0] = 60; -+ modes[2].rates[1] = 90; -+ modes[2].rates[2] = 120; -+ modes[2].rates[3] = 180; -+ modes[2].rates[4] = 240; -+ modes[2].rates[5] = 360; -+ modes[2].rates[6] = 480; -+ modes[2].rates[7] = 540; -+ -+ -+ // -+#if 0 -+#define HT_CAP_INFO_LDPC_CODING_CAP ((u16) BIT(0)) -+#define HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET ((u16) BIT(1)) -+#define HT_CAP_INFO_SMPS_MASK ((u16) (BIT(2) | BIT(3))) -+#define HT_CAP_INFO_SMPS_STATIC ((u16) 0) -+#define HT_CAP_INFO_SMPS_DYNAMIC ((u16) BIT(2)) -+#define HT_CAP_INFO_SMPS_DISABLED ((u16) (BIT(2) | BIT(3))) -+#define HT_CAP_INFO_GREEN_FIELD ((u16) BIT(4)) -+#define HT_CAP_INFO_SHORT_GI20MHZ ((u16) BIT(5)) -+#define HT_CAP_INFO_SHORT_GI40MHZ ((u16) BIT(6)) -+#define HT_CAP_INFO_TX_STBC ((u16) BIT(7)) -+#define HT_CAP_INFO_RX_STBC_MASK ((u16) (BIT(8) | BIT(9))) -+#define HT_CAP_INFO_RX_STBC_1 ((u16) BIT(8)) -+#define HT_CAP_INFO_RX_STBC_12 ((u16) BIT(9)) -+#define HT_CAP_INFO_RX_STBC_123 ((u16) (BIT(8) | BIT(9))) -+#define HT_CAP_INFO_DELAYED_BA ((u16) BIT(10)) -+#define HT_CAP_INFO_MAX_AMSDU_SIZE ((u16) BIT(11)) -+#define HT_CAP_INFO_DSSS_CCK40MHZ ((u16) BIT(12)) -+#define HT_CAP_INFO_PSMP_SUPP ((u16) BIT(13)) -+#define HT_CAP_INFO_40MHZ_INTOLERANT ((u16) BIT(14)) -+#define HT_CAP_INFO_LSIG_TXOP_PROTECT_SUPPORT ((u16) BIT(15)) -+#endif -+ -+ //HOSTAPD_MODE_IEEE80211G -+ modes[0].ht_capab = HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET|HT_CAP_INFO_SHORT_GI20MHZ| -+ HT_CAP_INFO_SHORT_GI40MHZ|HT_CAP_INFO_MAX_AMSDU_SIZE|HT_CAP_INFO_DSSS_CCK40MHZ; -+ -+ modes[0].mcs_set[0]= 0xff; -+ modes[0].mcs_set[1]= 0xff; -+ -+ //HOSTAPD_MODE_IEEE80211B -+ modes[1].ht_capab = 0; -+ -+ //HOSTAPD_MODE_IEEE80211A -+ modes[2].ht_capab = modes[0].ht_capab; -+ -+ modes[2].mcs_set[0]= 0xff; -+ modes[2].mcs_set[1]= 0xff; -+ -+ return modes; -+ -+fail: -+ if (modes) { -+ for (i = 0; i < *num_modes; i++) { -+ os_free(modes[i].channels); -+ os_free(modes[i].rates); -+ } -+ os_free(modes); -+ } -+ -+ return NULL; -+ -+} -+ -+#if 0 -+static int rtl871x_sta_add_ops(const char *ifname, void *priv, const u8 *addr, -+ u16 aid, u16 capability, u8 *supp_rates, -+ size_t supp_rates_len, int flags, -+ u16 listen_interval) -+{ -+ -+#if 1 -+ printf("+%s, " MACSTR " is new sta address added\n", __func__, MAC2STR(addr)); -+ return 0; -+#else -+ struct hostap_driver_data *drv = priv; -+ struct prism2_hostapd_param param; -+ int tx_supp_rates = 0; -+ size_t i; -+ -+#define WLAN_RATE_1M BIT(0) -+#define WLAN_RATE_2M BIT(1) -+#define WLAN_RATE_5M5 BIT(2) -+#define WLAN_RATE_11M BIT(3) -+ -+ for (i = 0; i < supp_rates_len; i++) { -+ if ((supp_rates[i] & 0x7f) == 2) -+ tx_supp_rates |= WLAN_RATE_1M; -+ if ((supp_rates[i] & 0x7f) == 4) -+ tx_supp_rates |= WLAN_RATE_2M; -+ if ((supp_rates[i] & 0x7f) == 11) -+ tx_supp_rates |= WLAN_RATE_5M5; -+ if ((supp_rates[i] & 0x7f) == 22) -+ tx_supp_rates |= WLAN_RATE_11M; -+ } -+ -+ memset(¶m, 0, sizeof(param)); -+ param.cmd = PRISM2_HOSTAPD_ADD_STA; -+ memcpy(param.sta_addr, addr, ETH_ALEN); -+ param.u.add_sta.aid = aid; -+ param.u.add_sta.capability = capability; -+ param.u.add_sta.tx_supp_rates = tx_supp_rates; -+ return hostapd_ioctl(drv, ¶m, sizeof(param)); -+#endif -+} -+ -+static int rtl871x_sta_add2_ops(const char *ifname, void *priv, -+ struct hostapd_sta_add_params *params) -+{ -+#if 0 -+ ieee_param param; -+ //int i, tx_supp_rates = 0; -+ struct rtl871x_driver_data *drv = priv; -+ -+ printf("%s\n", __func__); -+ -+ memset(¶m, 0, sizeof(param)); -+ param.cmd = RTL871X_HOSTAPD_ADD_STA; -+ memcpy(param.sta_addr, params->addr, ETH_ALEN); -+ param.u.add_sta.aid = params->aid; -+ param.u.add_sta.capability = params->capability; -+ param.u.add_sta.flags = params->flags; -+ -+ memcpy(param.u.add_sta.tx_supp_rates, params->supp_rates, params->supp_rates_len); -+ -+/* -+ for (i = 0; i < params->supp_rates_len; i++) -+ { -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_CCK_RATE_1MB) -+ tx_supp_rates |= IEEE80211_CCK_RATE_1MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_CCK_RATE_2MB) -+ tx_supp_rates |= IEEE80211_CCK_RATE_2MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_CCK_RATE_5MB) -+ tx_supp_rates |= IEEE80211_CCK_RATE_5MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_CCK_RATE_11MB) -+ tx_supp_rates |= IEEE80211_CCK_RATE_11MB_MASK; -+ -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_6MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_6MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_9MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_9MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_12MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_12MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_18MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_18MB_MASK; -+ -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_24MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_24MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_36MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_36MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_48MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_48MB_MASK; -+ if ((params->supp_rates[i] & 0x7f) == IEEE80211_OFDM_RATE_54MB) -+ tx_supp_rates |= IEEE80211_OFDM_RATE_54MB_MASK; -+ -+ } -+ -+ param.u.add_sta.tx_supp_rates = tx_supp_rates; -+*/ -+ -+#ifdef CONFIG_IEEE80211N -+ if (params->ht_capabilities && params->ht_capabilities->length>0) -+ { -+ struct ieee80211_ht_capability *pht_cap = (struct ieee80211_ht_capability *)¶ms->ht_capabilities->data; -+ memcpy((u8*)¶m.u.add_sta.ht_cap, (u8*)pht_cap, sizeof(struct ieee80211_ht_capability)); -+ -+ } -+#endif /* CONFIG_IEEE80211N */ -+ -+ return rtl871x_hostapd_ioctl(drv, ¶m, sizeof(param)); -+#else -+ return 0; -+#endif -+} -+#endif -+ -+static int rtl871x_sta_remove_ops(void *priv, const u8 *addr) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ struct ieee_param param; -+ -+ printf("+%s, " MACSTR " is sta address removed\n", __func__, MAC2STR(addr)); -+ -+ //hostap_sta_set_flags(drv, addr, 0, 0, ~WLAN_STA_AUTHORIZED); -+ -+ memset(¶m, 0, sizeof(param)); -+ param.cmd = RTL871X_HOSTAPD_REMOVE_STA; -+ memcpy(param.sta_addr, addr, ETH_ALEN); -+ if (rtl871x_hostapd_ioctl(drv, ¶m, sizeof(param))) { -+ printf("Could not remove station from kernel driver.\n"); -+ return -1; -+ } -+ -+ return 0; -+ -+} -+ -+#define RTL871X_HIDDEN_SSID_SUPPORT -+#ifdef RTL871X_HIDDEN_SSID_SUPPORT -+static int rtl871x_set_hidden_ssid_ops(const char *iface, void *priv, u8 value) -+{ -+ int ret; -+ ieee_param pparam; -+ struct rtl871x_driver_data *drv = priv; -+ struct hostapd_data *hapd = drv->hapd; -+ -+ printf("%s\n", __func__); -+ -+ pparam.cmd = RTL871X_HOSTAPD_SET_HIDDEN_SSID; -+ pparam.u.wpa_param.name = 0; -+ pparam.u.wpa_param.value = value; -+ -+ ret = rtl871x_hostapd_ioctl(drv, &pparam, sizeof(ieee_param)); -+ -+ return ret; -+} -+ -+static const u8 * get_ie(u8 *ies, size_t ies_len, u8 id) -+{ -+ const u8 *end, *pos; -+ -+ pos = ies; -+ end = pos + ies_len; -+ -+ while (pos + 1 < end) { -+ if (pos + 2 + pos[1] > end) -+ break; -+ -+ //printf("id:%u, clen:%u\n", pos[0], pos[1]); -+ -+ if (pos[0] == id) -+ return pos; -+ pos += 2 + pos[1]; -+ } -+ -+ return NULL; -+} -+#endif //RTL871X_HIDDEN_SSID_SUPPORT -+ -+static int rtl871x_set_beacon_ops(void *priv, struct wpa_driver_ap_params *params) -+{ -+ int ret; -+ size_t sz; -+ ieee_param *pparam; -+ struct rtl871x_driver_data *drv = priv; -+ struct hostapd_data *hapd = drv->hapd; -+ -+ u8 *ssid_ie; -+ u8 ssid_len; -+ u8 expend_len = 0; -+ -+ if((params->head_len<24) ||(!params->head)) -+ return -1; -+ -+ printf("%s\n", __func__); -+ -+ -+#ifdef RTL871X_HIDDEN_SSID_SUPPORT -+ rtl871x_set_hidden_ssid_ops(drv->iface, priv, hapd->conf->ignore_broadcast_ssid); -+ -+ ssid_ie = get_ie((params->head+24+12), (params->head_len-24-12), WLAN_EID_SSID); -+ -+ if(hapd->conf->ignore_broadcast_ssid == 2) -+ { -+ ssid_len = ssid_ie[1]; -+ -+ //confirm the ssid_len -+ if(ssid_len != hapd->conf->ssid.ssid_len) -+ { -+ printf("%s ssid_len(%u) != hapd->conf->ssid.ssid_len(%u)!!\n", __func__ -+ , ssid_len, hapd->conf->ssid.ssid_len -+ ); -+ } -+ -+ memcpy(ssid_ie+2, hapd->conf->ssid.ssid, ssid_len); -+ } -+ else if(hapd->conf->ignore_broadcast_ssid == 1) -+ { -+ expend_len = hapd->conf->ssid.ssid_len; -+ printf("%s ignore_broadcast_ssid:%d, %s,%d, expend_len:%u\n", __func__ -+ , hapd->conf->ignore_broadcast_ssid -+ , hapd->conf->ssid.ssid -+ , hapd->conf->ssid.ssid_len -+ , expend_len -+ ); -+ } -+#endif //RTL871X_HIDDEN_SSID_SUPPORT -+ -+ sz = params->head_len+params->tail_len+12-24 + 2 + expend_len;// 12+2 = cmd+sta_addr+reserved, sizeof(ieee_param)=64, no packed -+ pparam = os_zalloc(sz); -+ if (pparam == NULL) { -+ return -ENOMEM; -+ } -+ -+ pparam->cmd = RTL871X_HOSTAPD_SET_BEACON; -+ -+ memcpy(pparam->u.bcn_ie.reserved, &hapd->conf->max_num_sta, 2);//for set max_num_sta -+ -+#ifdef RTL871X_HIDDEN_SSID_SUPPORT -+ if(hapd->conf->ignore_broadcast_ssid == 1) -+ { -+ u8 *ssid_ie_next = params->head+24+12+2; -+ size_t head_remain_len = params->head_len-24-12-2; -+ -+ memcpy(pparam->u.bcn_ie.buf, (params->head+24), 12); -+ -+ pparam->u.bcn_ie.buf[12] = WLAN_EID_SSID; -+ pparam->u.bcn_ie.buf[13] = expend_len; -+ memcpy(pparam->u.bcn_ie.buf+12+2, hapd->conf->ssid.ssid, expend_len); -+ -+ memcpy(pparam->u.bcn_ie.buf+12+2+expend_len, ssid_ie_next, head_remain_len);// 24=beacon header len. -+ memcpy(&pparam->u.bcn_ie.buf[params->head_len-24+expend_len], params->tail, params->tail_len); -+ } -+ else -+#endif //RTL871X_HIDDEN_SSID_SUPPORT -+ { -+ memcpy(pparam->u.bcn_ie.buf, (params->head+24), (params->head_len-24));// 24=beacon header len. -+ memcpy(&pparam->u.bcn_ie.buf[params->head_len-24], params->tail, params->tail_len); -+ } -+ -+ ret = rtl871x_hostapd_ioctl(drv, pparam, sz); -+ -+ os_free(pparam); -+ -+ //rtl871x_set_max_num_sta(drv); -+ -+ return ret; -+ -+} -+ -+/* -+enum wpa_alg { -+ WPA_ALG_NONE, -+ WPA_ALG_WEP, -+ WPA_ALG_TKIP, -+ WPA_ALG_CCMP, -+ WPA_ALG_IGTK, -+ WPA_ALG_PMK -+}; -+*/ -+static int rtl871x_set_key_ops(const char *ifname, void *priv, enum wpa_alg alg, -+ const u8 *addr, int idx, int txkey, const u8 *seq, -+ size_t seq_len, const u8 *key, size_t key_len) -+{ -+ ieee_param *param; -+ u8 *buf; -+ char *alg_str; -+ size_t blen; -+ int ret = 0; -+ struct rtl871x_driver_data *drv = priv; -+ -+ printf("%s\n", __func__); -+ -+ blen = sizeof(*param) + key_len; -+ buf = os_zalloc(blen); -+ if (buf == NULL) -+ return -1; -+ -+ param = (ieee_param *)buf; -+ param->cmd = RTL871X_SET_ENCRYPTION; -+ if (addr == NULL) -+ memset(param->sta_addr, 0xff, ETH_ALEN); -+ else -+ memcpy(param->sta_addr, addr, ETH_ALEN); -+ -+ -+ switch (alg) { -+ case WPA_ALG_NONE: -+ alg_str = "none"; -+ break; -+ case WPA_ALG_WEP: -+ //cipher = IEEE80211_CIPHER_WEP; -+ alg_str = "WEP"; -+ break; -+ case WPA_ALG_TKIP: -+ //cipher = IEEE80211_CIPHER_TKIP; -+ alg_str = "TKIP"; -+ break; -+ case WPA_ALG_CCMP: -+ //cipher = IEEE80211_CIPHER_AES_CCM; -+ alg_str = "CCMP"; -+ break; -+ default: -+ printf("%s: unknown/unsupported algorithm %d\n", -+ __func__, alg); -+ return -1; -+ } -+ -+ os_strlcpy((char *) param->u.crypt.alg, alg_str, -+ IEEE_CRYPT_ALG_NAME_LEN); -+ -+ //param->u.crypt.flags = txkey ? HOSTAP_CRYPT_FLAG_SET_TX_KEY : 0; -+ param->u.crypt.set_tx = txkey ? 1 : 0; -+ param->u.crypt.idx = idx; -+ param->u.crypt.key_len = key_len; -+ -+ //memcpy((u8 *) (param + 1), key, key_len); -+ memcpy(param->u.crypt.key, key, key_len); -+ -+ if (rtl871x_hostapd_ioctl(drv, param, blen)) { -+ printf("Failed to set encryption.\n"); -+ ret = -1; -+ } -+ -+ os_free(buf); -+ -+ return ret; -+ -+} -+ -+/* -+static int rtl871x_set_encryption_ops(const char *ifname, void *priv, -+ const char *alg, const u8 *addr, -+ int idx, const u8 *key, size_t key_len, -+ int txkey) -+{ -+ ieee_param *param; -+ u8 *buf; -+ size_t blen; -+ int ret = 0; -+ struct rtl871x_driver_data *drv = priv; -+ -+ printf("%s\n", __func__); -+#if 0 -+ blen = sizeof(*param) + key_len; -+ buf = os_zalloc(blen); -+ if (buf == NULL) -+ return -1; -+ -+ param = (ieee_param *)buf; -+ param->cmd = RTL871X_SET_ENCRYPTION; -+ if (addr == NULL) -+ memset(param->sta_addr, 0xff, ETH_ALEN); -+ else -+ memcpy(param->sta_addr, addr, ETH_ALEN); -+ -+ os_strlcpy((char *) param->u.crypt.alg, alg, -+ IEEE_CRYPT_ALG_NAME_LEN); -+ -+ //param->u.crypt.flags = txkey ? HOSTAP_CRYPT_FLAG_SET_TX_KEY : 0; -+ param->u.crypt.set_tx = txkey ? 1 : 0; -+ param->u.crypt.idx = idx; -+ param->u.crypt.key_len = key_len; -+ -+ //memcpy((u8 *) (param + 1), key, key_len); -+ memcpy(param->u.crypt.key, key, key_len); -+ -+ if (rtl871x_hostapd_ioctl(drv, param, blen)) { -+ printf("Failed to set encryption.\n"); -+ ret = -1; -+ } -+ -+ os_free(buf); -+#endif -+ return ret; -+ -+} -+*/ -+ -+//static int rtl871x_sta_deauth_ops(void *priv, const u8 *addr, int reason) -+static int rtl871x_sta_deauth_ops(void *priv, const u8 *own_addr, const u8 *addr, -+ int reason) -+{ -+ printf("+%s, " MACSTR " is deauth, reason=%d\n", __func__, MAC2STR(addr), reason); -+ -+ //struct hostap_driver_data *drv = priv; -+ struct rtl871x_driver_data *drv = priv; -+ struct ieee80211_mgmt mgmt; -+ -+ memset(&mgmt, 0, sizeof(mgmt)); -+ mgmt.frame_control = IEEE80211_FC(WLAN_FC_TYPE_MGMT, -+ WLAN_FC_STYPE_DEAUTH); -+ -+ memcpy(mgmt.da, addr, ETH_ALEN); -+ //memcpy(mgmt.sa, drv->hapd->own_addr, ETH_ALEN); -+ //memcpy(mgmt.bssid, drv->hapd->own_addr, ETH_ALEN); -+ memcpy(mgmt.sa, own_addr, ETH_ALEN); -+ memcpy(mgmt.bssid, own_addr, ETH_ALEN); -+ mgmt.u.deauth.reason_code = host_to_le16(reason); -+ -+ return rtl871x_send_mgmt_frame_ops(drv, &mgmt, IEEE80211_HDRLEN + -+ sizeof(mgmt.u.deauth), 0); -+ -+} -+ -+ -+//static int rtl871x_sta_disassoc_ops(void *priv, const u8 *addr, int reason) -+static int rtl871x_sta_disassoc_ops(void *priv, const u8 *own_addr, const u8 *addr, -+ int reason) -+{ -+ printf("+%s, " MACSTR " is disassoc, reason=%d\n", __func__, MAC2STR(addr), reason); -+ -+ struct rtl871x_driver_data *drv = priv; -+ struct ieee80211_mgmt mgmt; -+ -+ memset(&mgmt, 0, sizeof(mgmt)); -+ mgmt.frame_control = IEEE80211_FC(WLAN_FC_TYPE_MGMT, -+ WLAN_FC_STYPE_DISASSOC); -+ -+ memcpy(mgmt.da, addr, ETH_ALEN); -+ //memcpy(mgmt.sa, drv->hapd->own_addr, ETH_ALEN); -+ //memcpy(mgmt.bssid, drv->hapd->own_addr, ETH_ALEN); -+ memcpy(mgmt.sa, own_addr, ETH_ALEN); -+ memcpy(mgmt.bssid, own_addr, ETH_ALEN); -+ -+ mgmt.u.disassoc.reason_code = host_to_le16(reason); -+ -+ return rtl871x_send_mgmt_frame_ops(drv, &mgmt, IEEE80211_HDRLEN + -+ sizeof(mgmt.u.disassoc), 0); -+ -+} -+ -+static int rtl871x_set_wps_assoc_resp_ie(struct rtl871x_driver_data *drv, const void *ie, size_t len) -+{ -+ int ret; -+ size_t sz; -+ ieee_param *pparam; -+ -+ -+ printf("%s\n", __func__); -+ -+ sz = len + 12 + 2;// 12+2 = cmd+sta_addr+reserved, sizeof(ieee_param)=64, no packed -+ pparam = os_zalloc(sz); -+ if (pparam == NULL) { -+ return -ENOMEM; -+ } -+ -+ pparam->cmd = RTL871X_HOSTAPD_SET_WPS_ASSOC_RESP; -+ -+ if(ie && len>0) -+ { -+ memcpy(pparam->u.bcn_ie.buf, ie, len); -+ } -+ -+ ret = rtl871x_hostapd_ioctl(drv, pparam, sz); -+ -+ os_free(pparam); -+ -+ return ret; -+ -+} -+ -+static int rtl871x_set_wps_beacon_ie(struct rtl871x_driver_data *drv, const void *ie, size_t len) -+{ -+ int ret; -+ size_t sz; -+ ieee_param *pparam; -+ -+ -+ printf("%s\n", __func__); -+ -+ sz = len + 12 + 2;// 12+2 = cmd+sta_addr+reserved, sizeof(ieee_param)=64, no packed -+ pparam = os_zalloc(sz); -+ if (pparam == NULL) { -+ return -ENOMEM; -+ } -+ -+ pparam->cmd = RTL871X_HOSTAPD_SET_WPS_BEACON; -+ -+ if(ie && len>0) -+ { -+ memcpy(pparam->u.bcn_ie.buf, ie, len); -+ } -+ -+ ret = rtl871x_hostapd_ioctl(drv, pparam, sz); -+ -+ os_free(pparam); -+ -+ return ret; -+ -+} -+ -+static int rtl871x_set_wps_probe_resp_ie(struct rtl871x_driver_data *drv, const void *ie, size_t len) -+{ -+ int ret; -+ size_t sz; -+ ieee_param *pparam; -+ -+ -+ printf("%s\n", __func__); -+ -+ sz = len + 12 + 2;// 12+2 = cmd+sta_addr+reserved, sizeof(ieee_param)=64, no packed -+ pparam = os_zalloc(sz); -+ if (pparam == NULL) { -+ return -ENOMEM; -+ } -+ -+ pparam->cmd = RTL871X_HOSTAPD_SET_WPS_PROBE_RESP; -+ -+ if(ie && len>0) -+ { -+ memcpy(pparam->u.bcn_ie.buf, ie, len); -+ } -+ -+ ret = rtl871x_hostapd_ioctl(drv, pparam, sz); -+ -+ os_free(pparam); -+ -+ return ret; -+ -+} -+ -+static int rtl871x_set_ap_wps_ie(void *priv, const struct wpabuf *beacon, -+ const struct wpabuf *proberesp, const struct wpabuf *assocresp) -+{ -+ struct rtl871x_driver_data *drv = priv; -+ -+ if (rtl871x_set_wps_assoc_resp_ie(drv, assocresp ? wpabuf_head(assocresp) : NULL, -+ assocresp ? wpabuf_len(assocresp) : 0)) -+ return -1; -+ -+ if (rtl871x_set_wps_beacon_ie(drv, beacon ? wpabuf_head(beacon) : NULL, -+ beacon ? wpabuf_len(beacon) : 0)) -+ return -1; -+ -+ return rtl871x_set_wps_probe_resp_ie(drv, -+ proberesp ? wpabuf_head(proberesp) : NULL, -+ proberesp ? wpabuf_len(proberesp): 0); -+ -+} -+ -+static int rtl871x_sta_flush_ops(void *priv) -+{ -+ ieee_param param; -+ struct rtl871x_driver_data *drv = priv; -+ -+ memset(¶m, 0, sizeof(param)); -+ -+ param.cmd = RTL871X_HOSTAPD_FLUSH; -+ -+ return rtl871x_hostapd_ioctl(drv, ¶m, sizeof(param)); -+} -+ -+static void *rtl871x_driver_init_ops(struct hostapd_data *hapd, struct wpa_init_params *params) -+{ -+ struct rtl871x_driver_data *drv; -+ struct ifreq ifr; -+ //struct iwreq iwr; -+ char ifrn_name[IFNAMSIZ + 1];//for mgnt_l2_sock/mgnt_sock -+ char brname[IFNAMSIZ]; -+ -+ drv = os_zalloc(sizeof(struct rtl871x_driver_data)); -+ if (drv == NULL) { -+ printf("Could not allocate memory for rtl871x driver data\n"); -+ return NULL; -+ } -+ -+ drv->hapd = hapd; -+ drv->ioctl_sock = socket(PF_INET, SOCK_DGRAM, 0); -+ if (drv->ioctl_sock < 0) { -+ perror("socket[PF_INET,SOCK_DGRAM]"); -+ goto bad; -+ } -+ os_memcpy(drv->iface, params->ifname, sizeof(drv->iface)); -+ -+ linux_set_iface_flags(drv->ioctl_sock, drv->iface, 1);/*set interface up*/ -+ -+ os_memset(&ifr, 0, sizeof(ifr)); -+ os_strlcpy(ifr.ifr_name, drv->iface, sizeof(ifr.ifr_name)); -+ if (ioctl(drv->ioctl_sock, SIOCGIFINDEX, &ifr) != 0) { -+ perror("ioctl(SIOCGIFINDEX)"); -+ goto bad; -+ } -+ drv->ifindex = ifr.ifr_ifindex; -+ printf("drv->ifindex=%d\n", drv->ifindex); -+ -+ drv->l2_sock = l2_packet_init(drv->iface, NULL, ETH_P_EAPOL, -+ rtl871x_handle_read, drv, 1); -+ -+ if (drv->l2_sock == NULL) -+ goto bad; -+ -+ if (l2_packet_get_own_addr(drv->l2_sock, params->own_addr)) -+ goto bad; -+ -+ -+ if (params->bridge[0]) { -+ wpa_printf(MSG_DEBUG, "Configure bridge %s for EAPOL traffic.", -+ params->bridge[0]); -+ drv->l2_sock_recv = l2_packet_init(params->bridge[0], NULL, -+ ETH_P_EAPOL, rtl871x_handle_read, drv, -+ 1); -+ if (drv->l2_sock_recv == NULL) -+ { -+ //goto bad; -+ drv->l2_sock_recv = drv->l2_sock; -+ printf("no br0 interface , let l2_sock_recv==l2_sock_xmit=0x%p\n", drv->l2_sock); -+ } -+ -+ } else if (linux_br_get(brname, drv->iface) == 0) { -+ wpa_printf(MSG_DEBUG, "Interface in bridge %s; configure for " -+ "EAPOL receive", brname); -+ drv->l2_sock_recv = l2_packet_init(brname, NULL, ETH_P_EAPOL, -+ rtl871x_handle_read, drv, 1); -+ if (drv->l2_sock_recv == NULL) -+ goto bad; -+ } -+ else -+ { -+ drv->l2_sock_recv = drv->l2_sock; -+ printf("l2_sock_recv==l2_sock_xmit=0x%p\n", drv->l2_sock); -+ } -+ -+ -+ os_memset(ifrn_name, 0, sizeof(ifrn_name)); -+ //snprintf(ifrn_name, sizeof(ifrn_name), "mgnt.%s_rena", drv->iface); -+ snprintf(ifrn_name, sizeof(ifrn_name), "mgnt.%s", "wlan0"/*drv->iface*/); -+#ifdef CONFIG_MGNT_L2SOCK -+ drv->mgnt_l2_sock = NULL; -+ drv->mgnt_l2_sock = l2_packet_init(ifrn_name, NULL, ETH_P_80211_RAW, -+ rtl871x_recvive_mgmt_frame, drv, 1); -+ if (drv->mgnt_l2_sock == NULL) -+ goto bad; -+ -+#else -+ -+#ifdef CONFIG_MLME_OFFLOAD -+ drv->mgnt_sock = -1; -+#else -+ drv->mgnt_sock = rtl871x_mgnt_sock_init(drv, ifrn_name); -+ if (drv->mgnt_sock < 0) { -+ goto bad; -+ } -+#endif -+ -+#endif -+ -+ -+ //madwifi_set_iface_flags(drv, 0); /* mark down during setup */ -+ //madwifi_set_privacy(drv->iface, drv, 0); /* default to no privacy */ -+ -+ -+ //linux_set_iface_flags(drv->ioctl_sock, drv->iface, 1);/*set interface up*/ -+ -+ -+ //enter MASTER MODE when init. -+ if(rtl871x_set_mode(drv, IW_MODE_MASTER)<0) -+ { -+ printf("Could not set interface to master mode!\n"); -+ goto bad; -+ } -+ -+/* -+ memset(&iwr, 0, sizeof(iwr)); -+ os_strlcpy(iwr.ifr_name, drv->iface, IFNAMSIZ); -+ iwr.u.mode = IW_MODE_MASTER; -+ if (ioctl(drv->ioctl_sock, SIOCSIWMODE, &iwr) < 0) { -+ perror("ioctl[SIOCSIWMODE]"); -+ printf("Could not set interface to master mode!\n"); -+ goto bad; -+ } -+*/ -+ -+#ifndef CONFIG_MLME_OFFLOAD -+ rtl871x_set_iface_flags(drv, 1); /*set mgnt interface up*/ -+#endif -+ -+ -+ if (rtl871x_wireless_event_init(drv)) -+ goto bad; -+ -+ -+ os_memcpy(drv->hw_mac, params->own_addr, ETH_ALEN); -+ -+ return drv; -+ -+bad: -+ -+ if (drv->l2_sock_recv != NULL && drv->l2_sock_recv != drv->l2_sock) -+ l2_packet_deinit(drv->l2_sock_recv); -+ -+ if (drv->l2_sock != NULL) -+ l2_packet_deinit(drv->l2_sock); -+ -+ if (drv->ioctl_sock >= 0) -+ close(drv->ioctl_sock); -+ -+#ifdef CONFIG_MGNT_L2SOCK -+ if ( drv->mgnt_l2_sock != NULL) -+ l2_packet_deinit(drv->mgnt_l2_sock); -+#else -+ if (drv->mgnt_sock >= 0) -+ close(drv->mgnt_sock); -+#endif -+ -+ if (drv != NULL) -+ free(drv); -+ -+ return NULL; -+ -+} -+ -+static void rtl871x_driver_deinit_ops(void *priv) -+{ -+ //struct iwreq iwr; -+ struct rtl871x_driver_data *drv = priv; -+ -+ //back to INFRA MODE when exit. -+/* -+ memset(&iwr, 0, sizeof(iwr)); -+ os_strlcpy(iwr.ifr_name, drv->iface, IFNAMSIZ); -+ iwr.u.mode = IW_MODE_INFRA; -+ if (ioctl(drv->ioctl_sock, SIOCSIWMODE, &iwr) < 0) { -+ perror("ioctl[SIOCSIWMODE]"); -+ } -+*/ -+ rtl871x_set_mode(drv, IW_MODE_INFRA); -+ -+ -+ if (drv->ioctl_sock >= 0) -+ close(drv->ioctl_sock); -+ -+ -+ if (drv->l2_sock_recv != NULL && drv->l2_sock_recv != drv->l2_sock) -+ l2_packet_deinit(drv->l2_sock_recv); -+ -+ if(drv->l2_sock) -+ l2_packet_deinit(drv->l2_sock); -+ -+ //if (drv->sock_xmit != NULL) -+ // l2_packet_deinit(drv->sock_xmit); -+ -+#ifdef CONFIG_MGNT_L2SOCK -+ if (drv->mgnt_l2_sock) -+ l2_packet_deinit(drv->mgnt_l2_sock); -+#else -+ if (drv->mgnt_sock >= 0) -+ close(drv->mgnt_sock); -+#endif -+ -+ os_free(drv); -+ -+} -+ -+ -+const struct wpa_driver_ops wpa_driver_rtw_ops = { -+ .name = "rtl871xdrv", -+ //.init = rtl871x_driver_init_ops, -+ //.deinit = rtl871x_driver_deinit_ops, -+ .hapd_init = rtl871x_driver_init_ops, -+ .hapd_deinit = rtl871x_driver_deinit_ops, -+ //.wireless_event_init = rtl871x_wireless_event_init_ops, -+ //.wireless_event_deinit = rtl871x_wireless_event_deinit_ops, -+ //.send_eapol = rtl871x_send_eapol_ops, -+ .hapd_send_eapol = rtl871x_send_eapol_ops, -+ //.send_ether = rtl871x_driver_send_ether_ops, -+ //.send_mgmt_frame = rtl871x_send_mgmt_frame_ops, -+ .get_hw_feature_data = rtl871x_get_hw_feature_data_ops, -+ //.sta_add = rtl871x_sta_add_ops, -+ //.sta_add2 = rtl871x_sta_add2_ops, -+ .sta_remove = rtl871x_sta_remove_ops, -+ .set_ap = rtl871x_set_beacon_ops, -+ //.set_encryption = rtl871x_set_encryption_ops, -+ .set_key = rtl871x_set_key_ops, -+ .sta_deauth = rtl871x_sta_deauth_ops, -+ .sta_disassoc = rtl871x_sta_disassoc_ops, -+ //.set_wps_beacon_ie = rtl871x_set_wps_beacon_ie_ops, -+ //.set_wps_probe_resp_ie = rtl871x_set_wps_probe_resp_ie_ops, -+ .set_ap_wps_ie = rtl871x_set_ap_wps_ie, -+ .flush = rtl871x_sta_flush_ops, -+}; -+ -diff --git a/src/drivers/driver_wext.c b/src/drivers/driver_wext.c -index 01defdf..1de29c8 100644 ---- a/src/drivers/driver_wext.c -+++ b/src/drivers/driver_wext.c -@@ -1081,6 +1081,38 @@ void wpa_driver_wext_scan_timeout(void *eloop_ctx, void *timeout_ctx) - wpa_supplicant_event(timeout_ctx, EVENT_SCAN_RESULTS, NULL); - } - -+//added for wps2.0 @20110519 -+static int wpa_driver_wext_set_probe_req_ie(struct wpa_driver_wext_data *drv, const u8 *extra_ies, -+ size_t extra_ies_len) -+{ -+ unsigned char *pbuf; -+ struct iwreq iwr; -+ int ret = 0; -+ -+ pbuf = os_malloc(extra_ies_len); -+ os_memset(pbuf, 0, extra_ies_len); -+ -+ os_memset(&iwr, 0, sizeof(iwr)); -+ os_strlcpy(iwr.ifr_name, drv->ifname, IFNAMSIZ); -+ -+ os_memcpy(pbuf, extra_ies, extra_ies_len); -+ -+ iwr.u.data.pointer = (caddr_t)pbuf; -+ iwr.u.data.length = extra_ies_len; -+ iwr.u.data.flags = 0x8766;//magic number -+ -+ if (ioctl(drv->ioctl_sock, SIOCSIWPRIV, &iwr) < 0) { -+ perror("ioctl[SIOCSIWMLME]"); -+ ret = -1; -+ } -+ -+ if(pbuf) -+ os_free(pbuf); -+ -+ return ret; -+ -+} -+ - - /** - * wpa_driver_wext_scan - Request the driver to initiate scan -@@ -1103,6 +1135,10 @@ int wpa_driver_wext_scan(void *priv, struct wpa_driver_scan_params *params) - return -1; - } - -+ //added for wps2.0 @20110519 -+ wpa_driver_wext_set_probe_req_ie(drv, params->extra_ies, -+ params->extra_ies_len); -+ - os_memset(&iwr, 0, sizeof(iwr)); - os_strlcpy(iwr.ifr_name, drv->ifname, IFNAMSIZ); - -@@ -2403,6 +2439,28 @@ int wpa_driver_wext_alternative_ifindex(struct wpa_driver_wext_data *drv, - return 0; - } - -+// Aries 20120120, append rssi information at the end of "status" command -+int wext_signal_poll(void *priv, struct wpa_signal_info *signal_info) -+{ -+ struct wpa_driver_wext_data *drv = priv; -+ struct iwreq iwr; -+ struct iw_statistics stat; -+ int ret = 0; -+ -+ os_memset(&iwr, 0, sizeof(iwr)); -+ os_memset(&stat, 0, sizeof(stat)); -+ os_strlcpy(iwr.ifr_name, drv->ifname, IFNAMSIZ); -+ iwr.u.data.pointer = (caddr_t) &stat; -+ iwr.u.data.length = sizeof(struct iw_statistics); -+ iwr.u.data.flags = 1; -+ if (ioctl(drv->ioctl_sock, SIOCGIWSTATS, &iwr) < 0) { -+ perror("ioctl[SIOCGIWSTATS] fail\n"); -+ ret = -1; -+ } -+ signal_info->current_signal = stat.qual.level; -+ signal_info->current_noise = stat.qual.noise; -+ return ret; -+} - - int wpa_driver_wext_set_operstate(void *priv, int state) - { -diff --git a/src/drivers/drivers.c b/src/drivers/drivers.c -index a98af9a..d7d9c5b 100644 ---- a/src/drivers/drivers.c -+++ b/src/drivers/drivers.c -@@ -45,6 +45,9 @@ extern struct wpa_driver_ops wpa_driver_atheros_ops; /* driver_atheros.c */ - #ifdef CONFIG_DRIVER_NONE - extern struct wpa_driver_ops wpa_driver_none_ops; /* driver_none.c */ - #endif /* CONFIG_DRIVER_NONE */ -+#ifdef CONFIG_DRIVER_RTW -+extern struct wpa_driver_ops wpa_driver_rtw_ops; /* driver_rtw.c */ -+#endif /* CONFIG_DRIVER_RTW */ - - - const struct wpa_driver_ops *const wpa_drivers[] = -@@ -82,5 +85,8 @@ const struct wpa_driver_ops *const wpa_drivers[] = - #ifdef CONFIG_DRIVER_NONE - &wpa_driver_none_ops, - #endif /* CONFIG_DRIVER_NONE */ -+#ifdef CONFIG_DRIVER_RTW -+ &wpa_driver_rtw_ops, -+#endif /* CONFIG_DRIVER_RTW */ - NULL - }; -diff --git a/src/drivers/drivers.mak b/src/drivers/drivers.mak -index 3dd43c7..3e44fcb 100644 ---- a/src/drivers/drivers.mak -+++ b/src/drivers/drivers.mak -@@ -74,6 +74,10 @@ DRV_CFLAGS += -DCONFIG_DRIVER_BSD - DRV_OBJS += ../src/drivers/driver_bsd.o - CONFIG_L2_FREEBSD=y - CONFIG_DNET_PCAP=y -+ifdef CONFIG_SUPPORT_RTW_DRIVER -+DRV_CFLAGS += -DCONFIG_SUPPORT_RTW_DRIVER -DCONFIG_DRIVER_RTL_DFS -+NEED_AP_MLME=y -+endif - endif - - ifdef CONFIG_DRIVER_OPENBSD -@@ -84,6 +88,17 @@ DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD - DRV_OBJS += ../src/drivers/driver_openbsd.o - endif - -+ifdef CONFIG_DRIVER_RTW -+#CFLAGS += -DCONFIG_DRIVER_RTL -+#OBJS += driver_rtl.o -+DRV_AP_CFLAGS += -DCONFIG_DRIVER_RTW -DCONFIG_DRIVER_RTL_DFS -+DRV_AP_OBJS += ../src/drivers/driver_rtw.o -+CONFIG_L2_PACKET=linux -+NEED_NETLINK=y -+NEED_LINUX_IOCTL=y -+NEED_AP_MLME=y -+endif -+ - ifdef CONFIG_DRIVER_NONE - DRV_CFLAGS += -DCONFIG_DRIVER_NONE - DRV_OBJS += ../src/drivers/driver_none.o -diff --git a/src/eap_peer/eap_wsc.c b/src/eap_peer/eap_wsc.c -index 7ac99c7..1f7697c 100644 ---- a/src/eap_peer/eap_wsc.c -+++ b/src/eap_peer/eap_wsc.c -@@ -569,8 +569,13 @@ send_msg: - r = eap_wsc_build_msg(data, ret, id); - if (data->state == FAIL && ret->methodState == METHOD_DONE) { - /* Use reduced client timeout for WPS to avoid long wait */ -+#if 0 /* Aries add, 2012/06/12, extend timeout for AP IOT */ -+ if (sm->ClientTimeout > 4) -+ sm->ClientTimeout = 4; -+#else - if (sm->ClientTimeout > 2) - sm->ClientTimeout = 2; -+#endif - } - return r; - } -diff --git a/src/wps/wps.c b/src/wps/wps.c -index fbaf85a..10a82e1 100644 ---- a/src/wps/wps.c -+++ b/src/wps/wps.c -@@ -321,11 +321,15 @@ int wps_is_addr_authorized(const struct wpabuf *msg, const u8 *addr, - if (wps_parse_msg(msg, &attr) < 0) - return 0; - -+ return is_selected_pin_registrar(&attr); -+// Marked by Albert 2011/11/17 -+// Some APs won't carry the AuthorizedMACs in the probe response. -+// So, skip this check will speed up the process to find the current AP out for WPS handshake. -+/* - if (!attr.version2 && ver1_compat) { - /* - * Version 1.0 AP - AuthorizedMACs not used, so revert back to - * old mechanism of using SelectedRegistrar. -- */ - return is_selected_pin_registrar(&attr); - } - -@@ -342,6 +346,7 @@ int wps_is_addr_authorized(const struct wpabuf *msg, const u8 *addr, - } - - return 0; -+*/ - } - - -diff --git a/src/wps/wps_registrar.c b/src/wps/wps_registrar.c -index 4ca3a42..f74b036 100644 ---- a/src/wps/wps_registrar.c -+++ b/src/wps/wps_registrar.c -@@ -589,9 +589,10 @@ static int wps_build_probe_config_methods(struct wps_registrar *reg, - * These are the methods that the AP supports as an Enrollee for adding - * external Registrars. - */ -- methods = reg->wps->config_methods & ~WPS_CONFIG_PUSHBUTTON; -- methods &= ~(WPS_CONFIG_VIRT_PUSHBUTTON | -- WPS_CONFIG_PHY_PUSHBUTTON); -+ methods = reg->wps->config_methods; -+ //methods = reg->wps->config_methods & ~WPS_CONFIG_PUSHBUTTON; -+ //methods &= ~(WPS_CONFIG_VIRT_PUSHBUTTON | -+ // WPS_CONFIG_PHY_PUSHBUTTON); - wpa_printf(MSG_DEBUG, "WPS: * Config Methods (%x)", methods); - wpabuf_put_be16(msg, ATTR_CONFIG_METHODS); - wpabuf_put_be16(msg, 2); diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/series b/packages/extras-buildpkgs/hostapd-realtek/debian/patches/series deleted file mode 100644 index 8a362f8be2e1..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/series +++ /dev/null @@ -1,3 +0,0 @@ -session-ticket.patch -300-noscan.patch -realtek.patch diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/session-ticket.patch b/packages/extras-buildpkgs/hostapd-realtek/debian/patches/session-ticket.patch deleted file mode 100644 index 35ecbcb61e03..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/patches/session-ticket.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c -index 23ac64b48..cc8d159e0 100644 ---- a/src/crypto/tls_openssl.c -+++ b/src/crypto/tls_openssl.c -@@ -1577,6 +1577,7 @@ struct tls_connection * tls_connection_init(void *ssl_ctx) - #ifdef SSL_OP_NO_COMPRESSION - options |= SSL_OP_NO_COMPRESSION; - #endif /* SSL_OP_NO_COMPRESSION */ -+ options |= SSL_OP_NO_TICKET; - SSL_set_options(conn->ssl, options); - - conn->ssl_in = BIO_new(BIO_s_mem()); diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/rules b/packages/extras-buildpkgs/hostapd-realtek/debian/rules deleted file mode 100644 index f99b3ea05c84..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/rules +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/make -f - -# without "-relro,-pie" building on Stretch breaks -export DEB_BUILD_MAINT_OPTIONS=hardening=+all - -include /usr/share/dpkg/buildflags.mk - -# The build system doesn't use CPPFLAGS, pass them to CFLAGS/CXXFLAGS to -# enable the missing (hardening) flags -DEB_CFLAGS_MAINT_APPEND = -MMD -Wall $(shell dpkg-buildflags --get CPPFLAGS) -DEB_CXXFLAGS_MAINT_APPEND = $(shell dpkg-buildflags --get CPPFLAGS) -DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed -export DEB_CFLAGS_MAINT_APPEND DEB_CXXFLAGS_MAINT_APPEND DEB_LDFLAGS_MAINT_APPEND - -UCFLAGS = -MMD -Wall -g -Os -fPIC - -BINDIR = /sbin -#V = 1 - -DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) - CC=$(DEB_HOST_GNU_TYPE)-gcc -endif - -export CC BINDIR - -VERSION := $(shell dpkg-parsechangelog | sed -ne 's,^Version: *\([0-9]*:\)\?\(.*\)$$,\2,p') - -override_dh_auto_build: - # build hostapd - cp -v --remove-destination debian/config/config_realtek hostapd/.config - dh_auto_build --sourcedirectory=hostapd \ - --buildsystem=makefile \ - --parallel - dh_auto_clean --sourcedirectory=src --buildsystem=makefile - -override_dh_auto_clean: - dh_auto_clean --sourcedirectory=hostapd \ - --buildsystem=makefile - -override_dh_auto_install: - $(info Skip dh_auto_install ...) - -override_dh_clean: - dh_clean hostapd/.config - -override_dh_install: - dh_install - install --mode=755 -D debian/ifupdown/hostapd.sh \ - debian/hostapd-realtek/etc/hostapd/ifupdown.sh - install --mode=644 -D debian/config/hostapd.conf \ - debian/hostapd-realtek/etc/hostapd.conf - -override_dh_installchangelogs: - dh_installchangelogs --package=hostapd-realtek hostapd/ChangeLog - -override_dh_builddeb: - dh_builddeb -- -Zxz -z6 - -override_dh_installinit: - dh_installinit --name=hostapd - -### end dh overrides - -%: - dh ${@} --parallel diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/source/format b/packages/extras-buildpkgs/hostapd-realtek/debian/source/format deleted file mode 100644 index 163aaf8d82b6..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/packages/extras-buildpkgs/hostapd-realtek/debian/source/options b/packages/extras-buildpkgs/hostapd-realtek/debian/source/options deleted file mode 100644 index b3062866cf15..000000000000 --- a/packages/extras-buildpkgs/hostapd-realtek/debian/source/options +++ /dev/null @@ -1,2 +0,0 @@ -compression = "xz" -compression-level = 6 diff --git a/packages/extras-buildpkgs/hostapd/debian/NEWS b/packages/extras-buildpkgs/hostapd/debian/NEWS deleted file mode 100644 index 6291eb688a79..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/NEWS +++ /dev/null @@ -1,20 +0,0 @@ -wpasupplicant (0.6.2-1) unstable; urgency=low - - The -w (wait for network interface to exist) command line option no longer - exists. If you have scripts that require this option, it is time to change - them, or use one of the two supported modes of operation explained at - /usr/share/doc/wpasupplicant/README.modes.gz. - - ifupdown supports hot-plugged network devices via the "allow-hotplug" class - of operation. An example /etc/network/interfaces configuration stanza would - look like: - - allow-hotplug wlan0 - iface wlan0 inet dhcp - wpa-ssid myssid - wpa-psk mysecretpassphrase - - network-manager is also able to handle hot-plugged network devices. - - -- Kel Modderman Mon, 14 Jan 2008 18:02:17 +1000 - diff --git a/packages/extras-buildpkgs/hostapd/debian/README.source b/packages/extras-buildpkgs/hostapd/debian/README.source deleted file mode 100644 index bb7a4a9d743c..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/README.source +++ /dev/null @@ -1,128 +0,0 @@ -"wpa" sources for Debian ------------------------- - -This "wpa" source package merges wpa_supplicant and hostapd sources, which are -maintained in one source repository[1] upstream and share considerable/ -duplicate amounts of source. Starting with the 1.x branch, both wpa_supplicant -and hostapd are built from this common source package for Debian, while not -released together as tarball by upstream, the source can be obtained from the -upstream git repositories. - -The preferred way to generate the orig.tar.gz is by calling - - $ debian/rules get-orig-source - -which will clone the upstream git repository under $TMPDIR, using mktemp(1), -and create a new tarball based on the git tag corresponding to the top most -entry in debian/changelog. This newly generated tarball will be stored as -../wpa_${VERSION}.orig.tar.gz or ../tarballs/wpa_${VERSION}.orig.tar.gz, if -a directory called ../tarballs/ exists. Eventually existing tarballs -corresponding to the current version will not be overwritten. - -Required dependencies to generate a new orig.tar.gz: -- a SUSv3 compatible shell, like dash or bash -- dpkg-parsechangelog, available from dpkg-dev -- git -- xz, available from xz-utils or busybox -- mktemp and rm, available from coreutils or busybox -- sed, available from sed or busybox -- tar, available from tar or busybox - -It is recommended to base tarballs for development snapshots of "wpa" on -according git tags from the upstream git repository, the available git tags -can be queried by: - - $ git clone git://w1.fi/srv/git/hostap-1.git # 1.x branch - -or - - $ git clone git://w1.fi/srv/git/hostap.git # >= 2.x branches - -changing into the corresponding directory (hostap-1 or hostapd) and calling -git tag. - - $ cd hostapd-1 - $ git tag - hostap_0_6_3 - […] - hostap_1_0 - […] - hostap_1_0_rc3 - […] - -The Debian versions for these tags would be 0.6.3-1, 1.0 or 1.0~rc3 in -debian/changelog. Intermediate states between tags or HEAD are usually best -dealt with by creating a patch series based on the newest matching tag. - -Exporting commits between "hostap_1_0" and the current git HEAD: - - $ git format-patch hostap_1_0..HEAD - -Exporting commits between "hostap_1_0_rc3" and "hostap_1_0": - - $ git format-patch hostap_1_0_rc3..hostap_1_0 - -In both cases numbered patches will be dropped in the base directory of the -git clone. These numbered patches can be imported to the Debian package using -standard procedures for "3.0 (quilt)" source packages. - -Tarballs can also be created manually from the upstream git repository: - - $ git clone git://w1.fi/srv/git/hostap-1.git - $ cd hostap-1 - $ git archive \ - --format=tar \ - --prefix="wpa-1.0/" \ - hostap_1_0 \ - README COPYING patches src wpa_supplicant hostapd | \ - xz -c6 > wpa_1.0.orig.tar.gz - -Arbitrary git tags or commit IDs can be used for this purpose. - - -Upstream git snapshots can be exported by using a specially crafted version -syntax used in the top most (pending) changelog entry. The required syntax for -correctly parsing this is: - - +git.+- - upstream_version := [0-9\.]* --> 2.0 - date := [0-9]* --> 20131120 (YYYYMMDD) - revision := [0-9]* --> 1 - git_hash := [0-9a-f]* --> 594516b - debian_revision := [0-9*] --> 1 - -e.g.: - - 2.0+git20131120.1+594516b-1 - -Technically any incrementing number can be used for , but it's strongly -recommended to use YYYYMMDD (date --utc +%Y%m%d) and follow it by an -strictly incrementing arbitrary revision number (typically '.1'). The supplied -git hash can be abbreviated, but must be unique (see git describe, without -leading 'g'). - -The debian/rules get-orig-source target will automatically switch between -hostapd-1.git and hostapd.git (for >= 2.0) as needed, but it will only fetch -the explicitly specified version from a properly formatted, top most, -debian/changelog entry; it will not fetch the last upstream release or git -HEAD automatically. - - -The Debian packaging for wpa_supplicant/ hostapd is maintained in a subversion -repository at: - - Vcs-Svn: svn://anonscm.debian.org/svn/pkg-wpa/wpa/trunk/ - Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-wpa/wpa/trunk/ - -The development mailing list and its mailing list archive is located at: - - http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-wpa-devel - -Work for the wpa package can be coordinated on this mailing list through: - - Debian wpasupplicant Maintainers - - -- Stefan Lippers-Hollmann Sat, 28 Dec 2013 22:37:03 +0100 - -[1] http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap-1.git [1.x branch] - http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git [development] diff --git a/packages/extras-buildpkgs/hostapd/debian/changelog b/packages/extras-buildpkgs/hostapd/debian/changelog deleted file mode 100644 index 476dc4b8ad37..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/changelog +++ /dev/null @@ -1,2357 +0,0 @@ -wpa (2:2.6-4) experimental; urgency=medium - - * Upload to experimental. - * Bump the epoch to 2:, as the upload to unstable had to bump epoch. - - -- Andrew Shadura Fri, 24 Feb 2017 16:45:48 +0100 - -wpa (2.6-3) unstable; urgency=medium - - * Cherry-pick the following patches from the upstream: - - WPS: Force BSSID for WPS provisioning step connection - - Check for NULL qsort() base pointers - - Always propagate scan results to all interfaces - - wpa_supplicant: Restore permanent MAC address on reassociation - - nl80211: Update channel information after channel switch notification - - Extend ieee80211_freq_to_channel_ext() to cover channels 52-64 - - Use estimated throughput to avoid signal based roaming decision - - Use random MAC address for scanning only in non-connected state - - -- Andrew Shadura Thu, 26 Jan 2017 17:53:41 +0100 - -wpa (2.6-2) unstable; urgency=medium - - * Upload to unstable. - * Restore the patch descriptions. - * Don't install debian/system-sleep/wpasupplicant (originally introduced - to fix LP: #1422143), it doesn't improve the state of the things, - introduces regressions in some cases, and at all isn't supposed to - work with how wpa-supplicant is started these days. - - -- Andrew Shadura Tue, 20 Dec 2016 21:50:26 +0100 - -wpa (2.6-1) experimental; urgency=medium - - [ Andrew Shadura ] - * New upstream version (Closes: #828601, #832034). - * Add gbp.conf. - - [ Julian Wollrath ] - * Refresh patches. - - -- Andrew Shadura Thu, 20 Oct 2016 18:28:10 +0200 - -wpa (2.5-2+v2.4-3) unstable; urgency=medium - - [ Helmut Grohne ] - * Address FTCBFS: Set PKG_CONFIG (Closes: #836074). - - [ Andrew Shadura ] - * Don't run wpa_cli suspend/resume if /run/wpa_supplicant isn't around - (Closes: #835648). - - -- Andrew Shadura Wed, 14 Sep 2016 11:11:01 +0200 - -wpa (2.5-2+v2.4-2) unstable; urgency=medium - - * Apply patches from upstream to unbreak dedicated P2P Device support - (closes: #833402). - * Reapply an accidentally lost patch to fix pkcs11 OpenSSL engine - initialisation (Closes: #827253). - * Retroactively redact the last changelog entry to represent the actual - upload more accurately. - - -- Andrew Shadura Tue, 09 Aug 2016 20:11:27 +0200 - -wpa (2.5-2+v2.4-1) unstable; urgency=medium - - [ Ricardo Salveti de Araujo ] - * debian/patches/dbus-fix-operations-for-p2p-mgmt.patch: fix operations - when P2P management interface is used (LP: #1482439) - - [ Stefan Lippers-Hollmann ] - * wpasupplicant: install systemd unit (Closes: #766746). - * wpasupplicant: configure driver fallback for networkd. - * import changelogs from the security queues. - * move previous patch for CVE-2015-1863 into a new subdirectory, - debian/patches/2015-1/. - * replace the Debian specific patch "wpasupplicant: fix systemd unit - dependencies" with a backport of its official upstream change "systemd: - Order wpa_supplicant before network.target". - * fix dependency odering when invoked with DBus, by making sure that DBus - isn't shut down before wpa_supplicant, as that would also bring down - wireless links which are still holding open NFS shares. Thanks to Facundo - Gaich and Michael Biebl - (Closes: #785579). - * import NMU changelogs and integrate NMU changes. - * Add patches to address CVE-2016-4476 and CVE-2016-4477, thanks to Salvatore - Bonaccorso (Closes: #823411): - - WPS: Reject a Credential with invalid passphrase - - Reject psk parameter set with invalid passphrase character - - Remove newlines from wpa_supplicant config network output - - Reject SET_CRED commands with newline characters in the string values - - Reject SET commands with newline characters in the string values - * use --buildsystem=qmake_qt4 (available since dh 8.9.1) for debhelper - (Closes: #823171). - * fix clean target, by splitting the find call into individual searches. - * building wpa in a current unstable chroot using debhelper >= 9.20151219 - will introduce automatic dbgsym packages, thereby indirectly providing - the requested debug packages for stretch and upwards (Closes: #729934). - Don't add a versioned build-dependency in order to avoid unnecessary - complications with backports. - * change Vcs-Browser location to prefer https, but keep the unsecure tag for - Vcs-Svn, as there is no option allowing to pull from the svn+ssh:// - location without an alioth account, this only makes lintian partially happy - in regards to vcs-field-uses-insecure-uri. - * debian/*: fix spelling errors noticed by lintian. - * drop the obsolete Debian menu entry for wpa_gui, according to the tech-ctte - decision on #741573. - * fix debian/get-orig-source for wpa 2.6~. - * add debian/watch file for the custom tarball generation. - - [ Paul Donohue ] - * debian/ifupdown/functions.sh: Fix handling for "wpa-roam". Call ifquery - instead of directly parsing /run/*/ifstate files to work with current - ifupdown. (Closes: #545766, LP: #1545363) - - [ Martin Pitt ] - * Add debian/system-sleep/wpasupplicant: Call wpa_cli suspend/resume - before/after suspend, like the pm-utils hook. In some cases this brings - back missing Wifi connection after resuming. (LP: #1422143) - - [ Andrew Shadura ] - * Backout 2.5 release, switch to 2.4 (see #833507 for details). - * New upstream release (Closes: #806889). - * Refresh patches, drop patches applied upstream. - * Update Vcs-* to point to Git. - - -- Andrew Shadura Fri, 05 Aug 2016 20:45:14 +0200 - -wpa (2.5-2) unstable; urgency=medium - - * Apply patches from upstream to unbreak dedicated P2P Device support - (hopefully closes: #833402). - - -- Andrew Shadura Thu, 04 Aug 2016 11:17:37 +0300 - -wpa (2.5-1) unstable; urgency=medium - - [ Stefan Lippers-Hollmann ] - * wpasupplicant: install systemd unit (Closes: #766746). - * wpasupplicant: configure driver fallback for networkd. - * import changelogs from the security queues. - * move previous patch for CVE-2015-1863 into a new subdirectory, - debian/patches/2015-1/. - * fix dependency ordering when invoked with DBus, by making sure that DBus - isn't shut down before wpa_supplicant, as that would also bring down - wireless links which are still holding open NFS shares. Thanks to Facundo - Gaich and Michael Biebl - (Closes: #785579). - * import NMU changelogs and integrate NMU changes. - * Add patches to address CVE-2016-4476 and CVE-2016-4477, thanks to Salvatore - Bonaccorso (Closes: #823411): - - WPS: Reject a Credential with invalid passphrase - - Reject psk parameter set with invalid passphrase character - - Remove newlines from wpa_supplicant config network output - - Reject SET_CRED commands with newline characters in the string values - - Reject SET commands with newline characters in the string values - * use --buildsystem=qmake_qt4 (available since dh 8.9.1) for debhelper - (Closes: #823171). - * fix clean target, by splitting the find call into individual searches. - * building wpa in a current unstable chroot using debhelper >= 9.20151219 - will introduce automatic dbgsym packages, thereby indirectly providing - the requested debug packages for stretch and upwards (Closes: #729934). - Don't add a versioned build-dependency in order to avoid unnecessary - complications with backports. - * change Vcs-Browser location to prefer https - * debian/*: fix spelling errors noticed by lintian. - * drop the obsolete Debian menu entry for wpa_gui, according to the tech-ctte - decision on #741573. - * fix debian/get-orig-source for wpa 2.6~. - * add debian/watch file for the custom tarball generation. - - [ Paul Donohue ] - * debian/ifupdown/functions.sh: Fix handling for "wpa-roam". Call ifquery - instead of directly parsing /run/*/ifstate files to work with current - ifupdown. (Closes: #545766, LP: #1545363) - - [ Martin Pitt ] - * Add debian/system-sleep/wpasupplicant: Call wpa_cli suspend/resume - before/after suspend, like the pm-utils hook. In some cases this brings - back missing Wifi connection after resuming. (LP: #1422143) - - [ Andrew Shadura ] - * New upstream release (Closes: #806889). - * Refresh patches, drop patches applied upstream. - * Fix pkcs11 OpenSSL engine initialisation (Closes: #827253). - * Update Vcs-* to point to Git. - - -- Andrew Shadura Sun, 31 Jul 2016 18:05:59 +0300 - -wpa (2.3-2.4) unstable; urgency=medium - - * Non-maintainer upload. - * Add patches to address CVE-2016-4476 and CVE-2016-4477, thanks to - Salvatore Bonaccorso (Closes: #823411): - - WPS: Reject a Credential with invalid passphrase - - Reject psk parameter set with invalid passphrase character - - Remove newlines from wpa_supplicant config network output - - Reject SET_CRED commands with newline characters in the string values - - Reject SET commands with newline characters in the string values - * Refresh patches to apply cleanly. - - -- Andrew Shadura Thu, 21 Jul 2016 09:01:51 +0200 - -wpa (2.3-2.3) unstable; urgency=high - - * Non-maintainer upload. - * Add patch to address CVE-2015-5310. - CVE-2015-5310: wpa_supplicant unauthorized WNM Sleep Mode GTK control. - (Closes: #804707) - * Add patches to address CVE-2015-5314 and CVE-2015-5315. - CVE-2015-5314: hostapd: EAP-pwd missing last fragment length validation. - CVE-2015-5315: wpa_supplicant: EAP-pwd missing last fragment length - validation. (Closes: #804708) - * Add patch to address CVE-2015-5316. - CVE-2015-5316: EAP-pwd peer error path failure on unexpected Confirm - message. (Closes: #804710) - - -- Salvatore Bonaccorso Thu, 12 Nov 2015 20:54:12 +0100 - -wpa (2.3-2.2) unstable; urgency=high - - * Non-maintainer upload. - * Add patch to address CVE-2015-4141. - CVE-2015-4141: WPS UPnP vulnerability with HTTP chunked transfer - encoding. (Closes: #787372) - * Add patch to address CVE-2015-4142. - CVE-2015-4142: Integer underflow in AP mode WMM Action frame processing. - (Closes: #787373) - * Add patches to address CVE-2015-414{3,4,5,6} - CVE-2015-4143 CVE-2015-4144 CVE-2015-4145 CVE-2015-4146: EAP-pwd missing - payload length validation. (Closes: #787371) - * Add patch to address 2015-5 vulnerability. - NFC: Fix payload length validation in NDEF record parser (Closes: #795740) - * Thanks to Julian Wollrath for the initial debdiff - provided in #787371. - - -- Salvatore Bonaccorso Sat, 31 Oct 2015 14:13:50 +0100 - -wpa (2.3-2.1) unstable; urgency=medium - - * Non-maintainer upload. - * Import four patches from upstream git (wpasupplicant_band_selection_*.patch), - manually unfuzzed, to improve 2.4/5 GHz band selection. (Closes: #795722) - - -- Steinar H. Gunderson Sun, 30 Aug 2015 14:47:56 +0200 - -wpa (2.3-2) unstable; urgency=high - - * remove Kel Modderman from Uploaders as per his request, many thanks for - all past efforts Kel. - * fix systemd unit dependencies for wpasupplicant, it needs to be started - before the network target (Closes: 780552), many thanks to Michael Biebl - for reporting and suggesting the patch. - * hostapd: avoid segfault with driver=wired, by merging upstream commit - e9b783d58c23a7bb50b2f25bce7157f1f3b5d58b "Fix hostapd operation without - hw_mode driver data." - * import "P2P: Validate SSID element length before copying it - (CVE-2015-1863)" from upstream (Closes: #783148). - - -- Stefan Lippers-Hollmann Thu, 23 Apr 2015 05:02:21 +0200 - -wpa (2.3-1) unstable; urgency=medium - - * New upstream release: - - fixed by the new upstream version: - + wpa: arbitrary command execution via action scripts (Closes: #765352). - wpasupplicant: fixed wpa_cli action script execution to use more - robust mechanism (CVE-2014-3686). - hostapd: fixed hostapd_cli action script execution to use more robust - mechanism (CVE-2014-3686). - + wpasupplicant: MAC addressing changing broken after updating to 2.2-1 - (Closes: #763775). - + drop ap_config_c_fix-typo-for-capabilities, applied upstream. - - backport "Include ieee802_11_common.c in wpa_supplicant build - unconditionally" from HEAD, to fix a newly introduced FTBS on, at least, - kfreebsd. - * bump standards version to 3.9.6, no changes necessary. - - -- Stefan Lippers-Hollmann Tue, 14 Oct 2014 21:29:37 +0200 - -wpa (2.2-1) unstable; urgency=medium - - * New upstream release: - - import suggested changes from Gerald Turner (see - #718651 for details). - + disable ACS for hostapd on kfreebsd-any (FTBS). - - fixed by the new upstream version: - + wpa_supplicant: OpenSSL: tls_connection_handshake - Failed to read - (Closes: #561081). - + wpasupplicant: new upstream release 2.2 (Closes: #718651). - + wpasupplicant: -s option not documented in man page (Closes: #608135). - - refresh patches: - + drop 13_human_readable_signal.patch, applied upstream. - + drop hostapd_fix-WDS-VLAN-bridge-handling.patch, applied upstream. - + drop fix-spelling-s-algorith-algorithm.patch, applied upstream. - - adapt build configs for hostapd/ wpa_supplicant 2.2: - + sync with updated upstream defconfigs. - + keep Hotspot 2.0 support disabled for the time being. - + hostapd: keep sqlite3 support disabled for the time being. - - update debian/copyright manually, the wpa v2 branch was relicensed from - (BSD-3-clause || GPL-2) to BSD-3-clause only (for the most part). This - doesn't change the licensing state as the BSD-3-clause license is - compatible with GPL-2. - * drop pre-wheezy /lib/init/rw/sendsigs.omit.d/ migration support, invert the - versioned initscripts dependency to a versioned breaks relation. - * migrate from /var/run/ to /run/. - * adapt get-orig-source for wpa 2.2. - * drop version qualifiers for libnl3 build dependencies, as they're - fullfilled by wheezy. - * drop version qualifiers for the lsb-base build dependency, as they're - fullfilled by squeeze. - * shorten short description for hostapd. - * sort debian/control entries. - * make lintian happy (invalid-short-name-in-dep5-copyright bsd) and call it - BSD-3-clause. - * enable DEBUG_SYSLOG and set DEBUG_SYSLOG_FACILITY=LOG_DAEMON, as requested - by Cyril Brulebois to improve logging options for d-i and - netcfg (Closes: #761922). - * fix various typos around "existence", thanks to A. Costa , - (Closes: #683636). - * ap_config.c: fix typo for "capabilities". - * remove no longer required lintian override (spelling-error-in-binary for - the). - - -- Stefan Lippers-Hollmann Wed, 17 Sep 2014 04:52:36 +0200 - -wpa (1.1-1) unstable; urgency=medium - - * New upstream release: - - drop 11_wpa_gui_ftbfs_gcc_4_7, applied upstream. - - drop EAP-TLS-server_fix-TLS-Message-length-validation, applied upstream. - - fixes: - - EAP access point constantly roaming with proactive key caching - (Closes: #711063). - * enable IBSS RSN, thanks to Nicolas Cavallari - (Closes: #678147). - * enable simple AP support for wpasupplicant, thanks to Patrik Flykt - (Closes: #690536). - * use the readline6, wpa_cli doesn't link to openssl. - * link with --as-needed. - * compress binaries with xz. - * debian/get-orig-source: switch to xz compressed upstream tarballs. - * debian/get-orig-source: adapt for the post 1.x upstream branch. - * debian/get-orig-source: support named snapshots, see debian/README.source - for detailed syntax and semantics. - * debian/README.source: explain fetching git snapshots by specifying their - git hash. - * debian/README.source: update to match current reality and apply grammar - fixes. - * debian/README.source: drop trailing whitespace. - * fix hardening flags, thanks a lot to Florent Daigniere - (Closes: #725865). - * debian/control: fold dependencies. - * bump standards version to 3.9.5, no changes necessary. - * reflect reality and adapt the maintainer mail address not to claim - representing Ubuntu. - * drop wheezy-specific comments in the configuration files. - * glob 'wpa-password' as well and hide its debugging output, this hopefully - closes: #728092. - * enable EAP-FAST, openssl in Debian is now new enough (Closes: #685685). - * update to new alioth URIs (vcs-field-not-canonical). - * add Keywords entry for desktop files (desktop-entry-lacks-keywords-entry). - * functions.sh: s/particuarly/particularly/, thanks to Vincent Lefevre - (Closes: #734422). - * fix FTBS using gcc-4.8 by linking with -ldl on kfreebsd-any; the udeb - packages don't provide EAP support and are therefore unaffected. This is - already accounted for by the upstream Makefile, however wrongly depending - on !CONFIG_DRIVER_BSD, while it is actually depending on the target libc - rather than the kernel (Closes: #737465). Thanks to Cyril Brulebois - and Steven Chamberlain . - * import "hostapd: Fix WDS VLAN bridge handling" by Felix Fietkau - from upstream, thanks to Mark Hindley - (Closes: #737109). - * drop build-conflicts with libqt3-dev as the package is no longer available - >= lenny, thanks to Michael Biebl . - * drop pre-dependency on dpkg (>= 1.15.6~), data.tar.xz-member-without-dpkg- - pre-depends is no longer a problem after Ubuntu lucid is EOL. Thanks to - Michael Biebl for noticing. - * drop build-dependency on libdbus-glib-1-dev, it is no longer required for - dbus-binding-tool, thanks to Michael Biebl. - * allow parallel building. - * fix spelling s/algorith/algorithm/. - * add lintian overrides for false positive spelling complaints. - - -- Stefan Lippers-Hollmann Fri, 21 Feb 2014 01:07:28 +0100 - -wpa (1.0-3.1) unstable; urgency=low - - * Non-Maintainer Upload - * enable IBSS RSN, thanks to Nicolas Cavallari - (Closes: #678147). - - -- Daniel Kahn Gillmor Thu, 05 Dec 2013 13:56:15 -0500 - -wpa (1.0-3) unstable; urgency=high - - * ship forgotten README-P2P. - * revert to GNU readline for wpa_cli, instead of using the internal readline - implementation added in wpa 1~. Prefer libreadline-gplv2-dev, because libnl - is GPL-2 (only) - switching back to the internal readline implementation is - targeted for wheezy+1 (Closes: #677993, #678077). - * Fix DoS via specially crafted EAP-TLS messages with longer message - length than TLS data length (CVE-2012-4445, DSA 2557-1, Closes: #689990). - - -- Stefan Lippers-Hollmann Mon, 08 Oct 2012 17:48:04 +0200 - -wpa (1.0-2) unstable; urgency=low - - * Really enable hardened build flags, thanks Simon Ruderich - . (Closes: #657332) - * Do not suppress compilation output, set V=1. - - -- Kel Modderman Mon, 14 May 2012 06:39:13 +1000 - -wpa (1.0-1) unstable; urgency=low - - [ Stefan Lippers-Hollmann ] - * New upstream release, no code changes since 1.0~rc3. - * upload to unstable, to fix FTBS with gcc-4.7. - * update debian/README.source. - - [ Kel Modderman ] - * No longer explicitly add --as-needed to LDFLAGS, it is no longer - required since wpa_cli stopped linking to libreadline (WPA_CLI_EDIT=y). - - -- Kel Modderman Fri, 11 May 2012 13:58:51 +1000 - -wpa (1.0~rc3-1) experimental; urgency=low - - [ Stefan Lippers-Hollmann ] - * import new upstream snapshot 1.0-rc3: - - fixes: - - hostapd: Fails to authenticate on wpa2 password (Closes: #483924) - - hostapd: EAPOL reauthentication/rekeying timeout loop when using WMM - (Closes: #655129, #659059) - - rebase patches: - - libnl3-includes - - update hostapd configs. - - update wpa_supplicant configs. - * merge source packages for hostapd and wpasupplicant under the new name - "wpa", which is also used by upstream. - * restrict wpasupplicant to linux-any and kfreebsd-any, hurd lacks kernel - support. - * bump standards version to 3.9.3, no changes necessary. - * update dep-5 version to final 1.0, no changes necessary: - - order licenses alphabetically. - * build-depend on docbook-to-man explicitly. - * convert packaging to Multi-Arch, bump compat level to 9 and debhelper - build-dependency accordingly; all binaries are Multi-Arch=foreign. - * update debian/copyright for wpa 1.0~rc2 and merged sources. - * fix clean target and make sure to succeed building twice in a row. - * drop build-dependency on libreadline-dev, it's no longer needed with - WPA_CLI_EDIT. - * remove watch file, there is no corresponding upstream tarballs at the - moment. - * add (temporary?) get-orig-source target to debian/rules, which fetches the - last tagged upstream version corresponding to debian/changelog. - - add a lintian override for this, upstream doesn't want to release - tarballs at the moment. - * use epoche only for hostapd binaries. - - [ Kel Modderman ] - * export BINDIR=/sbin, the build system now requires it when patching - D-Bus/systemd configuration. - * quieten the upstream build system so that errors/warning are more visible. - * assist with adaptation of debian/rules for merge of wpa_supplicant/hostapd: - - add docbook-utils to build dependency list and make documentation from - sgml source - - ensure shared code under src/ is cleaned between wpa_supplicant/hostapd - builds - - put wpa_supplicant/hostapd ifupdown hooks in their own namespace, adapt - installation of ifupdown hooks - * drop the netdev_wrapper script from wpagui and associated patch - * install systemd service unit file - * refresh D-Bus service activation file patch which starts process with - syslog and control socket support, also patch systemd service file - * drop 09_dbus_emit_change_events.patch, applied upstream. - * fix ftbfs with gcc/g++ 4.7 (Closes: 667416) - * enable hardened build flags. (Closes: #657332) - * remove DEB_BUILD_OPTIONS=noopt handling from debian/rules, no longer - required since dpkg-buildflags honors it. - * Add ability to set CC for cross building support (untested). - * Remove Faidon Liambotis from Uploaders as per - his request, many thanks for all past efforts Faidon. - * Only build manpages from docbook source, we do not currently use the - html or pdf products. - - -- Kel Modderman Sat, 21 Apr 2012 15:59:32 +1000 - -wpasupplicant (0.7.3-6) unstable; urgency=low - - * add "hostap: Allow linking with libnl-3" from Ben Greear - to allow building against libnl3 3.2. - * raise versioned build-dependency to (>= 3.2.3-2~), we need - libnl-genl-3-200-udeb and expect it in /lib/. - * switch build dependency from libnl3-dev to libnl-3-dev && libnl-genl-3-dev - accordingly. - * symlink /usr/share/doc/wpasupplicant/ to /usr/share/doc/wpa_supplicant, - which is referred to from upstream documentation (Closes: #537375, - #616120). - * enable BGSCAN_SIMPLE (Closes: #650834). - * add "For MS-CHAP, convert the password from UTF-8 to UCS-2" from - Evan Broder , accepted upstream into hostap-1.git - (Closes: #649202). - - -- Stefan Lippers-Hollmann Mon, 19 Dec 2011 23:31:20 +0100 - -wpasupplicant (0.7.3-5) unstable; urgency=low - - * restrict wpasupplicant-udeb to linux-any, until a udeb for libpcap0.8 gets - available for kfreebsd-any (Closes: #644823). - * build-depend on libncurses5-dev explicitly, as it is no longer pulled in - indirectly. - - -- Stefan Lippers-Hollmann Fri, 14 Oct 2011 10:35:42 +0200 - -wpasupplicant (0.7.3-4) unstable; urgency=low - - [ Kel Modderman ] - * Support /run/sendsigs.omit.d/ (Closes: #633040): - - depend on initscripts (>= 2.88dsf-13.3) - - create new omission pid files in /run/sendsigs.omit.d/ unconditionally - - migrate existing omission pid files from /lib/init/rw/ to - /run/sendsigs.omit.d/ - * ACK NMU (Closes: #610931) - - add wpasupplicant-udeb - - build against libnl3 - * Improve integration of the udeb addition with existing debian/rules: - - build the required binary in the build target in similar way to standard - package build - - install binary manually in dh_auto_install override rather than - wpasupplicant-udeb.install to handle renaming of binary - - sync udeb CFLAGS with the standard build - - allow potential for non-linux udebs, add a kfreebsd udeb configuration - snippet - * Filter the numerous hyphen-used-as-minus-sign informational messages - from lintian output. - * Add preferred options to debian/source/local-options to assist with quilt - patch management. - * Add patch for wpa_gui-qt4 which displays scan results signal strength in - dBm with bar indicator. (Closes: #630681) - - [ Stefan Lippers-Hollmann ] - * make wpasupplicant-udeb arch=any, an initial kfreebsd udeb config is now - provided as well. - * use Package-Type instead of XC-Package-Type for wpasupplicant-udeb, - dpkg-dev >1.15.7 is available in squeeze. - * add a dependency on ${misc:Depends} for the udeb package as well. - * adapt debian/copyright to recent changes (r174) in DEP-5 and use the new - anonscm URL. - * don't use /run/sendsigs.omit.d/ if it hasn't already been created by - mountkernfs.sh (e.g. when using systemd), thanks to Michael Biebl. - - -- Stefan Lippers-Hollmann Mon, 26 Sep 2011 23:30:00 +0200 - -wpasupplicant (0.7.3-3.1) unstable; urgency=low - - * Non-maintainer upload with the agreement of Kel Modderman. - - [ Stefan Lippers-Hollmann ] - * bump standards version to 3.9.2, no changes necessary. - - [ Gaudenz Steinlin ] - * Add wpasupplicant-udeb for debian-installer. Thanks to - Mathew Palmer for providing the initial patch. (Closes: #610931) - * Build against libnl3 - - -- Gaudenz Steinlin Sat, 30 Jul 2011 14:10:31 +0200 - -wpasupplicant (0.7.3-3) unstable; urgency=low - - * Restore code which loop waits for wpa_supplicant generated PID and - UNIX socket on the filesystem before proceeeding with execution of - ifupdown script. (Closes: #622757, #622589) - * On DISCONNECTED event using wpa-roam, do not immediately issue - reassociation command. (Closes: #622821) - * Enable CONFIG_IEEE80211W in build configuration. (Closes: #622587) - - -- Kel Modderman Sun, 17 Apr 2011 21:07:58 +1000 - -wpasupplicant (0.7.3-2) unstable; urgency=low - - * Upload to unstable. - * Remove 08_pcsc_dynamic.patch and forget the idea about dynamically - loading libpcsc. (Closes: #618719) - * Build with support for pcsc and link with libpcsc. Reopens #531592 - and #612715. - - -- Kel Modderman Tue, 12 Apr 2011 22:37:40 +1000 - -wpasupplicant (0.7.3-1) experimental; urgency=low - - [ Kel Modderman ] - * ACK NMU (Closes: #582917) and integrate changelog. - * New upstream release (Closes: #591371). - - nl80211 driver interface doesn't use WEXT compat layer - (Closes: #570688) - * Adjust debian/watch for 0.7.X series of upstream. - * Drop patches applied upstream: - - 11_syslog.patch - - 18_wpa_gui_wps_ap_avail_annoyance.patch - - 20_wpa_msg_ctrl_wps.patch - - 21_kfreebsd.patch - - 30_cfg80211_association_optimisation.patch - * Refresh patch series and merge with new upstream. - * Change build configuration: - - remove all comments from our config - - enable new D-Bus interface - - disable experimental feature CONFIG_EAP_PSK - - enable CONFIG_AP, which allows hostapd-like functionality - * Install D-Bus service activation file for new interface. - * Set default driver type to nl80211,wext in ifupdown glue. - * Remove duplicate handling of wpa-mode in ifupdown/functions.sh. - * Add support for scan_freq and freq_list in ifupdown/functions.sh. - * Install pm-utils action script to notify wpa_supplicant of susepnd - and resume events. - * Remove pm-utils stuff from debian/ifupdown/action_wpa.sh. - * Remove sleep loops which wait for creation of interface specific - control sockets, these are now created before the process is - backgrounded (http://w1.fi/bugz/show_bug.cgi?id=283). - * After a disconnected event, attempt to reassociate to a network - when using wpa-roam. - * Add statement to debian/copyright about our choice to distribute - this software under BSD license and link with openssl. - * Override lintian in the case of possible-gpl-code-linked-with- - openssl. - * Establish control interface when D-Bus activated wpa_supplicant - daemon starts. (Closes: #606051) - * Update all patches with DEP-3 compliant header information. - * Cherry pick upstream commit which fixes up emission of change events - over D-bus. (Closes: #617199) - * Add patch to load libpcsclite1 via dlopen(), making pcsc support - optional. (Closes: #612842, #612715, #583671, #531592) - * Set build config option CONFIG_PCSC=dyn to use above mentioned feature. - * Add patch to wpa_gui to use KDE's KNotify when running under KDE. - (Closes: #582793) - * Adjust versioned debhelper build-depends to (>> 8). - * Use architecture wildcards in debian/control. - * Adjust wpagui versioned dependency on wpasupplicant to >= 0.7.3 to - make sure all new UI features are supported. - - [ Stefan Lippers-Hollmann ] - * Add myself to uploaders. - * Bump policy version to 3.9.1: - - Include full text of the employed BSD license variant and no longer - refer to Debian's common license template. - * Bump compat level to 8 and debhelper build-depends to >= 7.9.3~ - accordingly, retaining backportability for squeeze (plain lenny isn't an - option due to simplified dh7 usage). - * Refresh patch series and merge with new upstream (0.7.3). - * Drop patches applied upstream: - - patches/10_wpa_gui_qt4_network_id_qregexp.patch - - patches/11_wpa_supplicant_enable_network_tweak.patch - * update machine readable debian/copyright to be compatible with DEP5 r135. - * initial update of existing debian/copyright entries. - - -- Kel Modderman Tue, 08 Mar 2011 22:02:17 +1000 - -wpasupplicant (0.6.10-2.1) unstable; urgency=low - - * Non-maintainer upload approved by Kel Modderman. - * Added patch 31_fallback_to_full_EAP_authentication.patch (closes: #582917). - - -- Micha Lenk Sun, 28 Nov 2010 12:22:01 +0100 - -wpasupplicant (0.6.10-2) unstable; urgency=low - - * Switch to source format 3.0 (quilt), drop quilt build dependency - and remove '--with quilt' from dh command in debian/rules. - * Fix "FTBFS on kfreebsd-gnu" with addition of 21_kfreebsd.patch. - Thanks to work by Stefan Lippers-Hollmann and Petr Salinger. - (Closes: #480572) - * Disable experimental feature CONFIG_IEEE80211W (management frame - protection) due to it not being supported by any driver but ath9k - and it generating ioctl errors which cause much concern among users - for little to no benefit. - * Add traling blank line to debian/NEWS to assist apt-listchanges as - per lintian advice. - * Cherry pick 30_cfg80211_association_optimisation.patch from upstream - git. Add cfg80211-specific optimization to avoid silly behavior. - - -- Kel Modderman Sat, 27 Feb 2010 11:30:53 +1000 - -wpasupplicant (0.6.10-1) unstable; urgency=low - - * New upstream release. - - wpa_msg_ctrl helper which can send messages to the control interface - without logging when running in non-debug mode. Used for - CTRL-EVENT-SCAN-RESULTS. (Closes: #539915) (LP: #352118) - * Remove members of pkg-wpa-devel team from Uploaders who no longer - participate in maintenance. Thanks for their past work. (Closes: #529501) - * Disable building of atmel driver backend, neither atmel_{cs,pci}, - nor at76c50x-usb ever used it and atmelwlandriver is not in Debian - and has been abandoned upstream in 2005. Thanks to Stefan Lippers- - Hollmann for doing the research. - * Remove a few traces of ath/madwifi from debian/NEWS and - debian/README.Debian, thanks again to Stefan Lippers-Hollmann. - * Prefix etc/pm/sleep.d/ pm-utils hook in the 50 - 74 sequence range to - comply with sequencing rules as per pm-action(8) (LP: #307493). Provide - the symlink to our hook in /usr/lib/pm-utils/sleep.d/ rather than - /etc/pm/sleep.d/. (Closes: #557344) - * Modify wpa_action and associated functions to use logger(1) instead of - piping to /var/log/wpa_action.$IFACE.log. - * Ensure removal of obsolete logrotate conffiles now that all - wpa_supplicant/wpa_cli output is logged to syslog. - * Support help action in action_wpa.sh. (Closes: #548995) - * Build-depend on libreadline-dev instead of libreadline5-dev. - (Closes: #553891) - * Do not use sed to comment all network blocks out in the example - wpa_supplicant.conf. - * Do not strip upstream manual pages from source tree, do no generate - them at build time, do not build-depend on dockbook. We currently do - not modify them, so these build-dependencies and steps are expensive. - * Convert debian/rules to use dh - - build depend on debhelper (>= 7.4.12~) for dh override support, qmake - build class support and --builddirectory argument support - - install wpagui files via debian/wpagui.install - - rename debian/ifupdown/wpa_action.sh to debian/ifupdown/wpa_action - and install via debian/wpasupplicant.install - - install wpasupplicant ifupdown scripts via debian/wpasupplicant.install - * CFLAGS, CXXFLAGS, LDFLAGS and V are exported by debian/rules. - * Remove uupdate command from debian/watch, it is not useful. - * Add ${misc:Depends} to debian/control for debhelpers to use as required. - * Remove debian/get-git-snapshot and debian/rules target. - * Bump Standards-Version to 3.8.4, no extra changes required. - * wpa_action shell functions no longer require an ifupdown state file - to function as future providers of ifup/ifdown may not need or - provide it. - * wpa_action shell functions ifup and ifdown create and delete the - wpa_supplicant sendsigs omission file thus removing the need for - /etc/init.d/wpa-ifupdown. Remove /etc/init.d/wpa-ifupdown on upgrade - via maintainer scripts. (Closes: #545173) - * Drop debian/patches/10_multi_driver.patch due to its invasiveness - - it may make future patches which fix serious issues harder to apply - while providing an experimental feature only. - * Add debian/patches/18_wpa_gui_wps_ap_avail_annoyance.patch to stop - notifying about WPS_EVENT_AP_* events via wpa_gui tray status - bubbles - they are too frequent. - * Cherry pick 20_wpa_msg_ctrl_wps.patch from upstream to avoid too frequent - logging of WPS events. - * Drop debian/patches/05_qmake_version_makefile.patch, use qmake build - class in debian/rules, Build-Depend on qt4-qmake and Build-Conflict - with libqt3-dev. - * Ensure wpa_supplicant/wpa_gui-qt4 is really clean, qmake seems to leave - some crumbs (.obj, .moc & .ui). - * Adjust debian/watch to scan for the 0.6.X stable releases only. - * Remove debian/wpasupplicant.postrm - it is no longer needed to - handle purge of log files, none are created anymore. - * Enable make concurrency via dh --parallel option in debian/rules. - - -- Kel Modderman Tue, 16 Feb 2010 21:26:26 +1000 - -wpasupplicant (0.6.9-3) unstable; urgency=low - - * Drop debian/patches/12_syslog_supplement.patch. It adds code which - attempts to prettify output but doesn't handle large output well. - (Closes: #528639) - - -- Kel Modderman Sat, 16 May 2009 03:47:08 +1000 - -wpasupplicant (0.6.9-2) unstable; urgency=low - - * Add debian/patches/07_dbus_service_syslog.patch to enable syslog - logging when wpa_supplicant is started via D-Bus. - * Start wpa_supplicant with default level of verbosity via ifupdown - hooks, rather than in quiet mode. - * Merge some differences from wpasupplicant_0.6.6-2ubuntu1.patch, with - very minor modification: - - 12_syslog_supplement.patch: Add a few more bits missing from the - upstream patch, based on - http://cvs.fedoraproject.org/viewvc/rpms/wpa_supplicant/OLPC-2/wpa_supplicant-0.5.7-use-syslog.patch. - Compile with -DCONFIG_DEBUG_SYSLOG if CONFIG_DEBUG_SYSLOG is set in - the configuration file. - - Enable CONFIG_DEBUG_SYSLOG in debian/config/* (rather than - CFLAGS += -DCONFIG_DEBUG_SYSLOG). - - debian/ifupdown/functions.sh: Silence wpa_log_* if /var/log is not yet - writable; there is little we can do in this case (logger is in /usr, - so may well also be unusable), and the user can always get more - information by reconnecting later. - - Thanks to Colin Watson - * Sync common build configuration options between debian/config/kfreebsd and - debian/config/linux. - * Add patch description to - debian/patches/06_wpa_gui_menu_exec_path.patch. - - -- Kel Modderman Mon, 13 Apr 2009 23:25:17 +1000 - -wpasupplicant (0.6.9-1) unstable; urgency=low - - * New upstream release - * Drop patches applied upstream: - - 10_wpa_gui_qt4_wps_tab_cleanups.patch - - 11_wpa_gui_qt4_qsession.patch - * Refresh debian/patches/04_append_mmd_to_default_cflags.patch to - apply. - * Refresh all other patches to apply without offset. - * Activate CONFIG_DRIVER_NL80211 in debian/config/linux. - * Sync debian/config/linux with wpa_supplicant/defconfig. - * Add libnl-dev to build dependencies. - * Modify debian/wpasupplicant.postrm and debian/wpasupplicant.postinst - to set -e in body of script rather than in shebang line as per - pedantic lintian suggestion. - * Upload to unstable. - * Add copyright information for src/wps/wps* to debian/copyright. - * Add note about linkage with OpenSSL and impact it has on the choice - of BSD license in lieu of GPL imcompatibility to debian/copyright. - * Add copyright information about src/wps/httpread.* to - debian/copyright. - * Bump Standards-Version to 3.8.1, no other changes required. - * Instead of patching upstream to append -MMD compiler flag set that - as default in debian/rules. Purge - debian/patches/04_append_mmd_to_default_cflags.patch. - * Backport syslog support patch from 0.7.X development branch. Patch - name is debian/patches/11_syslog.patch. - * Backport patch from 0.7.X to allow multiple driver wrappers to be - tried until one works. This will allow some kind of transition - smoothing as drivers transition from wext -> nl80211 in the future. - * Remove debian/patches/03_dbus_service_activation_logfile.patch, - wpa_supplicant can now log to syslog instead. - * Update copyright info in debian/ifupdown/*. - * When starting wpa_supplicant via ifupdown hook script, do not log to - file by default now that we have syslog support. - * Update README.Debian for nl80211 driver and change in logging behaviour. - - -- Kel Modderman Sat, 28 Mar 2009 03:46:12 +1000 - -wpasupplicant (0.6.7-1) experimental; urgency=low - - * New upstream release. - * Enable CONFIG_WPS in debian/config/*. - * Install README-WPS to docs directory. - * Refresh debian/copyright for new years which are covered by - copyright. - * Refresh debian/patches/05_qmake_version_makefile.patch and - debian/patches/01_use_pkg-config_for_pcsc-lite_module.patch. - * Add debian/patches/10_wpa_gui_qt4_wps_tab_cleanups.patch to cleanup - a couple of minor glitches with new wpa_gui-qt4 WPS additions. - * Add debian/patches/11_wpa_gui_qt4_qsession.patch to enhance wpa_gui - with session saving support. - - -- Kel Modderman Mon, 02 Feb 2009 06:57:36 +1000 - -wpasupplicant (0.6.6-2) experimental; urgency=low - - [ Martin Pitt ] - * debian/ifupdown/action_wpa.sh: pm-utils now supplies a second - argument to the hooks, thus telling ifplugd and pm-utils apart by - the number of arguments does not work any more. Fix up the script - to just evaluate the arguments themselves, to work with current - and older pm-utils. This unbreaks suspend. (LP: #307312) - (Closes: #508526, #509484) - - [ Kel Modderman ] - * It has been reported by Alexander E. Patrakov that - WEP keys are set in quick time in newer wpa_supplicant releases and no - longer cause problems attempting to connect to specific access point - during boot sequence. (Closes: #489948) - * Do not start wpa_gui in system tray per default when executed from menu - system (discussion with upstream resulted in desire to have app opened in - foreground, no need to diverge from that). - - -- Kel Modderman Sun, 28 Dec 2008 23:53:53 +1000 - -wpasupplicant (0.6.6-1) experimental; urgency=low - - * New upstream release. - * Update debian/copyright to include copyright holders of new source files - (src/drivers/driver_roboswitch.*). - * Drop patches applied upstream: - - debian/patches/10_ftbfs_gcc_4.4.patch - - debian/patches/20_delay_mic_error_report.patch - * Add libqt4-svg to Dependencies of wpagui for tray icon support. - (Closes: #505492) - - -- Kel Modderman Mon, 08 Dec 2008 00:47:32 +1000 - -wpasupplicant (0.6.5-2) experimental; urgency=low - - * Bugfix: "Missing -d in testing for a directory in init script". - Thanks to Braun Gábor for reporting and the patch. - (Closes: #506328) - - -- Reinhard Tartler Tue, 02 Dec 2008 20:52:16 +0100 - -wpasupplicant (0.6.5-1) experimental; urgency=low - - * New upstream release. - * Purge patches applied upstream. - * Modify 20_wpa_gui_menu_exec_path.patch to use the new -t command line - option and start wpa_gui in the system tray and avoid desktop startup - notifications. - * When using wpa-roam and connecting to an interface for which an id_str - is defined but no matching /e/n/i logical interfaces has been configured, - try to configure the default logical interface. - * Adjust debian/ifupdown/functions.sh to use not depend on /sbin/ip to use - ip. - * Rename 20_wpa_gui_menu_exec_path.patch to - 06_wpa_gui_menu_exec_path.patch, it will possibly be a long term - patch. - * Update debian/copyright for new files, as well as better conformance with - proposed copyright format. - * Cleanup wording of README.Debian paragraph which explains how to debug - wpa_supplicant via logging. - * Reduce difference with wpa_supplicant/defconfig, adding sections for - new options, updating option description, and removal of - CONFIG_EAP_WSC which had previously been removed from - wpa_supplicant. - * Refresh debian/patches/01_use_pkg-config_for_pcsc-lite_module.patch and - debian/patches/05_qmake_version_makefile.patch to apply without offset. - * Add 10_ftbfs_gcc_4.4.patch to include header files required for - compilation with GCC 4.4, thanks to Martin Michlmayr. (Closes: #505041) - * Add 20_delay_mic_error_report.patch, an upstream commit which adds a - mitigation mechanism for certain attacks against TKIP by delaying Michael - MIC error reports by a random amount of time between 0 and 60 seconds. - * Enable CONFIG_DELAYED_MIC_ERROR_REPORT in debian/config/linux. - - -- Kel Modderman Sun, 09 Nov 2008 21:19:13 +1000 - -wpasupplicant (0.6.4-3) experimental; urgency=low - - * Target at experimental due to current archive conditions with respect to - stable release freeze. - * Install /etc/wpa_supplicant/action_wpa.sh to enhance wpa-roam integration - with pm-utils and ifplugd. (Closes: #488538) - * wpa_gui need not depend stricly upon the same binary version of - wpa_supplicant, it just requires a version of wpa_supplicant which support - the set of ctrl_interface commands that are used, which to the best of my - knowledge is (>= 0.6.2-1). [debian/control] - * Cleanup short description of wpasupplicant, and improve short description - of wpagui. [debian/control] - * Add a series of patches to enhance wpa_gui-qt4: - - 10_wpa_gui_icons.patch - - 11_desktop_entry.patch - - 12_wpa_gui_icons_resource.patch - - 13_remove_qPixmapFromMimeSource_ref.patch - - 14_qsystemtray_icon.patch - - 15_tray_status_state.patch - - 16_wpa_gui_icon_touchup.patch - * Install icon and menu entry for wpa_gui. [debian/rules] (Closes: #498923) - * Add a shell script wrapper, debian/wpa_gui/netdev_wrapper, which will be - used by the menu entry to try and exec /usr/sbin/wpa_gui with best - estimated privilege level. Install it to /usr/share/wpagui/netdev_wrapper. - [debian/rules] - * Add 20_wpa_gui_menu_exec_path.patch to modify exec path of wpa_gui.desktop - to point at our new wrapper, /usr/share/wpagui/netdev_wrapper. - * Add debian menu file for wpa_gui, it also uses the netdev_wrapper. - * Create xpm icons from new upstream icon build system, and store them in - debian/wpa_gui/*.xpm to avoid creating them during package build because - inkscape and imagemagick would be required which are quite large and - uneccessary build dependencies. Leave a note in debian/rules to remind - us about their origin and the reasoning behind this decision. - * wpagui package Recommends: menu, as menu provides su-to-root, which we - may need. [debian/control] - * Add two upstream patches to improve the retrieval of scan results from - userspace: - - 07_restore_scanreq_if_initassoc_failed.patch - - 08_only_use_cached_scan_results_if_nonempty.patch - * Refresh patch series to apply without offset. - - -- Kel Modderman Thu, 25 Sep 2008 07:52:06 +1000 - -wpasupplicant (0.6.4-2) unstable; urgency=low - - * Bugfix: wpasupplicant crashes (closes: #485769). Patch taken from - upstream git. - - -- Reinhard Tartler Wed, 27 Aug 2008 10:10:20 +0200 - -wpasupplicant (0.6.4-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream release - * Retroactively cleanse past changelog entries of information indicating - that they were not released, as they were. - * Use short option for grep (-q) and sed (-n) instead of the busybox - incompatible --quiet as per advice of Charles-Henri Gros. - * wpa_action: on connected action, call wpa_hysteresis_event before - ifup, so that a disconnected action may still be effective should - the ifup take a long time (eg. dhcp request takes a long time and - eventually fails). - - [ Alessio Treglia ] - * Added build-depends on libdbus-glib-1-dev, fixes FTBFS (LP: #256274). - - -- Reinhard Tartler Sat, 16 Aug 2008 10:09:01 +0200 - -wpasupplicant (0.6.4~git20080716.93ef879-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream git snapshot. - * Drop patches applied upstream: - - 10_silence_siocsiwauth_icotl_failure.patch - - 11_avoid_dbus_version_namespace.patch - - 12_fix_potential_use_after_free.patch - - 13_defined_IEEE8021X_EAPOL.patch - - 14_fix_compile_without_eap.patch - - 15_silence_out_of_bounds_warnings.patch - - 41_manpage_format_fixes.patch - - 42_manpage_explain_available_drivers.patch - - 43_remove_w_from_help.patch - - 50_wext_dont_overwrite_bss_freq.patch - - 51_dont_reschedule_specific_scans_for_hidden_ssids.patch - - 52_handle_mac80211_mode_switch.patch - - 53_give_adhoc_assoc_more_time.patch - * Drop -20_wpa_gui_qt4_disable_link_prl.patch, the qt4 linking problem has - been fixed by our qt4 maintainers. - * Refresh remaining patch series. - * Increase Standards_version to 3.8.0. Explain in debian/README.Debian-source - that the `debian/rules patch` command is required to prepare the source - tree for building. - * Cleanup debian/wpasupplicant.links, removing trailing whitespace and - leading / from target symlink pathname. - * Remove debian/README.Debian, the information therin was irrelevant for the - current release cycle, and is better explained by the README.modes - document. - * Move debian/README.modes to debian/README.Debian, and create a backwards - compat symlink (/usr/share/doc/wpasupplicant/README.modes.gz -> - README.Debian.gz) to avoid breaking current online documentation. - * Fix spelling error in new debian/README.Debian found by lintian. - * Don't install the wpa_supplicant/eap_testing.txt document, it contains - information about development features and testing that is not possible - with what is provided by the wpasupplicant package. - * Remove the QMAKE variable from debian/rules, it is no longer used with - upstream build system. - * Remove debian/wpagui.install and instead invoke dh_install explicitly in - debian/rules, making use of the WPAGUI variable, to have the correct - version of wpa_gui installed (assist in switch to-fro different QT ports). - * Remove possible bashisms (local(x, y)) from debian/ifupdown/functions.sh. - * Add rudimentary locking system when wpa_action(8) calls ifup/ifdown, so - that /etc/network/if-*.d/wpasupplicant can differentiate between admin - calling ifup/ifdown or wpa_action. (Closes: #488078, #373180) - * When wpa_action calls ifup/ifdown, use verbose command line option for - more detailed log of what hook scripts are executed. - * wpa-ifupdown.init should always stop wpa_action daemon, ifupdown is only - guaranteed to stop it if interface is currently configured. - * Move debian/README.Debian-source to debian/README.source, as policy seem - to prefer this filename now as of version 3.8.0. - - [ Reinhard Tartler ] - * lower debhelper compat level to 6 to ease backporting - - -- Kel Modderman Wed, 16 Jul 2008 22:59:25 +1000 - -wpasupplicant (0.6.3-2) unstable; urgency=low - - * Add patch to remove -w option from help output, it has been removed in - previous versions. (Closes: #472853) - * Correctly refer to wpa-debug-level (not wpa-verbosity-level) ifupdown - parameter to control logging output. (Closes: #474440) - * Apply patch to permit package build on GNU/kFreeBSD. - - add debian/config.kfreebsd build configuration file - - adapt debian/rules to use debian/config/kfreebsd when building for - kfreebsd DEB_HOST_ARCH_OS - * Fix arch specific build dependency declarations introduced by GNU/kFreeBSD - compat patch. - * Build depend on debhelper >= 7, adjust debian/compat to suit. - * Simplify debian/rules, cleaning up the sanitization of - README.wpa_supplicant.conf, clean , build and install targets. - * Span the Build-Depends field of debian/control over multiple lines. - * Add debian/patches/13_defined_IEEE8021X_EAPOL.patch to allow compilation - when CONFIG_IEEE8021X_EAPOL is not defined and allow people attempting to - progress on wpasuplicant udeb (and netcfg integration) to move on. - * Add 14_fix_compile_without_eap.patch to fix another FTBFS when - IEEE8021X_EAPOL is not defined. - * Rename debian/extra-examples/ to debian/examples/. - * Slightly modify the way get-git-snapshot is invoked by debian/rules. - * Create debian/config/ directory to contain various build configuration - files for different targets (eg. udeb, kfreebsd, linux). - * Disable building of test driver backend, no development can sanely be done - with this binary package. - * Disable building of hostap driver backend, the version of hostap driver in - existence since Linux 2.6.14 (or before) uses the wext driver backend. - * Provide code in ./debian/ifupdown/functions.sh that warns about invalid - wpa-driver choice, and falls back to the usage of a default backend. - * Modify debian/README.modes to not contain blurb about which driver_backend - to use, wext should almost _always_ be used. - * Refresh debian/patches/14_fix_compile_without_eap.patch with what was - applied upstream. - * Add 50_wext_dont_overwrite_bss_freq.patch to fix handling of channel and - frequency information returned by mac80211 using drivers in ad-hoc mode. - * 51_dont_reschedule_specific_scans_for_hidden_ssids.patch to optimize scan - rescheduling in order to better detect hidden SSIDs. - * Simplify debian/rules handling of wpa_supplicant/.config, just cp it in as - needed in build target. Move dh_install into install target. These will - make integration of possible future udeb cleaner. - * Add 52_handle_mac80211_mode_switch.patch to enhance handling of mode - switching for mac80211 using interfaces. - * Add 53_give_adhoc_assoc_more_time.patch to give adhoc associations a bit - more time. - * Add 15_silence_out_of_bounds_warnings.patch to silence gcc-4.3 warnings - about accessing out of bounds array index. - * Purge debian/madwifi-headers/* and no longer activate the driver_madwifi - backend of wpa_supplicant. Remove reference to it in support - documentation. If "wpa-driver madwifi" is used in an /e/n/i stanza print a - warning and use "wext" instead. - - -- Kel Modderman Mon, 09 Jun 2008 09:30:23 +1000 - -wpasupplicant (0.6.3-1) unstable; urgency=low - - * New upstream release. - * Drop patches applied upstream: - - debian/patches/30_wpa_gui_qt4_eventhistoryui_rework.patch - - debian/patches/31_wpa_gui_qt4_eventhistory_always_scrollbar.patch - - debian/patches/32_wpa_gui_qt4_eventhistory_scroll_with_events.patch - - debian/patches/40_dbus_ssid_data.patch - * Tidy up the clean target of debian/rules. Now that the madwifi headers are - handled differently we no longer need to do any cleanup. - * Fix formatting error in debian/ifupdown/wpa_action.8 to make lintian - quieter. - * Add patch to fix formatting errors in manpages build from sgml source. Use - tags to hightlight keywords instead of surrounding them in - strong quotes. - - debian/patches/41_manpage_format_fixes.patch - * wpasupplicant binary package no longer suggests pcscd, guessnet, iproute - or wireless-tools, nor does it recommend dhcp3-client. These are not - needed. - * Add debian/patches/10_silence_siocsiwauth_icotl_failure.patch to disable - ioctl failure messages that occur under normal conditions. - * Cherry pick two upstream git commits concerning the dbus interface: - - debian/patches/11_avoid_dbus_version_namespace.patch - - debian/patches/12_fix_potential_use_after_free.patch - * Add debian/patches/42_manpage_explain_available_drivers.patch to explain - that not all of the driver backends are available in the provided - wpa_supplicant binary, and that the canonical list of supported driver - backends can be retrieved from the wpa_supplicant -h (help) output. - (Closes: #466910) - * Add debian/patches/20_wpa_gui_qt4_disable_link_prl.patch to remove - link_prl CONFIG compile flag added by qmake-qt4 >= 4.3.4-2 to avoid excess - linking. - - -- Kel Modderman Wed, 12 Mar 2008 20:03:04 +1000 - -wpasupplicant (0.6.2+git20080206.g8c0dad4-1) unstable; urgency=low - - [ Kel Modderman ] - * New Upstream git snapshot. - - fixes infinite loop in EAPOL state machine when dynamic wep keys are - used (Closes: #464514) - * install-stamp was not properly implimented, fix it up. [debian/rules] - * Drop patches to ctrl interface bss scan results iterator that will not be - applied upstream. The iterator will be redesigned to not suffer from the - identified problem of one bssid being encountered in more than one cell - of the scan results. - - debian/patches/84_ctrl_iface_scan_bss_count.patch - - debian/patches/85_ctrl_iface_scan_bss_count_warning.patch - - debian/patches/94_wpa_gui_qt4_scanres_bss_count.patch - * Drop patches applied upstream. - - debian/patches/30_src_clean_existing_dirs.patch - - debian/patches/31_ctrl_iface_x86_64_compile_warning.patch - - debian/patches/93_wpa_gui_qt4_scanres_really_remove_qtimer.patch - * wpa_gui should depend on the wpa_supplicant binary from the same build, - therefore set versioned dependency of wpasupplicant (= ${binary:Version}) - for the wpagui package. [debian/control] - * Reimpliment 70_wpa_gui_qt4_wpagui_scroll_follow_eventhistory.patch in the - form of three patch series for resubmission to upstream. - - debian/patches/30_wpa_gui_qt4_eventhistoryui_rework.patch - - debian/patches/31_wpa_gui_qt4_eventhistory_always_scrollbar.patch - - debian/patches/32_wpa_gui_qt4_eventhistory_scroll_with_events.patch - - [ Reinhard Tartler ] - * move debian/patches/01_debian_wpa_roam_example.patch to - debian/extra-examples/wpa-roam.conf to have the example as proper file - instead of a diff. - * Add documentation headers to the files in debian/patches/* - * Don't manage wpasupplicant/.config as patch system, but have it as - debian/config instead. therefore remove 00_defconfig.patch and - 21_config_driver_madwifi.patch - * move madwifi headers from debian/patches/20_madwifi_headers to - debian/madwifi-headers. also update debian/copyright. - * remove ${misc:Depends}. Nothing does use it and generates an unnecessary - warning. - * use -Wl,--as-needed to avoid unnecessary linking to ncurses, - libpthread and libdl. - * use pkg-config for detecting how to link against pcsc-lite - - debian/patches/01_use_pkg-config_for_pcsc-lite_module - - -- Reinhard Tartler Sat, 09 Feb 2008 23:21:37 +0100 - -wpasupplicant (0.6.2+git20080202.gde6ccd7-1) unstable; urgency=low - - * New Upstream git snapshot. - - the -w (wait for interface) option has been removed (Closes: #350963) - - wpa_gui has been massively enhanced - * Drop all patches applied to upstream git. - * Add debian/patches/30_src_clean_existing_dirs.patch to adjust upstream - build system for removal of src/wps (as done in upstream build_release - script). - * Make sure wpa_supplicant process is checked for and killed by wpa_action - on stop or down actions. - * Update debian/NEWS to alert users about the removal of the -w command line - option. - * Truncate debian/NEWS, none of the items are relevant for current upgrade - paths, nor do they hold any historical relevance. - * Clarify the license of the debian packaging. No license was initially - given until now, so we could assume the original packager contributed the - packaging under the same terms as the upstream license (BSD | GPL-2). - * /etc/init.d/wpa-ifupdown must stop before sendsigs does when using - dependency based init system. Add $remote_fs to Required-Stop keyword of - LSB header in debian/wpasupplicant.wpa-ifupdown.init. - * Add debian/patches/38_dbus_blob_support.patch to allow support for loading - of blobs via the D-Bus interface. Patch cherry picked from upstream git. - * Move README.wpa_supplicant.conf from examples to docs. Generate the file - in the wpa_supplicant/ directory. - * Add ${misc:depends} to Depends field of our packages to ensure we do not - miss out on any substvars that debhelper may provide us with. - * Add debian/patches/39_wpa_gui_qt4_closeevent.patch to improve handling of - wpa_gui-qt4 exit, both from File->exit and the X button on the titlebar. - * Start daemon in quiet mode by default, the scan event is being written to - logfile far too often. [debian/ifupdown/functions.sh] - * When starting daemon with debug option, include timestamps in logfile. - [debian/ifupdown/functions.sh] - * Simplfy return check in init_wpa_supplicant(), init_wpa_cli() - kill_wpa_supplicant() and kill_wpa_cli() reduce one level of indentation - for each function. [debian/ifupdown/functions.sh] - * Add patch to invoke versioned qmake binary when preparing the Makefile for - wpa_gui/wpa_gui-qt4 or else a failure to build from source can be possible - when more than one QT version is installed. (Closes: #463547) - - debian/patches/05_qmake_version_makefile.patch - - -- Kel Modderman Mon, 04 Feb 2008 16:00:38 +1000 - -wpasupplicant (0.6.2-1) experimental; urgency=low - - * New upstream release. - * Allow "wpa-key-mgmt NONE" to form a network block via the wpa_cli calls in - wpa_conf() of functions.sh. - * Overhaul wpa_key_check_and_set() function of functions.sh to better handle - wep keys. Function now does similar checking of wep keys that it does for - wpa keys. Valid wep keys can be hex of length 10|26|32|58 or ascii with - length of at least 5. - * Check wpa_cli return value in wpa_cli() function of functions.sh. - * Adjust Standards-Version to 3.7.3, no extra changes required. - * Switch to quilt patch management from dpatch: - - build-depend on quilt, adjust debian/rules accordingly - - debian/madwifi/mk-madwifi-header-patch becomes obsolete, removed - * Remove debian/defconfig.sh, and re-impliment it in patch form again, but - this time with a patch management system that can be used more naturally. - This also allows an oppurtunity to go over our default build - configuration. - * Add svn:ignore property for .pc quilt by-product. - * Ensure src/drivers/driver_madwifi/ directory is purged from source tree in - clean target of debian/rules. - * /var/lock/wpa_action.*.lock was not used in a version of wpasupplicant - package in a stable release, no longer need to handle its removal in - postrm anymore. - * Activate support for PC/SC interface for smartcards along with SIM and AKA - EAP methods. Build-depend on libpcsclite-dev. Suggest pcscd. - * Update email address in debian/ifupdown/wpa_action.8 manpage. - * Sanitize whitepsace in debian/README.modes, swapping tabs for 8 spaces, - improving layout of basic tables. Fix a couple of typo's too. - * Clarify in debian/README.modes the URI to BTS discussions. Also add a note - that using ap_scan=2 requires explicit security policies to be set for - each network. - * dbus-wpa_supplicant.service now provided by upstream. - * Impliment debian/examples/wpa_supplicant.conf.template in patch form. It - is planned to expand this small template into a more usable and - documented beginning point for the wpa-roam schema. - * Add useful comments to the new wpa-roam.conf example configuration file. - * README.modes now gives sound advice to setup the roaming daemon to be used - with the netdev group, and offers advice on howto set various data - sensitive conffiles to be readable only by owner. (Closes: #428620) - * wpa_gui manpage exists in upstream, remove debian/wpa_gui.8. - * If the path to ctrl_interface directory can be determined from the - supplied configuration, do not append the -C option to wpa_supplicant - start-stop-daemon command in ifupdown.sh. This breaks the new DIR= GROUP= - ctrl_interface syntax. - * Add initial subsection to README.modes about "Interacting with - wpa_supplicant with wpa_cli and wpa_gui". - * Activate CONFIG_IEEE80211R, CONFIG_IEEE80211W and CONFIG_EAP_WSC in the - default build configuration. - * Log wpa_supplicant output to /var/log/wpa_supplicant.$IFACE.log per - default when using ifupdown to manage wpa_supplicant. wpa_supplicant - supports logging somewhere via -f cli option. (Closes: #317180) - * Add support for managing debug level of wpa_supplicant via the ifupdown - scripts. - * Enhance README.modes with new supplicant debugging methods. - * Build the wpa_gui-qt4 variant now that it doesn't require qt3 support - code. It also closes all child windows on File->Exit. (Closes: #426924) - * wpasupplicant now Suggests wpagui. - * wpa_action now logs to an interface specific logfile, and the logrotate - rule was updated to take care of both the old and new locations. - * Update copyright headers of ifupdown scripts, also add a few more code - comments, a statement of purpose and package ownership as well as some - other trivial cleanups. - * Remove upgrade removal of conffiles from wpasupplicant versions that exist - in oldstable and before. The preinst part of the upgrade handling was - removed in pkg-wpa commit r852. - * Create sendsigs omission pidfile in /lib/init/rw/sendsigs.omit.d/ for - wpa_supplicant and wpa_cli processes managed by ifupdown. Determine - runlevel when wpa_cli roaming daemon is active, and allow ot to be killed - in runlevels 0 and 6. This allows wpa_supplicant process to survive until - networking is stopped. (Closes: #401645) - * Add debian/patches/03_dbus_service_activation_customise.patch to start - wpa_supplicant with "-f /var/log/wpa_supplicant.log" per default. - * Add debian/patches/30_scan_even_when_disconnected.patch to allow scan - request to succeed even when interface is in disconnected state. - * Modify debian/copyright to be machine-interpretable. Annotate all - copyright holders in new format. - * State clearly in debian/copyright that the BSD license has been chosen by - us, the maintainers, as there is no exception to link against OpenSSL in - the text of the given GPL-2 license. - * No license had been chosen for the debian packaging information, so GPL-2+ - has been chosen and recorded in debian/copyright. - * Add debian/README.Debian-source to document handling of upstream manual - pages. - * Build upstream manual pages from sgml source. Build-Depend on docbook and - docbook-utils. - * Add debian/patches/31_wpa_gui_qt4_select_any.patch to allow selection of - any network already defined in network combobox when more than 1 network - is defined. - * Modify debian/wpasupplicant.wpa-ifupdown.init to be no-op when sendsigs - omission interface is supported. - * Add debian/patches/32_append_mmd_to_default_cflags.patch to assist in - allowing CFLAGS to be overriden without possible bad effects on upstream - build system. - - -- Kel Modderman Tue, 08 Jan 2008 22:51:36 +1000 - -wpasupplicant (0.6.1~git20071119-1) unstable; urgency=low - - * New upstream git snapshot. - - support for dbus >= 1.1.1 dbus_watch_get_unix_fd() api - * Convert to non-cdbs traditional debhelper-centric debian/rules and remove - build dependency on cdbs. This converges with style of hostapd package. - * Correct poorly formatted debian/NEWS entry that was causing lintian to - complain. - * Cleanup files in ./debian/* - - move debian/wpa_supplicant.conf.template to debian/examples/ - - move debian/mk-madwifi-header-patch to debian/madwifi/ - - move debian/dbus-wpa_supplicant.service to debian/dbus/ - - rename debian/dot.config.mk to debian/defconfig.mk - * Remove MADWIFI variable from debian/defconfig.mk. - * No longer build "ndiswrapper" or "ipw" backends. Etch shipped with a - kernel in which neither of these backends could work (> Linux 2.6.14) so - it is about time we no longer pretended to support for them. - * Activate D-Bus system activation support. Install the service file into - /usr/share/dbus-1/system-service/. The filename reflects the service bus - name of "fi.epitest.hostap.WPASupplicant". In addition, the service must - be started by root user. Thanks to Michael Biebl. (Closes: #412179) - * Build depend on docbook and docbook-utils to generate upstream manpages - from sgml source. - * Upstream wpa_cli(8) is no longer incorrect with regard to CONNECTED and - DISCONNECTED signal events. (Closes: #432904) - * Drop debian/patches/10_fix_non_wpa_zero_len_ssid.dpatch and - debian/patches/50_fix_wext_tsf_stack_overflow.dpatch, applied upstream. - * debian/patches/40_debian_doc_examples.dpatch does not apply to git - snapshot, remove it and rethink how we can best integrate our debian - specific bits. - * wpa_action: check status with respect to ifupdown after CONNECTED event - has ensued. If the interface is not recorded in ifupdown's state file - attempt reassociation. (Closes: #428304). - * Adjust logic when using sed to determine ctrl_interface socket directory - from the configfile to handle ctrl_interface=DIR= GROUP= syntax. - - -- Kel Modderman Thu, 22 Nov 2007 17:10:29 +1000 - -wpasupplicant (0.6.0-4) unstable; urgency=low - - * Fix stack overflow condition that could exist if driver reported bad tsf - data in iwevent and scan results. (Closes: #442387) - * Update Vcs fields of debian/control to format of current consensus. - * Add Homepage field to debian/control. - - -- Kel Modderman Tue, 16 Oct 2007 18:12:03 +1000 - -wpasupplicant (0.6.0-3) unstable; urgency=low - - * Add debian/mk-madwifi-header-patch, a quick and dirty bash script for - generating the madwifi header patch. - * Fix typo in README.modes, wpa-default-iface is really - wpa-roam-default-iface. (Closes: #435718) - * Simplify debian/dot.config.mk. - * Confirm that the ifupdown scripts do set ssid when wpa-ssid is used with a - value in /etc/network/interfaces. (Closes: #367655) - * Truncate default build .config. Make madwifi config option conditional on - MADWIFI variable. - * Add 10_fix_non_wpa_zero_len_ssid.dpatch to fix regression inhibiting - selection of non-WPA zero length ssid. (Closes: #431102) - * Fix debian-rules-ignores-make-clean-error lintian error. - - -- Kel Modderman Sat, 25 Aug 2007 00:23:50 +1000 - -wpasupplicant (0.6.0-2) unstable; urgency=low - - * Really allow 'wpa-conf managed' to pass through. - - -- Kel Modderman Wed, 04 Jul 2007 17:18:45 +1000 - -wpasupplicant (0.6.0-1) unstable; urgency=low - - [Kel Modderman] - * New upstream release. - - restructured source layout - * Adjust debian/wpasupplicant.examples, debian/wpagui.install, - debian/wpasupplicant.install, debian/wpasupplicant.manpages, and - debian/wpasupplicant.docs for new layout. - * Redjust debian/patches/30_dbus_policy.dpatch and - debian/patches/40_debian_doc_examples.dpatch to apply against new layout. - * Drop debian/patches/10_config.dpatch and - debian/patches/21_madwifi_includes.dpatch. - * Introduce makefile fragment for wpa_supplicant .config creation. Call it - from debian/rules. It is named debian/dot.config.mk. - * Add WPADIR variable to debian/rules, adjust build and install targets to - use WPADIR. - * Update madwifi_headers patch with code from current madwifi SVN trunk. - * Damage control: allow 'wpa-conf managed' to pass through without failure - for those people who followed the poor example outlined in the hidden - ssid's section of README.modes. Also remove the offending line from the - documentaion. (Closes: #428137) - - [Reinhard Tartler] - * Fix building wpagui. - * remove debian/wpasupplicant.preinst, since we don't support upgrades - from oldstable. This way we don't need to look at /var/lib/dpkg/status - anymore, which is unreliable anyway. Makes lintian happy. - - -- Reinhard Tartler Sun, 17 Jun 2007 10:33:31 +0100 - -wpasupplicant (0.6.0~cvs20070224-3) unstable; urgency=low - - * Add netdev group if it does not exist, since we provide a dbus - configuration file that insists on using that group. (Closes: #418641) - - -- Kel Modderman Sun, 22 Apr 2007 19:19:07 +1000 - -wpasupplicant (0.6.0~cvs20070224-2) unstable; urgency=low - - [Kel Modderman] - * Update XS-Vcs fields of debian/control to reflect pkg-wpa archive change. - * Update debian/copyright with new upstream URL's and Jouni's new email - address. - * Rename madwifi related dpatches to match that of hostapd source package. - * Update debian/watch with new upstream release URL. - - [Reinhard Tartler] - * Remove the prerm script as discussed on pkg-wpa-devel@ - * upload to unstable - - -- Kel Modderman Mon, 09 Apr 2007 18:09:08 +1000 - -wpasupplicant (0.6.0~cvs20070224-1) experimental; urgency=low - - * New upstream development release. (Closes: #401809) - * wpa_supplicant no longer segfaults on failure to initialize a network - interface. (Closes: #403301, #403313) - * Fixes EAP-PEAP/TTLS/FAST to use the correct EAP identifier in tunnelled - identity request. (Closes: #402619) - * Drop deprecated init script example. debian/wpa_supplicant.init-daemon. - * Drop debian/patches/10_orinoco_wep_key_fix.dpatch as the appropriate - driver fix has been included in mainline linux since 2.6.19-rc. - * Drop debian/patches/21_madwifiold_20060207_includes.dpatch, - madwifi-old is deprecated upstream. - * Remove false instructions from NEWS file regarding madwifi-old support - that has since been discarded from the source package. - * Drop debian/patches/11_erroneous_manpage_ref.dpatch, - applied upstream. - * Remove wpa-stakey code from conf_wpasupplicant() in functions.sh since it - is removed from upstream. - * Allow 'wpa-essid' to do the same thing as 'wpa-ssid'. (Closes: #403316) - * Update Uploader: email address. - * Update private madwifi includes to r2156 of madwifi.org SVN trunk. - * Make a large note in README.modes wpa-roam documentation that a - ctrl_interface MUST be defined for the roaming setup to function. - (Closes: #407936). - * Activate wpa_supplicant's dbus interface by installing - dbus-wpa_supplicant.conf to the appropriate location. (Closes: #412179) - * Add debian/patches/30_dbus_policy.dpatch to allow access control to - wpa_supplicant's dbus interface via the netdev group. (Michael Biebl). - * Install a service file to /usr/share/dbus-1/services/ for dbus aware - applications that may take advantage of that in the future (Michael - Biebl). - * Add support to ifupdown.sh for `wpa-mode' and `wpa-frequency' options used - in IBSS mode. Note that ifupdown.sh does not do any sanity checking for - the other many requirements for using wpa_supplicant in IBSS mode. - * Update XS-Vcs-* fields in control file, add Vcs-Browser token. - * Move debian spcific ifupdown sh glue into debian/ifupdown/. - * Have prerm gracefully bring down interfaces under the influence of - wpa_supplicant via wpa-ifupdown init script. - * Remove unrequired `unset' usage in wpa-ifupdown.init, discard stderr of - find invocations. - * Don't stop dbus wpasupplicant daemon via wpa-ifupdown. - * Suggest wireless-tools. (Closes: #413689) - - -- Kel Modderman Thu, 8 Mar 2007 03:23:51 +1000 - -wpasupplicant (0.5.5-4) unstable; urgency=low - - * Settings for wired networks are no longer ignored by functions.sh. - (Closes: #401413) - - -- Kel Modderman Sun, 10 Dec 2006 01:25:11 +1000 - -wpasupplicant (0.5.5-3) unstable; urgency=low - - * Make needlessly global shell function variables local. Use local - consistently. [debian/functions.sh] - * Enhance error message when wpa-conf or wpa-roam mode is requested, but the - supplied configuration file is not readable or incorrect. - [debian/ifupdown.sh] - * Exchange bogus copyright holder information of functions.sh, ifupdown.sh - and wpa_action.sh for information reflecting the _group_ behind them. - * Force ap_scan=0 for "wired" IEEE8021X type authentication. - [debian/functions.sh] - * Add debian specific location for example wpa_supplicant.conf files to - wpa_supplicant.conf(8). (Closes: #396005) - * Fix typo in wpa_supplicant(8) that referred to non-existant manpage. - (Closes: #389948) - * Update madwifi private includes to latest (r1794). - * Add XS-X-Vcs-Svn field to debian/control file. - * Shunt env var IFACE to WPA_IFACE in the ifupdown.sh, wpa_action.sh and - function.sh scripts. This allows further flexibility, such as the ability - to start wpa_supplicant on an arbitary interface specified by a - 'wpa-iface' line in /etc/network/interfaces. - - -- Kel Modderman Fri, 10 Nov 2006 11:12:56 +1000 - -wpasupplicant (0.5.5-2) unstable; urgency=low - - * Update madwifi headers to latest SVN. (Closes: #388316) - * Remove failed attempt at action locking. [debian/functions.sh, - debian/wpa_action.sh] - * Add hysteresis checking functions, to avoid "event loops" while - using wpa-roam. [debian/functions.sh, debian/wpa_action.sh] - * Change of co-maintainer email address. - * Add ishex() function to functions.sh to determine wpa-psk value type in - plaintext or hex. This effectively eliminates the need for the bogus and - somewhat confusing wpa-passphrase contruct specific to our scripts and - allows wpa-psk to work with either a 8 to 63 character long plaintext - string or 64 character long hex string. - * Adjust README.modes to not refer to the redundant wpa-passphrase stuff. - * Add big fat NOTE about acceptable wpa-psk's to top of example gallery. - * Strip surrounding quotes from wpa-ssid if present, instead of just whining - about them. - * Update email address in copyright blurb of functions.sh, ifupdown.sh and - wpa_action.sh. - - -- Kel Modderman Thu, 5 Oct 2006 08:04:01 +1000 - -wpasupplicant (0.5.5-1) unstable; urgency=low - - * wpa_supplicant(8) now describes the -P (PID file) line option in the - manpage. (Closes: #381721) - * wpa_passphrase(8) is clearer about describing its purpose. - * Start a paragraph in README.modes containing information about best - security practises while using and configuring wpa_supplicant. For now - it briefly covers the topic of file permissions. (Closes: #382241) - * Implement PSK and ASCII passphrase key sanity checking, and warn user - about suspicious key lengths (managed mode only). - * Add leading example network conf, using wpa-passphrase, to README.modes. - * README.Debian documentation changes as sugested by Eduard Bloch - (Closes: #382314) - - reordered sections by importance for a new user, this ensures wext info - for ipw drivers is obvious (Closes: #384299) - - rewrote the first chapter to give a fluent introduction, refered to - wireless-tools doc - - add missing .gz to README.notes path (Closes: #386603) - * Reshuffle of README.modes, moving How It Works section toward the latter - end to avoid stopping people from missing out on important info. - * Rename 'Notes About Managed Mode' to 'Important Notes About Managed Mode'. - * Clarify the status of madwifi and 'wext' in README.modes. - (Closes: #382651) - * Return exit status of daemon start commands. - * Further cleanup of ifupdown.sh, move functions to head of script. - * wpa-ifupdown no longer checks interface state. - * Touch logfile before redirecting output to it via exec, to make sure it is - writeable. - * Split common code into /etc/wpa_supplicant/ifupdown_common.sh, so that - ifupdown.sh and wpa_action.sh may share it. - * Add 'wpa_action iface check' option, to test if interface is under - influence of wpa_cli or not.. - * Start wpa_cli daemon from post-up to avoid a race condition with the - roaming daemon where association occurred before the master interface - state was recorded. This would cause the mapped logical interface to fail - on ifup, as wpa_action would fail to detect the state of the master - interface, thus not supply the --force option. This is where a stateless - ifupdown would really help. - * Make conf_wpa_supplicant no-act for roaming daemon. This is important, so - that we do not attach wpa_cli to the ctrl_interface socket and initiate - roaming before state is tracked. - * Add hints about 'auto' and 'allow-hotplug' options with respect to the - roaming interface in README.modes. (Closes: #384501) - * Drop patchset for commenting out large wpa_supplicant.conf, use sed - instead. - * Active dbus interface via CONFIG_CTRL_IFACE_DBUS, add build-dep of - libdbus-1-dev to debian/control. - * Upstream now provides a connect-to-open-ssid example in the large - wpa_supplicant.conf file, therefore there is no need to maintain such an - example. Rename wpa_connect_open_ap.conf to wpa_supplicant.conf.template - and adjust docs to use this as a starting point for the wpa-roam daemon. - * Install wpa_passphrase to /usr/bin, there is no need for it in early boot. - * Build qt4 wpa_gui from wpa_gui dir rather than pure qt4 variant - (wpa_gui-qt4) as per Jouni's advice. - * Add versioned dependency on lsb-base >= 3.0-6 for use of log_action_* in - wpa-ifupdown.init. (Closes: #386164) - * Use correct terminology when describing wpa-roam in wpa_action(8). - (Closes: #386813) - - -- Kel Modderman Mon, 11 Sep 2006 19:23:05 +1000 - -wpasupplicant (0.5.4-5) unstable; urgency=low - - * STDIN was not given to external mapping script correctly. Use the power of - eval to fix the issue. [wpa_action.sh] - * Fix stupid debian/control error: duplicate Suggests fields. - - -- Kel Modderman Thu, 10 Aug 2006 01:03:38 +1000 - -wpasupplicant (0.5.4-4) unstable; urgency=low - - * Add support to wpa_action.sh and ifupdown.sh for allowing external mapping - logic to be used as opposed to the id_str logic. Thanks to Felix Homman - for the great insight while implementing this feature. - * Add a timeout loop of max 60s when waiting for an action to finish. - [wpa_action.sh] - * Minor cleanups wrt code comments and function placement in ifupdown.sh. - * Suggest guessnet, now that it can directly "plug in" to wpa_action. Also - demote iproute from Recommends to Suggests, it is not important by any - means and was only added to honour a wishlist request. - * Prepare for ctrl_interface socket changes in 0.5.5. It can be provided by - 'DIR=foo GID=bar' or 'ctrl_interface=foo' in wpa_supplicant.conf. Our sed - check for this path in ifupdown.sh should now support both alternatives. - * Move LOCKFILE and LOGFILE into WPA_ namespace. [wpa_action.sh] - * Use semi-colon instead of comma for verbose output as that seems to be a - standard among many different applications. - - -- Kel Modderman Tue, 8 Aug 2006 20:04:11 +1000 - -wpasupplicant (0.5.4-3) unstable; urgency=low - - * UNRELEASED - * Further optimisation of ifupdown.sh, use return values in - init_wpa_supplicant() to dictate if further commands should follow, rather - than exiting immediately. - * Standardize echo'ing in ifupdown.sh. Add a wpa_msg() function to take care - of "verbose|action|stdout|stderr" messages. - * Add a 5 second timeout loop to init_wpa_supplicant() that waits for the - ctrl_interface socket to be established before allowing wpa_cli to launch, - and avoid a race condition. This means other functions no longer need to - test for existence of the ctrl_interface socket. [ifupdown.sh] - * Rename WPA_DRIVER to WPA_SUP_DRIVER to conform with name scheme of other - similar variables. [ifupdown.sh] - * Add (untested) wpa-bridge support to ifupdown.sh. This is an experimental - upstream feature. - * Major refactoring of wpa_action.sh, with all related commands put into - independent shell functions. - * Improve feedback from wpa_action.sh when used interactively. Give usage - statement instead of simply returning "insufficient parameters". - * 'wpa_action reload' is logged after the action. It is called interactively, - and should also give interactive feedback. Same for 'wpa_action stop'. - * Remove superfluous check for /var/log, and put logging initialisation into - its own function, log_init(). [wpa_action.sh] - * Shut `ip addr flush dev "$IFACE" up', it almost always has nothing to flush. - * wpa-ifupdown init script now takes care of all interfaces while displaying - only one line. - * Don't set -e in wpa_action.sh. wpa-ifupdown script no longer takes exit - status into account, and I'd prefer to account for all possible avenues of - exit possible and log all encountered problems. - * Really fix #375599, by containing the CTRL_IFACE_DIR path in WPA_SUP_CONF - always, customised or not. The WPA_CTRL_IFACE socket was not being created - when ommitted from the wpa_supplicant.conf file. - * Add 'wpa-maint-debug' to enable set -x in ifupdown.sh, so that we can easy - track down vague problems. - * Slightly modify the way in which madwifi is activated. The default config - we apply does not activate madwifi by default any longer, it is done via - seperate patches; 20_include_madwifi modifies the .config file to activate - the driver_madwifi backend, and adds the required CFLAGS to find the - includes that are later added via one of the 21_madwifi*_includes patches. - * Update madwifi includes to that of the current offering in the debian - archive, r1680. - * Implement basic locking for wpa_action action's for when the user callable - "stop" action is executed while wpa_action is busy configuring the device. - The wpa_cli daemon is killed, then wpa_action waits for the current action - to finish gracefully before killing wpa_suppliant. This helps avoid - inconsistencies with ifupdown when volatile conditions are experienced as - part of the roaming setup (for example, driver problems causing connection - loops). - * Rename WPA_CLI_ACTFILE to WPA_CLI_LOCKFILE in ifupdown.sh. - * Condemn the use of wpa-action scripts: - - add NEWS item describing the superior alternative: wpa-roam - - remove example action scripts - - remove conf_wpa_cli() from ifupdown.sh - * Condense README.Debian and NEWS, so that they contain only relevant items, - and do not repeat the same information. - * Massive enhancement of README.modes, in an attempt to relay the - information about how this package, and wpa_supplicant work in debian with - the greatest of clarity. - * Harden tests for daemon pidfiles. No longer be satisfied that a pidfile - exists, but use start-stop-daemon to test its validity by sending a signal - 0. Remove pidfiles that do not pass the test. - * Fix stupid $DAEMON_VEROSITY typo that was used consistently throughout - script. [ifupdown.sh] - * Assoctiate "down" with the stop action of wpa_action. - * Thanks Marc Haber for reading over docs and notifying of some of the - follwoing issues. - - Fix typo "automattically" in README.modes. - - Remove bogus pre-up example from wpa_action(8) and README.modes - - Explain in more detail how /etc/wpa_supplicant/ifupdown.sh works in - README.modes. - * Add "The Logfile" section to README.modes. - * Add patch from upstream to fix writing of stakey, peerkey, and id_str - network configuration variables into the configuration file when - update_config=1 is set. Thanks to Felix for reporting. - - -- Kel Modderman Thu, 3 Aug 2006 15:58:24 +1000 - -wpasupplicant (0.5.4-2) unstable; urgency=low - - [ Kel Modderman ] - * End testing period. The 0.5 branch of wpa_supplicant upstream has proven - to be non disruptive to users' configurations over the past few weeks, - lets now allow this to propogate to testing. (Closes: #374342) - * Clean up the LSB Init header block. Provide all fields as per LSB Init - Script Comment Convention specification. - * Do not use /usr/bin/env to interrogate the environment for IF_WPA - variables, /usr may not be mounted at time of invocation. Use `set' - (shell built-in) instead. (Closes: #376243) - * Exit if IFSTATE_FILE or INTERFACES_FILE do not exist. Also, look for - ifstate file in /var/run/network to remain compatible with Ubuntu's - ifupdown divergence. (lp#51351) - * Add a similar IFSTATE_FILE test to wpa-ifupdown.init, to remain compatible - with Ubuntu. (lp#51351) - * Update wpa_action.8 with the behaviour of wpa_action when IFSTATE_FILE or - INTERFACES_FILE cannot be found, and the pathnames searched for their - existence. - * Mention wpa_cli(8) in Custom Action Script section of README.Debian, as it - contains information about environment variables available to the script - at runtime. - * Also clarify dhclient wpacli-action script usage, to avoid people - mistakenly cp'ing the skeleton script. - * Add some info about howto revert installation of deprecated init script to - NEWS file. - * Add 'wpa-verbosity' switch, so that setting 'wpa-verbosity 1' in an - interfaces stanza will cause wpa_supplicant's ifupdown hook to be loud. - This was overlooked when #361586 was closed some time ago. - * Remove return value hack in wpa_action, use set -e to exit on error - instead. (Closes: #376553) - * Not only flush IFACE when iproute is installed, but also use /sbin/ip to - set 'up' operstate as well. - * Default to wext without exception. Remove the check for wireless extensions - via /proc/net/wireless, and prevent driver type of "wired" from being - selected in the case that the iface may not be "prepared" yet. - (Closes: #376651) - * Remove duplicating pidfile shell var's in wpa_action.sh by simply making - them global. - - [ Reinhard Tartler ] - * Note that ap_scap=2 can help speeding up associations (Closes: #368770) - * wpa_action: flush the ip addr, if the package iproute is installed - * wpa_action: add action 'reload' to reload the wpa_supplicant configuration - * debian/control: add iproute to Recommends - - -- Kel Modderman Wed, 5 Jul 2006 18:42:06 +1000 - -wpasupplicant (0.5.4-1) unstable; urgency=low - - * New upstream release. - * WPA_CRTL_DIR environment variable is now exported to action scripts, we - will use it to print a status report after a CONNECTED event. - * Make logfile contents easier to read by adding a break between each ACTION - event. - * Recommend dhcp3-client, it handles consecutive wpa_action events with more - grace than dhcp-client by not starting multiple dhclient processes on the - same interface. - * Don't remove wpa_action logfile on 'stop'. - * Enhance wpa_action(8) to better explain the concept of a LOGICAL - interface. - * Install wpa_passphrase to /bin. (Closes: #373948) - * Manpages have been slightly enhanced, and now briefly explain wpa_cli - action environment variables and wpa_supplicant -C and -g options. - (Closes: #372615) - * Rename wpa_cli daemon pidfile to wpa_action.IFACE.pid for wpa-roam. - * Further env variable testing cleanups to ifupdown.sh. - * Global rename of WPA_COMMON_CTRL_IFACE to WPA_CTRL_DIR, as this is used - for the same purposes upstream. - * No longer penalise users for not having ctrl_interface explicitly - contained within their wpa_supplicant.conf. (Closes: #375599) - * Move WPA_ACTION_SCRIPT sanity checking into init_wpa_supplicant() to avoid - ifupdown.sh exiting when bringing down an interface when ifup previously - failed due to a missing or non-executable action script. - * Add numerous code comments to ifupdown.sh. - * Move WPA_CLI_OPTIONS and WPA_SUP_OPTIONS into their respective init() - functions. - * wpa_action now logs 'stop' events to file, updated manpage. - * Split wpa_action logging into two parts, event and environment. Only - wpa_cli events will echo env var's. - * wpa_action exits with retval of ifdown command on 'stop' event. - * Add workaround for sendsigs (initscripts) terminating wpa_supplicant - processes before networking is shutdown gracefully. An init script - wpa-ifupdown is called at sequence number 15 in runlevels 0 and 6 to bring - down all interfaces that were started via ifupdown.sh. - - -- Kel Modderman Tue, 27 Jun 2006 20:29:33 +1000 - -wpasupplicant (0.5.3+20060522-3) unstable; urgency=low - - [Reinhard Tartler] - * review and make the warnings in debian/NEWS even more obvious. - * advertise the manpage wpa_action(8) and the implemented roaming solution - better. - - [Kel Modderman] - * Bugfix: /etc/network/ifstate is not guarenteed to exist, we should grep - /etc/network/run/ifstate in wpa_action. (Closes: #373179) - * Include madwifi old development headers and provide a series of steps to - enable support for users of the madwifi-old driver in debian/NEWS. - * Restore init script example and information about its usage. - * Use INTERFACES_FILE and IFSTATE_FILE in wpa_action.sh. Thanks for idea - from Modestas Vainius. - - -- Kel Modderman Wed, 14 Jun 2006 01:13:08 +1000 - -wpasupplicant (0.5.3+20060522-2) experimental; urgency=low - - * Warn user and exit when wpa-roam is not started with manual inet METHOD. - * Remove awk line to "guess" a network_id, instead create the new block and - store output of wpa_cli in WPA_ID. (make sure that -i IFACE is used) - * Rename wpa_cli_wrapper() to wpa_cli() and make it absoluetly generic, - including only the IFACE and path to ctrl_iface socket. - * Introduce wpa_cli_do() and rewrite conf_wpa_supplicant() to enhance - readability and maintainability. - * Make WPA_ID variable local to conf_wpa_supplicant() - * Exit with status 1 when wpa-action fails. - * Move test's into init/conf/kill function header and clean up phase - specific case constructs at the tail of ifupdown.sh. - * Ensure lang barrier does not interfere with wpa_cli, use LC_ALL=C. - * Add patch from Dan Williams that works around a problem specific to wep - keys and orinoco chipsets. - * Update madwifing_includes dpatch to latest madwifi.org svn. - * Add WPAGUI to debian/rules, so that only one change has to be made to use - a different wpa_gui target. Remove $(WPAGUI)/Makefile in clean target. - * Purge and forget about the old init example script. - - -- Kel Modderman Sat, 10 Jun 2006 22:25:58 +1000 - -wpasupplicant (0.5.3+20060522-1) experimental; urgency=low - - * New upstream development snapshot. - * Oops: Disable CONFIG_EAP_SAKE. (Closes: #366937) - * Rename debian/wpasupplicant.ifupdown to debian/ifupdown.sh. There is no - need for that script to be named that way, as it may falsely seem to be - handled by a debhelper target. - * Don't attempt to send terminate signal via wpa_cli when start-stop-daemon - can be used. - * Use debhelper 5 compat level. - * Use wpa_gui-qt4, and build-depend on libqt4-dev. - * Use WPA_ID instead of NW_ID to make variable similar with what upstream - uses for a similar purpose (unique identifier). - * Add ifupdown environment var's to verbose output to assist in debugging. - * Fix some typo's (engine_id, key_id) in ifupdown.sh. - * ifupdown.sh no longer busy-loops when using an action script with - wpa-action-timeout 0. Thanks to Elmar Hoffmann! - * Allow wpa_cli action daemon to engage before configuring wpa_supplicant - via wpa_cli set_network commands to avoid a possibly racy condition. - * Move VERBOSITY variable to the beginning of ifupdown.sh, with the others. - * Indent shell code in wpacli-action-* scripts. - * Bumb Standards-Version to 3.7.2. - * Allow for future PHASE specific stuff in start MODE of ifupdown.sh. - * Move the action script sanity checks out of init_wpa_supplicant into - common section of ifupdown.sh. - * Create wpa_cli_wrapper to assist in major code clean up and future - maintenance of ifupdown.sh. - * Support madwifi-ng private ioctl's with the inclusion of the headers from - madwifi.org svn trunk. (At the expense of not supporting the madwifi-old - driver, which is deprecated by upstream madwifi) - * Add wpa_action.sh to provide /sbin/wpa_action and facilitate roaming via - ifupdown and network settings defined in /etc/network/interfaces (refer to - wpa_action(8) for more details). - - -- Kel Modderman Sun, 28 May 2006 20:33:38 +1000 - -wpasupplicant (0.5.3-1) experimental; urgency=low - - * New upstream development release. - * Orphaned daemons that are spawned during an ifup process that is - manually terminated are now checked for and killed. - * Don't make noise when we are not using the manual inet method and - wpa-action is used. - * Warn about non-executable action script. - * Ensure wpa_cli actfile is destroyed. - * Make start-stop-daemon verbose when VERBOSITY is set. - * Renumber dpatches for sanity. - * Make ifupdown script modular; split into shell functions. - * Fix typo in README.Debian, referring to a non-existant location. - * Disconnect and terminate existing ctrl_interface sockets. - - -- Kel Modderman Sat, 29 Apr 2006 14:53:51 +1000 - -wpasupplicant (0.5.2-3) experimental; urgency=low - - [ Kel Modderman ] - * Remove bad information about wpa-driver-file in docs. - * Actually fall back to wext as DRIVER type in example init script. - * Fix typo in debian/control, remove suggests of dhcp*-client alltogether. - * Remove bogus commands to set eapol_version and fast_reauth. They cannot be - set via wpa_cli. - * Make preauthenticate a global wpa_cli setting, rather than a per-ssid one. - * Kill dhclient process after a DISCONNECT signal in dhclient action script - example. - * Document that the action script must must be executable. - * Fix check for wireless extensions for when there is not whitespace after - $IFACE:. - * grep for $IFACE in /proc/net/dev to verify it is a valid network interface. - * Improve documentation about wpa-driver, and further clarify that all - wpa_cli commands should be supported in e/n/i by prefixing them with - "wpa-". - * Add a note about wpa-action-timeout. - - [ Reinhard Tartler ] - * remove last reference to /etc/default/wpasupplicant. It is gone, don't - revive zombies! - * small cleanups in debian/rules - * further clarifications in README.Debian - - -- Kel Modderman Tue, 11 Apr 2006 22:05:06 +1000 - -wpasupplicant (0.5.2-2) experimental; urgency=low - - [ Kel Modderman ] - * Bump debian revision to upgrade over the previously version uploaded to - experimental, which has sufficiently changed since that time to warrant - rebasing the package upon the 0.4.8-1 release to unstable. - * Make ifupdown script exit silently when binaries are not found or - executable. - * When ifupdown exits with an error status, do not hide the echo'd problem - description behind the VERBOSITY environment variable. - * Remove check for wpa_cli pidfile when executing an action script. This - check was racy, and not always successful. Sometimes, the device was - marked as up without allowing the action script a chance to finish. - * Improve feedback for wpa_cli action script daemon. - * Ensure WPA_CLI_ACTFILE is removed when wpa_cli is terminated. - * Fix typo in ifupdown script that later propogated into some example - information in README.debian (wpa-apscan should have been wpa-ap-scan). - Provide backwards compatibility for this change for those who already - followed the example. - * Check for existing pidfiles before executing daemons via ifupdown. - - [ Reinhard Tartler ] - * enable driver test - * add eap_testing.txt to documentation - * enhance Readme.txt - - -- Kel Modderman Tue, 4 Apr 2006 06:40:35 +1000 - -wpasupplicant (0.4.8-1) unstable; urgency=low - - [ Reinhard Tartler ] - * Finally bringing in the new Upstream version with the ap scan patch for - wpa-cli, required by network-manager (Closes: #356072) - * Dropping Mode 3 (start by init script) (Closes: #356842, #357760) - * add hint for associating to hidden ssids (Closes: #358137) - * add a note for faciliating debugging connection problems - * add this note to README.modes as well. - * remove or backup obsolete conffiles - /etc/network/if-p{re-up,ost-down}.d/wpasupplicant - * install the wpasupplicant.conf(5) manpage (Closes: #358138) - * don't start wpa_supplicant for loopback interface (Closes: #359814) - * add explanation about action scripts, mentioning that we expect now - the action script to create a file indicating that the interface is ready - for use. - * add warning in NEWS.Debian that upgrading to this package requires - manual intervention by the local admin. - * move old 'default configuration' to /usr/share/doc/wpasupplicant/examples - as example for connecting to open APs. - * remove version restriction from preinst. This means that obsoleted - conffiles are always removed! - * moved the ifupdown script to /etc/wpa_supplicant/ifupdown.sh - * added note about binaries beeing moved to /sbin - - [ Scott James Remnant ] - * Undo 0.4.8-0ubuntu2's replacement of the preinst/postinst/postrm triad, - which replaced the upgrade-failure proof and policy compliant code with - "something else". - * Restore change to ifupdown script that makes "wpa-conf" unnecessary. - * Move /etc/wpa_supplicant.conf to /etc/wpa_supplicant/wpa_supplicant.conf - if the user has modified it, otherwise remove it and install the new file. - * Remove 0_ from if-*.d symlink names as we don't force an order or - even serialisation. - - [ Kel Modderman ] - * Remove check for /proc/net/packet. (Closes: M#37121) - * Add timeout loop when launching a wpa_cli action script in conjunction - with the manual inet METHOD, to allow other ifupdown hooks to - post-configure the interface just as they would have if using a standard - method such as dhcp or static. Introduce WPA_CLI_ACTFILE to allow a - wpa_cli action script to signal connected state to ifupdown. - * Add skeleton wpa_cli action script to examples. - * Simplify wpasupplicant.examples. - * Don't install wpa_supplcant.defconf as the default wpa_supplicant conffile, - our users don't want that file interrogated by anyone, even dpkg. - - -- Reinhard Tartler Fri, 31 Mar 2006 10:58:16 +0200 - -wpasupplicant (0.4.8-0ubuntu3) dapper; urgency=low - - * Add 40_ctrl_iface_hide_keys.dpatch to hide passwords and PINs from - our logfiles, preventing an information disclosure vulnerability. - - -- Adam Conrad Wed, 29 Mar 2006 23:49:26 +1100 - -wpasupplicant (0.4.8-0ubuntu2) dapper; urgency=low - - [ Kel Modderman ] - done in debian experimental for version 0.5.2-1 - * New upstream release. - * Add myself to Uploaders. - * Convert to cdbs. - - rewrite debian/rules to take advantage of cdbs - - update control file build-deps - * Update README.modes. - - clarify that wext is used by default, when no driver is specified - - fix exmaple of wpa-psk using a plaintext string - - fix typo's - * Fold pre-up scripts into one, and symlink from - /etc/network/if-{pre-up,down}.d/wpasupplicant - * Use VERBOSITY of ifupdown to assist debugging of wpa stanza's in - /etc/network/interfaces. - * Add support for wpa_cli action scripts. - * Use start-stop-daemon to initiate wpa_supplicant and wpa_cli background - processes. - * Daemons now create pidfiles. - * Quote tested var's in wpasupplicant.init. - * Quote all var's in wpsupplicant.default for uniformity. - * Move wpa_* to /sbin. - * Conffile for wpa_supplicant now installed to - /etc/wpa_supplicant/wpa_supplicant.conf. That directory will hold any - other files that we may require to use wpa_supplicant. - * Don't start wpasupplicant pre-up if the current kernel lacks support for - "Packet Socket" (CONFIG_PACKET=y). - * Fix blunders in the init script. - - typo, $PIFFILE should have been $PIDFILE - - init script exited when a configuration file WAS found - * Force init daemon's pidfile to be the same as wpasupplicant.ifupdown uses, - to avoid duplicate wpa_supplicant processes binding to the same interface. - * Remove the margin for error from the init daemon, by forcing the default - variables to be set. Helpful and informative comments were placed in the - default file. The init script will exit if these variables are not set - correctly. (Closes: #357957) - * Add comment to defconf about ctrl_interface and wpa_cli. - * Add comments to previously uncommented dpatch's. - * Include proof-of-concept dhlcient wpa-action script. Suggest - dhcp(3)-client. - * Thanks to Henrik Brix Andersen from gentoo for the ideas and inspriration - for some of the above changes. - - [ Reinhard Tartler ] - * compile wpa_gui with qt3 rather than qt4. (in order to faciliate - backporting to sarge) - * revert to debhelper 4 - * take the complete packaging from our experimental branch. The last upload - did not document all changes properly (see the list above), and had still - a lot of issues. - * fixing typo in the preinst - - -- Reinhard Tartler Mon, 27 Mar 2006 15:28:22 +0200 - -wpasupplicant (0.5.1-1) experimental; urgency=low - - [ Reinhard Tartler ] - * New Upstream Release. This is the current development branch of - wpasupplicant. - * revised the init script for supporting roaming mode - * introduce README.modes explaining the differnet modes of operation - * install manpage wpa_supplicant.conf(5) (Closes: #358138) - * make wpasupplicant create a PID file (Closes: #355052) - * Revise wpasupplicant.postinst (Closes: #322176) - - [ Kel Modderman ] - * New experimental ifupdown scripts. (Closes: #322176, #356205, #356144) - * Drop wpasupplicant.{postrm,postinst,override,docs}. - * Use dh_installchangelogs to handle upstream changelog. - * Enforce permissions on installed files. - * Clean up handling of madwifi includes - - dpatch contains description of origin - - dpatch does not modify upstream, use CFLAGS to include madwifi headers - * Add wpa_background manpage provided by upstream. - - -- Kel Modderman Tue, 14 Mar 2006 23:00:47 +1000 - -wpasupplicant (0.4.8-0ubuntu1) dapper; urgency=low - - * New upstream release: - - Various bug fixes - - Support for EAP-FAST key derivation using other ciphers than - RC4-128-SHA for authentication and AES128-SHA for provisioning. - - UVF exception granted by Kamion. - - * Packaging and configuration is based on Debian Experimental however, - making this package something of a bastard love child of what's in - Debian. - * Deliberately dropped support for wpasupplicant being run at startup to - make it easier for Ubuntu to support. It's now run on a per-interface - basis when the interface is brought up. - Consult /usr/share/doc/wpasupplicant/README.Debian for documentation - if upgrading from universe. - * Unlike Debian the wpa-conf /etc/network/interfaces is only needed for - explicitly giving a configuration file; simply include any setting - for wpa to be used. - * Binaries moved to /sbin for seb128. - - -- Scott James Remnant Thu, 23 Mar 2006 23:29:57 +0000 - -wpasupplicant (0.4.7-4) unstable; urgency=low - - [Daniel T Chen] - - * Convert rcS.d script to use /etc/network/if-p{ost-down,re-up}.d - instead. Remove the rcS.d script installed in 0.4.7-0ubuntu{1,2}. - If you manually modified /etc/network/interfaces to use the pre-up - and post-down directives with wpasupplicant, please remove them. - Thanks to Scott James Remnant for the guidance. (Closes: #304032) - - [Kel Modderman - submitted via bug #353530] (Closes: #353530) - - * Use upstream manpages. - * added watch file - * cleanups in debian/rules - * Install wpagui manpage to man8 - * Use qmake-qt4 directly, to avoid ftbfs on systems with other qt - versions installed. - - [Reinhard Tartler] - - * Merged with ubuntu package - * added myself to Uploaders - * use debhelper 5 - * remove debian/wpasupplicant.conffiles, debhelper handles this on its own - * renamed ChangeLog.gz to changelog.gz, (Policy 12.7) - * installed lintian override for possible multiple calling of update-rc.d. - This is necessary to support different upgrade paths. - * revised postinst, so that updating initskript links happens in when - configuring the package only - * introduce debian/NEWS, documenting importants bits of debian/changelogs, - and a bit about future development of wpasupplicant - * verified working WPA EAP-TLS on ipw2200. (Closes: #317548) - * /etc/init.d/wpasupplicant is now a initscript which is not started on - startup by default. (see changes by Daniel T Chen). lintian is not happy - about this, so another lintian override was added - - -- Reinhard Tartler Fri, 24 Feb 2006 18:27:52 +0100 - -wpasupplicant (0.4.7-3) unstable; urgency=low - - * Another brown paper bag release. - * Fix mistype of $CONFIG_FILE variable name in default script. Also make - this the same variable checked for existence in the init script, as that - was another bug I missed. (closes: #350900) - - -- Kyle McMartin Wed, 01 Feb 2006 09:21:41 -0500 - -wpasupplicant (0.4.7-2) unstable; urgency=low - - * Brown paper bag release. - * Add description for wpagui binary package... - - -- Kyle McMartin Sat, 28 Jan 2006 16:51:56 -0500 - -wpasupplicant (0.4.7-1) unstable; urgency=low - - * New upstream version. (closes: #347347) - * New binary package, wpa_gui; build-deps on Qt4. (closes: #332654) - * Move wpasupplicant to run in rcS, before networking. This will likely - upset a few people, but as wpasupplicant can wait for the interface to - exist before doing anything, it shouldn't cause any real problems. - (closes: #310136) - * Document in default config file that EAP-FAST will not work - without a patch to OpenSSL. (closes: #322174) - * Comment out most of the default config file, some people kept the - whole file verbatim, causing OpenSSL to try and load some uncommon - libraries people likely didn't have installed, resulting in - wpasupplicant segfaulting (closes: #330138, #336423) - * Also for #336423, Suggest: libengine-pkcs11-openssl, and document why. - * Make more noise when the daemon fails to run. (closes: #346265) - * Don't advertise that -i may not be required in default/wpasupplicant, - this option was removed as it did not scale to handle multiple - interfaces. (closes: #322175) - * Document typical location of config file in manpage. Note, - wpasupplicant no longer implicitly finds a config file. (closes: #315963) - * Add simple WPA-PSK example to default config file. (closes: #331533) - * Split up $OPTIONS in default/wpasupplicant. (closes: #331533) - - -- Kyle McMartin Sat, 28 Jan 2006 02:30:27 -0500 - -wpasupplicant (0.4.6-0.2) unstable; urgency=low - - * New upstream version (closes: #335487). - * This version is designed for Wireless Extensions 19 and so will work - with Linux kernel 2.6.14. Closes: #338131. - * Note that WPA support was added in Wireless Extensions 18 and should - therefore exist in new (2.6.14-compliant) drivers, including - ipw2200 v1.0.8. In order to take advantage of this new support you need to - invoke wpasupplicant with the wext driver ("-D wext" in - /etc/default/wpasupplicant for instance, instead of "-D ipw" say). - Probably closes also #304087 and #317548, but I'm not going to confirm - that just for an NMU. - * Added comments to README.Debian amounting to the above. - * Borrowed some of Norbert Preining's improvements: - - add debhelper token to postrm script - - fix address of FSF in copyright file - - bump standards version to 3.6.2 - (Kyle, when you get back to this package, find Norbert's other changes - upgrading to debhelper 4 in bug #338131). - * Set NMU version to 0.2 for Norbert's convenience. - * Marked /etc/init.d/wpasupplicant as a conffile (should really use - debhelper4 to take care of this, but I'm not going to make the other - changes needed for this). - - -- Drew Parsons Thu, 10 Nov 2005 20:34:35 +1100 - -wpasupplicant (0.4.4-1) unstable; urgency=low - - * New upstream version. - * Ship a default /etc/wpa_supplicant.conf which associates with any - open access point. (closes: #287220, #322171, #315964) - * /etc/default/wpasupplicant is no longer mode 755 (closes: #315031) - * Add a postrm script, oops, overlooked this initially... (closes: #327522) - * Fix hyphen/minus in man pages. (closes: #296310) - * patches/ - - 01_config - + update - + Enable wired driver. (closes: #325296) - + Add EAP_FAST to config, but comment it out. EAP_FAST requires a patch - to openssl before it is compileable. - - 10_madwifi_includes - + update from madwifi CVS. (closes: #326226) - - -- Kyle McMartin Sat, 24 Sep 2005 12:35:02 -0400 - -wpasupplicant (0.4.2-1) unstable; urgency=low - - * New upstream release. - * Add debhelper flag to postinst. - - -- Kyle McMartin Sat, 18 Jun 2005 19:04:02 -0400 - -wpasupplicant (0.4.1-0) unstable; urgency=low - - * New upstream release. - * This release was not uploaded. - - -- Kyle McMartin Sun, 29 May 2005 17:40:11 -0400 - -wpasupplicant (0.4.0-1) unstable; urgency=low - - * New upstream release. - * patches/ - - 12_ipw_open_aps - + remove patch: It seems to cause problems with associating with - open access points. - - 11_madwifi_open_aps - + remove patch, fixed upstream - driver_madwifi: fixed association in plaintext mode - - -- Kyle McMartin Sat, 30 Apr 2005 11:28:01 -0400 - -wpasupplicant (0.3.8-1) unstable; urgency=low - - * New upstream release. - * This release fixes a crash due to a buffer overflow, caused by - a missing validation step on EAPOL-Key frames. Receiving malformed - frames trigger the crash. More information available in the notes: - http://lists.shmoo.com/pipermail/hostap/2005-February/009465.html - * Fix some badness with the init script. Missed the -B option - to daemonize wpa_supplicant... pidfile is not currently being used - as it requires modifying wpa_supplicant. - * patches/ - - 12_ipw_open_aps (closes: #295143) - + merge patch against driver_ipw to fix association with - open access points. - - -- Kyle McMartin Tue, 15 Feb 2005 00:51:28 -0500 - -wpasupplicant (0.3.7-1) unstable; urgency=low - - * New upstream stable release. - * Add preliminary init script for wpasupplicant. Currently it will - start after pcmcia, for obvious reasons. (closes: #287219) - * patches/ - - 11_madwifi_open_aps (closes: #294909) - + merge patch against driver_madwifi to fix association with - open access points. - - -- Kyle McMartin Sat, 12 Feb 2005 22:56:11 -0500 - -wpasupplicant (0.3.2-2) unstable; urgency=low - - * patches/ - - 06_default_ifname - + support a default interface specified in wpa_supplicant.conf - - -- Kyle McMartin Sun, 23 Jan 2005 03:26:01 -0500 - -wpasupplicant (0.3.2-1) unstable; urgency=low - - * New upstream release. - * From upstream changelog, and verified: (closes: #286443) - + fixed private key loading for cases where passphrase is not set - - -- Kyle McMartin Mon, 20 Dec 2004 10:22:11 -0500 - -wpasupplicant (0.3.1-2) unstable; urgency=low - - * Add CONFIG_CTRL_IFACE=y option to maintain old configuration file - compatibility. - - -- Kyle McMartin Sat, 18 Dec 2004 14:03:19 -0500 - -wpasupplicant (0.3.1-1) unstable; urgency=low - - * The "Kyle is a lazy, lazy, lazy hacker" release. - * Removed patch for ipw2100, as it's been integrated - upstream. (closes: #281979) - * Remove default wpa_supplicant.conf from /etc, since we aren't - installing a configuration file that will work by default. Instead, - it has been moved to /usr/share/doc/wpasupplicant/examples. - * Enable a few more options. Unfortunately support for Broadcom's wl.o - must be disabled, since it requires a header file with an - "All Rights Reserved" copyright. LinuxAnt DriverLoader is similarly - disabled, though NDISWrapper is supported. - - -- Kyle McMartin Thu, 16 Dec 2004 12:39:01 -0500 - -wpasupplicant (0.2.5-2) unstable; urgency=low - - * Merged patch from Lorenzo Martignoni, to enable support for - WPA on the Intel IPW2100 wireless chipset (aka: Centrino). - - -- Kyle McMartin Sat, 23 Oct 2004 15:21:11 -0400 - -wpasupplicant (0.2.5-1) unstable; urgency=low - - * New upstream version. (closes: #276368) - - -- Kyle McMartin Tue, 12 Oct 2004 09:10:19 -0400 - -wpasupplicant (0.2.4-2) unstable; urgency=low - - * patches/ - - 01_config - + enable TLS support (and various other non-default configurations) - - 05_default_conf - + patch to use "/etc/wpa_supplicant.conf" by default, instead of - prompting for the configuration on the command line. - * Add Build-Depends on libssl-dev, used by various EAPs. - - -- Kyle McMartin Sun, 12 Sep 2004 11:16:19 -0400 - -wpasupplicant (0.2.4-1) unstable; urgency=low - - * Initial release. - * patches/ - - 01_config - + default configuration - - 10_madwifi - + support for wireless cards using the madwifi driver - - -- Kyle McMartin Sun, 5 Sep 2004 13:19:27 -0400 diff --git a/packages/extras-buildpkgs/hostapd/debian/changelog.hostapd b/packages/extras-buildpkgs/hostapd/debian/changelog.hostapd deleted file mode 100644 index 02f678b63f6f..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/changelog.hostapd +++ /dev/null @@ -1,483 +0,0 @@ -hostapd (1:0.7.3-5) UNRELEASED; urgency=low - - * NOT RELEASED YET - * bump standards version to 3.9.3, no changes necessary. - * update dep-5 version to final 1.0: - - add format qualifier - - s/Upstream-Maintainer/Upstream-Contact/ - - s/Upstream-Source/Source/ - - use "or" instead of "BSD | GPL-2" for dual-licensed sources - - order licenses alphabetically. - - fix lists of copyright holders for the final syntax - - fix license continuation. - - -- Stefan Lippers-Hollmann Mon, 27 Feb 2012 22:07:19 +0100 - -hostapd (1:0.7.3-4) unstable; urgency=low - - * add myself to uploaders. - * add "hostap: Allow linking with libnl-3" from Ben Greear - to allow building against libnl3 3.2. - * switch build dependency from libnl-dev (libnl1) to libnl-3-dev && - libnl-genl-3-dev accordingly. - * add libpcap-dev and libbsd-dev to kFreeBSD specific build-depends. - * disable IAPP on kFreeBSD, to avoid FTBS. - * restrict hostapd to linux-any and kfreebsd-any, hurd lacks kernel support. - * raise versioned build-dependency to (>= 3.2.3-2~), we need - libnl-genl-3-200-udeb and expect it in /lib/. - * add "For MS-CHAP, convert the password from UTF-8 to UCS-2" from - Evan Broder , accepted upstream into hostap-1.git - * fix long description, driver_madwifi is no longer enabled, while driver_bsd - got enabled. - - -- Stefan Lippers-Hollmann Tue, 20 Dec 2011 02:51:49 +0100 - -hostapd (1:0.7.3-3) unstable; urgency=low - - [ Kel Modderman ] - * Use /run/sendsigs.omit.d/ for sendsigs omission pid file and depend on - initscripts (>= 2.88dsf-13.3). (Closes: #633026) - * Migrate existing sendsigs omission pid files from /lib/init/rw to /run. - * Add a loop to ifupdown.sh to wait for creation of hostapd pid file before - attempting creation of sensigs omission pid file, in some cases hostapd - daemon can return before creation of the pid file has been written to disk. - * Adjust standards version to 3.9.2, no further changes required to - satisfy that. - * Only test that DAEMON_CONF is set in init.d script, do not test if what is - set is readable (which assumes only one configuration file is being used). - (Closes: #615821) - - [ Stefan Lippers-Hollmann ] - * use new anonscm URIs for alioth. - - -- Kel Modderman Sun, 11 Dec 2011 20:32:06 +1000 - -hostapd (1:0.7.3-2) unstable; urgency=low - - * upload to unstable - - -- Jan Dittberner Sun, 06 Feb 2011 13:20:42 +0100 - -hostapd (1:0.7.3-1) experimental; urgency=low - - * New upstream release, upstream declares this as the new stable release. - * debian/control: update Standards-Version to 3.9.1 (no changes - necessary) - * debian/copyright: include license text of the BSD license variant, - add myself to the list of copyright holders for the debian/* files - * add debian/hostapd.lintian-overrides and install it as - /usr/share/lintian/overrides/hostapd to fix possible-gpl-code-linked- - with-openssl Lintian error - - -- Jan Dittberner Tue, 07 Sep 2010 20:43:01 +0200 - -hostapd (1:0.7.2-2) experimental; urgency=low - - * disable madwifi driver - - remove debian/driver_madwifi - - disable madwifi driver in debian/config/linux - - -- Jan Dittberner Tue, 27 Apr 2010 21:09:08 +0200 - -hostapd (1:0.7.2-1) experimental; urgency=low - - * New upstream release - * debian/control: add myself to Uploaders - * update debian/watch to track version 0.7.x - * disable debian/patches/DTIM.patch that does not apply to current upstream - sources - - -- Jan Dittberner Mon, 26 Apr 2010 20:21:00 +0200 - -hostapd (1:0.6.10-2) unstable; urgency=low - - * Switch to source format 3.0 (quilt). - * Add DTIM.patch, cherry picked from upstream, which works around - problem setting DTIM period too early causing hostapd to bail out - unceremoniously. (Closes: #570116) - * Fix syntax error in ifupdown.sh. (Closes: #571029) - - -- Kel Modderman Wed, 24 Feb 2010 19:36:11 +1000 - -hostapd (1:0.6.10-1) unstable; urgency=low - - * New upstream release. - - drop all patches applied upstream - * Install hostapd_cli to /usr/sbin/ from /usr/bin/, as it requires - explicit permissions to be usable by non-admin. - * Support the status command in init.d script. Depend on lsb-base (>= - 3.2-13) for status_of_proc. Patch thanks to Peter Eisentraut. - (Closes: #535633) - * Add debian/README.source to describe use of quilt patch system. - * Increase Standards-Version to 3.8.4 without extra changes. - * Reduce debian/rules by tweaking the sequence of a few things and - using the --sourcedirectory option of dh in debhelper (>= 7.3.7~). - Build-Depend on that debhelper version. - * No longer install /etc/hostapd/hostapd.conf per default as there are - no sane defaults. Instead provide the configuration as an example - only and take care to remove previously installed conffiles which - remain unedited on upgrade. - * Clean up init.d script a bit by using existence of hostapd daemon - configuration file as defined in /etc/default/hostapd as conditional - for starting instead of magic RUN_DAEMON variable. - * Update README.Debian to contain information about the example - hostapd.conf file. - * Remove Reinhard Tartler from uploaders at his request. Thanks for - past contribution. - * Remove uupdate command from debian/watch, unused by maintainer. - * Adjust debian/watch to scan for the 0.6.X stable releases only. - - -- Kel Modderman Thu, 11 Feb 2010 14:49:44 +1000 - -hostapd (1:0.6.9-3) unstable; urgency=low - - * Change Maintainer to pkg-wpa-devel team and add Reinhard and myself - to Uploaders to better reflect the organisation which makes the package - available. - * Import upstream patches: - - hostap_reuse_existing_ctrl_iface_socket.patch allows to reuse ctrl - interface sockets left over as result of unclean shutdown - - hostap_reject_conf_without_channel_nl80211.patch adds code to reject - configurations which use nl80211 driver without setting a channel - because this will always fail for the time being - * Build-Depend on quilt >= 0.46-7 for dh integration. - * Update debian/control long description to mention mac80211 based - drivers. Thanks to Jan Braunisch for noticing. - * Also remove reference to the Prism54 driver in package long - description, we do not support it. - - -- Kel Modderman Sun, 17 May 2009 04:35:12 +1000 - -hostapd (1:0.6.9-2) unstable; urgency=low - - * Enable CONFIG_IEEE80211W, IEEE 802.11w (management frame - protection). (Closes: #522328) - - -- Kel Modderman Fri, 03 Apr 2009 07:07:06 +1000 - -hostapd (1:0.6.9-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream release. (Closes: #521142) - * Document copyright errata of hostapd/driver_atheros.c in - debian/copyright. - - activate nl80211 driver backend (Closes: #429734) - - deactivate prism54 driver, it is now working. Do not mention it - in README.Debian (Closes: #475451) - * Add build dependency of libnl-dev (>= 1.1) for the nl80211 driver - backend. - * Remove need for patch system. - - ship madwifi headers in debian/driver_madwifi - - use sed to patch hostapd.conf in order to change /etc/hostapd.* to - /etc/hostapd/* - - copy in build configuration from debian/config/$(DEB_HOST_ARCH_OS) - to hostapd/.config rather than using a patch - * Add support for kfreebsd build by providing debian/config/kfreebsd - without Linux specific build options. - * Use dh-centric debian/rules and build-depend on debhelper (>= 7.0.50) - in order to take advantage of the override_dh_* feature. - * Bump debian/compat to 7. - * Adjust Standards-Version to 3.8.0, no further changes needed. - * Use machine parsable debian/copyright format. - * Add debian/manpages instead of using explicit dh_installmanpages - command in debian/rules. - * Rename debian/lintian-overrides to debian/hostapd.lintian-overrides - so that dh_lintian automatically picks it up. - * Bump Standards-Version to 3.8.1, no other changes required. - * Remove var/run/hostapd and usr/share/lintian/overrides from - debian/dirs. hostapd is able to create its own directory for unix - sockets (and that may be anywhere admin decides) and lintian stuff - is taken care of by debhelper now. - * Update copyright information in debian/ifupdown.sh - - [ Faidon Liambotis ] - * Switch Maintainer/Uploaders roles with Kel; he's the de facto maintainer - nowadays, he may as well listed as such. - - -- Faidon Liambotis Sun, 29 Mar 2009 21:37:22 +0300 - -hostapd (1:0.5.10-1) unstable; urgency=low - - * New upstream release. - * Document the two methods of managing hostapd in README.Debian. Also add a - hint to /etc/default/hostapd to consult README.Debian for more - information. (Closes: #443786) - * Cleanup of debian/rules, actually honor nostrip by specifying default - CFLAGS when invoking make. Remove redundant commented out content. - * Fix incorrect LSB dependency information, hostapd now requires $remote_fs - virtual facility for start and stop. Thanks to Petter Reinholdtsen. - (Closes: #466283) - - -- Kel Modderman Tue, 11 Mar 2008 12:36:03 +1000 - -hostapd (1:0.5.9-1) unstable; urgency=low - - * New upstream release. - * Bumped to Standards-Version 3.7.3, no changed needed. - * Switched to Vcs-* instead of XS-Vcs. - * Added Homepage field. - * Refer to GPL-2 explicitely, as this is a GPL v2-only software. - * Remove remnants of patches for dscape/mac80211. - * Update to madwifi 0.9.3.3 headers; no functional changes. - - -- Faidon Liambotis Wed, 12 Dec 2007 03:43:13 +0200 - -hostapd (1:0.5.8-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream release. - * Add bash script to prepare madwifi_headers.patch. - * patches/20_madwifi_headers.dpatch made from madwifi 0.9.3, which is what - is currently in the archive, and stable upstream release. - (Closes: #408642) - * Rename 21_madwifi_includes.dpatch to 21_madwifi_enable.dpatch. - * Make our new mac80211 header dpatches similar to that of madwifi; keep - upstream include directory tree intact and modify CFLAGS. - * Refresh our build config with upstreams current defconfig. - * CONFIG_STAKEY is deprecated in favour of CONFIG_PEERKEY. - - [ Faidon Liambotis ] - * Remove upgrade paths from pre-etch versions, we only support incremental - updates. Fix a lintian error in the process. - * Don't ignore "make clean" errors, if they exist; fixes a lintian warning. - - -- Faidon Liambotis Tue, 24 Jul 2007 17:43:44 +0300 - -hostapd (1:0.5.7-1) unstable; urgency=low - - * New upstream release. - * Drop backported code included in this upstream release. - * Bump debhelper compat level to 5, no other changes required. - * Include ifupdown integration; it is now possible to start - hostapd via a /etc/network/interfaces line such as: - 'hostapd /etc/hostapd/hostapd.conf' - for any given interface. The daemon will start in pre-up phase of ifup, - and be killed in post-down phase of ifdown. A pidfile of - /var/run/hostapd.$IFACE.pid will be created for each interface's daemon. - * Add XS-Vcs fields to debian/control. - * Change of Uploader email address in debian/control. - * Update madwifi includes to r2157 upstream madwifi.org/trunk. - * Update debian/copyright with new upstream URL, contact information and - copyright years. - * Modify debian/watch file for new upstream release URL. - * Make debian/watch version 3, remove useless comments from file. - - -- Kel Modderman Mon, 09 Apr 2007 18:31:22 +1000 - -hostapd (1:0.5.5-3.1) unstable; urgency=high - - * Non-maintainer upload. - * Urgency high for RC bugfix. - * Backport hostapd.c fix from CVS: (Closes: #398466) - - Allow hostapd_flush_old_stations to fail, otherwise configuration - of unencrypted modes failed with madwifi. (1.168) - The correct setup is handled by the backported fixes in the - previous revision. - - -- Matt Brown Sat, 9 Dec 2006 11:03:47 +1300 - -hostapd (1:0.5.5-3) unstable; urgency=medium - - * Update madwifi headers to r1757. - * Backport driver_madwifi.c fixes from CVS: - - Set forgotten im_op for sta_disassoc handlers (1.49) - - Fixed configuration of unencrypted modes (plaintext and IEEE 802.1X - without WEP) (1.51) - * Urgency medium because of a bugfix revision. - - -- Faidon Liambotis Sun, 12 Nov 2006 02:37:43 +0200 - -hostapd (1:0.5.5-2) unstable; urgency=low - - * Versioned dependency on lsb-base (>= 3.0-3) for log_daemon_message used in - hostapd init script. (Closes: #386156) - - -- Kel Modderman Wed, 6 Sep 2006 14:31:14 +1000 - -hostapd (1:0.5.5-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream release. - * Allow hostapd to install, by first checking for existence of - /etc/hostapd/hostapd.conf before attempting to change permissions. - - [ Faidon Liambotis ] - * Also fix ownership of hostapd.conf on upgrades. - - -- Faidon Liambotis Tue, 29 Aug 2006 15:29:47 +0300 - -hostapd (1:0.5.4-1) unstable; urgency=low - - [ Kel Modderman ] - * New upstream release. (Closes: #378703) - * Add LSB INIT info header to init script, as per specs. Source lsb-base - init functions, use them to report daemon status in a standard way. - (Closes: #376327) - * Add dpatch (30_hostapd_pidfile) to allow hostapd process to create a pid - file when daemonized. - * The init daemon now creates a pid file at /var/run/hostapd.pid. - * Allow multiple configuration files to be given to hostapd via - /etc/default/hostapd, enabling the possibility of managing multiple - interfaces with one process. If the configuration files are not specified - use /etc/hostapd/hostapd.conf to preserve backwards compatability. - This also allows the user to use a single configuration file != - /etc/hostapd/hostapd.conf. (Closes: #377054) - * Add 'reload' option to init script. Send HUP signal to hostapd, causing it - to reload its configuration file. - * Add some extra DAEMON_OPTIONS hints to the /etc/default/hostapd file. - * Set hostapd.conf permissions to 0600, it may contain sensitive details. - (Closes: #380632) - * Update madwifi headers to r1705. This should ensure maximum compatibility - with the madwifi-source package currently available. (Closes: #384504) - * Slightly change the way madwifi is activated, add an extra CFLAG instead of - hardcoding the paths to the headers in driver_madwifi.c. - * Add myself to uploaders. - - [ Faidon Liambotis ] - * Fixes a potential DoS fix in RSN preauthentication (upstream bug #152). - * Add lintian override for hostapd.conf unusual permissions. - * Exclude hostapd.conf from dh_fixperms. - * Fix permissions of hostapd.conf retroactively in upgrades. - - -- Faidon Liambotis Fri, 25 Aug 2006 04:28:00 +0300 - -hostapd (1:0.5.3-1) unstable; urgency=low - - * New upstream release - - Fix some warnings when compiling with GCC 4.1. - - Adapt 12_conf_etc_hostapd.dpatch to the new hostapd.conf. - * Include the test driver, for debugging purposes. (Closes: #372107) - * Delete unmodified obsolete conffiles when upgrading from a previous - version (namely, hostapd.{accept,deny}). - Thanks to Lars Wirzenius and piuparts! (Closes: #353191) - * Update madwifi-ng headers to version 0.9.0. - * Remove the suggestion of hostap-modules, hostap is merged to the latest - 2.6 kernels and it's one of the many options anyway. - * Changed maintainer's e-mail address. - * Updated Standards-Version to 3.7.2, no changes needed. - - -- Faidon Liambotis Fri, 9 Jun 2006 03:23:23 +0300 - -hostapd (1:0.5.0-1) unstable; urgency=low - - * New upstream release - - Removed patch 01-prism54-hostap_common, merged upstream. - * Update madwifi headers to madwifi-ng, rev1390. - * Updated 'Standards-Version' to 3.6.2.2 (no changes). - - -- Faidon Liambotis Thu, 5 Jan 2006 02:13:17 +0200 - -hostapd (1:0.4.5-2) unstable; urgency=low - - * No changes, previous version appeared as an NMU. - - -- Faidon Liambotis Tue, 11 Oct 2005 19:15:27 +0300 - -hostapd (1:0.4.5-1) unstable; urgency=low - - * New upstream release - - added experimental support for EAP-PSK - - added support for WE-19 - * Update madwifi headers to the latest CVS. (Closes: #326893) - * README.Debian: - - Document that in-kernel versions of prism54 won't work. (Closes: #315852) - - Mention Prism2/2.5/3.0's STA firmware limitations. - * Updated 'Standards-Version' to 3.6.2.1 (no changes). - - -- Faidon Liambotis Mon, 10 Oct 2005 15:55:13 +0300 - -hostapd (1:0.4.2-1) unstable; urgency=low - - * New upstream release - - Manpages incorporated upstream. - - Removed patches 01_makefile, 02_conf_wpa_to_hostapd, 03_usage_cleanup, - accepted upstream. - - Adapted patch 21_madwifi_includes - - Added support for RADIUS over IPv6 - - Added support for EAP-PAX - * Removed /etc/hostapd/hostapd.accept & hostapd.deny, now shipping all - example configuration files to /usr/share/doc/hostapd/examples/ - - -- Faidon Liambotis Wed, 15 Jun 2005 18:23:33 +0300 - -hostapd (1:0.3.7-2) unstable; urgency=medium - - * Better handling of patching upstream using dpatch. - * Added madwifi support. - Hack stolen from wpasupplicant, thanks to Kyle McMartin. - * Changed hostapd_cli path to /usr/bin/ from /usr/sbin/. - * Report failed start of hostapd when starting from the init.d script. - (Closes: #303206). - * Added hostapd(8) and hostapd_cli(1) manpages. - Now lintian & linda clean ;) - * Cleaned-up hostapd/hostapd_cli usage information. - - -- Faidon Liambotis Mon, 11 Apr 2005 11:53:58 +0300 - -hostapd (1:0.3.7-1) unstable; urgency=medium - - * New upstream release - - Changed license to Dual GPL/BSD. - - New tool hostapd_cli for command-line administration. - * Adapt description to reflect new features. - * Now Suggesting instead of Recommending hostap-modules, hostapd can now - work with other drivers. - - -- Faidon Liambotis Wed, 23 Feb 2005 10:12:06 +0200 - -hostapd (1:0.2.6-1) unstable; urgency=low - - * New upstream release. - * Modified description to match v0.2.x features. - * Modified debian/rules to use 'dh_install'. - * Removed source code documentation from /usr/share/doc/. - - -- Faidon Liambotis Tue, 28 Dec 2004 19:01:26 +0200 - -hostapd (1:0.2.5-1) unstable; urgency=low - - * Adopted by new maintainer (Closes: #265332). - * New upstream release (Closes: #255302). - * Create init.d script disabled by default - via /etc/default/hostapd (Closes: #208027). - * Updated 'Standards-Version' to 3.6.1. - * Other minor bugfixes. - - -- Faidon Liambotis Thu, 18 Nov 2004 18:11:57 +0200 - -hostapd (1:0.1.3-2) unstable; urgency=low - - * Orphaned - - -- Francois Gurin Thu, 12 Aug 2004 14:18:11 -0400 - -hostapd (1:0.1.3-1) unstable; urgency=low - - * New upstream release - - -- Francois Gurin Sun, 4 Apr 2004 19:05:28 -0400 - -hostapd (1:0.1.0-4) unstable; urgency=low - - * changed depends to recommends. - - -- Francois Gurin Mon, 8 Dec 2003 15:12:45 -0500 - -hostapd (1:0.1.0-3) unstable; urgency=low - - * fixed a pebcak issue with upload - - -- Francois Gurin Mon, 27 Oct 2003 01:37:06 -0500 - -hostapd (1:0.1.0-2) unstable; urgency=low - - * fixed version epoch - - -- Francois Gurin Mon, 27 Oct 2003 00:52:01 -0500 - -hostapd (0.1.0-1) unstable; urgency=low - - * Initial Release. - - -- Francois Gurin Sun, 26 Oct 2003 04:55:36 -0500 - diff --git a/packages/extras-buildpkgs/hostapd/debian/compat b/packages/extras-buildpkgs/hostapd/debian/compat deleted file mode 100644 index ec635144f600..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/packages/extras-buildpkgs/hostapd/debian/config/config_default b/packages/extras-buildpkgs/hostapd/debian/config/config_default deleted file mode 100644 index beb82d4e8051..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/config/config_default +++ /dev/null @@ -1,316 +0,0 @@ -# Example hostapd build time configuration -# -# This file lists the configuration options that are used when building the -# hostapd binary. All lines starting with # are ignored. Configuration option -# lines must be commented out complete, if they are not to be included, i.e., -# just setting VARIABLE=n is not disabling that variable. -# -# This file is included in Makefile, so variables like CFLAGS and LIBS can also -# be modified from here. In most cass, these lines should use += in order not -# to override previous values of the variables. - -# Driver interface for Host AP driver -CONFIG_DRIVER_HOSTAP=y - -# Driver interface for wired authenticator -#CONFIG_DRIVER_WIRED=y - -# Driver interface for drivers using the nl80211 kernel interface -CONFIG_DRIVER_NL80211=y - -# driver_nl80211.c requires libnl. If you are compiling it yourself -# you may need to point hostapd to your version of libnl. -# -CFLAGS += -I$/usr/include/libnl3/ -LIBS += -L$/usr/include/libnl3/ - -# Use libnl v2.0 (or 3.0) libraries. -CONFIG_LIBNL20=y - -# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored) -CONFIG_LIBNL32=y - - -# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) -#CONFIG_DRIVER_BSD=y -#CFLAGS += -I/usr/local/include -#LIBS += -L/usr/local/lib -#LIBS_p += -L/usr/local/lib -#LIBS_c += -L/usr/local/lib - -# Driver interface for no driver (e.g., RADIUS server only) -#CONFIG_DRIVER_NONE=y - -# IEEE 802.11F/IAPP -CONFIG_IAPP=y - -# WPA2/IEEE 802.11i RSN pre-authentication -CONFIG_RSN_PREAUTH=y - -# PeerKey handshake for Station to Station Link (IEEE 802.11e DLS) -CONFIG_PEERKEY=y - -# IEEE 802.11w (management frame protection) -CONFIG_IEEE80211W=y - -# Integrated EAP server -CONFIG_EAP=y - -# EAP Re-authentication Protocol (ERP) in integrated EAP server -CONFIG_ERP=y - -# EAP-MD5 for the integrated EAP server -CONFIG_EAP_MD5=y - -# EAP-TLS for the integrated EAP server -CONFIG_EAP_TLS=y - -# EAP-MSCHAPv2 for the integrated EAP server -CONFIG_EAP_MSCHAPV2=y - -# EAP-PEAP for the integrated EAP server -CONFIG_EAP_PEAP=y - -# EAP-GTC for the integrated EAP server -CONFIG_EAP_GTC=y - -# EAP-TTLS for the integrated EAP server -CONFIG_EAP_TTLS=y - -# EAP-SIM for the integrated EAP server -#CONFIG_EAP_SIM=y - -# EAP-AKA for the integrated EAP server -#CONFIG_EAP_AKA=y - -# EAP-AKA' for the integrated EAP server -# This requires CONFIG_EAP_AKA to be enabled, too. -#CONFIG_EAP_AKA_PRIME=y - -# EAP-PAX for the integrated EAP server -#CONFIG_EAP_PAX=y - -# EAP-PSK for the integrated EAP server (this is _not_ needed for WPA-PSK) -#CONFIG_EAP_PSK=y - -# EAP-pwd for the integrated EAP server (secure authentication with a password) -#CONFIG_EAP_PWD=y - -# EAP-SAKE for the integrated EAP server -#CONFIG_EAP_SAKE=y - -# EAP-GPSK for the integrated EAP server -#CONFIG_EAP_GPSK=y -# Include support for optional SHA256 cipher suite in EAP-GPSK -#CONFIG_EAP_GPSK_SHA256=y - -# EAP-FAST for the integrated EAP server -# Note: If OpenSSL is used as the TLS library, OpenSSL 1.0 or newer is needed -# for EAP-FAST support. Older OpenSSL releases would need to be patched, e.g., -# with openssl-0.9.8x-tls-extensions.patch, to add the needed functions. -#CONFIG_EAP_FAST=y - -# Wi-Fi Protected Setup (WPS) -#CONFIG_WPS=y -# Enable UPnP support for external WPS Registrars -#CONFIG_WPS_UPNP=y -# Enable WPS support with NFC config method -#CONFIG_WPS_NFC=y - -# EAP-IKEv2 -#CONFIG_EAP_IKEV2=y - -# Trusted Network Connect (EAP-TNC) -#CONFIG_EAP_TNC=y - -# EAP-EKE for the integrated EAP server -#CONFIG_EAP_EKE=y - -# PKCS#12 (PFX) support (used to read private key and certificate file from -# a file that usually has extension .p12 or .pfx) -CONFIG_PKCS12=y - -# RADIUS authentication server. This provides access to the integrated EAP -# server from external hosts using RADIUS. -#CONFIG_RADIUS_SERVER=y - -# Build IPv6 support for RADIUS operations -CONFIG_IPV6=y - -# IEEE Std 802.11r-2008 (Fast BSS Transition) -#CONFIG_IEEE80211R=y - -# Use the hostapd's IEEE 802.11 authentication (ACL), but without -# the IEEE 802.11 Management capability (e.g., FreeBSD/net80211) -#CONFIG_DRIVER_RADIUS_ACL=y - -# IEEE 802.11n (High Throughput) support -CONFIG_IEEE80211N=y - -# Wireless Network Management (IEEE Std 802.11v-2011) -# Note: This is experimental and not complete implementation. -#CONFIG_WNM=y - -# IEEE 802.11ac (Very High Throughput) support -CONFIG_IEEE80211AC=y - -# Remove debugging code that is printing out debug messages to stdout. -# This can be used to reduce the size of the hostapd considerably if debugging -# code is not needed. -#CONFIG_NO_STDOUT_DEBUG=y - -# Add support for writing debug log to a file: -f /tmp/hostapd.log -# Disabled by default. -#CONFIG_DEBUG_FILE=y - -# Add support for sending all debug messages (regardless of debug verbosity) -# to the Linux kernel tracing facility. This helps debug the entire stack by -# making it easy to record everything happening from the driver up into the -# same file, e.g., using trace-cmd. -#CONFIG_DEBUG_LINUX_TRACING=y - -# Remove support for RADIUS accounting -#CONFIG_NO_ACCOUNTING=y - -# Remove support for RADIUS -#CONFIG_NO_RADIUS=y - -# Remove support for VLANs -#CONFIG_NO_VLAN=y - -# Enable support for fully dynamic VLANs. This enables hostapd to -# automatically create bridge and VLAN interfaces if necessary. -#CONFIG_FULL_DYNAMIC_VLAN=y - -# Use netlink-based kernel API for VLAN operations instead of ioctl() -# Note: This requires libnl 3.1 or newer. -#CONFIG_VLAN_NETLINK=y - -# Remove support for dumping internal state through control interface commands -# This can be used to reduce binary size at the cost of disabling a debugging -# option. -#CONFIG_NO_DUMP_STATE=y - -# Enable tracing code for developer debugging -# This tracks use of memory allocations and other registrations and reports -# incorrect use with a backtrace of call (or allocation) location. -#CONFIG_WPA_TRACE=y -# For BSD, comment out these. -#LIBS += -lexecinfo -#LIBS_p += -lexecinfo -#LIBS_c += -lexecinfo - -# Use libbfd to get more details for developer debugging -# This enables use of libbfd to get more detailed symbols for the backtraces -# generated by CONFIG_WPA_TRACE=y. -#CONFIG_WPA_TRACE_BFD=y -# For BSD, comment out these. -#LIBS += -lbfd -liberty -lz -#LIBS_p += -lbfd -liberty -lz -#LIBS_c += -lbfd -liberty -lz - -# hostapd depends on strong random number generation being available from the -# operating system. os_get_random() function is used to fetch random data when -# needed, e.g., for key generation. On Linux and BSD systems, this works by -# reading /dev/urandom. It should be noted that the OS entropy pool needs to be -# properly initialized before hostapd is started. This is important especially -# on embedded devices that do not have a hardware random number generator and -# may by default start up with minimal entropy available for random number -# generation. -# -# As a safety net, hostapd is by default trying to internally collect -# additional entropy for generating random data to mix in with the data -# fetched from the OS. This by itself is not considered to be very strong, but -# it may help in cases where the system pool is not initialized properly. -# However, it is very strongly recommended that the system pool is initialized -# with enough entropy either by using hardware assisted random number -# generator or by storing state over device reboots. -# -# hostapd can be configured to maintain its own entropy store over restarts to -# enhance random number generation. This is not perfect, but it is much more -# secure than using the same sequence of random numbers after every reboot. -# This can be enabled with -e command line option. The specified -# file needs to be readable and writable by hostapd. -# -# If the os_get_random() is known to provide strong random data (e.g., on -# Linux/BSD, the board in question is known to have reliable source of random -# data from /dev/urandom), the internal hostapd random pool can be disabled. -# This will save some in binary size and CPU use. However, this should only be -# considered for builds that are known to be used on devices that meet the -# requirements described above. -#CONFIG_NO_RANDOM_POOL=y - -# Select TLS implementation -# openssl = OpenSSL (default) -# gnutls = GnuTLS -# internal = Internal TLSv1 implementation (experimental) -# none = Empty template -#CONFIG_TLS=openssl - -# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1) -# can be enabled to get a stronger construction of messages when block ciphers -# are used. -#CONFIG_TLSV11=y - -# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2) -# can be enabled to enable use of stronger crypto algorithms. -#CONFIG_TLSV12=y - -# If CONFIG_TLS=internal is used, additional library and include paths are -# needed for LibTomMath. Alternatively, an integrated, minimal version of -# LibTomMath can be used. See beginning of libtommath.c for details on benefits -# and drawbacks of this option. -#CONFIG_INTERNAL_LIBTOMMATH=y -#ifndef CONFIG_INTERNAL_LIBTOMMATH -#LTM_PATH=/usr/src/libtommath-0.39 -#CFLAGS += -I$(LTM_PATH) -#LIBS += -L$(LTM_PATH) -#LIBS_p += -L$(LTM_PATH) -#endif -# At the cost of about 4 kB of additional binary size, the internal LibTomMath -# can be configured to include faster routines for exptmod, sqr, and div to -# speed up DH and RSA calculation considerably -#CONFIG_INTERNAL_LIBTOMMATH_FAST=y - -# Interworking (IEEE 802.11u) -# This can be used to enable functionality to improve interworking with -# external networks. -#CONFIG_INTERWORKING=y - -# Hotspot 2.0 -#CONFIG_HS20=y - -# Enable SQLite database support in hlr_auc_gw, EAP-SIM DB, and eap_user_file -#CONFIG_SQLITE=y - -# Testing options -# This can be used to enable some testing options (see also the example -# configuration file) that are really useful only for testing clients that -# connect to this hostapd. These options allow, for example, to drop a -# certain percentage of probe requests or auth/(re)assoc frames. -# -#CONFIG_TESTING_OPTIONS=y - -# Automatic Channel Selection -# This will allow hostapd to pick the channel automatically when channel is set -# to "acs_survey" or "0". Eventually, other ACS algorithms can be added in -# similar way. -# -# Automatic selection is currently only done through initialization, later on -# we hope to do background checks to keep us moving to more ideal channels as -# time goes by. ACS is currently only supported through the nl80211 driver and -# your driver must have survey dump capability that is filled by the driver -# during scanning. -# -# You can customize the ACS survey algorithm with the hostapd.conf variable -# acs_num_scans. -# -# Supported ACS drivers: -# * ath9k -# * ath5k -# * ath10k -# -# For more details refer to: -# http://wireless.kernel.org/en/users/Documentation/acs -# -#CONFIG_ACS=y diff --git a/packages/extras-buildpkgs/hostapd/debian/config/hostapd.conf b/packages/extras-buildpkgs/hostapd/debian/config/hostapd.conf deleted file mode 100644 index 05ea156762e4..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/config/hostapd.conf +++ /dev/null @@ -1,48 +0,0 @@ -# -# armbian hostapd configuration example -# -# nl80211 mode -# - -ssid=ARMBIAN -interface=wlan0 -hw_mode=g -channel=5 -bridge=br0 -driver=nl80211 - -logger_syslog=0 -logger_syslog_level=0 -wmm_enabled=1 -wpa=2 -preamble=1 - -wpa_psk=66eb31d2b48d19ba216f2e50c6831ee11be98e2fa3a8075e30b866f4a5ccda27 -wpa_passphrase=12345678 -wpa_key_mgmt=WPA-PSK -wpa_pairwise=TKIP -rsn_pairwise=CCMP -auth_algs=1 -macaddr_acl=0 - -### IEEE 802.11n -#ieee80211n=1 -#ht_capab= -#country_code=US -#ieee80211d=1 -### IEEE 802.11n - -### IEEE 802.11a -#hw_mode=a -### IEEE 802.11a - -### IEEE 802.11ac -#ieee80211ac=1 -#vht_capab=[MAX-MPDU-11454][SHORT-GI-80][TX-STBC-2BY1][RX-STBC-1][MAX-A-MPDU-LEN-EXP3] -#vht_oper_chwidth=1 -#vht_oper_centr_freq_seg0_idx=42 -### IEEE 802.11ac - -# controlling enabled -ctrl_interface=/var/run/hostapd -ctrl_interface_group=0 diff --git a/packages/extras-buildpkgs/hostapd/debian/control b/packages/extras-buildpkgs/hostapd/debian/control deleted file mode 100644 index 5e694ddec75f..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/control +++ /dev/null @@ -1,56 +0,0 @@ -Source: wpa -Maintainer: Debian wpasupplicant Maintainers -Uploaders: - Stefan Lippers-Hollmann , - Jan Dittberner , - Andrew Shadura -Section: net -Priority: optional -Build-Depends: debhelper (>> 9.20120115), - libdbus-1-dev, - libssl-dev, - libncurses5-dev, - libpcsclite-dev, - libnl-3-dev [linux-any], - libnl-genl-3-dev [linux-any], - libnl-route-3-dev [linux-any], - libpcap-dev [kfreebsd-any], - libbsd-dev [kfreebsd-any], - libreadline-dev, - pkg-config, - docbook-to-man, - docbook-utils -Standards-Version: 3.9.6 -Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/wpa.git -Vcs-Git: https://anonscm.debian.org/git/collab-maint/wpa.git -Homepage: http://w1.fi/wpa_supplicant/ - -Package: hostapd -Architecture: linux-any kfreebsd-any -Multi-Arch: foreign -Depends: ${shlibs:Depends}, - ${misc:Depends}, - lsb-base -Breaks: initscripts (<< 2.88dsf-13.3) -Provides: hostapd -Conflicts: hostapd, hostapd-realtek, armbian-hostapd -Replaces: hostapd, hostapd-realtek, armbian-hostapd -Description: IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator - Originally, hostapd was an optional user space component for Host AP - driver. It adds more features to the basic IEEE 802.11 management - included in the kernel driver: using external RADIUS authentication - server for MAC address based access control, IEEE 802.1X Authenticator - and dynamic WEP keying, RADIUS accounting, WPA/WPA2 (IEEE 802.11i/RSN) - Authenticator and dynamic TKIP/CCMP keying. - . - The current version includes support for other drivers, an integrated - EAP authenticator (i.e., allow full authentication without requiring - an external RADIUS authentication server), and RADIUS authentication - server for EAP authentication. - . - hostapd works with the following drivers: - . - * mac80211 based drivers with support for master mode [linux] - * Host AP driver for Prism2/2.5/3 [linux] - * Driver interface for FreeBSD net80211 layer [kfreebsd] - * Any wired Ethernet driver for wired IEEE 802.1X authentication. diff --git a/packages/extras-buildpkgs/hostapd/debian/copyright b/packages/extras-buildpkgs/hostapd/debian/copyright deleted file mode 100644 index 0810beecb13f..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/copyright +++ /dev/null @@ -1,422 +0,0 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: hostapd -Upstream-Contact: Jouni Malinen -Source: git://w1.fi/srv/git/hostap.git - -Files: * -Copyright: 2002-2014, Jouni Malinen -License: BSD-3-clause - -Files: hostapd/logwatch/* -Copyright: 2005, Henrik Brix Andersen -License: BSD-3-clause or GPL-2 - -Files: hostapd/Android.mk -Copyright: 2008, The Android Open Source Project -License: BSD-3-clause - -Files: hostapd/hostapd.8 - hostapd/hostapd_cli.1 -Copyright: 2005, Faidon Liambotis -License: BSD-3-clause - -Files: hs20/* -Copyright: 2012-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: patches/* -Copyright: 2005, Alexey Kobozev - 2005-2012, Jouni Malinen -License: BSD-3-clause - -Files: src/ap/acs.* -Copyright: 2011, Atheros Communications - 2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/ap_list.* - src/ap/ap_mlme.* - src/ap/beacon.* - src/ap/hw_features.* - src/ap/vlan_init.* - src/ap/wmm.* -Copyright: 2002-2009, Jouni Malinen - 2002-2004, Instant802 Networks, Inc. - 2005-2006, Devicescape Software, Inc. -License: BSD-3-clause - -Files: src/ap/dfs.* -Copyright: 2002-2013, Jouni Malinen - 2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/gas_serv.* - src/ap/wnm_ap.* - src/common/ieee802_1x_defs.h - src/common/qca-vendor* -Copyright: 2011-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/hs20.* - wpa_supplicant/hs20_supplicant.* -Copyright: 2009, Atheros Communications, Inc. - 2011-2013, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/ap/ieee802_11_ht.c -Copyright: 2002-2009, Jouni Malinen - 2007-2008, Intel Corporation -License: BSD-3-clause - -Files: src/ap/p2p_hostapd.* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/ap/vlan_util.* -Copyright: 2012, Michael Braun -License: BSD-3-clause - -Files: src/common/gas.* -Copyright: 2009, Atheros Communications - 2011-2012, Qualcomm Atheros -License: BSD-3-clause - -Files: src/common/ieee802_11_defs.h -Copyright: 2002-2009, Jouni Malinen - 2007-2008, Intel Corporation -License: BSD-3-clause - -Files: src/common/wpa_helpers.* -Copyright: 2010-2011, Atheros Communications, Inc. - 2011-2012, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/crypto/aes-internal* -Copyright: 2000, Vincent Rijmen - 2000, Antoon Bosselaers - 2000, Paulo Barreto - 2003-2012, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/des-internal.c -Copyright: 2005, Tom St Denis - 2006-2009, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/md4-internal.c -Copyright: 1993, Colin Plumb - 2004, Todd C. Miller - 2006, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/md5-internal.c -Copyright: 1993, Colin Plumb - 2003-2005, Jouni Malinen -License: BSD-3-clause - -Files: src/crypto/sha1-internal.c -Copyright: 1998, Steve Reid - 1998, James H. Brown - 2001, Saul Kravitz - 2001-2005, Jouni Malinen -License: BSD-3-clause - -Files: src/drivers/driver_atheros.c -Copyright: 2004, Sam Leffler - 2004, Video54 Technologies - 2005-2007, Jouni Malinen - 2009, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_bsd.c -Copyright: 2004, Sam Leffler - 2004, 2Wire, Inc -License: BSD-3-clause - -Files: src/drivers/driver_macsec_qca.c -Copyright: 2004, Gunter Burchardt - 2005-2009, Jouni Malinen - 2013-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/drivers/driver_madwifi.c -Copyright: 2004, Sam Leffler - 2004, Video54 Technologies - 2004-2007, Jouni Malinen -License: BSD-3-clause - -Files: src/drivers/driver_nl80211.c -Copyright: 2002-2014, Jouni Malinen - 2003-2004, Instant802 Networks, Inc. - 2005-2006, Devicescape Software, Inc. - 2007, Johannes Berg - 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_none.c -Copyright: 2008, Atheros Communications -License: BSD-3-clause - -Files: src/drivers/driver_openbsd.c -Copyright: 2013, Mark Kettenis -License: BSD-3-clause - -Files: src/drivers/driver_roboswitch.c -Copyright: 2008-2009, Jouke Witteveen -License: BSD-3-clause - -Files: src/drivers/driver_wired.c -Copyright: 2005-2009, Jouni Malinen - 2004, Gunter Burchardt -License: BSD-3-clause - -Files: src/drivers/nl80211_copy.h -Copyright: 2006-2010, Johannes Berg - 2008, Michael Wu - 2008, Luis Carlos Cobo - 2008, Michael Buesch - 2008-2009, Luis R. Rodriguez - 2008, Jouni Malinen - 2008, Colin McCabe -License: ISC - -Files: src/eap_common/eap_pwd_common.* - src/eap_peer/eap_pwd.c - src/eap_server/eap_server_pwd.c -Copyright: 2010, Dan Harkins -License: BSD-3-clause - -Files: src/eap_peer/eap_proxy* -Copyright: 2011-2013 Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/l2_packet/l2_packet_freebsd.c -Copyright: 2003-2005, Jouni Malinen - 2005, Sam Leffler -License: BSD-3-clause - -Files: src/p2p/* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: src/pae/* -Copyright: 2013-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/rsn_supp/tdls.c -Copyright: 2010-2011, Atheros Communications -License: BSD-3-clause - -Files: src/tls/libtommath.c -Copyright: 2005-2007, Tom St Denis -License: public-domain - -Files: src/utils/browser* - src/utils/http* - src/utils/xml* -Copyright: 2012-2014, Qualcomm Atheros, Inc. -License: BSD-3-clause - -Files: src/utils/radiotap.c -Copyright: 2007, Andy Green - 2009, Johannes Berg -License: BSD-3-clause - -Files: src/utils/radiotap.h -Copyright: 2003-2004, David Young -License: BSD-3-clause - -Files: src/wps/http.h - src/wps/upnp_xml.* - src/wps/wps_upnp.* - src/wps/wps_upnp_event.c - src/wps/wps_upnp_i.h - src/wps/wps_upnp_ssdp.c - src/wps/wps_upnp_web.c -Copyright: 2000-2003, Intel Corporation - 2006-2007, Sony Corporation - 2008-2009, Atheros Communications - 2009, Jouni Malinen -License: BSD-3-clause - -Files: src/wps/httpread.* -Copyright: 2008, Ted Merrill, Atheros Communications -License: BSD-3-clause - -Files: src/wps/ndef.c -Copyright: 2009-2012, Masashi Honma -License: BSD-3-clause - -Files: src/wps/wps_validate.c -Copyright: 2010, Atheros Communications, Inc. -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_common.* - wpa_supplicant/dbus/dbus_common_i.h - wpa_supplicant/dbus/dbus_new.* - wpa_supplicant/dbus/dbus_new_handlers.* - wpa_supplicant/dbus/dbus_new_handlers_wps.c - wpa_supplicant/dbus/dbus_new_helpers.* - wpa_supplicant/dbus/dbus_new_introspect.c -Copyright: 2006, Dan Williams and Red Hat, Inc. - 2009-2010, Witold Sowa - 2009-2010, Jouni Malinen -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_dict_helpers.* - wpa_supplicant/dbus/dbus_old* -Copyright: 2006, Dan Williams and Red Hat, Inc. -License: BSD-3-clause - -Files: wpa_supplicant/dbus/dbus_new_handlers_p2p.* - wpa_supplicant/examples/p2p/* - wpa_supplicant/examples/dbus-listen-preq.py -Copyright: 2011-2012, Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/utils/log2pcap.py -Copyright: Johannes Berg , Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/wpa_gui-qt4/icons/ap.svg -Copyright: 2008, mystica -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/group.svg -Copyright: 2009, Andrew Fitzsimon / Anonymous -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/invitation.svg -Copyright: 2009, Jean Victor Balin -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/laptop.svg -Copyright: 2008, metalmarious -License: public-domain - -Files: wpa_supplicant/wpa_gui-qt4/icons/wpa_gui.svg -Copyright: 2008, Bernard Gray -License: BSD-3-clause or GPL-2 - -Files: wpa_supplicant/wpa_gui-qt4/peers.* - wpa_supplicant/wpa_gui-qt4/stringquery.* -Copyright: 2009-2010, Atheros Communications -License: BSD-3-clause - -Files: wpa_supplicant/wpa_gui-qt4/signalbar.* -Copyright: 2011, Kel Modderman -License: BSD-3-clause - -Files: wpa_supplicant/Android.mk - wpa_supplicant/wpa_supplicant_conf.* -Copyright: 2008-2010, The Android Open Source Project -License: BSD-3-clause - -Files: wpa_supplicant/ap.* -Copyright: 2003-2009, Jouni Malinen - 2009, Atheros Communications -License: BSD-3-clause - -Files: wpa_supplicant/autoscan* -Copyright: 2012, Intel Corporation -License: BSD-3-clause - -Files: wpa_supplicant/gas_query.* - wpa_supplicant/offchannel.* - wpa_supplicant/p2p_supplicant.* - wpa_supplicant/wifi_display.* -Copyright: 2009-2011, Atheros Communications - 2011-2014, Qualcomm Atheros - 2011-2014, Jouni Malinen -License: BSD-3-clause - -Files: wpa_supplicant/interworking.* - wpa_supplicant/wnm_sta.* - wpa_supplicant/wpas_kay.* -Copyright: 2011-2014, Qualcomm Atheros - 2011-2014, Jouni Malinen -License: BSD-3-clause - -Files: debian/* -Copyright: 2004-2006, Kyle McMartin - 2005-2009, Faidon Liambotis - 2006-2008, Reinhard Tartler - 2006-2012, Kel Modderman - 2010, Jan Dittberner - 2010-2014, Stefan Lippers-Hollmann -License: BSD-3-clause - -License: BSD-3-clause - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - . - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - . - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - . - 3. Neither the name(s) of the above-listed copyright holder(s) nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - . - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -License: GPL-2 - 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. - . - 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 - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - . - On Debian GNU/Linux systems, the complete text of the GNU General Public - License version 2 can be found in `/usr/share/common-licenses/GPL-2'. - . - Note that this distribution of hostapd comes with configuration options that - link it to the OpenSSL library. The OpenSSL license is GPL-incompatible, - therefore in this distribution only the BSD license applies. - -License: ISC - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - . - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -License: public-domain - Minimal code for RSA support from LibTomMath 0.41 - http://libtom.org/ - http://libtom.org/files/ltm-0.41.tar.bz2 - This library was released in public domain by Tom St Denis. - . - The combination in this file may not use all of the optimized algorithms - from LibTomMath and may be considerable slower than the LibTomMath with its - default settings. The main purpose of having this version here is to make it - easier to build bignum.c wrapper without having to install and build an - external library. - diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.README.Debian b/packages/extras-buildpkgs/hostapd/debian/hostapd.README.Debian deleted file mode 100644 index 3218a613f6ad..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.README.Debian +++ /dev/null @@ -1,38 +0,0 @@ -hostapd for Debian ------------------- - -This package provides two methods for managing hostapd process(es); an -initscript and an ifupdown hook. Both methods require creation of a -hostapd daemon configuration file (eg. /etc/hostapd/hostapd.conf) to -function correctly. - -An example hostapd.conf may be used as a template but _must_ be edited -to suit your local configuration. An example is located at: - /usr/share/doc/hostapd/examples/hostapd.conf.gz - -To use the example as a template: - # zcat /usr/share/doc/hostapd/examples/hostapd.conf.gz > \ - /etc/hostapd/hostapd.conf - # $EDITOR /etc/hostapd/hostapd.conf - -To use the initscript method of starting a hostapd daemon see -/etc/default/hostapd. - -To use the ifupdown method, the path to hostapd configuration file can -be specified in a network interfaces configuration stanza in -/etc/network/interfaces like so: - -iface eth1 inet static - hostapd /etc/hostapd/hostapd.conf - ... - -The hostapd process will be started in the pre-up phase of ifup, and be -terminated in the post-down phase of ifdown. - - -- Kel Modderman Tue, 27 Oct 2009 12:03:01 +1000 - -Please note: -* If you want to use hostapd with a Prism2/2.5/3 card in WPA mode, you'll need - STA firmware version >= 1.7.0. - - -- Faidon Liambotis , Mon, 10 Oct 2005 14:57:11 +0300 diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.default b/packages/extras-buildpkgs/hostapd/debian/hostapd.default deleted file mode 100644 index daeb75ebad44..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.default +++ /dev/null @@ -1,20 +0,0 @@ -# Defaults for hostapd initscript -# -# See /usr/share/doc/hostapd/README.Debian for information about alternative -# methods of managing hostapd. -# -# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration -# file and hostapd will be started during system boot. An example configuration -# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz -# -#DAEMON_CONF="/etc/hostapd.conf" - -# Additional daemon options to be appended to hostapd command:- -# -d show more debug messages (-dd for even more) -# -K include key data in debug messages -# -t include timestamps in some debug messages -# -# Note that -B (daemon mode) and -P (pidfile) options are automatically -# configured by the init.d script and must not be added to DAEMON_OPTS. -# -#DAEMON_OPTS="" diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.examples b/packages/extras-buildpkgs/hostapd/debian/hostapd.examples deleted file mode 100644 index a02eefc9fb7f..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.examples +++ /dev/null @@ -1,6 +0,0 @@ -hostapd/hostapd.accept -hostapd/hostapd.conf -hostapd/hostapd.deny -hostapd/hostapd.eap_user -hostapd/hostapd.radius_clients -hostapd/hostapd.wpa_psk diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.init b/packages/extras-buildpkgs/hostapd/debian/hostapd.init deleted file mode 100644 index 548840c6ae80..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.init +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: hostapd -# Required-Start: $remote_fs -# Required-Stop: $remote_fs -# Should-Start: $network -# Should-Stop: -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Advanced IEEE 802.11 management daemon -# Description: Userspace IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP -# Authenticator -### END INIT INFO - -PATH=/sbin:/bin:/usr/sbin:/usr/bin -DAEMON_SBIN=/usr/sbin/hostapd -DAEMON_DEFS=/etc/default/hostapd -DAEMON_CONF= -NAME=hostapd -DESC="advanced IEEE 802.11 management" -PIDFILE=/run/hostapd.pid - -[ -x "$DAEMON_SBIN" ] || exit 0 -[ -s "$DAEMON_DEFS" ] && . /etc/default/hostapd -[ -n "$DAEMON_CONF" ] || exit 0 - -DAEMON_OPTS="-B -P $PIDFILE $DAEMON_OPTS $DAEMON_CONF" - -. /lib/lsb/init-functions - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - start-stop-daemon --start --oknodo --quiet --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" -- $DAEMON_OPTS >/dev/null - log_end_msg "$?" - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - start-stop-daemon --stop --oknodo --quiet --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" - log_end_msg "$?" - ;; - reload) - log_daemon_msg "Reloading $DESC" "$NAME" - start-stop-daemon --stop --signal HUP --exec "$DAEMON_SBIN" \ - --pidfile "$PIDFILE" - log_end_msg "$?" - ;; - restart|force-reload) - $0 stop - sleep 8 - $0 start - ;; - status) - status_of_proc "$DAEMON_SBIN" "$NAME" - exit $? - ;; - *) - N=/etc/init.d/$NAME - echo "Usage: $N {start|stop|restart|force-reload|reload|status}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.install b/packages/extras-buildpkgs/hostapd/debian/hostapd.install deleted file mode 100644 index 5db606f8e989..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.install +++ /dev/null @@ -1,2 +0,0 @@ -hostapd/hostapd usr/sbin/ -hostapd/hostapd_cli usr/sbin/ diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.links b/packages/extras-buildpkgs/hostapd/debian/hostapd.links deleted file mode 100644 index 471b6f50ec71..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.links +++ /dev/null @@ -1,2 +0,0 @@ -etc/hostapd/ifupdown.sh /etc/network/if-pre-up.d/hostapd -etc/hostapd/ifupdown.sh /etc/network/if-post-down.d/hostapd diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.lintian-overrides b/packages/extras-buildpkgs/hostapd/debian/hostapd.lintian-overrides deleted file mode 100644 index ae372754a252..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.lintian-overrides +++ /dev/null @@ -1,3 +0,0 @@ -# We distribute the package under the terms of the BSD license due to the -# openssl issue, tell lintian to not complain: -hostapd binary: possible-gpl-code-linked-with-openssl diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.manpages b/packages/extras-buildpkgs/hostapd/debian/hostapd.manpages deleted file mode 100644 index ef6882fa0282..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.manpages +++ /dev/null @@ -1,2 +0,0 @@ -hostapd/hostapd.8 -hostapd/hostapd_cli.1 diff --git a/packages/extras-buildpkgs/hostapd/debian/hostapd.preinst b/packages/extras-buildpkgs/hostapd/debian/hostapd.preinst deleted file mode 100644 index af53de47620f..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/hostapd.preinst +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh - -set -e - -rm_conffile() { - local PKGNAME="$1" - local CONFFILE="$2" - - [ -e "$CONFFILE" ] || return 0 - - local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')" - local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PKGNAME | \ - sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")" - if [ "$md5sum" = "$old_md5sum" ]; then - echo "Removing obsolete conffile $CONFFILE ..." - rm -f "$CONFFILE" - fi -} - -case "$1" in - install|upgrade) - if dpkg --compare-versions "$2" le "1:0.6.9-3"; then - rm_conffile hostapd /etc/hostapd/hostapd.conf - fi - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd/debian/ifupdown/hostapd.sh b/packages/extras-buildpkgs/hostapd/debian/ifupdown/hostapd.sh deleted file mode 100644 index c5d235776a71..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/ifupdown/hostapd.sh +++ /dev/null @@ -1,146 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2006-2009 Debian hostapd maintainers -# Faidon Liambotis -# Kel Modderman -# -# 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. -# -# On Debian GNU/Linux systems, the text of the GPL license, -# version 2, can be found in /usr/share/common-licenses/GPL-2. - -# quit if we're called for lo -if [ "$IFACE" = lo ]; then - exit 0 -fi - -if [ -n "$IF_HOSTAPD" ]; then - HOSTAPD_CONF="$IF_HOSTAPD" -else - exit 0 -fi - -HOSTAPD_BIN="/usr/sbin/hostapd" -HOSTAPD_PNAME="hostapd" -HOSTAPD_PIDFILE="/run/hostapd.$IFACE.pid" -HOSTAPD_OMIT_PIDFILE="/run/sendsigs.omit.d/hostapd.$IFACE.pid" - -if [ ! -x "$HOSTAPD_BIN" ]; then - exit 0 -fi - -if [ "$VERBOSITY" = "1" ]; then - TO_NULL="/dev/stdout" -else - TO_NULL="/dev/null" -fi - -hostapd_msg () { - case "$1" in - verbose) - shift - echo "$HOSTAPD_PNAME: $@" > "$TO_NULL" - ;; - stderr) - shift - echo "$HOSTAPD_PNAME: $@" > /dev/stderr - ;; - *) - ;; - esac -} - -test_hostapd_pidfile () { - if [ -n "$1" ] && [ -f "$2" ]; then - if start-stop-daemon --stop --quiet --signal 0 \ - --exec "$1" --pidfile "$2"; then - return 0 - else - rm -f "$2" - return 1 - fi - else - return 1 - fi -} - -init_hostapd () { - HOSTAPD_OPTIONS="-B -P $HOSTAPD_PIDFILE $HOSTAPD_CONF" - HOSTAPD_MESSAGE="$HOSTAPD_BIN $HOSTAPD_OPTIONS" - - test_hostapd_pidfile "$HOSTAPD_BIN" "$HOSTAPD_PIDFILE" && return 0 - - hostapd_msg verbose "$HOSTAPD_MESSAGE" - start-stop-daemon --start --oknodo --quiet --exec "$HOSTAPD_BIN" \ - --pidfile "$HOSTAPD_PIDFILE" -- $HOSTAPD_OPTIONS > "$TO_NULL" - - if [ "$?" -ne 0 ]; then - return "$?" - fi - - HOSTAPD_PIDFILE_WAIT=0 - until [ -s "$HOSTAPD_PIDFILE" ]; do - if [ "$HOSTAPD_PIDFILE_WAIT" -ge 5 ]; then - hostapd_msg stderr \ - "timeout waiting for pid file creation" - return 1 - fi - - HOSTAPD_PIDFILE_WAIT=$(($HOSTAPD_PIDFILE_WAIT + 1)) - sleep 1 - done - cat "$HOSTAPD_PIDFILE" > "$HOSTAPD_OMIT_PIDFILE" - - return 0 -} - -kill_hostapd () { - HOSTAPD_MESSAGE="stopping $HOSTAPD_PNAME via pidfile: $HOSTAPD_PIDFILE" - - test_hostapd_pidfile "$HOSTAPD_BIN" "$HOSTAPD_PIDFILE" || return 0 - - hostapd_msg verbose "$HOSTAPD_MESSAGE" - start-stop-daemon --stop --oknodo --quiet --exec "$HOSTAPD_BIN" \ - --pidfile "$HOSTAPD_PIDFILE" > "$TO_NULL" - - [ "$HOSTAPD_OMIT_PIDFILE" ] && rm -f "$HOSTAPD_OMIT_PIDFILE" -} - -case "$MODE" in - start) - case "$PHASE" in - pre-up) - init_hostapd || exit 1 - ;; - *) - hostapd_msg stderr "unknown phase: \"$PHASE\"" - exit 1 - ;; - esac - ;; - stop) - case "$PHASE" in - post-down) - kill_hostapd - ;; - *) - hostapd_msg stderr "unknown phase: \"$PHASE\"" - exit 1 - ;; - esac - ;; - *) - hostapd_msg stderr "unknown mode: \"$MODE\"" - exit 1 - ;; -esac - -exit 0 diff --git a/packages/extras-buildpkgs/hostapd/debian/patches/0006-Extend-ieee80211_freq_to_channel_ext-to-cover-channe.patch b/packages/extras-buildpkgs/hostapd/debian/patches/0006-Extend-ieee80211_freq_to_channel_ext-to-cover-channe.patch deleted file mode 100644 index f2ea57b6d10b..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/patches/0006-Extend-ieee80211_freq_to_channel_ext-to-cover-channe.patch +++ /dev/null @@ -1,46 +0,0 @@ -From e4b48b7b0f0a9370032945a5a0423f0da2ef6616 Mon Sep 17 00:00:00 2001 -From: Avraham Stern -Date: Thu, 27 Oct 2016 15:18:29 +0300 -Subject: [PATCH] Extend ieee80211_freq_to_channel_ext() to cover channels - 52-64 - -Add frequency to channel conversion for the 5 GHz channels 52-64. - -Signed-off-by: Avraham Stern ---- - src/common/ieee802_11_common.c | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/src/common/ieee802_11_common.c b/src/common/ieee802_11_common.c -index 603b961..26e08b7 100644 ---- a/src/common/ieee802_11_common.c -+++ b/src/common/ieee802_11_common.c -@@ -823,6 +823,25 @@ enum hostapd_hw_mode ieee80211_freq_to_channel_ext(unsigned int freq, - return HOSTAPD_MODE_IEEE80211A; - } - -+ /* 5 GHz, channels 52..64 */ -+ if (freq >= 5260 && freq <= 5320) { -+ if ((freq - 5000) % 5) -+ return NUM_HOSTAPD_MODES; -+ -+ if (vht_opclass) -+ *op_class = vht_opclass; -+ else if (sec_channel == 1) -+ *op_class = 119; -+ else if (sec_channel == -1) -+ *op_class = 120; -+ else -+ *op_class = 118; -+ -+ *channel = (freq - 5000) / 5; -+ -+ return HOSTAPD_MODE_IEEE80211A; -+ } -+ - /* 5 GHz, channels 149..169 */ - if (freq >= 5745 && freq <= 5845) { - if ((freq - 5000) % 5) --- -2.9.3 - diff --git a/packages/extras-buildpkgs/hostapd/debian/patches/300-noscan.patch b/packages/extras-buildpkgs/hostapd/debian/patches/300-noscan.patch deleted file mode 100644 index da4ae610beae..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/patches/300-noscan.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- a/hostapd/config_file.c -+++ b/hostapd/config_file.c -@@ -3411,6 +3411,10 @@ static int hostapd_config_fill(struct hostapd_config *conf, - bss->ieee80211w = 1; - #endif /* CONFIG_OCV */ - #ifdef CONFIG_IEEE80211N -+ } else if (os_strcmp(buf, "noscan") == 0) { -+ conf->noscan = atoi(pos); -+ } else if (os_strcmp(buf, "ht_coex") == 0) { -+ conf->no_ht_coex = !atoi(pos); - } else if (os_strcmp(buf, "ieee80211n") == 0) { - conf->ieee80211n = atoi(pos); - } else if (os_strcmp(buf, "ht_capab") == 0) { ---- a/src/ap/ap_config.h -+++ b/src/ap/ap_config.h -@@ -932,6 +932,8 @@ struct hostapd_config { - - int ht_op_mode_fixed; - u16 ht_capab; -+ int noscan; -+ int no_ht_coex; - int ieee80211n; - int secondary_channel; - int no_pri_sec_switch; ---- a/src/ap/hw_features.c -+++ b/src/ap/hw_features.c -@@ -477,7 +477,8 @@ static int ieee80211n_check_40mhz(struct - int ret; - - /* Check that HT40 is used and PRI / SEC switch is allowed */ -- if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch) -+ if (!iface->conf->secondary_channel || iface->conf->no_pri_sec_switch || -+ iface->conf->noscan) - return 0; - - hostapd_set_state(iface, HAPD_IFACE_HT_SCAN); ---- a/src/ap/ieee802_11_ht.c -+++ b/src/ap/ieee802_11_ht.c -@@ -252,6 +252,9 @@ void hostapd_2040_coex_action(struct hos - return; - } - -+ if (iface->conf->noscan || iface->conf->no_ht_coex) -+ return; -+ - if (len < IEEE80211_HDRLEN + 2 + sizeof(*bc_ie)) { - wpa_printf(MSG_DEBUG, - "Ignore too short 20/40 BSS Coexistence Management frame"); -@@ -412,6 +415,9 @@ void ht40_intolerant_add(struct hostapd_ - if (iface->current_mode->mode != HOSTAPD_MODE_IEEE80211G) - return; - -+ if (iface->conf->noscan || iface->conf->no_ht_coex) -+ return; -+ - wpa_printf(MSG_INFO, "HT: Forty MHz Intolerant is set by STA " MACSTR - " in Association Request", MAC2STR(sta->addr)); - diff --git a/packages/extras-buildpkgs/hostapd/debian/patches/series b/packages/extras-buildpkgs/hostapd/debian/patches/series deleted file mode 100644 index aeaf4f5bac13..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/patches/series +++ /dev/null @@ -1,3 +0,0 @@ -session-ticket.patch -300-noscan.patch -0006-Extend-ieee80211_freq_to_channel_ext-to-cover-channe.patch diff --git a/packages/extras-buildpkgs/hostapd/debian/patches/session-ticket.patch b/packages/extras-buildpkgs/hostapd/debian/patches/session-ticket.patch deleted file mode 100644 index 35ecbcb61e03..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/patches/session-ticket.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c -index 23ac64b48..cc8d159e0 100644 ---- a/src/crypto/tls_openssl.c -+++ b/src/crypto/tls_openssl.c -@@ -1577,6 +1577,7 @@ struct tls_connection * tls_connection_init(void *ssl_ctx) - #ifdef SSL_OP_NO_COMPRESSION - options |= SSL_OP_NO_COMPRESSION; - #endif /* SSL_OP_NO_COMPRESSION */ -+ options |= SSL_OP_NO_TICKET; - SSL_set_options(conn->ssl, options); - - conn->ssl_in = BIO_new(BIO_s_mem()); diff --git a/packages/extras-buildpkgs/hostapd/debian/rules b/packages/extras-buildpkgs/hostapd/debian/rules deleted file mode 100644 index 6d21b1a6b247..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/rules +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/make -f - -# without "-relro,-pie" building on Stretch breaks -export DEB_BUILD_MAINT_OPTIONS=hardening=+all - -include /usr/share/dpkg/buildflags.mk - -# The build system doesn't use CPPFLAGS, pass them to CFLAGS/CXXFLAGS to -# enable the missing (hardening) flags -DEB_CFLAGS_MAINT_APPEND = -MMD -Wall $(shell dpkg-buildflags --get CPPFLAGS) -DEB_CXXFLAGS_MAINT_APPEND = $(shell dpkg-buildflags --get CPPFLAGS) -DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed -export DEB_CFLAGS_MAINT_APPEND DEB_CXXFLAGS_MAINT_APPEND DEB_LDFLAGS_MAINT_APPEND - -UCFLAGS = -MMD -Wall -g -Os -fPIC - -BINDIR = /sbin -#V = 1 - -DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) - CC=$(DEB_HOST_GNU_TYPE)-gcc -endif - -export CC BINDIR - -VERSION := $(shell dpkg-parsechangelog | sed -ne 's,^Version: *\([0-9]*:\)\?\(.*\)$$,\2,p') - -override_dh_auto_build: - # build hostapd - cp -v --remove-destination debian/config/config_default hostapd/.config - dh_auto_build --sourcedirectory=hostapd \ - --buildsystem=makefile \ - --parallel - dh_auto_clean --sourcedirectory=src --buildsystem=makefile - -override_dh_auto_clean: - dh_auto_clean --sourcedirectory=hostapd \ - --buildsystem=makefile - -override_dh_auto_install: - $(info Skip dh_auto_install ...) - -override_dh_clean: - dh_clean hostapd/.config - -override_dh_install: - dh_install - install --mode=755 -D debian/ifupdown/hostapd.sh \ - debian/hostapd/etc/hostapd/ifupdown.sh - install --mode=644 -D debian/config/hostapd.conf \ - debian/hostapd/etc/hostapd.conf - -override_dh_installchangelogs: - dh_installchangelogs --package=hostapd hostapd/ChangeLog - -override_dh_builddeb: - dh_builddeb -- -Zxz -z6 -### end dh overrides - -%: - dh ${@} --parallel - diff --git a/packages/extras-buildpkgs/hostapd/debian/source/format b/packages/extras-buildpkgs/hostapd/debian/source/format deleted file mode 100644 index 163aaf8d82b6..000000000000 --- a/packages/extras-buildpkgs/hostapd/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/packages/extras-buildpkgs/htop/debian/changelog b/packages/extras-buildpkgs/htop/debian/changelog deleted file mode 100644 index 54864b91e377..000000000000 --- a/packages/extras-buildpkgs/htop/debian/changelog +++ /dev/null @@ -1,532 +0,0 @@ -htop (2.2.0-1) unstable; urgency=medium - - * New upstream release 2.2.0 - * Update uscan to v4 and add gpg verification of upstream tarball - * Drop patches that were merged upstream - * Remove OpenVZ patch that wasn't merged upstream - (for now, upstream issue 464) - * Add upstream issue 780 patch - * Fix compile issue with regenerated header files (patch) - * Update policy to 4.1.4 (no changes required) - - -- Daniel Lange Thu, 26 Apr 2018 21:10:00 +0200 - -htop (2.1.0-3) unstable; urgency=medium - - * Fix case of dyscalculia in changelog entry for 2.1.0-1 - * Update Daniel Lange's email address - * Add debian/clean to remove autogenerated headers - * Refresh debian/patches/601-openvz-new-ctid-vpid.patch - * Fix issue with small terminals (Closes: #889693) - * Fix preservation of LDFLAGS value during configure script - * Handle unexpected values for character passed to isalnum - - -- Graham Inggs Sat, 17 Feb 2018 18:27:46 +0000 - -htop (2.1.0-2) unstable; urgency=medium - - * Add missing build-dependency on pkg-config - - -- Graham Inggs Mon, 05 Feb 2018 16:59:56 +0000 - -htop (2.1.0-1) unstable; urgency=medium - - [ Graham Inggs ] - * New upstream release 2.1.0 (Closes: #889634) - * Refresh debian/patches/601-openvz-new-ctid-vpid.patch - * Update Vcs-* URIs for move to salsa.debian.org - * Turn debhelper up to 11 - * Update debian/copyright - * Remove trailing whitespace from debian/changelog - * Use secure URI in Homepage and debian/watch - * Bump Standards-Version to 4.1.3, no changes - - [ Helmut Grohne ] - * Fix FTCBFS: Annotate python-minimal build dependency with :native. - (Closes: #864672) - - -- Graham Inggs Mon, 05 Feb 2018 13:22:25 +0000 - -htop (2.0.2-1) unstable; urgency=medium - - * Update to upstream version 2.0.2 - - Use SOURCE_DATE_EPOCH instead of current year in copyright message - to make build reproducible. (Closes: #822963) - - Fix build to detect the Hurd as a Linux platform. (Closes: #821747) - - Fix crash when setting CPU affinity and -fPIE. (LP: #1589549) - * Bump Standards to 3.9.8 (no changes required) - - -- Daniel Lange Mon, 25 Jul 2016 19:46:17 +0200 - -htop (2.0.1-1) unstable; urgency=medium - - * New upstream release 2.0.1. (Closes: #814401, #783893, #774930) - * Clean up patches from 1.0.3 -> 2.0.1 - * Update compat -> 9, rules -> debhelper/9 - * Update debian/copyright to copyright-format/1.0 (Closes: #749850) - * Add lsof as suggested (Closes: #817918) - * Change maintainership jackyf -> DLange, jackyf and ginggs will - co-maintain. Jackyf: Thank you very much for 8 years of htop - maintenance! - - -- Daniel Lange Thu, 14 Apr 2016 10:25:45 +0200 - -htop (1.0.3-1) unstable; urgency=low - - * New upstream release. - * debian/watch: - - Updated to use new download location (http://hisham.hm/htop/releases). - * debian/patches: - - 600-openvz-veid-on-kernels-gt-2.6.18.patch: refreshed. - - 610-io-priority-only-on-linux.patch: ported to new upstream version. - - 700-ltrace-support.patch: ported to new upstream version. - * debian/control: - - Bumped Standards-Version to 3.9.5, no changes needed. - - Updated Homepage to 'http://hisham.hm/htop/'. - - -- Eugene V. Lyubimkin Thu, 01 May 2014 13:16:56 +0300 - -htop (1.0.2-3) unstable; urgency=low - - * debian/patches: - - New patch 610-io-priority-only-on-linux.patch which should fix building - on non-Linux kernels. - - -- Eugene V. Lyubimkin Sat, 05 Oct 2013 13:17:13 +0300 - -htop (1.0.2-2) unstable; urgency=low - - * Upload to unstable. - - -- Eugene V. Lyubimkin Sat, 29 Jun 2013 22:25:41 +0300 - -htop (1.0.2-1) experimental; urgency=low - - * New upstream release. - - Ability to update process names on refreshes. (Closes: #475254) - - More precise value of CPU%. (Closes: #668410) - - Columns line up properly even when for more-than-5-digits process ids. - (Closes: #687280) - * debian/control: - - Bumped Standards-Version to 3.9.4, no changes needed. - * debian/patches: - - Deleted 200-dont-delete-htoprc-if-symlink.patch, applied upstream. - - 700-ltrace-support.patch: ported to new upstream version. - - -- Eugene V. Lyubimkin Sat, 01 Dec 2012 11:55:43 +0200 - -htop (1.0.1-4) unstable; urgency=low - - * debian/rules: - - Retrieve and pass also CPPFLAGS and LDFLAGS. Patch by Simon Ruderich. - (Closes: #685670) - - -- Eugene V. Lyubimkin Sat, 01 Sep 2012 14:29:59 +0300 - -htop (1.0.1-3) unstable; urgency=low - - * debian/rules: - - Retrieve CFLAGS from dpkg-buildflags as dpkg-buildpackage stopped to - export them. Thanks to Felix Geyer and Cyril Brulebois. - (Closes: #685670) - * debian/control: - - Build-depend on dpkg (>= 1.16.1) for using dpkg-buildflags. - - -- Eugene V. Lyubimkin Mon, 27 Aug 2012 19:51:54 +0300 - -htop (1.0.1-2) unstable; urgency=low - - * debian/patches: - - New patch 200-dont-delete-htoprc-if-symlink.patch from upstream VCS. - (Closes: #662087) - - -- Eugene V. Lyubimkin Mon, 30 Jul 2012 19:12:16 +0300 - -htop (1.0.1-1) unstable; urgency=low - - * New upstream release. - - Don't crash when trying to kill already finished process. - (Closes: #652563, 657675) - - -- Eugene V. Lyubimkin Sun, 19 Feb 2012 10:24:46 +0200 - -htop (1.0-1) unstable; urgency=low - - * New upstream release. - - Don't die after a terminal resize. (Closes: #464852) - - Don't abort when a number of processes are removed from the list at - once. (Closes: #541417) - - Fixed the inconsistency in the documentation about "[" and "]" keys. - (Closes: #610329) - * debian/patches: - - 100-fix-cgroups-crash.patch: deleted, upstream fixed it in a different - way. - - 600-openvz-veid-on-kernels-gt-2.6.18.patch: ported to new upstream - version. - - 700-ltrace-support.patch: ported to new upstream version. - - 700-ltrace-support.patch: ltrace hotkey is 'L', not 'l'. - * debian/control: - - Add libhwloc-dev to Build-Depends on non-linux architectures. - - Add libncursesw5-dev to Build-Depends, enabling unicode support. - * debian/rules: - - Enable native affinity functions on linux architectures and use hwloc - library everywhere else. - * debian/copyright: - - Updated upstream copyright years. - - -- Eugene V. Lyubimkin Sat, 26 Nov 2011 15:58:33 +0200 - -htop (0.9-4) unstable; urgency=low - - * debian/rules: - - Added 'build-arch' and 'build-indep' targets as suggested by Lintian. - * debian/patches: - - New patch 100-fix-cgroups-crash.patch fixing a crash when htop receives - an unexpected input from a cgroups file. (Closes: #628040) - - -- Eugene V. Lyubimkin Wed, 21 Sep 2011 21:17:17 +0300 - -htop (0.9-3) unstable; urgency=low - - * debian/rules: - - Enable cgroups support. (Closes: #627545) - * debian/README.source: - - added with standard instructions how to use quilt. - * debian/control: - - Fixed spelling as suggested by lintian. - - Bumped Standards-Version to 3.9.2, no changes needed. - - -- Eugene V. Lyubimkin Sun, 22 May 2011 12:05:09 +0300 - -htop (0.9-2) unstable; urgency=low - - * Upload to unstable. - - -- Eugene V. Lyubimkin Sun, 13 Feb 2011 10:41:53 +0200 - -htop (0.9-1) experimental; urgency=low - - * New upstream release. (Closes: #610229) - - Fixed by-process IO stats in some cases. (Closes: #526070) - - Do not display nan% as CPU load sometimes. (Closes: #590535) - * debian/patches: - - 600-openvz-veid-on-kernels-gt-2.6.18.patch: ported to new upstream - version. - - 700-ltrace-support.patch: refreshed. - * debian/control: - - Bumped Standards-Version to 3.9.1, no changes needed. - - Updated my mail address. - - Removed 'DM-Upload-Allowed' flag as not needed anymore. - * debian/copyright: - - Updated author copyright years. - * debian/watch: - - Removed 'uupdate' option, not needed for my workflow. - - -- Eugene V. Lyubimkin Sun, 16 Jan 2011 19:36:07 +0200 - -htop (0.8.3-1) unstable; urgency=low - - * New upstream release: - - 0.8.2 (LP: #385862): - - Integrated lsof output. (Closes: #426003) - - Handling of absend CPU should work now. (Closes: #494057, #476273) - - Fixed a crash when sorting by USER column. (Closes: #526362) - - Fixed display of gigabyte-sized values. - - Fixed incremental search. (Closes: #521376) - - Option to display hostname in the meters area. - - 0.8.3 - * debian/control: - - Suggested strace and ltrace. (Closes: #530449) - - Bumped Standards-Version to 3.8.2, no changes needed. - * debian/patches: - - 700-ltrace-support.patch: modified to not contradict with new upstream - release, the hotkey for ltrace output changed from 'l' to 'L'. - * debian/README: - - Added with note about ltrace support. - - -- Eugene V. Lyubimkin Mon, 29 Jun 2009 13:08:39 +0300 - -htop (0.8.1+svn149-2) unstable; urgency=low - - * debian/rules: - - Build with VServer support. (Closes: #522905) - - -- Eugene V. Lyubimkin Fri, 17 Apr 2009 21:54:45 +0300 - -htop (0.8.1+svn149-1) unstable; urgency=low - - * New upstream development snapshot: - - Allow building without PLPA support. (Closes: #521861) - * debian/patches: - - 010-make-desktop-file-valid.patch: deleted, merged upstream. - - 100-upstream-sort-by-processor-and-session.patch: deleted, merged - upstream. - - 110-upstream-fix-page-size-on-BSD.patch: deleted, merged upstream. - - 120-upstream-explain-cpu-bars-in-monochrome-mode.patch: deleted, merged - upstream. - - 200-filter-non-printable-characters.patch: deleted, upstream has own - version of this patch. - - 610-rename-veid-to-ctid.patch: deleted, merged upstream. - - 600-openvz-veid-on-kernels-gt-2.6.18.patch: refreshed. - - 800-tree-view-without-userland-threads.patch: deleted, merged upstream. - - 700-ltrace-support.patch: refreshed, added the description. - * debian/rules: - - Deal more robustly with config.{sub,guess} files, thanks to Roger Leigh. - - -- Eugene V. Lyubimkin Sun, 05 Apr 2009 11:51:34 +0300 - -htop (0.8.1-6) unstable; urgency=low - - * debian/patches: - - debian/patches/110-upstream-fix-page-size-on-BSD.patch was accidentally - incorrectly applied, causing zeroes in memory columns. Fixed. - * debian/rules: - - File Process.c somewhy is not regenerated during normal build process. - Regenerate it by hand. - - -- Eugene V. Lyubimkin Sun, 29 Mar 2009 22:37:49 +0300 - -htop (0.8.1-5) unstable; urgency=low - - * debian/patches: - - New 100-upstream-sort-by-processor-and-session.patch, cherry-picked from - upstream svn: allow sorting by 'processor' and 'session' columns. - (Closes: #501317) - - New debian/patches/110-upstream-fix-page-size-on-BSD.patch, - cherry-picked from upstream svn: fix page size on BSD systems. - (Closes: #485277) - - New debian/patches/120-upstream-explain-cpu-bars-in-monochrome-mode.patch, - cherry-picked from upstream svn: document meanings of chars in CPU bars - in monochrome mode. (Closes: #477222) - - 600-openvz-veid-on-kernels-gt-2.6.18.patch: added a description. - - 610-rename-veid-to-ctid.patch: added a description. - - 800-tree-view-without-userland-threads.patch: added a description. - * debian/control: - - Bump 'Standards-Version' to 3.8.1, no changes needed. - - -- Eugene V. Lyubimkin Sun, 29 Mar 2009 19:49:53 +0300 - -htop (0.8.1-4) unstable; urgency=low - - * debian/patches: - - New 600-openvz-veid-on-kernels-gt-2.6.18.patch: fix determining veid on - openvz-enabled kernels greater than 2.6.18. Patch by - Thorsten Schifferdecker . (Closes: #516846) - - New 610-rename-veid-to-ctid.patch: openvz: renames 'veid' -> 'ctid' since - it's now a preferred term. Patch by - Thorsten Schifferdecker . (Closes: #516847) - - New 700-ltrace-support.patch: add ltrace(1) support in addition to strace - support. Patch by . - - New 800-tree-view-with-userland-threads.patch: patch to fix tree view when - userland threads are hidden, taken from Ubuntu. - - -- Eugene V. Lyubimkin Mon, 02 Mar 2009 23:17:04 +0200 - -htop (0.8.1-3) unstable; urgency=low - - * debian/rules: - - Don't ship empty directories in the package. - - -- Eugene V. Lyubimkin Sun, 15 Feb 2009 13:56:41 +0200 - -htop (0.8.1-2) experimental; urgency=low - - * Disabled unicode support, it has both build and work problems yet. - (Closes: #507423) - * debian/patches: - - New patch 200-filter-non-printable-characters.patch to filter - non-printable characters in process names. Thanks to Josh Triplett - and Andrew O. Shadoura. (Closes: #504144) - - 010-make-desktop-file-valid.patch: comment added. - * debian/control: - - Added '${misc:Depends}' to 'Depends', fixes lintian warning. - - Added 'python-minimal' to 'Build-Depends' for MakeHeader.py. - - -- Eugene V. Lyubimkin Sat, 06 Dec 2008 11:03:18 +0200 - -htop (0.8.1-1) experimental; urgency=low - - * New maintainer. Thanks for work, Bartosz Fenski! - * New upstream release: - - Changes in 0.8.1 (Closes: #499928): - - Linux-VServer support. - - Battery meter (Closes: #484771). - - Fixed collection of IO stats in multithreaded processes. - - Removed assertion that fails on hardened kernels. - - Changes in 0.8.0 (Closes: #494646, #486213): - - Ability to change sort column with the mouse by - clicking column titles. - - Added support for Linux per-process IO statistics. - - Added Unicode support. - - Fixed display of CPU count for threaded processes. - - Avoid crashing when using many meters. - - Other fixes: - - Significantly increased line length limit (to 65535). - (Closes: #470280) - * debian/control: - - Bumped 'Standards-Version' to 3.8.0, no changes needed. - - Changed Build-Depends on debhelper to (>= 7) and 'libncurses5-dev' -> - 'libncursesw5-dev'. Added dependency on quilt (>= 0.40). - * debian/rules: - - Some cleanup, used debhelper v7 commands. - - Pass '--enable-taskstats' and '--enable-unicode' options to configure. - - Pass '--enable-openvz' to configure. (Closes: #480541) - * debian/patches: - - New 010-make-desktop-file-valid.patch: makes desktop file valid. - Thanks to Nathan Handler (Closes: #488912) - * debian/copyright: - - Fixed path for GPLv2 license. - * debian/menu: - - Set proper section, removed hint (now useless). - - -- Eugene V. Lyubimkin Sun, 16 Nov 2008 20:36:18 +0200 - -htop (0.7-1) unstable; urgency=low - - * New upstrem version. (Closes: #452634) - * Move URL to homepage header. - * Bumped Standards-Version (no changes needed). - * Fixed watch file. (Closes: #449631) - - -- Bartosz Fenski Sat, 26 Apr 2008 13:57:14 +0200 - -htop (0.6.6+svn20070915-1) unstable; urgency=low - - * New upstream snapshot with dedication to Nico Golde - (Closes: #410398, #410391, #427127) - - fixes problems with trailing newline in confi (Closes: #420856) - - fixes segfault on missing command line args (Closes: #435651) - - fixes FTBS with GCC 4.3 branch (Closes: #416852) - - -- Bartosz Fenski Sat, 15 Sep 2007 14:37:41 +0200 - -htop (0.6.3-1) unstable; urgency=low - - * New upstream version. - - allows to rekill tagged group of processes (Closes: #375219) - * Bumped Standards-Version to 3.7.2 (no changes needed). - - -- Bartosz Fenski Mon, 14 Aug 2006 13:03:15 +0200 - -htop (0.6.2-1) unstable; urgency=low - - * New upstream version. - - doesn't segfault running as root. (Closes: #354258) - - -- Bartosz Fenski Tue, 4 Jul 2006 07:53:58 +0200 - -htop (0.6-1) unstable; urgency=low - - * New upstream version. - - doesn't show pipe when some value is equal to zero. (Closes: #325058) - - allows renicing group of processes. (Closes: #317391) - - -- Bartosz Fenski Thu, 29 Dec 2005 13:22:07 +0100 - -htop (0.5.4-1) unstable; urgency=low - - * New upstream version. - - does not leave cruft on console on exit. (Closes: #334657) - - -- Bartosz Fenski Fri, 4 Nov 2005 17:25:27 +0100 - -htop (0.5.3-1) unstable; urgency=low - - * New upstream version. - * Bumped Standards-Version to 3.6.2 (no changes needed). - - -- Bartosz Fenski Tue, 20 Sep 2005 10:49:52 +0200 - -htop (0.5.2-1) unstable; urgency=low - - * New upstream bugfix release. - - -- Bartosz Fenski Wed, 8 Jun 2005 20:02:19 +0200 - -htop (0.5.1-1) unstable; urgency=low - - * New upstream version. - - correctly honors limits for nice values (Closes: #291502) - - -- Bartosz Fenski Sun, 10 Apr 2005 17:49:12 +0200 - -htop (0.5-2) unstable; urgency=low - - * watch file changed a little to handle weird upstream versions - * s/fenio@o2.pl/fenio@debian.org/ - - -- Bartosz Fenski Thu, 7 Apr 2005 12:00:11 +0200 - -htop (0.5-1) unstable; urgency=low - - * New upstream version. - - fixes problem with wrongly displayed CPU bar (Closes: #283212) - - -- Bartosz Fenski Sat, 27 Nov 2004 10:10:17 +0100 - -htop (0.4.1-3) unstable; urgency=low - - * Fixed handling of non-alphanumeric chars during search. - Thanks to Gian Piero Carrubba for noticing it (Closes: #269060) - * Added description of recursive search of processes to the manpage. - Should be now clear how does it work so (Closes: #269061) - - -- Bartosz Fenski Tue, 31 Aug 2004 21:40:15 +0200 - -htop (0.4.1-2) unstable; urgency=low - - * Included updated manpage. (Closes: #269064) - Thanks to Gian Piero Carrubba for provided patch. - - -- Bartosz Fenski Tue, 31 Aug 2004 21:08:13 +0200 - -htop (0.4.1-1) unstable; urgency=low - - * New upstream version. - - fixes FTBFS on some archs (Closes: #268373) - - -- Bartosz Fenski Fri, 27 Aug 2004 14:01:11 +0200 - -htop (0.4-1) unstable; urgency=low - - * New upstream version. - * Added debian/menu file. - - -- Bartosz Fenski Sun, 22 Aug 2004 13:09:12 +0200 - -htop (0.3.3-1) unstable; urgency=low - - * New upstream version. - * Added debian/watch file. - - -- Bartosz Fenski Sun, 20 Jun 2004 10:33:13 +0200 - -htop (0.3.1-1) unstable; urgency=low - - * New upstream version. - * Hopefully first official Debian release. (Closes: #248939) - Thanks for sponsoring goes to Cedric Delfosse. - * debian/rules: - - removed dh_installman, cause it's now included by upstream. - - -- Bartosz Fenski Mon, 31 May 2004 05:37:15 +0200 - -htop (0.3-1) unstable; urgency=low - - * New upstream version. - - -- Bartosz Fenski Thu, 20 May 2004 01:15:05 +0200 - -htop (0.2.1-1) unstable; urgency=low - - * New upstream version. - * Some updates to manual page. - - -- Bartosz Fenski Sat, 15 May 2004 10:15:03 +0200 - -htop (0.2-1) unstable; urgency=low - - * Initial Release. - - -- Bartosz Fenski Fri, 14 May 2004 10:37:04 +0200 - diff --git a/packages/extras-buildpkgs/htop/debian/clean b/packages/extras-buildpkgs/htop/debian/clean deleted file mode 100644 index 29ab033a0dac..000000000000 --- a/packages/extras-buildpkgs/htop/debian/clean +++ /dev/null @@ -1,2 +0,0 @@ -*.h -*/*.h diff --git a/packages/extras-buildpkgs/htop/debian/compat b/packages/extras-buildpkgs/htop/debian/compat deleted file mode 100644 index b4de39476753..000000000000 --- a/packages/extras-buildpkgs/htop/debian/compat +++ /dev/null @@ -1 +0,0 @@ -11 diff --git a/packages/extras-buildpkgs/htop/debian/control b/packages/extras-buildpkgs/htop/debian/control deleted file mode 100644 index 0d45ffddd59b..000000000000 --- a/packages/extras-buildpkgs/htop/debian/control +++ /dev/null @@ -1,29 +0,0 @@ -Source: htop -Section: utils -Priority: optional -Maintainer: Daniel Lange -Uploaders: Eugene V. Lyubimkin , - Graham Inggs -Build-Depends: debhelper, - dpkg-dev (>= 1.16.1.1), - libhwloc-dev [!linux-any], - libkvm-dev [kfreebsd-any], - libncurses5-dev, - libncursesw5-dev, - pkg-config -Standards-Version: 4.1.4 -Homepage: https://hisham.hm/htop/ -Vcs-Browser: https://salsa.debian.org/debian/htop -Vcs-Git: https://salsa.debian.org/debian/htop.git - -Package: htop -Architecture: any -Depends: ${misc:Depends}, ${shlibs:Depends} -Suggests: lsof, strace -Description: interactive processes viewer - Htop is an ncursed-based process viewer similar to top, but it - allows one to scroll the list vertically and horizontally to see - all processes and their full command lines. - . - Tasks related to processes (killing, renicing) can be done without - entering their PIDs. diff --git a/packages/extras-buildpkgs/htop/debian/copyright b/packages/extras-buildpkgs/htop/debian/copyright deleted file mode 100644 index bc6662ee6cdd..000000000000 --- a/packages/extras-buildpkgs/htop/debian/copyright +++ /dev/null @@ -1,34 +0,0 @@ -Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: htop -Upstream-Contact: Hisham Muhammad -Source: http://hisham.hm/htop/releases/ - -Files: * -License: GPL-2+ -Copyright: 2004-2018 Hisham Muhammad - -Files: debian/* -License: GPL-2+ -Copyright: 2016 Daniel Lange - 2018 Graham Inggs - 2008-2016 Eugene V. Lyubimkin - 2004-2008 Bartosz Fenski - -License: GPL-2+ - 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 along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - . - On Debian systems, the full text of the GNU General Public - License version 2 can be found in the file - `/usr/share/common-licenses/GPL-2'. diff --git a/packages/extras-buildpkgs/htop/debian/docs b/packages/extras-buildpkgs/htop/debian/docs deleted file mode 100644 index 6f12db50845a..000000000000 --- a/packages/extras-buildpkgs/htop/debian/docs +++ /dev/null @@ -1,2 +0,0 @@ -AUTHORS -README diff --git a/packages/extras-buildpkgs/htop/debian/install b/packages/extras-buildpkgs/htop/debian/install deleted file mode 100644 index f502e6a8e8bb..000000000000 --- a/packages/extras-buildpkgs/htop/debian/install +++ /dev/null @@ -1 +0,0 @@ -htop usr/bin diff --git a/packages/extras-buildpkgs/htop/debian/patches/780-fix-option-string.patch b/packages/extras-buildpkgs/htop/debian/patches/780-fix-option-string.patch deleted file mode 100644 index a8273890dea6..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/780-fix-option-string.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 731acc8bced18c90fbe0e18381c32f007f71e0d9 Mon Sep 17 00:00:00 2001 -From: Christian Hesse -Date: Tue, 10 Apr 2018 16:21:46 +0200 -Subject: [PATCH] fix option string - -This broke with commit db05ba61065f64b59d0014518be0786b5439e54c. ---- - htop.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/htop.c b/htop.c -index 6db81dd7..678a3b8a 100644 ---- a/htop.c -+++ b/htop.c -@@ -93,7 +93,7 @@ static CommandLineSettings parseArguments(int argc, char** argv) { - - int opt, opti=0; - /* Parse arguments */ -- while ((opt = getopt_long(argc, argv, "hvCst::d:u:p:i", long_opts, &opti))) { -+ while ((opt = getopt_long(argc, argv, "hvCs:td:u:p:i", long_opts, &opti))) { - if (opt == EOF) break; - switch (opt) { - case 'h': diff --git a/packages/extras-buildpkgs/htop/debian/patches/avafinger-cpu-monitor.patch b/packages/extras-buildpkgs/htop/debian/patches/avafinger-cpu-monitor.patch deleted file mode 100644 index 04970f56c90f..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/avafinger-cpu-monitor.patch +++ /dev/null @@ -1,3577 +0,0 @@ -This patch file contains code from @avafinger's htop_2.2.2 repository. - -It is the result of diff between: -https://github.com/avafinger/htop_2.2.2/commit/dc21e5f6 -and: -https://github.com/hishamhm/htop/tree/2.2.0 - ---- -diff --git a/Armbian_Meter.c b/Armbian_Meter.c -new file mode 100644 -index 0000000..183032b ---- /dev/null -+++ b/Armbian_Meter.c -@@ -0,0 +1,55 @@ -+/* -+htop - Armbianversion_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "Armbian_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Armbianversion_Meter_attributes[] = { -+ ARMBIAN_VERSION -+}; -+ -+static void Armbianversion_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char version[256]; -+ static unsigned int use_cached = 0; -+ -+ if ((use_cached++ % 10)) { -+ xSnprintf(buffer, len, "%s", version); -+ return; -+ } -+ -+ ret = ReadKeyValue( "/etc/armbian-release", "VERSION=", version); -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", version); -+ } else { -+ xSnprintf(buffer, len, "%s", "unknown"); -+ } -+} -+ -+MeterClass Armbianversion_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Armbianversion_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Armbianversion_Meter_attributes, -+ .name = "Armbianversion", -+ .uiName = "Armbian version", -+ .caption = "Armbian : ", -+}; -+ -+ -diff --git a/Armbian_Meter.h b/Armbian_Meter.h -new file mode 100644 -index 0000000..146a1ee ---- /dev/null -+++ b/Armbian_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Armbian_Meter -+#define HEADER_Armbian_Meter -+/* -+htop - Armbianversion_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Armbianversion_Meter_attributes[]; -+ -+extern MeterClass Armbianversion_Meter_class; -+ -+ -+#endif -diff --git a/AvailableMetersPanel.c b/AvailableMetersPanel.c -index ddb5536..01ee3cd 100644 ---- a/AvailableMetersPanel.c -+++ b/AvailableMetersPanel.c -@@ -9,6 +9,8 @@ in the source distribution for its full text. - #include "MetersPanel.h" - - #include "CPUMeter.h" -+#include "CpuFreqMeter.h" -+#include "CpuTempMeter.h" - #include "Header.h" - #include "ListItem.h" - #include "Platform.h" -@@ -100,6 +102,8 @@ PanelClass AvailableMetersPanel_class = { - }; - - AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* header, Panel* leftMeters, Panel* rightMeters, ScreenManager* scr, ProcessList* pl) { -+ int i; -+ - AvailableMetersPanel* this = AllocThis(AvailableMetersPanel); - Panel* super = (Panel*) this; - FunctionBar* fuBar = FunctionBar_newEnterEsc("Add ", "Done "); -@@ -114,7 +118,7 @@ AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* heade - Panel_setHeader(super, "Available meters"); - // Platform_meterTypes[0] should be always (&CPUMeter_class), which we will - // handle separately in the code below. -- for (int i = 1; Platform_meterTypes[i]; i++) { -+ for (i = 1; Platform_meterTypes[i]; i++) { - MeterClass* type = Platform_meterTypes[i]; - assert(type != &CPUMeter_class); - const char* label = type->description ? type->description : type->uiName; -@@ -125,7 +129,7 @@ AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* heade - int cpus = pl->cpuCount; - if (cpus > 1) { - Panel_add(super, (Object*) ListItem_new("CPU average", 0)); -- for (int i = 1; i <= cpus; i++) { -+ for (i = 1; i <= cpus; i++) { - char buffer[50]; - xSnprintf(buffer, 50, "%s %d", type->uiName, i); - Panel_add(super, (Object*) ListItem_new(buffer, i)); -diff --git a/BlockDevice_ioStatsMeter.c b/BlockDevice_ioStatsMeter.c -new file mode 100644 -index 0000000..9dccbde ---- /dev/null -+++ b/BlockDevice_ioStatsMeter.c -@@ -0,0 +1,711 @@ -+/* -+htop - BlockDevice_ioStatsMeter.c -+(C) 2020 @lex -+*/ -+ -+#include "BlockDevice_ioStatsMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int BlockDevice_ioStatsMeter_attributes[] = { -+ ETH1_INTERFACE -+}; -+ -+static void BlockDevice_sda_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "sda"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("sda", 0, 0); -+ if (ret) { -+ if (Platform_BlockDevice_sda_stats.read_sectors_comp > Platform_BlockDevice_sda_stats.read_sectors) -+ Platform_BlockDevice_sda_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_sda_stats.write_sectors_comp > Platform_BlockDevice_sda_stats.write_sectors) -+ Platform_BlockDevice_sda_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_sda_stats.read_sectors - Platform_BlockDevice_sda_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_sda_stats.write_sectors - Platform_BlockDevice_sda_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_sda_stats.read_sectors_comp = Platform_BlockDevice_sda_stats.read_sectors; -+ Platform_BlockDevice_sda_stats.write_sectors_comp = Platform_BlockDevice_sda_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_sda_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_sda_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "sdastat", -+ .uiName = "sda speed stat", -+ .caption = "sda stat: ", -+}; -+ -+static void BlockDevice_sdb_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "sdb"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("sdb", 1, 0); -+ if (ret) { -+ if (Platform_BlockDevice_sdb_stats.read_sectors_comp > Platform_BlockDevice_sdb_stats.read_sectors) -+ Platform_BlockDevice_sdb_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_sdb_stats.write_sectors_comp > Platform_BlockDevice_sdb_stats.write_sectors) -+ Platform_BlockDevice_sdb_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_sdb_stats.read_sectors - Platform_BlockDevice_sdb_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_sdb_stats.write_sectors - Platform_BlockDevice_sdb_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_sdb_stats.read_sectors_comp = Platform_BlockDevice_sdb_stats.read_sectors; -+ Platform_BlockDevice_sdb_stats.write_sectors_comp = Platform_BlockDevice_sdb_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_sdb_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_sdb_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "sdbstat", -+ .uiName = "sdb speed stat", -+ .caption = "sdb stat: ", -+}; -+ -+static void BlockDevice_sdc_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "sdc"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("sdc", 2, 0); -+ if (ret) { -+ if (Platform_BlockDevice_sdc_stats.read_sectors_comp > Platform_BlockDevice_sdc_stats.read_sectors) -+ Platform_BlockDevice_sdc_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_sdc_stats.write_sectors_comp > Platform_BlockDevice_sdc_stats.write_sectors) -+ Platform_BlockDevice_sdc_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_sdc_stats.read_sectors - Platform_BlockDevice_sdc_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_sdc_stats.write_sectors - Platform_BlockDevice_sdc_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_sdc_stats.read_sectors_comp = Platform_BlockDevice_sdc_stats.read_sectors; -+ Platform_BlockDevice_sdc_stats.write_sectors_comp = Platform_BlockDevice_sdc_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_sdc_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_sdc_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "sdcstat", -+ .uiName = "sdc speed stat", -+ .caption = "sdc stat: ", -+}; -+ -+static void BlockDevice_sdd_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "sdd"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("sdd", 3, 0); -+ if (ret) { -+ if (Platform_BlockDevice_sdd_stats.read_sectors_comp > Platform_BlockDevice_sdd_stats.read_sectors) -+ Platform_BlockDevice_sdd_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_sdd_stats.write_sectors_comp > Platform_BlockDevice_sdd_stats.write_sectors) -+ Platform_BlockDevice_sdd_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_sdd_stats.read_sectors - Platform_BlockDevice_sdd_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_sdd_stats.write_sectors - Platform_BlockDevice_sdd_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_sdd_stats.read_sectors_comp = Platform_BlockDevice_sdd_stats.read_sectors; -+ Platform_BlockDevice_sdd_stats.write_sectors_comp = Platform_BlockDevice_sdd_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_sdd_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_sdd_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "sddstat", -+ .uiName = "sdd speed stat", -+ .caption = "sdd stat: ", -+}; -+ -+static void BlockDevice_mmcblk0_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "mmcblk0"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("mmcblk0", 4, 0); -+ if (ret) { -+ if (Platform_BlockDevice_mmcblk0_stats.read_sectors_comp > Platform_BlockDevice_mmcblk0_stats.read_sectors) -+ Platform_BlockDevice_mmcblk0_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_mmcblk0_stats.write_sectors_comp > Platform_BlockDevice_mmcblk0_stats.write_sectors) -+ Platform_BlockDevice_mmcblk0_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_mmcblk0_stats.read_sectors - Platform_BlockDevice_mmcblk0_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_mmcblk0_stats.write_sectors - Platform_BlockDevice_mmcblk0_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_mmcblk0_stats.read_sectors_comp = Platform_BlockDevice_mmcblk0_stats.read_sectors; -+ Platform_BlockDevice_mmcblk0_stats.write_sectors_comp = Platform_BlockDevice_mmcblk0_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_mmcblk0_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_mmcblk0_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "mmcblk0stat", -+ .uiName = "mmcblk0 speed stat", -+ .caption = "mmcblk0 stat: ", -+}; -+ -+static void BlockDevice_mmcblk1_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "mmcblk1"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("mmcblk1", 5, 0); -+ if (ret) { -+ if (Platform_BlockDevice_mmcblk1_stats.read_sectors_comp > Platform_BlockDevice_mmcblk1_stats.read_sectors) -+ Platform_BlockDevice_mmcblk1_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_mmcblk1_stats.write_sectors_comp > Platform_BlockDevice_mmcblk1_stats.write_sectors) -+ Platform_BlockDevice_mmcblk1_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_mmcblk1_stats.read_sectors - Platform_BlockDevice_mmcblk1_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_mmcblk1_stats.write_sectors - Platform_BlockDevice_mmcblk1_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_mmcblk1_stats.read_sectors_comp = Platform_BlockDevice_mmcblk1_stats.read_sectors; -+ Platform_BlockDevice_mmcblk1_stats.write_sectors_comp = Platform_BlockDevice_mmcblk1_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_mmcblk1_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_mmcblk1_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "mmcblk1stat", -+ .uiName = "mmcblk1 speed stat", -+ .caption = "mmcblk1 stat: ", -+}; -+ -+static void BlockDevice_mmcblk2_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "mmcblk2"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("mmcblk2", 6, 0); -+ if (ret) { -+ if (Platform_BlockDevice_mmcblk2_stats.read_sectors_comp > Platform_BlockDevice_mmcblk2_stats.read_sectors) -+ Platform_BlockDevice_mmcblk2_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_mmcblk2_stats.write_sectors_comp > Platform_BlockDevice_mmcblk2_stats.write_sectors) -+ Platform_BlockDevice_mmcblk2_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_mmcblk2_stats.read_sectors - Platform_BlockDevice_mmcblk2_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_mmcblk2_stats.write_sectors - Platform_BlockDevice_mmcblk2_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_mmcblk2_stats.read_sectors_comp = Platform_BlockDevice_mmcblk2_stats.read_sectors; -+ Platform_BlockDevice_mmcblk2_stats.write_sectors_comp = Platform_BlockDevice_mmcblk2_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_mmcblk2_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_mmcblk2_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "mmcblk2stat", -+ .uiName = "mmcblk2 speed stat", -+ .caption = "mmcblk2 stat: ", -+}; -+ -+static void BlockDevice_mmcblk3_ioStatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float readspeed; -+ float writespeed; -+ double refreshdelay; -+ char block_device[80]; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ static unsigned long sec_size = 0; -+ FILE *fp; -+ -+ if (sec_size == 0) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/queue/hw_sector_size", "mmcblk3"); -+ if ((fp = fopen(block_device, "r")) == NULL) { -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ return; -+ } -+ if (fgets(block_device, 79, fp) != NULL) { -+ sscanf(block_device, "%lu", &sec_size); -+ } -+ fclose(fp); -+ if (sec_size == 0) -+ sec_size = 1; -+ } -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ ret = Platform_getIO_stats("mmcblk3", 7, 0); -+ if (ret) { -+ if (Platform_BlockDevice_mmcblk3_stats.read_sectors_comp > Platform_BlockDevice_mmcblk3_stats.read_sectors) -+ Platform_BlockDevice_mmcblk3_stats.read_sectors_comp = 0; -+ if (Platform_BlockDevice_mmcblk3_stats.write_sectors_comp > Platform_BlockDevice_mmcblk3_stats.write_sectors) -+ Platform_BlockDevice_mmcblk3_stats.write_sectors_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ readspeed = (Platform_BlockDevice_mmcblk3_stats.read_sectors - Platform_BlockDevice_mmcblk3_stats.read_sectors_comp) / refreshdelay; -+ writespeed = (Platform_BlockDevice_mmcblk3_stats.write_sectors - Platform_BlockDevice_mmcblk3_stats.write_sectors_comp) / refreshdelay; -+ -+ writespeed = writespeed * sec_size / 1000; -+ readspeed = readspeed * sec_size / 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ if (writespeed >= 1000 || readspeed >= 1000) { -+ writespeed /= 1000; -+ readspeed /= 1000; -+ xSnprintf(buffer, len, "%.2f GB/s - %.2f GB/s (R/W)", (float) readspeed, (float) writespeed); -+ } else { -+ xSnprintf(buffer, len, "%.2f MB/s - %.2f MB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ } else { -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (R/W)", (float) readspeed, (float) writespeed); -+ } -+ -+ Platform_BlockDevice_mmcblk3_stats.read_sectors_comp = Platform_BlockDevice_mmcblk3_stats.read_sectors; -+ Platform_BlockDevice_mmcblk3_stats.write_sectors_comp = Platform_BlockDevice_mmcblk3_stats.write_sectors; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavailable"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass BlockDevice_mmcblk3_ioStatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = BlockDevice_mmcblk3_ioStatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = BlockDevice_ioStatsMeter_attributes, -+ .name = "mmcblk3stat", -+ .uiName = "mmcblk3 speed stat", -+ .caption = "mmcblk3 stat: ", -+}; -+ -+ -+ -+ -diff --git a/BlockDevice_ioStatsMeter.h b/BlockDevice_ioStatsMeter.h -new file mode 100644 -index 0000000..ce707c8 ---- /dev/null -+++ b/BlockDevice_ioStatsMeter.h -@@ -0,0 +1,31 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_BlockDevice_ioStatsMeter -+#define HEADER_BlockDevice_ioStatsMeter -+/* -+htop - BlockDevice_ioStatsMeter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int BlockDevice_ioStatsMeter_attributes[]; -+ -+extern MeterClass BlockDevice_sda_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_sdb_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_sdc_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_sdd_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_mmcblk0_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_mmcblk1_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_mmcblk2_ioStatsMeter_class; -+ -+extern MeterClass BlockDevice_mmcblk3_ioStatsMeter_class; -+ -+ -+#endif -diff --git a/CPUMeter.c b/CPUMeter.c -index de5490d..0825dba 100644 ---- a/CPUMeter.c -+++ b/CPUMeter.c -@@ -6,6 +6,7 @@ in the source distribution for its full text. - */ - - #include "CPUMeter.h" -+#include "CpuFreqMeter.h" - - #include "CRT.h" - #include "Settings.h" -diff --git a/CRT.c b/CRT.c -index ca9a10d..1fefaff 100644 ---- a/CRT.c -+++ b/CRT.c -@@ -128,6 +128,20 @@ typedef enum ColorElements_ { - CPU_SOFTIRQ, - CPU_STEAL, - CPU_GUEST, -+ CPU_TEMP, -+ CPU_FREQ, -+ CPU_VCORE, -+ GPU_TEMP, -+ ETH0_INTERFACE, -+ ETH1_INTERFACE, -+ WLAN0_INTERFACE, -+ WLAN1_INTERFACE, -+ KERNEL_VERSION, -+ DISTRO_VERSION, -+ OS_VERSION, -+ ARMBIAN_VERSION, -+ ETH0_STATS, -+ ETH1_STATS, - LAST_COLORELEMENT - } ColorElements; - -@@ -232,6 +246,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = ColorPair(Magenta,Black), - [CPU_STEAL] = ColorPair(Cyan,Black), - [CPU_GUEST] = ColorPair(Cyan,Black), -+ [CPU_FREQ] = A_BOLD | ColorPair(Yellow,Black), -+ [CPU_TEMP] = A_BOLD | ColorPair(Red,Black), -+ [CPU_VCORE] = A_BOLD | ColorPair(Yellow,Black), -+ [GPU_TEMP] = ColorPair(Cyan,Black), -+ [ETH0_INTERFACE] = A_BOLD | ColorPair(Cyan,Black), -+ [ETH1_INTERFACE] = A_BOLD | ColorPair(Cyan,Black), -+ [WLAN0_INTERFACE] = A_BOLD | ColorPair(Cyan,Black), -+ [WLAN1_INTERFACE] = A_BOLD | ColorPair(Cyan,Black), -+ [KERNEL_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [DISTRO_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [OS_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [ARMBIAN_VERSION] = A_BOLD | ColorPair(Cyan,Black), - }, - [COLORSCHEME_MONOCHROME] = { - [RESET_COLOR] = A_NORMAL, -@@ -291,6 +317,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = A_BOLD, - [CPU_STEAL] = A_REVERSE, - [CPU_GUEST] = A_REVERSE, -+ [CPU_FREQ] = A_BOLD, -+ [CPU_TEMP] = A_BOLD, -+ [CPU_VCORE] = A_BOLD, -+ [GPU_TEMP] = A_BOLD, -+ [ETH0_INTERFACE] = A_BOLD, -+ [ETH1_INTERFACE] = A_BOLD, -+ [WLAN0_INTERFACE] = A_BOLD, -+ [WLAN1_INTERFACE] = A_BOLD, -+ [KERNEL_VERSION] = A_BOLD, -+ [DISTRO_VERSION] = A_BOLD, -+ [OS_VERSION] = A_BOLD, -+ [ARMBIAN_VERSION] = A_BOLD, - }, - [COLORSCHEME_BLACKONWHITE] = { - [RESET_COLOR] = ColorPair(Black,White), -@@ -350,6 +388,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = ColorPair(Blue,White), - [CPU_STEAL] = ColorPair(Cyan,White), - [CPU_GUEST] = ColorPair(Cyan,White), -+ [CPU_FREQ] = A_BOLD | ColorPair(Yellow,White), -+ [CPU_TEMP] = A_BOLD | ColorPair(Yellow,White), -+ [CPU_VCORE] = A_BOLD | ColorPair(Yellow,White), -+ [GPU_TEMP] = A_BOLD | ColorPair(Yellow,White), -+ [ETH0_INTERFACE] = A_BOLD | ColorPair(Yellow,White), -+ [ETH1_INTERFACE] = A_BOLD | ColorPair(Yellow,White), -+ [WLAN0_INTERFACE] = A_BOLD | ColorPair(Yellow,White), -+ [WLAN1_INTERFACE] = A_BOLD | ColorPair(Yellow,White), -+ [KERNEL_VERSION] = A_BOLD | ColorPair(Yellow,White), -+ [DISTRO_VERSION] = A_BOLD | ColorPair(Yellow,White), -+ [OS_VERSION] = A_BOLD | ColorPair(Yellow,White), -+ [ARMBIAN_VERSION] = A_BOLD | ColorPair(Yellow,White), - }, - [COLORSCHEME_LIGHTTERMINAL] = { - [RESET_COLOR] = ColorPair(Black,Black), -@@ -409,6 +459,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = ColorPair(Blue,Black), - [CPU_STEAL] = ColorPair(Black,Black), - [CPU_GUEST] = ColorPair(Black,Black), -+ [CPU_FREQ] = A_BOLD | ColorPair(Yellow,Black), -+ [CPU_TEMP] = A_BOLD | ColorPair(Yellow,Black), -+ [CPU_VCORE] = A_BOLD | ColorPair(Yellow,Black), -+ [GPU_TEMP] = A_BOLD | ColorPair(Yellow,Black), -+ [ETH0_INTERFACE] = A_BOLD | ColorPair(Yellow,Black), -+ [ETH1_INTERFACE] = A_BOLD | ColorPair(Yellow,Black), -+ [WLAN0_INTERFACE] = A_BOLD | ColorPair(Yellow,Black), -+ [WLAN1_INTERFACE] = A_BOLD | ColorPair(Yellow,Black), -+ [KERNEL_VERSION] = A_BOLD | ColorPair(Yellow,Black), -+ [DISTRO_VERSION] = A_BOLD | ColorPair(Yellow,Black), -+ [OS_VERSION] = A_BOLD | ColorPair(Yellow,Black), -+ [ARMBIAN_VERSION] = A_BOLD | ColorPair(Yellow,Black), - }, - [COLORSCHEME_MIDNIGHT] = { - [RESET_COLOR] = ColorPair(White,Blue), -@@ -468,6 +530,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = ColorPair(Black,Blue), - [CPU_STEAL] = ColorPair(White,Blue), - [CPU_GUEST] = ColorPair(White,Blue), -+ [CPU_FREQ] = A_BOLD | ColorPair(Red,Black), -+ [CPU_TEMP] = A_BOLD | ColorPair(Red,Black), -+ [CPU_VCORE] = A_BOLD | ColorPair(Yellow,Black), -+ [GPU_TEMP] = A_BOLD | ColorPair(Yellow,Black), -+ [ETH0_INTERFACE] = A_BOLD | ColorPair(Cyan,Blue), -+ [ETH1_INTERFACE] = A_BOLD | ColorPair(Cyan,Blue), -+ [WLAN0_INTERFACE] = A_BOLD | ColorPair(Cyan,Blue), -+ [WLAN1_INTERFACE] = A_BOLD | ColorPair(Cyan,Blue), -+ [KERNEL_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [DISTRO_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [OS_VERSION] = A_BOLD | ColorPair(Cyan,Black), -+ [ARMBIAN_VERSION] = A_BOLD | ColorPair(Cyan,Black), - }, - [COLORSCHEME_BLACKNIGHT] = { - [RESET_COLOR] = ColorPair(Cyan,Black), -@@ -527,6 +601,18 @@ int CRT_colorSchemes[LAST_COLORSCHEME][LAST_COLORELEMENT] = { - [CPU_SOFTIRQ] = ColorPair(Blue,Black), - [CPU_STEAL] = ColorPair(Cyan,Black), - [CPU_GUEST] = ColorPair(Cyan,Black), -+ [CPU_FREQ] = A_BOLD | ColorPair(Red,Black), -+ [CPU_TEMP] = A_BOLD | ColorPair(Red,Black), -+ [CPU_VCORE] = A_BOLD | ColorPair(Yellow,Black), -+ [GPU_TEMP] = A_BOLD | ColorPair(Yellow,Black), -+ [ETH0_INTERFACE] = A_BOLD | ColorPair(Blue,Black), -+ [ETH1_INTERFACE] = A_BOLD | ColorPair(Blue,Black), -+ [WLAN0_INTERFACE] = A_BOLD | ColorPair(Blue,Black), -+ [WLAN1_INTERFACE] = A_BOLD | ColorPair(Blue,Black), -+ [KERNEL_VERSION] = A_BOLD | ColorPair(Blue,Black), -+ [DISTRO_VERSION] = A_BOLD | ColorPair(Blue,Black), -+ [OS_VERSION] = A_BOLD | ColorPair(Blue,Black), -+ [ARMBIAN_VERSION] = A_BOLD | ColorPair(Blue,Black), - }, - [COLORSCHEME_BROKENGRAY] = { 0 } // dynamically generated. - }; -@@ -596,6 +682,15 @@ void CRT_restorePrivileges() { - // TODO: pass an instance of Settings instead. - - void CRT_init(int delay, int colorScheme) { -+#ifdef DEBUG -+ setenv("TERM", "xterm", 1); -+ CRT_termType = getenv("TERM"); -+ if (String_eq(CRT_termType, "linux")) -+ CRT_scrollHAmount = 20; -+ else -+ CRT_scrollHAmount = 5; -+ setenv("TERM", "xterm", 1); -+#endif - initscr(); - noecho(); - CRT_delay = delay; -diff --git a/CRT.h b/CRT.h -index 933fe06..29ba16b 100644 ---- a/CRT.h -+++ b/CRT.h -@@ -116,6 +116,20 @@ typedef enum ColorElements_ { - CPU_SOFTIRQ, - CPU_STEAL, - CPU_GUEST, -+ CPU_TEMP, -+ CPU_FREQ, -+ CPU_VCORE, -+ GPU_TEMP, -+ ETH0_INTERFACE, -+ ETH1_INTERFACE, -+ WLAN0_INTERFACE, -+ WLAN1_INTERFACE, -+ KERNEL_VERSION, -+ DISTRO_VERSION, -+ OS_VERSION, -+ ARMBIAN_VERSION, -+ ETH0_STATS, -+ ETH1_STATS, - LAST_COLORELEMENT - } ColorElements; - -diff --git a/CpuFreqMeter.c b/CpuFreqMeter.c -new file mode 100644 -index 0000000..6508180 ---- /dev/null -+++ b/CpuFreqMeter.c -@@ -0,0 +1,109 @@ -+/* -+htop - CpuFreqMeter.c -+(C) 2020 Alexander Finger -+*/ -+ -+#include "CpuFreqMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int CpuFreqMeter_attributes[] = { -+ CPU_FREQ -+}; -+ -+static void CpuFreqMeter_setValues(Meter* this, char* buffer, int len) { -+ int ghz,mhz,roundup; -+ int cpu, Freq; -+ int bigLITTLE; -+ char buf_b[32]; -+ char buf_l[32]; -+ int ln = sizeof(buf_l); -+ static int pulse = 0; -+ -+ memset(buf_l, 0, sizeof(buf_l)); -+ memset(buf_b, 0, sizeof(buf_b)); -+ -+ bigLITTLE = Platform_getCpuBigLITTLE(); -+ if (bigLITTLE) { -+ cpu = bigLITTLE; -+ if (cpu < 0) -+ cpu = 0; -+ Freq = Platform_getCpuFreq(this, cpu); -+ if (Freq > 1000) { -+ Freq /= 1000; -+ } -+ if (Freq > 1000) { -+ ghz = Freq / 1000; -+ mhz = Freq % 1000; -+ roundup = ((mhz % 10) > 5); -+ mhz /= 10; -+ mhz += roundup; -+ xSnprintf(buf_b, ln, "%d.%02d GHz", ghz, mhz); -+ } else { -+ xSnprintf(buf_b, ln, "%4d MHz", Freq); -+ } -+ -+ cpu--; -+ if (cpu < 0) -+ cpu = 0; -+ Freq = Platform_getCpuFreq(this, cpu); -+ if (Freq > 1000) { -+ Freq /= 1000; -+ } -+ if (Freq > 1000) { -+ ghz = Freq / 1000; -+ mhz = Freq % 1000; -+ roundup = ((mhz % 10) > 5); -+ mhz /= 10; -+ mhz += roundup; -+ xSnprintf(buf_l, ln, "%d.%02d GHz", ghz, mhz); -+ } else { -+ xSnprintf(buf_l, ln, "%4d MHz", Freq); -+ } -+ -+ if (pulse) -+ xSnprintf(buffer, len, "%s %s (big.LITTLE)", buf_b, buf_l, pulse); -+ else -+ xSnprintf(buffer, len, "%s %s ", buf_b, buf_l, pulse); -+ pulse = !pulse; -+ return; -+ } -+ -+ cpu = 0; -+ Freq = Platform_getCpuFreq(this, cpu); -+ if (Freq > 1000) { -+ Freq /= 1000; -+ } -+ if (Freq > 1000) { -+ ghz = Freq / 1000; -+ mhz = Freq % 1000; -+ roundup = ((mhz % 10) > 5); -+ mhz /= 10; -+ mhz += roundup; -+ xSnprintf(buffer, len, "%d.%02d GHz", ghz, mhz); -+ } else { -+ xSnprintf(buffer, len, "%4d MHz", Freq); -+ } -+ pulse = !pulse; -+} -+ -+MeterClass CpuFreqMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = CpuFreqMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 1, -+ .total = 100.0, -+ .attributes = CpuFreqMeter_attributes, -+ .name = "CpuFreq", -+ .uiName = "CpuFreq", -+ .caption = "Cpu Freq: ", -+}; -+ -diff --git a/CpuFreqMeter.h b/CpuFreqMeter.h -new file mode 100644 -index 0000000..151a58c ---- /dev/null -+++ b/CpuFreqMeter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_CpuFreqMeter -+#define HEADER_CpuFreqMeter -+/* -+htop - CpuFreqMeter.h -+(C) 2020 Alexander Finger -+*/ -+ -+#include "Meter.h" -+ -+extern int CpuFreqMeter_attributes[]; -+ -+extern MeterClass CpuFreqMeter_class; -+ -+ -+#endif -diff --git a/CpuTempMeter.c b/CpuTempMeter.c -new file mode 100644 -index 0000000..4052256 ---- /dev/null -+++ b/CpuTempMeter.c -@@ -0,0 +1,39 @@ -+/* -+htop - CpuTempMeter.c -+(C) 2020 @lex -+*/ -+ -+#include "CpuTempMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+int CpuTempMeter_attributes[] = { -+ CPU_TEMP -+}; -+ -+static void CpuTempMeter_setValues(Meter* this, char* buffer, int len) { -+ int Temp = Platform_getCpuTemp(this); -+ if (Temp > 1000) { -+ Temp /= 1000; -+ } -+ xSnprintf(buffer, len, "%4d C", Temp); -+} -+ -+MeterClass CpuTempMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = CpuTempMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 1, -+ .total = 100.0, -+ .attributes = CpuTempMeter_attributes, -+ .name = "CpuTemp", -+ .uiName = "CpuTemp", -+ .caption = "Cpu Temp: " -+}; -diff --git a/CpuTempMeter.h b/CpuTempMeter.h -new file mode 100644 -index 0000000..3538ac3 ---- /dev/null -+++ b/CpuTempMeter.h -@@ -0,0 +1,16 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_CpuTempMeter -+#define HEADER_CpuTempMeter -+/* -+htop - CpuTempMeter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int CpuTempMeter_attributes[]; -+ -+extern MeterClass CpuTempMeter_class; -+ -+#endif -diff --git a/CpuVcoreMeter.c b/CpuVcoreMeter.c -new file mode 100644 -index 0000000..03adb6d ---- /dev/null -+++ b/CpuVcoreMeter.c -@@ -0,0 +1,84 @@ -+/* -+htop - CpuVcoreMeter.c -+(C) 2020 Alexander Finger -+*/ -+ -+#include "CpuVcoreMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int CpuVcoreMeter_attributes[] = { -+ CPU_VCORE -+}; -+ -+static void CpuVcoreMeter_setValues(Meter* this, char* buffer, int len) { -+ int v1,v2; -+ int Vcore, Vcore_l, Vcore_b; -+ char buf1[80], buf2[80]; -+ int h; -+ -+ if (Platform_getCpuBigLITTLE()) { -+ h = len / 2; -+ if (h > 79) -+ h = 79; -+ Vcore_b = Platform_getCpuVcore_b(this); -+ if (Vcore_b > 1000) { -+ Vcore_b /= 1000; -+ } -+ if (Vcore_b >= 1000) { -+ Vcore_b /= 10; -+ v1 = Vcore_b / 100; -+ v2 = Vcore_b % 100; -+ xSnprintf(buf1, h, "%d.%02d V ", v1, v2); -+ } else { -+ xSnprintf(buf1, h, "%4d mV", Vcore_b); -+ } -+ Vcore_l = Platform_getCpuVcore_l(this); -+ if (Vcore_l > 1000) { -+ Vcore_l /= 1000; -+ } -+ if (Vcore_l >= 1000) { -+ Vcore_l /= 10; -+ v1 = Vcore_l / 100; -+ v2 = Vcore_l % 100; -+ xSnprintf(buf2, h, "%d.%02d V ", v1, v2); -+ } else { -+ xSnprintf(buf2, h, "%4d mV", Vcore_l); -+ } -+ xSnprintf(buffer, len, "%s %s (big.LITTLE)", buf1, buf2); -+ return; -+ } -+ -+ Vcore = Platform_getCpuVcore(this); -+ if (Vcore > 1000) { -+ Vcore /= 1000; -+ } -+ if (Vcore >= 1000) { -+ Vcore /= 10; -+ v1 = Vcore / 100; -+ v2 = Vcore % 100; -+ xSnprintf(buffer, len, "%d.%02d V", v1, v2); -+ } else { -+ xSnprintf(buffer, len, "%4d mV", Vcore); -+ } -+} -+ -+MeterClass CpuVcoreMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = CpuVcoreMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 1, -+ .total = 100.0, -+ .attributes = CpuVcoreMeter_attributes, -+ .name = "CpuVcore", -+ .uiName = "CpuVcore", -+ .caption = "Cpu Vcor: " -+}; -diff --git a/CpuVcoreMeter.h b/CpuVcoreMeter.h -new file mode 100644 -index 0000000..603e8e2 ---- /dev/null -+++ b/CpuVcoreMeter.h -@@ -0,0 +1,16 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_CpuVcoreMeter -+#define HEADER_CpuVcoreMeter -+/* -+htop - CpuVcoreMeter.h -+(C) 2020 Alexander Finger -+*/ -+ -+#include "Meter.h" -+ -+extern int CpuVcoreMeter_attributes[]; -+ -+extern MeterClass CpuVcoreMeter_class; -+ -+#endif -diff --git a/Eth0_Meter.c b/Eth0_Meter.c -new file mode 100644 -index 0000000..90e512a ---- /dev/null -+++ b/Eth0_Meter.c -@@ -0,0 +1,60 @@ -+/* -+htop - Eth0_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "Eth0_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Eth0_Meter_attributes[] = { -+ ETH0_INTERFACE -+}; -+ -+static void Eth0_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char szIP[48]; -+ static unsigned int use_cached = 0; -+ Settings* settings = this->pl->settings; -+ -+ if ((use_cached++ % 2)) { -+ xSnprintf(buffer, len, "%s", szIP); -+ return; -+ } -+ -+ if (settings->eth0_alias[0] != 0) { -+ ret = findIP_interface(settings->eth0_alias, szIP, sizeof(szIP)); -+ } else { -+ ret = findIP_interface("eth0", szIP, sizeof(szIP)); -+ } -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", szIP); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass Eth0_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Eth0_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Eth0_Meter_attributes, -+ .name = "Eth0", -+ .uiName = "Eth0 IP", -+ .caption = "Eth0 IP: ", -+}; -+ -+ -diff --git a/Eth0_Meter.h b/Eth0_Meter.h -new file mode 100644 -index 0000000..5443abc ---- /dev/null -+++ b/Eth0_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Eth0_Meter -+#define HEADER_Eth0_Meter -+/* -+htop - Eth0_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Eth0_Meter_attributes[]; -+ -+extern MeterClass Eth0_Meter_class; -+ -+ -+#endif -diff --git a/Eth0_StatsMeter.c b/Eth0_StatsMeter.c -new file mode 100644 -index 0000000..974c656 ---- /dev/null -+++ b/Eth0_StatsMeter.c -@@ -0,0 +1,83 @@ -+/* -+htop - Eth0_StatsMeter.c -+(C) 2020 @lex -+*/ -+ -+#include "Eth0_StatsMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Eth0_StatsMeter_attributes[] = { -+ ETH0_INTERFACE -+}; -+ -+/* borrowed from slurm */ -+static void Eth0_StatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float rxspeed; -+ float txspeed; -+ Settings* settings = this->pl->settings; -+ double refreshdelay; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ if (settings->eth0_alias[0] != 0) { -+ ret = Platform_getEth_stats(settings->eth0_alias, 0, 0); -+ } else { -+ ret = Platform_getEth_stats("eth0", 0, 0); -+ } -+ -+ if (ret) { -+ if (Platform_Eth0_stats.rx_bytes_comp > Platform_Eth0_stats.rx_bytes) -+ Platform_Eth0_stats.rx_bytes_comp = 0; -+ if (Platform_Eth0_stats.tx_bytes_comp > Platform_Eth0_stats.tx_bytes) -+ Platform_Eth0_stats.tx_bytes_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ rxspeed = (Platform_Eth0_stats.rx_bytes - Platform_Eth0_stats.rx_bytes_comp) / refreshdelay; -+ txspeed = (Platform_Eth0_stats.tx_bytes - Platform_Eth0_stats.tx_bytes_comp) / refreshdelay; -+ -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (TX/RX)", (float) txspeed / 1024, (float) rxspeed / 1024); -+ -+ Platform_Eth0_stats.rx_bytes_comp = Platform_Eth0_stats.rx_bytes; -+ Platform_Eth0_stats.tx_bytes_comp = Platform_Eth0_stats.tx_bytes; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavail"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass Eth0_StatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Eth0_StatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Eth0_StatsMeter_attributes, -+ .name = "Eth0stat", -+ .uiName = "Eth0 stat", -+ .caption = "Eth0 stat: ", -+}; -+ -+ -diff --git a/Eth0_StatsMeter.h b/Eth0_StatsMeter.h -new file mode 100644 -index 0000000..e44a5cc ---- /dev/null -+++ b/Eth0_StatsMeter.h -@@ -0,0 +1,18 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Eth0_StatsMeter -+#define HEADER_Eth0_StatsMeter -+/* -+htop - Eth0_StatsMeter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Eth0_StatsMeter_attributes[]; -+ -+/* borrowed from slurm */ -+extern MeterClass Eth0_StatsMeter_class; -+ -+ -+#endif -diff --git a/Eth1_Meter.c b/Eth1_Meter.c -new file mode 100644 -index 0000000..41cfa05 ---- /dev/null -+++ b/Eth1_Meter.c -@@ -0,0 +1,60 @@ -+/* -+htop - Eth1_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "Eth1_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Eth1_Meter_attributes[] = { -+ ETH1_INTERFACE -+}; -+ -+static void Eth1_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char szIP[48]; -+ static unsigned int use_cached = 0; -+ Settings* settings = this->pl->settings; -+ -+ if ((use_cached++ % 2)) { -+ xSnprintf(buffer, len, "%s", szIP); -+ return; -+ } -+ -+ if (settings->eth1_alias[0] != 0) { -+ ret = findIP_interface(settings->eth1_alias, szIP, sizeof(szIP)); -+ } else { -+ ret = findIP_interface("eth1", szIP, sizeof(szIP)); -+ } -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", szIP); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass Eth1_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Eth1_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Eth1_Meter_attributes, -+ .name = "Eth1", -+ .uiName = "Eth1 IP", -+ .caption = "Eth1 IP: ", -+}; -+ -+ -diff --git a/Eth1_Meter.h b/Eth1_Meter.h -new file mode 100644 -index 0000000..7f7f4fc ---- /dev/null -+++ b/Eth1_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Eth1_Meter -+#define HEADER_Eth1_Meter -+/* -+htop - Eth1_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Eth1_Meter_attributes[]; -+ -+extern MeterClass Eth1_Meter_class; -+ -+ -+#endif -diff --git a/Eth1_StatsMeter.c b/Eth1_StatsMeter.c -new file mode 100644 -index 0000000..85e6dc9 ---- /dev/null -+++ b/Eth1_StatsMeter.c -@@ -0,0 +1,83 @@ -+/* -+htop - Eth1_StatsMeter.c -+(C) 2020 @lex -+*/ -+ -+#include "Eth1_StatsMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Eth1_StatsMeter_attributes[] = { -+ ETH1_INTERFACE -+}; -+ -+/* borrowed from slurm */ -+static void Eth1_StatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float rxspeed; -+ float txspeed; -+ Settings* settings = this->pl->settings; -+ double refreshdelay; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ if (settings->eth1_alias[0] != 0) { -+ ret = Platform_getEth_stats(settings->eth1_alias, 1, 0); -+ } else { -+ ret = Platform_getEth_stats("eth1", 1, 0); -+ } -+ -+ if (ret) { -+ if (Platform_Eth1_stats.rx_bytes_comp > Platform_Eth1_stats.rx_bytes) -+ Platform_Eth1_stats.rx_bytes_comp = 0; -+ if (Platform_Eth1_stats.tx_bytes_comp > Platform_Eth1_stats.tx_bytes) -+ Platform_Eth1_stats.tx_bytes_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ rxspeed = (Platform_Eth1_stats.rx_bytes - Platform_Eth1_stats.rx_bytes_comp) / refreshdelay; -+ txspeed = (Platform_Eth1_stats.tx_bytes - Platform_Eth1_stats.tx_bytes_comp) / refreshdelay; -+ -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (TX/RX)", (float) txspeed / 1024, (float) rxspeed / 1024); -+ -+ Platform_Eth1_stats.rx_bytes_comp = Platform_Eth1_stats.rx_bytes; -+ Platform_Eth1_stats.tx_bytes_comp = Platform_Eth1_stats.tx_bytes; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavail"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass Eth1_StatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Eth1_StatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Eth1_StatsMeter_attributes, -+ .name = "Eth1stat", -+ .uiName = "Eth1 stat", -+ .caption = "Eth1 stat: ", -+}; -+ -+ -diff --git a/Eth1_StatsMeter.h b/Eth1_StatsMeter.h -new file mode 100644 -index 0000000..c173b15 ---- /dev/null -+++ b/Eth1_StatsMeter.h -@@ -0,0 +1,18 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Eth1_StatsMeter -+#define HEADER_Eth1_StatsMeter -+/* -+htop - Eth1_StatsMeter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Eth1_StatsMeter_attributes[]; -+ -+/* borrowed from slurm */ -+extern MeterClass Eth1_StatsMeter_class; -+ -+ -+#endif -diff --git a/GpuTempMeter.c b/GpuTempMeter.c -new file mode 100644 -index 0000000..92394b3 ---- /dev/null -+++ b/GpuTempMeter.c -@@ -0,0 +1,39 @@ -+/* -+htop - GpuTempMeter.c -+(C) 2018 @lex -+*/ -+ -+#include "GpuTempMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+int GpuTempMeter_attributes[] = { -+ GPU_TEMP -+}; -+ -+static void GpuTempMeter_setValues(Meter* this, char* buffer, int len) { -+ int Temp = Platform_getGpuTemp(this); -+ if (Temp > 1000) { -+ Temp /= 1000; -+ } -+ xSnprintf(buffer, len, "%4d C", Temp); -+} -+ -+MeterClass GpuTempMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = GpuTempMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 1, -+ .total = 100.0, -+ .attributes = GpuTempMeter_attributes, -+ .name = "GpuTemp", -+ .uiName = "GpuTemp", -+ .caption = "Gpu Temp: " -+}; -diff --git a/GpuTempMeter.h b/GpuTempMeter.h -new file mode 100644 -index 0000000..40dab90 ---- /dev/null -+++ b/GpuTempMeter.h -@@ -0,0 +1,16 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_GpuTempMeter -+#define HEADER_GpuTempMeter -+/* -+htop - GpuTempMeter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int GpuTempMeter_attributes[]; -+ -+extern MeterClass GpuTempMeter_class; -+ -+#endif -diff --git a/Kernel_Meter.c b/Kernel_Meter.c -new file mode 100644 -index 0000000..45c675f ---- /dev/null -+++ b/Kernel_Meter.c -@@ -0,0 +1,55 @@ -+/* -+htop - Kernelversion_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "Kernel_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Kernelversion_Meter_attributes[] = { -+ KERNEL_VERSION -+}; -+ -+static void Kernelversion_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char version[256]; -+ static int use_cached = 0; -+ -+ if ((use_cached++ % 10)) { -+ xSnprintf(buffer, len, "%s", version); -+ return; -+ } -+ -+ ret = ReadTokenValue( "/proc/version", "Linux version", version); -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", version); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass Kernelversion_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Kernelversion_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Kernelversion_Meter_attributes, -+ .name = "Kernelversion", -+ .uiName = "Kernel version", -+ .caption = "Kernel: ", -+}; -+ -+ -diff --git a/Kernel_Meter.h b/Kernel_Meter.h -new file mode 100644 -index 0000000..98f9a1f ---- /dev/null -+++ b/Kernel_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Kernel_Meter -+#define HEADER_Kernel_Meter -+/* -+htop - Kernelversion_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Kernelversion_Meter_attributes[]; -+ -+extern MeterClass Kernelversion_Meter_class; -+ -+ -+#endif -diff --git a/Makefile.am b/Makefile.am -index cd5209c..6557c6a 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -21,7 +21,9 @@ ClockMeter.c ColorsPanel.c ColumnsPanel.c CPUMeter.c CRT.c MainPanel.c \ - DisplayOptionsPanel.c FunctionBar.c Hashtable.c Header.c htop.c ListItem.c \ - LoadAverageMeter.c MemoryMeter.c Meter.c MetersPanel.c Object.c Panel.c \ - BatteryMeter.c Process.c ProcessList.c RichString.c ScreenManager.c Settings.c \ --SignalsPanel.c StringUtils.c SwapMeter.c TasksMeter.c UptimeMeter.c \ -+SignalsPanel.c StringUtils.c SwapMeter.c TasksMeter.c UptimeMeter.c CpuFreqMeter.c CpuTempMeter.c GpuTempMeter.c CpuVcoreMeter.c \ -+interfaces.c OS_Meter.c Eth0_Meter.c Eth1_Meter.c Wlan0_Meter.c Wlan1_Meter.c Kernel_Meter.c Armbian_Meter.c \ -+Wlan0_StatsMeter.c Eth0_StatsMeter.c Eth1_StatsMeter.c BlockDevice_ioStatsMeter.c \ - TraceScreen.c UsersTable.c Vector.c AvailableColumnsPanel.c AffinityPanel.c \ - HostnameMeter.c OpenFilesScreen.c Affinity.c IncSet.c Action.c EnvScreen.c \ - InfoScreen.c XAlloc.c -@@ -32,7 +34,9 @@ CPUMeter.h CRT.h MainPanel.h DisplayOptionsPanel.h FunctionBar.h \ - Hashtable.h Header.h htop.h ListItem.h LoadAverageMeter.h MemoryMeter.h \ - BatteryMeter.h Meter.h MetersPanel.h Object.h Panel.h ProcessList.h RichString.h \ - ScreenManager.h Settings.h SignalsPanel.h StringUtils.h SwapMeter.h \ --TasksMeter.h UptimeMeter.h TraceScreen.h UsersTable.h Vector.h Process.h \ -+TasksMeter.h UptimeMeter.h CpuFreqMeter.h CpuTempMeter.h GpuTempMeter.h CpuVcoreMeter.h TraceScreen.h UsersTable.h Vector.h Process.h \ -+interfaces.h OS_Meter.h Eth0_Meter.h Eth1_Meter.h Wlan0_Meter.h Wlan1_Meter.h Kernel_Meter.h Armbian_Meter.h \ -+Wlan0_StatsMeter.h Eth0_StatsMeter.h Eth1_StatsMeter.h BlockDevice_ioStatsMeter.h \ - AffinityPanel.h HostnameMeter.h OpenFilesScreen.h Affinity.h IncSet.h Action.h \ - EnvScreen.h InfoScreen.h XAlloc.h - -diff --git a/OS_Meter.c b/OS_Meter.c -new file mode 100644 -index 0000000..588c234 ---- /dev/null -+++ b/OS_Meter.c -@@ -0,0 +1,55 @@ -+/* -+htop - OSversion_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "OS_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int OSversion_Meter_attributes[] = { -+ OS_VERSION -+}; -+ -+static void OSversion_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char version[256]; -+ static int use_cached = 0; -+ -+ if ((use_cached++ % 10)) { -+ xSnprintf(buffer, len, "%s", version); -+ return; -+ } -+ -+ ret = ReadKeyValue( "/etc/os-release", "PRETTY_NAME=", version); -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", version); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass OSversion_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = OSversion_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = OSversion_Meter_attributes, -+ .name = "OSversion", -+ .uiName = "OS version", -+ .caption = "OS vers: ", -+}; -+ -+ -diff --git a/OS_Meter.h b/OS_Meter.h -new file mode 100644 -index 0000000..c5cccb2 ---- /dev/null -+++ b/OS_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_OS_Meter -+#define HEADER_OS_Meter -+/* -+htop - OSversion_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int OSversion_Meter_attributes[]; -+ -+extern MeterClass OSversion_Meter_class; -+ -+ -+#endif -diff --git a/Process.c b/Process.c -index 471f529..9ac5fa6 100644 ---- a/Process.c -+++ b/Process.c -@@ -1,6 +1,7 @@ - /* - htop - Process.c - (C) 2004-2015 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ -diff --git a/Process.h b/Process.h -index f702ca0..fbd9ef5 100644 ---- a/Process.h -+++ b/Process.h -@@ -5,6 +5,7 @@ - /* - htop - Process.h - (C) 2004-2015 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ -diff --git a/ProcessList.c b/ProcessList.c -index 7482b03..4ef1e83 100644 ---- a/ProcessList.c -+++ b/ProcessList.c -@@ -69,6 +69,7 @@ typedef struct ProcessList_ { - unsigned long long int freeSwap; - - int cpuCount; -+ int cpuBigLITTLE; - - } ProcessList; - -diff --git a/ProcessList.h b/ProcessList.h -index 572d484..aa0e6c0 100644 ---- a/ProcessList.h -+++ b/ProcessList.h -@@ -63,6 +63,7 @@ typedef struct ProcessList_ { - unsigned long long int freeSwap; - - int cpuCount; -+ int cpuBigLITTLE; - - } ProcessList; - -diff --git a/ScreenManager.c b/ScreenManager.c -index 05e1c02..3ae6670 100644 ---- a/ScreenManager.c -+++ b/ScreenManager.c -@@ -130,6 +130,7 @@ static void checkRecalculation(ScreenManager* this, double* oldTime, int* sortTi - if (newTime < *oldTime) *rescan = true; // clock was adjusted? - if (*rescan) { - *oldTime = newTime; -+ Header_draw(this->header); - ProcessList_scan(pl); - if (*sortTimeout == 0 || this->settings->treeView) { - ProcessList_sort(pl); -@@ -139,7 +140,7 @@ static void checkRecalculation(ScreenManager* this, double* oldTime, int* sortTi - } - if (*redraw) { - ProcessList_rebuildPanel(pl); -- Header_draw(this->header); -+ // Header_draw(this->header); - } - *rescan = false; - } -diff --git a/Settings.c b/Settings.c -index db2fa06..912ad7d 100644 ---- a/Settings.c -+++ b/Settings.c -@@ -59,6 +59,28 @@ typedef struct Settings_ { - bool accountGuestInCPUMeter; - bool headerMargin; - -+ char CpuFreq_handler[256]; -+ char CpuTemp_handler[256]; -+ char CpuVCore_l_handler[256]; -+ char CpuVCore_b_handler[256]; -+ -+ char GpuVCore_handler[256]; -+ char GpuTemp_handler[256]; -+ -+ char BoardName[128]; -+ char KernelVersionFull[256]; -+ char KernelVersionShort[64]; -+ -+ char IP_wlan0[32]; -+ char IP_wlan1[32]; -+ char IP_eth0[32]; -+ char IP_eth1[32]; -+ -+ char eth0_alias[32]; -+ char eth1_alias[32]; -+ char wlan0_alias[32]; -+ char wlan1_alias[32]; -+ - bool changed; - } Settings; - -@@ -141,6 +163,12 @@ static void Settings_defaultMeters(Settings* this) { - this->columns[1].modes[r++] = TEXT_METERMODE; - this->columns[1].names[r] = xStrdup("Uptime"); - this->columns[1].modes[r++] = TEXT_METERMODE; -+ -+ this->columns[1].names[r] = xStrdup("CpuTemp"); -+ this->columns[1].modes[r++] = TEXT_METERMODE; -+ this->columns[1].names[r] = xStrdup("CpuFreq"); -+ this->columns[1].modes[r++] = TEXT_METERMODE; -+ - } - - static void readFields(ProcessField* fields, int* flags, const char* line) { -@@ -244,7 +272,41 @@ static bool Settings_read(Settings* this, const char* fileName) { - } else if (String_eq(option[0], "right_meter_modes")) { - Settings_readMeterModes(this, option[1], 1); - didReadMeters = true; -- } -+ } else if (String_eq(option[0], "BoardName")) { -+ strcpy(this->BoardName,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "CpuFreq_handler")) { -+ strcpy(this->CpuFreq_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "CpuTemp_handler")) { -+ strcpy(this->CpuTemp_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "CpuVCore_l_handler")) { -+ strcpy(this->CpuVCore_l_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "CpuVCore_b_handler")) { -+ strcpy(this->CpuVCore_b_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "GpuVCore_handler")) { -+ strcpy(this->GpuVCore_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "GpuTemp_handler")) { -+ strcpy(this->GpuTemp_handler,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "eth0_alias")) { -+ strcpy(this->eth0_alias,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "eth1_alias")) { -+ strcpy(this->eth1_alias,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "wlan0_alias")) { -+ strcpy(this->wlan0_alias,option[1]); -+ didReadMeters = true; -+ } else if (String_eq(option[0], "wlan1_alias")) { -+ strcpy(this->wlan1_alias,option[1]); -+ didReadMeters = true; -+ } -+ - String_freeArray(option); - } - fclose(fd); -@@ -320,6 +382,23 @@ bool Settings_write(Settings* this) { - fprintf(fd, "left_meter_modes="); writeMeterModes(this, fd, 0); - fprintf(fd, "right_meters="); writeMeters(this, fd, 1); - fprintf(fd, "right_meter_modes="); writeMeterModes(this, fd, 1); -+ -+ fprintf(fd, "# SBC hardware and Kernel specific path.\n"); -+ fprintf(fd, "# Editable manually.\n"); -+ fprintf(fd, "BoardName=%s\n", this->BoardName); -+ fprintf(fd, "CpuFreq_handler=%s\n", this->CpuFreq_handler); -+ fprintf(fd, "CpuTemp_handler=%s\n", this->CpuTemp_handler); -+ fprintf(fd, "CpuVCore_l_handler=%s\n", this->CpuVCore_l_handler); -+ fprintf(fd, "CpuVCore_b_handler=%s\n", this->CpuVCore_b_handler); -+ fprintf(fd, "GpuVCore_handler=%s\n", this->GpuVCore_handler); -+ fprintf(fd, "GpuTemp_handler=%s\n", this->GpuTemp_handler); -+ -+ fprintf(fd, "# Wlan / Eth alias\n"); -+ fprintf(fd, "eth0_alias=%s\n",this->eth0_alias); -+ fprintf(fd, "eth1_alias=%s\n",this->eth1_alias); -+ fprintf(fd, "wlan0_alias=%s\n",this->wlan0_alias); -+ fprintf(fd, "wlan1_alias=%s\n",this->wlan1_alias); -+ - fclose(fd); - return true; - } -diff --git a/Settings.h b/Settings.h -index d9dc068..4fcd885 100644 ---- a/Settings.h -+++ b/Settings.h -@@ -50,6 +50,28 @@ typedef struct Settings_ { - bool accountGuestInCPUMeter; - bool headerMargin; - -+ char CpuFreq_handler[256]; -+ char CpuTemp_handler[256]; -+ char CpuVCore_l_handler[256]; -+ char CpuVCore_b_handler[256]; -+ -+ char GpuVCore_handler[256]; -+ char GpuTemp_handler[256]; -+ -+ char BoardName[128]; -+ char KernelVersionFull[256]; -+ char KernelVersionShort[64]; -+ -+ char IP_wlan0[32]; -+ char IP_wlan1[32]; -+ char IP_eth0[32]; -+ char IP_eth1[32]; -+ -+ char eth0_alias[32]; -+ char eth1_alias[32]; -+ char wlan0_alias[32]; -+ char wlan1_alias[32]; -+ - bool changed; - } Settings; - -diff --git a/Wlan0_Meter.c b/Wlan0_Meter.c -new file mode 100644 -index 0000000..bf75623 ---- /dev/null -+++ b/Wlan0_Meter.c -@@ -0,0 +1,58 @@ -+/* -+htop - Wlan0_Meter.c -+(C) 2020 @lex -+*/ -+ -+#include "Wlan0_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Wlan0_Meter_attributes[] = { -+ WLAN0_INTERFACE -+}; -+ -+static void Wlan0_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char szIP[48]; -+ static unsigned int use_cached = 0; -+ Settings* settings = this->pl->settings; -+ -+ if ((use_cached++ % 2)) { -+ xSnprintf(buffer, len, "%s", szIP); -+ return; -+ } -+ -+ if (settings->wlan0_alias[0] != 0) { -+ ret = findIP_interface(settings->wlan0_alias, szIP, sizeof(szIP)); -+ } else { -+ ret = findIP_interface("wlan0", szIP, sizeof(szIP)); -+ } -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", szIP); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass Wlan0_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Wlan0_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Wlan0_Meter_attributes, -+ .name = "Wlan0", -+ .uiName = "Wlan0 IP", -+ .caption = "Wlan0 IP: ", -+}; -+ -+ -diff --git a/Wlan0_Meter.h b/Wlan0_Meter.h -new file mode 100644 -index 0000000..59761ff ---- /dev/null -+++ b/Wlan0_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Wlan0_Meter -+#define HEADER_Wlan0_Meter -+/* -+htop - Wlan0_Meter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Wlan0_Meter_attributes[]; -+ -+extern MeterClass Wlan0_Meter_class; -+ -+ -+#endif -diff --git a/Wlan0_StatsMeter.c b/Wlan0_StatsMeter.c -new file mode 100644 -index 0000000..f920f9c ---- /dev/null -+++ b/Wlan0_StatsMeter.c -@@ -0,0 +1,83 @@ -+/* -+htop - Wlan0_StatsMeter.c -+(C) 2020 @lex -+*/ -+ -+#include "Wlan0_StatsMeter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Wlan0_StatsMeter_attributes[] = { -+ ETH0_INTERFACE -+}; -+ -+/* borrowed from slurm */ -+static void Wlan0_StatsMeter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ float rxspeed; -+ float txspeed; -+ Settings* settings = this->pl->settings; -+ double refreshdelay; -+ static double old = 0.; -+ static double now = 0.; -+ static int flash = 0; -+ -+ now = get_wall_time(); -+ refreshdelay = now - old; -+ if (old == 0.) -+ refreshdelay = 1.; -+ old = now; -+ -+ if (settings->wlan0_alias[0] != 0) { -+ ret = Platform_getEth_stats(settings->wlan0_alias, 2, 0); -+ } else { -+ ret = Platform_getEth_stats("wlan0", 0, 0); -+ } -+ -+ if (ret) { -+ if (Platform_Wlan0_stats.rx_bytes_comp > Platform_Wlan0_stats.rx_bytes) -+ Platform_Wlan0_stats.rx_bytes_comp = 0; -+ if (Platform_Wlan0_stats.tx_bytes_comp > Platform_Wlan0_stats.tx_bytes) -+ Platform_Wlan0_stats.tx_bytes_comp = 0; -+ -+ /* we assume here the refresdelay is 1 sec which sometimes is 1.5, so we have a peak */ -+ rxspeed = (Platform_Wlan0_stats.rx_bytes - Platform_Wlan0_stats.rx_bytes_comp) / refreshdelay; -+ txspeed = (Platform_Wlan0_stats.tx_bytes - Platform_Wlan0_stats.tx_bytes_comp) / refreshdelay; -+ -+ xSnprintf(buffer, len, "%.2f KB/s - %.2f KB/s (TX/RX)", (float) txspeed / 1024, (float) rxspeed / 1024); -+ -+ Platform_Wlan0_stats.rx_bytes_comp = Platform_Wlan0_stats.rx_bytes; -+ Platform_Wlan0_stats.tx_bytes_comp = Platform_Wlan0_stats.tx_bytes; -+ -+ } else { -+ if (!(flash % 2)) -+ xSnprintf(buffer, len, "%s", "unavail"); -+ else -+ xSnprintf(buffer, len, "%s", ""); -+ flash++; -+ } -+} -+ -+MeterClass Wlan0_StatsMeter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Wlan0_StatsMeter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Wlan0_StatsMeter_attributes, -+ .name = "Wlan0stat", -+ .uiName = "Wlan0 stat", -+ .caption = "Wlan0 stat: ", -+}; -+ -+ -diff --git a/Wlan0_StatsMeter.h b/Wlan0_StatsMeter.h -new file mode 100644 -index 0000000..2880f9d ---- /dev/null -+++ b/Wlan0_StatsMeter.h -@@ -0,0 +1,18 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Wlan0_StatsMeter -+#define HEADER_Wlan0_StatsMeter -+/* -+htop - Wlan0_StatsMeter.h -+(C) 2020 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Wlan0_StatsMeter_attributes[]; -+ -+/* borrowed from slurm */ -+extern MeterClass Wlan0_StatsMeter_class; -+ -+ -+#endif -diff --git a/Wlan1_Meter.c b/Wlan1_Meter.c -new file mode 100644 -index 0000000..c5acd69 ---- /dev/null -+++ b/Wlan1_Meter.c -@@ -0,0 +1,60 @@ -+/* -+htop - Eth0_Meter.c -+(C) 2018 @lex -+*/ -+ -+#include "Wlan1_Meter.h" -+#include "Platform.h" -+#include "CRT.h" -+ -+#include "interfaces.h" -+ -+/*{ -+#include "Meter.h" -+}*/ -+ -+ -+int Wlan1_Meter_attributes[] = { -+ WLAN1_INTERFACE -+}; -+ -+static void Wlan1_Meter_setValues(Meter* this, char* buffer, int len) { -+ int ret; -+ static char szIP[48]; -+ static unsigned int use_cached = 0; -+ Settings* settings = this->pl->settings; -+ -+ if ((use_cached++ % 2)) { -+ xSnprintf(buffer, len, "%s", szIP); -+ return; -+ } -+ -+ if (settings->wlan1_alias[0] != 0) { -+ ret = findIP_interface(settings->wlan1_alias, szIP, sizeof(szIP)); -+ } else { -+ ret = findIP_interface("wlan1", szIP, sizeof(szIP)); -+ } -+ -+ if (ret) { -+ xSnprintf(buffer, len, "%s", szIP); -+ } else { -+ xSnprintf(buffer, len, "%s", "down"); -+ } -+} -+ -+MeterClass Wlan1_Meter_class = { -+ .super = { -+ .extends = Class(Meter), -+ .delete = Meter_delete -+ }, -+ .updateValues = Wlan1_Meter_setValues, -+ .defaultMode = TEXT_METERMODE, -+ .maxItems = 8, -+ .total = 100.0, -+ .attributes = Wlan1_Meter_attributes, -+ .name = "Wlan1", -+ .uiName = "Wlan1 IP", -+ .caption = "Wlan1 IP: ", -+}; -+ -+ -diff --git a/Wlan1_Meter.h b/Wlan1_Meter.h -new file mode 100644 -index 0000000..4bba228 ---- /dev/null -+++ b/Wlan1_Meter.h -@@ -0,0 +1,17 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_Wlan1_Meter -+#define HEADER_Wlan1_Meter -+/* -+htop - Eth0_Meter.h -+(C) 2018 @lex -+*/ -+ -+#include "Meter.h" -+ -+extern int Wlan1_Meter_attributes[]; -+ -+extern MeterClass Wlan1_Meter_class; -+ -+ -+#endif -diff --git a/htop.c b/htop.c -index 6db81dd..0044eb8 100644 ---- a/htop.c -+++ b/htop.c -@@ -1,6 +1,7 @@ - /* - htop - htop.c - (C) 2004-2011 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ -@@ -170,7 +171,6 @@ static void millisleep(unsigned long millisec) { - } - - int main(int argc, char** argv) { -- - char *lc_ctype = getenv("LC_CTYPE"); - if(lc_ctype != NULL) - setlocale(LC_CTYPE, lc_ctype); -@@ -193,6 +193,8 @@ int main(int argc, char** argv) { - UsersTable* ut = UsersTable_new(); - ProcessList* pl = ProcessList_new(ut, flags.pidWhiteList, flags.userId); - -+ Platform_findCpuBigLITTLE(pl->cpuCount, &pl->cpuBigLITTLE); -+ - Settings* settings = Settings_new(pl->cpuCount); - pl->settings = settings; - -@@ -243,7 +245,16 @@ int main(int argc, char** argv) { - mvhline(LINES-1, 0, ' ', COLS); - attroff(CRT_colors[RESET_COLOR]); - refresh(); -- -+ -+ Platform_getEth_stats("", -1, 1); -+ Platform_getIO_stats("", 0, 1); -+ Platform_getIO_stats("", 1, 1); -+ Platform_getIO_stats("", 2, 1); -+ Platform_getIO_stats("", 3, 1); -+ Platform_getIO_stats("", 4, 1); -+ Platform_getIO_stats("", 5, 1); -+ Platform_getIO_stats("", 6, 1); -+ Platform_getIO_stats("", 7, 1); - CRT_done(); - if (settings->changed) - Settings_write(settings); -diff --git a/htop.h b/htop.h -index 7faa6c6..05d5fd4 100644 ---- a/htop.h -+++ b/htop.h -@@ -5,6 +5,7 @@ - /* - htop - htop.h - (C) 2004-2011 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ -diff --git a/interfaces.c b/interfaces.c -new file mode 100644 -index 0000000..aa41d2a ---- /dev/null -+++ b/interfaces.c -@@ -0,0 +1,206 @@ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "interfaces.h" -+#include "Settings.h" -+ -+#define BLEN 256 -+/* -+ /etc/armbian-release -+ VERSION=20.02.1 -+ -+ /etc/debian_version -+ buster/sid -+ -+ cat /etc/lsb-release -+ DISTRIB_DESCRIPTION="Ubuntu 18.04.5 LTS" -+ -+ cat /etc/os-release -+ PRETTY_NAME="Ubuntu 18.04.5 LTS" -+ VERSION="18.04.5 LTS (Bionic Beaver)" -+ ID=ubuntu -+ -+ cat /proc/version -+ Linux version 5.3.0-52-generic (buildd@lgw01-amd64-037) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #46~18.04.1-Ubuntu SMP Thu Apr 30 16:13:51 UTC 2020 -+*/ -+ -+ -+int ReadKeyValue( char *fname, char *key, char *value) { -+ FILE* fp; -+ char buffer[BLEN]; -+ int fd = 0; -+ int len = strlen(key); -+ char *str; -+ char *str_end; -+ -+ fp = fopen(fname, "r"); -+ if (fp == NULL) -+ return fd; -+ -+ while (fgets(buffer, BLEN, fp) != NULL) { -+ str = strstr(buffer, key); -+ if (str != NULL) { -+ fd = 1; -+ str += len; -+ if (*str == '\"') { -+ str++; -+ len = strlen(str); -+ str_end = str + len; -+ while (*str_end != '\"') { -+ *str_end = 0; -+ str_end--; -+ if (str_end == str) -+ break; -+ } -+ *str_end = 0; -+ strcpy(value, str); -+ fd = 1; -+ } else { -+ strcpy(value, str); -+ fd = 1; -+ } -+ } -+ } -+ fclose(fp); -+ return fd; -+} -+ -+int ReadTokenValue( char *fname, char *key, char *value) { -+ FILE* fp; -+ char buffer[BLEN]; -+ int fd = 0; -+ int len = strlen(key); -+ char *str; -+ char *str_end; -+ -+ fp = fopen(fname, "r"); -+ if (fp == NULL) -+ return fd; -+ -+ while (fgets(buffer, BLEN, fp) != NULL) { -+ str = strstr(buffer, key); -+ if (str != NULL) { -+ fd = 1; -+ str += len; -+ str++; -+ str_end = str; -+ while (*str_end != ' ' && *str_end != 0) { -+ str_end++; -+ } -+ *str_end = 0; -+ strcpy(value, str); -+ fd = 1; -+ } -+ } -+ fclose(fp); -+ return fd; -+} -+ -+char *ltrim(char *str) { -+ while(isspace(*str)) -+ str++; -+ return str; -+} -+ -+char *rtrim(char *str) { -+ char* end = str + strlen(str); -+ while (isspace(*--end)) -+ ; -+ *(end + 1) = '\0'; -+ return str; -+} -+ -+char *trim(char *str) { -+ return rtrim(ltrim(str)); -+} -+ -+int FindDataValueFromKey( char *fname, char *key, char *value) { -+ FILE* fp; -+ char buffer[BLEN]; -+ int fd = 0; -+ char *str; -+ char *str_end; -+ char *str_start; -+ -+ fp = fopen(fname, "r"); -+ if (fp == NULL) -+ return fd; -+ -+ while (fgets(buffer, BLEN, fp) != NULL) { -+ str_start = buffer; -+ str_end = strchr(buffer, ':'); -+ if (str_end != NULL) { -+ *str_end = 0; -+ str_start = trim(str_start); -+ if (strcasecmp(str_start, key) == 0) { -+ str = str_end + 1; -+ str = trim(str); -+ strcpy(value, str); -+ printf("key: %s, value: %s\n", str_start, str); -+ fd = 1; -+ break; -+ } -+ } -+ } -+ fclose(fp); -+ return fd; -+} -+ -+ -+int findIP_interface(char *dev, char *szIP, int bufsz) { -+ struct ifaddrs *ifaddr, *ifa; -+ int family, s, n; -+ char host[NI_MAXHOST]; -+ int found_if = 0; -+ int len = strlen(dev); -+ -+ /* get interface information */ -+ if (getifaddrs(&ifaddr) != -1) { -+ for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa->ifa_next, n++) { -+ if (ifa->ifa_addr == NULL) -+ continue; -+ -+ family = ifa->ifa_addr->sa_family; -+ if ((strncmp (dev, ifa->ifa_name, len ) == 0) && (family == AF_INET || family == AF_INET6)) { -+ s = getnameinfo(ifa->ifa_addr, -+ (ifa->ifa_addr->sa_family == AF_INET) ? sizeof(struct sockaddr_in) : -+ sizeof(struct sockaddr_in6), -+ host, NI_MAXHOST, -+ NULL, 0, NI_NUMERICHOST); -+ if (s != 0) { -+ break; -+ } -+ if ((ifa->ifa_flags & IFF_UP) == 0) -+ continue; -+ if ((ifa->ifa_flags & IFF_RUNNING) == 0) -+ continue; -+ found_if = 1; -+ break; -+ } -+ } -+ if (found_if) { -+ snprintf ( szIP, bufsz, "%s", host ); -+ } -+ freeifaddrs(ifaddr); -+ } -+ return found_if; -+} -diff --git a/interfaces.h b/interfaces.h -new file mode 100644 -index 0000000..adb4e5b ---- /dev/null -+++ b/interfaces.h -@@ -0,0 +1,40 @@ -+/* Do not edit this file. It was automatically generated. */ -+ -+#ifndef HEADER_interfaces -+#define HEADER_interfaces -+ -+#define BLEN 256 -+/* -+ /etc/armbian-release -+ VERSION=20.02.1 -+ -+ /etc/debian_version -+ buster/sid -+ -+ cat /etc/lsb-release -+ DISTRIB_DESCRIPTION="Ubuntu 18.04.5 LTS" -+ -+ cat /etc/os-release -+ PRETTY_NAME="Ubuntu 18.04.5 LTS" -+ VERSION="18.04.5 LTS (Bionic Beaver)" -+ ID=ubuntu -+ -+ cat /proc/version -+ Linux version 5.3.0-52-generic (buildd@lgw01-amd64-037) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #46~18.04.1-Ubuntu SMP Thu Apr 30 16:13:51 UTC 2020 -+*/ -+ -+int ReadKeyValue( char *fname, char *key, char *value); -+ -+int ReadTokenValue( char *fname, char *key, char *value); -+ -+char *ltrim(char *str); -+ -+char *rtrim(char *str); -+ -+char *trim(char *str); -+ -+int FindDataValueFromKey( char *fname, char *key, char *value); -+ -+int findIP_interface(char *dev, char *szIP, int bufsz); -+ -+#endif -diff --git a/linux/Platform.c b/linux/Platform.c -index ab90ca7..e87089c 100644 ---- a/linux/Platform.c -+++ b/linux/Platform.c -@@ -1,6 +1,7 @@ - /* - htop - linux/Platform.c - (C) 2014 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ -@@ -14,6 +15,21 @@ in the source distribution for its full text. - - #include "Meter.h" - #include "CPUMeter.h" -+#include "CpuFreqMeter.h" -+#include "CpuTempMeter.h" -+#include "GpuTempMeter.h" -+#include "CpuVcoreMeter.h" -+#include "Eth0_StatsMeter.h" -+#include "Eth1_StatsMeter.h" -+#include "Wlan0_StatsMeter.h" -+#include "BlockDevice_ioStatsMeter.h" -+#include "Eth0_Meter.h" -+#include "Eth1_Meter.h" -+#include "Wlan0_Meter.h" -+#include "Wlan1_Meter.h" -+#include "Armbian_Meter.h" -+#include "OS_Meter.h" -+#include "Kernel_Meter.h" - #include "MemoryMeter.h" - #include "SwapMeter.h" - #include "TasksMeter.h" -@@ -22,12 +38,23 @@ in the source distribution for its full text. - #include "ClockMeter.h" - #include "HostnameMeter.h" - #include "LinuxProcess.h" -+#include "Settings.h" -+#include "interfaces.h" -+ -+#ifdef WIN32 -+#include -+#elif _POSIX_C_SOURCE >= 199309L -+#include /* for nanosleep */ -+#else -+#include /* for usleep */ -+#endif - - #include - #include - #include - #include - #include -+#include - - /*{ - #include "Action.h" -@@ -35,6 +62,50 @@ in the source distribution for its full text. - #include "BatteryMeter.h" - #include "LinuxProcess.h" - #include "SignalsPanel.h" -+#ifdef WIN32 -+#include -+#elif _POSIX_C_SOURCE >= 199309L -+#include -+#else -+#include -+#endif -+#include -+ -+ -+typedef enum vendor_id_ { -+ VENDOR_INTEL, -+ VENDOR_AMD, -+ VENDOR_CYRIX, -+ VENDOR_VIA, -+ VENDOR_TRANSMETA, -+ VENDOR_UMC, -+ VENDOR_NEXGEN, -+ VENDOR_RISE, -+ VENDOR_SIS, -+ VENDOR_NSC, -+ VENDOR_VORTEX, -+ VENDOR_RDC, -+ VENDOR_UNKNOWN -+} vendor_id; -+ -+typedef struct Stats_ { -+ int rx_over; -+ int tx_over; -+ double rx_bytes; -+ double tx_bytes; -+ double rx_bytes_comp; -+ double tx_bytes_comp; -+} Stats; -+ -+typedef struct ioStats_ { -+ int read_over; -+ int write_over; -+ double read_sectors; -+ double write_sectors; -+ double read_sectors_comp; -+ double write_sectors_comp; -+} ioStats; -+ - }*/ - - #ifndef CLAMP -@@ -45,6 +116,7 @@ ProcessField Platform_defaultFields[] = { PID, USER, PRIORITY, NICE, M_SIZE, M_R - - //static ProcessField defaultIoFields[] = { PID, IO_PRIORITY, USER, IO_READ_RATE, IO_WRITE_RATE, IO_RATE, COMM, 0 }; - -+int Platform_cpuBigLITTLE = 0; - int Platform_numberOfFields = LAST_PROCESSFIELD; - - const SignalItem Platform_signals[] = { -@@ -126,9 +198,270 @@ MeterClass* Platform_meterTypes[] = { - &LeftCPUs2Meter_class, - &RightCPUs2Meter_class, - &BlankMeter_class, -+ &CpuTempMeter_class, -+ &CpuFreqMeter_class, -+ /* --- fix me --- &AllCpuFreqMeter_class, */ -+ &CpuVcoreMeter_class, -+ &GpuTempMeter_class, -+ /* interfaces */ -+ &Eth0_Meter_class, -+ &Eth1_Meter_class, -+ &Wlan0_Meter_class, -+ &Wlan0_StatsMeter_class, -+ &Wlan1_Meter_class, -+ &OSversion_Meter_class, -+ &Kernelversion_Meter_class, -+ &Armbianversion_Meter_class, -+ &Eth0_StatsMeter_class, -+ &Eth1_StatsMeter_class, -+ &BlockDevice_sda_ioStatsMeter_class, -+ &BlockDevice_sdb_ioStatsMeter_class, -+ &BlockDevice_sdc_ioStatsMeter_class, -+ &BlockDevice_sdd_ioStatsMeter_class, -+ &BlockDevice_mmcblk0_ioStatsMeter_class, -+ &BlockDevice_mmcblk1_ioStatsMeter_class, -+ &BlockDevice_mmcblk2_ioStatsMeter_class, -+ &BlockDevice_mmcblk3_ioStatsMeter_class, - NULL - }; - -+/* cross-platform sleep function */ -+void sleep_ms(int milliseconds) { -+#ifdef WIN32 -+ Sleep(milliseconds); -+#elif _POSIX_C_SOURCE >= 199309L -+ struct timespec ts; -+ ts.tv_sec = milliseconds / 1000; -+ ts.tv_nsec = (milliseconds % 1000) * 1000000; -+ nanosleep(&ts, NULL); -+#else -+ usleep(milliseconds * 1000); -+#endif -+} -+ -+int Platform_getGpuTemp(Meter* this) { -+ int Temp = 0; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ -+ handler = settings->GpuTemp_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/class/thermal/thermal_zone1/temp"); -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", handler); -+ } -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/class/thermal/thermal_zone1/temp"); -+ } -+ -+ FILE* fd = fopen(szbuf, "r"); -+ if (!fd) { -+ fd = fopen("/sys/devices/virtual/thermal/thermal_zone1/temp", "r"); -+ } -+ if (fd) { -+ int n = fscanf(fd, "%d", &Temp); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Temp; -+} -+ -+int Platform_getCpuTemp(Meter* this) { -+ int Temp = 0; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ -+ handler = settings->CpuTemp_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/class/thermal/thermal_zone0/temp"); -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", handler); -+ } -+ } else { -+ // sleep_ms(30); -+ // xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/class/thermal/thermal_zone0/temp"); -+ } -+ FILE *fd = fopen(szbuf, "r"); -+ if (!fd) { -+ fd = fopen("/sys/devices/virtual/thermal/thermal_zone0/temp", "r"); -+ } -+ if (fd) { -+ int n = fscanf(fd, "%d", &Temp); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Temp; -+} -+ -+int Platform_getCpuFreq(Meter* this, int cpu) { -+ int Freq = 0; -+ FILE* fd; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ -+ handler = settings->CpuFreq_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ xSnprintf(szbuf, sizeof(szbuf), handler, cpu); -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", handler); -+ } -+ } else { -+ // sleep_ms(30); -+ // xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq"); -+ } -+ fd = fopen(szbuf, "r"); -+ if (fd) { -+ int n; -+ n = fscanf(fd, "%d", &Freq); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Freq; -+} -+ -+int Platform_getCpuVcore(Meter* this) { -+ int Vcore = 0; -+ FILE* fd; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ handler = settings->CpuVCore_l_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-001b/regulator/regulator.13/microvolts"); -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", handler); -+ } -+ } else { -+ xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-001b/regulator/regulator.13/microvolts"); -+ } -+ -+ // sleep_ms(10); -+ fd = fopen(szbuf, "r"); -+ if (fd) { -+ int n; -+ n = fscanf(fd, "%d", &Vcore); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Vcore; -+} -+ -+int Platform_getCpuVcore_l(Meter* this) { -+ int Vcore = 0; -+ FILE* fd; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ handler = settings->CpuVCore_l_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ strcpy(szbuf, "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-001b/regulator/regulator.13/microvolts"); -+ } else { -+ strcpy(szbuf, handler); -+ } -+ } else { -+ strcpy(szbuf, "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-001b/regulator/regulator.13/microvolts"); -+ } -+ -+ // sleep_ms(10); -+ fd = fopen(szbuf, "r"); -+ if (fd) { -+ int n; -+ n = fscanf(fd, "%d", &Vcore); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Vcore; -+} -+ -+int Platform_getCpuVcore_b(Meter* this) { -+ int Vcore = 0; -+ FILE* fd; -+ char szbuf[256]; -+ Settings* settings = this->pl->settings; -+ char *handler; -+ char *cpu_core_policy; -+ handler = settings->CpuVCore_b_handler; -+ if (handler[0] != 0) { -+ cpu_core_policy = strchr(handler, '%'); -+ if (cpu_core_policy) { -+ strcpy(szbuf, "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-0040/regulator/regulator.10/microvolts"); -+ } else { -+ strcpy(szbuf, handler); -+ } -+ } else { -+ strcpy(szbuf, "/sys/devices/platform/ff3c0000.i2c/i2c-0/0-0040/regulator/regulator.10/microvolts"); -+ } -+ // sleep_ms(10); -+ fd = fopen(szbuf, "r"); -+ if (fd) { -+ int n; -+ n = fscanf(fd, "%d", &Vcore); -+ fclose(fd); -+ if (n <= 0) return 0; -+ } -+ return Vcore; -+} -+ -+ -+int Platform_getCpuBigLITTLE() { -+ return Platform_cpuBigLITTLE; -+} -+ -+int Platform_findCpuBigLITTLE(int cpucount, int *cpuBigLITTLE) { -+ char buf[256]; -+ int n, prev, next; -+ FILE* fd; -+ -+ *cpuBigLITTLE = 0; -+ prev = next = -1; -+ int cpu = 0; -+ while (cpu < cpucount) { -+ xSnprintf(buf, sizeof(buf), "/sys/devices/system/cpu/cpu%d/cpufreq/cpuinfo_max_freq", cpu); -+ fd = fopen(buf, "r"); -+ if (fd) { -+ n = fscanf(fd, "%d", &next); -+ fclose(fd); -+ if (n <= 0) -+ break; -+ if (prev == -1) { -+ prev = next; -+ } else { -+ if (prev != next) { -+ if (prev < next) { -+ Platform_cpuBigLITTLE = cpu; -+ } else { -+ Platform_cpuBigLITTLE = cpu * -1; /* fix me */ -+ } -+ *cpuBigLITTLE = Platform_cpuBigLITTLE; -+ break; -+ } -+ } -+ } -+ cpu++; -+ } -+ return cpu; -+} -+ - int Platform_getUptime() { - double uptime = 0; - FILE* fd = fopen(PROCDIR "/uptime", "r"); -@@ -237,3 +570,177 @@ char* Platform_getProcessEnv(pid_t pid) { - } - return env; - } -+ -+Stats Platform_Eth0_stats; -+Stats Platform_Eth1_stats; -+Stats Platform_Wlan0_stats; -+ -+int Platform_getEth_stats(char *devname, int id, int close_fp) { -+ char buffer[BLEN]; -+ char *str; -+ char *str_end; -+ char *str_start; -+ unsigned long dump; -+ int ifound; -+ unsigned long rx_o, tx_o; -+ Stats *Platform_Eth_stats; -+ static FILE *fp_proc_net_dev = NULL; -+ -+ if (close_fp) { -+ if (fp_proc_net_dev) -+ fclose(fp_proc_net_dev); -+ return 0; -+ } -+ -+ if (fp_proc_net_dev == NULL) { -+ if ((fp_proc_net_dev = fopen("/proc/net/dev", "r")) == NULL) { -+ return 0; -+ } -+ } -+ if (id == 0) { -+ Platform_Eth_stats = &Platform_Eth0_stats; -+ } else { -+ if (id == 1) { -+ Platform_Eth_stats = &Platform_Eth1_stats; -+ } else { -+ Platform_Eth_stats = &Platform_Wlan0_stats; -+ } -+ } -+ -+ /* save rx/tx values */ -+ rx_o = Platform_Eth_stats->rx_bytes; -+ tx_o = Platform_Eth_stats->tx_bytes; -+ -+ /* do not parse the first two lines as they only contain static garbage */ -+ fseek(fp_proc_net_dev, 0, SEEK_SET); -+ fgets(buffer, BLEN, fp_proc_net_dev); -+ fgets(buffer, BLEN, fp_proc_net_dev); -+ -+ ifound = 0; -+ while (fgets(buffer, BLEN, fp_proc_net_dev) != NULL) { -+ str_start = buffer; -+ str_end = strchr(buffer, ':'); -+ if (str_end != NULL) { -+ *str_end = 0; -+ str_start = trim(str_start); -+ if (strcasecmp(str_start, devname) == 0) { -+ str = str_end + 1; -+ str = ltrim(str); -+ sscanf(str, -+ "%lg %lu %lu %lu %lu %lu %lu %lu %lg %lu %lu %lu %lu %lu %lu %lu", -+ &Platform_Eth_stats->rx_bytes, &dump, &dump, -+ &dump, &dump, &dump, &dump, &dump, &Platform_Eth_stats->tx_bytes, -+ &dump, &dump, &dump, &dump, &dump, &dump, &dump); -+ ifound = 1; -+ continue; -+ } -+ } -+ } -+ if (ifound) { -+ if (rx_o > Platform_Eth_stats->rx_bytes) -+ Platform_Eth_stats->rx_over++; -+ if (tx_o > Platform_Eth_stats->tx_bytes) -+ Platform_Eth_stats->tx_over++; -+ } -+ return ifound; -+} -+ -+double get_wall_time(void) { -+ struct timeval time; -+ if (gettimeofday(&time, NULL)) -+ return 0.; -+ return (double) time.tv_sec + (double) time.tv_usec * .000001; -+} -+ -+ioStats Platform_BlockDevice_sda_stats; -+ioStats Platform_BlockDevice_sdb_stats; -+ioStats Platform_BlockDevice_sdc_stats; -+ioStats Platform_BlockDevice_sdd_stats; -+ioStats Platform_BlockDevice_mmcblk0_stats; -+ioStats Platform_BlockDevice_mmcblk1_stats; -+ioStats Platform_BlockDevice_mmcblk2_stats; -+ioStats Platform_BlockDevice_mmcblk3_stats; -+ -+FILE *fp_block_dev_a[8] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }; -+ -+int Platform_getIO_stats(char *devname, int idx, int close_fp) { -+ char block_device[80] = {0}; -+ char buffer[BLEN] = {0}; -+ unsigned long dump; -+ unsigned long read_o, write_o; -+ ioStats *Platform_io_stats; -+ FILE *fp_block_dev = NULL; -+ -+ if (idx > 7) -+ idx = 0; -+ -+ fp_block_dev = fp_block_dev_a[idx]; -+ -+ if (close_fp) { -+ if (fp_block_dev) -+ fclose(fp_block_dev); -+ return 0; -+ } -+ if (devname && *devname == 0) -+ return 0; -+ -+ if (fp_block_dev == NULL) { -+ xSnprintf(block_device, sizeof(block_device), "/sys/block/%s/stat", devname); -+ if ((fp_block_dev = fopen(block_device, "r")) == NULL) { -+ return 0; -+ } -+ fp_block_dev_a[idx] = fp_block_dev; -+ } -+ -+ switch(idx) { -+ case 0: -+ Platform_io_stats = &Platform_BlockDevice_sda_stats; -+ break; -+ case 1: -+ Platform_io_stats = &Platform_BlockDevice_sdb_stats; -+ break; -+ case 2: -+ Platform_io_stats = &Platform_BlockDevice_sdc_stats; -+ break; -+ case 3: -+ Platform_io_stats = &Platform_BlockDevice_sdd_stats; -+ break; -+ case 4: -+ Platform_io_stats = &Platform_BlockDevice_mmcblk0_stats; -+ break; -+ case 5: -+ Platform_io_stats = &Platform_BlockDevice_mmcblk1_stats; -+ break; -+ case 6: -+ Platform_io_stats = &Platform_BlockDevice_mmcblk2_stats; -+ break; -+ case 7: -+ Platform_io_stats = &Platform_BlockDevice_mmcblk3_stats; -+ break; -+ default: -+ Platform_io_stats = &Platform_BlockDevice_sda_stats; -+ break; -+ } -+ /* save read/write values */ -+ read_o = Platform_io_stats->read_sectors; -+ write_o = Platform_io_stats->write_sectors; -+ fseek(fp_block_dev, 0, SEEK_SET); -+ if (fgets(buffer, BLEN - 1, fp_block_dev) != NULL) { -+ sscanf(buffer, -+ "%lu %lu %lg %lu %lu %lu %lg %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu", -+ &dump, &dump, &Platform_io_stats->read_sectors, &dump, &dump, -+ &dump, &Platform_io_stats->write_sectors, &dump, &dump, &dump, &dump, -+ &dump, &dump, &dump, &dump, &dump, &dump); -+ } else { -+ return 0; -+ } -+ -+ while (fgets(buffer, BLEN - 1, fp_block_dev) != NULL) -+ ; -+ -+ if (read_o > Platform_io_stats->read_sectors) -+ Platform_io_stats->read_over++; -+ if (write_o > Platform_io_stats->write_sectors) -+ Platform_io_stats->write_over++; -+ return 1; -+} -diff --git a/linux/Platform.h b/linux/Platform.h -index b0456e5..54dbf80 100644 ---- a/linux/Platform.h -+++ b/linux/Platform.h -@@ -5,15 +5,65 @@ - /* - htop - linux/Platform.h - (C) 2014 Hisham H. Muhammad -+(C) 2020 Alexander Finger - Released under the GNU GPL, see the COPYING file - in the source distribution for its full text. - */ - -+#ifdef WIN32 -+#elif _POSIX_C_SOURCE >= 199309L -+#else -+#endif -+ - #include "Action.h" - #include "MainPanel.h" - #include "BatteryMeter.h" - #include "LinuxProcess.h" - #include "SignalsPanel.h" -+#ifdef WIN32 -+#include -+#elif _POSIX_C_SOURCE >= 199309L -+#include -+#else -+#include -+#endif -+#include -+ -+ -+typedef enum vendor_id_ { -+ VENDOR_INTEL, -+ VENDOR_AMD, -+ VENDOR_CYRIX, -+ VENDOR_VIA, -+ VENDOR_TRANSMETA, -+ VENDOR_UMC, -+ VENDOR_NEXGEN, -+ VENDOR_RISE, -+ VENDOR_SIS, -+ VENDOR_NSC, -+ VENDOR_VORTEX, -+ VENDOR_RDC, -+ VENDOR_UNKNOWN -+} vendor_id; -+ -+typedef struct Stats_ { -+ int rx_over; -+ int tx_over; -+ double rx_bytes; -+ double tx_bytes; -+ double rx_bytes_comp; -+ double tx_bytes_comp; -+} Stats; -+ -+typedef struct ioStats_ { -+ int read_over; -+ int write_over; -+ double read_sectors; -+ double write_sectors; -+ double read_sectors_comp; -+ double write_sectors_comp; -+} ioStats; -+ - - #ifndef CLAMP - #define CLAMP(x,low,high) (((x)>(high))?(high):(((x)<(low))?(low):(x))) -@@ -21,6 +71,7 @@ in the source distribution for its full text. - - extern ProcessField Platform_defaultFields[]; - -+extern int Platform_cpuBigLITTLE; - extern int Platform_numberOfFields; - - extern const SignalItem Platform_signals[]; -@@ -31,6 +82,25 @@ void Platform_setBindings(Htop_Action* keys); - - extern MeterClass* Platform_meterTypes[]; - -+/* cross-platform sleep function */ -+void sleep_ms(int milliseconds); -+ -+int Platform_getGpuTemp(Meter* this); -+ -+int Platform_getCpuTemp(Meter* this); -+ -+int Platform_getCpuFreq(Meter* this, int cpu); -+ -+int Platform_getCpuVcore(Meter* this); -+ -+int Platform_getCpuVcore_l(Meter* this); -+ -+int Platform_getCpuVcore_b(Meter* this); -+ -+int Platform_getCpuBigLITTLE(); -+ -+int Platform_findCpuBigLITTLE(int cpucount, int *cpuBigLITTLE); -+ - int Platform_getUptime(); - - void Platform_getLoadAverage(double* one, double* five, double* fifteen); -@@ -45,4 +115,25 @@ void Platform_setSwapValues(Meter* this); - - char* Platform_getProcessEnv(pid_t pid); - -+Stats Platform_Eth0_stats; -+Stats Platform_Eth1_stats; -+Stats Platform_Wlan0_stats; -+ -+int Platform_getEth_stats(char *devname, int id, int close_fp); -+ -+double get_wall_time(void); -+ -+ioStats Platform_BlockDevice_sda_stats; -+ioStats Platform_BlockDevice_sdb_stats; -+ioStats Platform_BlockDevice_sdc_stats; -+ioStats Platform_BlockDevice_sdd_stats; -+ioStats Platform_BlockDevice_mmcblk0_stats; -+ioStats Platform_BlockDevice_mmcblk1_stats; -+ioStats Platform_BlockDevice_mmcblk2_stats; -+ioStats Platform_BlockDevice_mmcblk3_stats; -+ -+extern FILE *fp_block_dev_a[8]; -+ -+int Platform_getIO_stats(char *devname, int idx, int close_fp); -+ - #endif diff --git a/packages/extras-buildpkgs/htop/debian/patches/cpu-temperatute-from-hwmon.patch b/packages/extras-buildpkgs/htop/debian/patches/cpu-temperatute-from-hwmon.patch deleted file mode 100644 index 02a11f4fe9ef..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/cpu-temperatute-from-hwmon.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/linux/Platform.c b/linux/Platform.c -index bde3e3b..e7e2010 100644 ---- a/linux/Platform.c -+++ b/linux/Platform.c -@@ -175,6 +175,9 @@ int Platform_getCpuTemp() { - if (!fd) { - fd = fopen("/sys/devices/virtual/thermal/thermal_zone0/temp", "r"); - } -+ if (!fd) { -+ fd = fopen("/sys/class/hwmon/hwmon0/temp1_input", "r"); -+ } - if (fd) { - int n = fscanf(fd, "%d", &Temp); - fclose(fd); diff --git a/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-for-non-root.patch b/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-for-non-root.patch deleted file mode 100644 index a12abf3c7d56..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-for-non-root.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff --git a/linux/Platform.c b/linux/Platform.c -index cd95463..f9e644e 100644 ---- a/linux/Platform.c -+++ b/linux/Platform.c -@@ -287,7 +287,7 @@ int Platform_getCpuTemp(Meter* this) { - } - } else { - // sleep_ms(30); -- // xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -+ // xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/scaling_cur_freq", cpu); - xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/class/thermal/thermal_zone0/temp"); - } - FILE *fd = fopen(szbuf, "r"); -@@ -304,7 +304,6 @@ int Platform_getCpuTemp(Meter* this) { - - int Platform_getCpuFreq(Meter* this, int cpu) { - int Freq = 0; -- FILE* fd; - char szbuf[256]; - Settings* settings = this->pl->settings; - char *handler; -@@ -318,18 +317,28 @@ int Platform_getCpuFreq(Meter* this, int cpu) { - } else { - xSnprintf(szbuf, sizeof(szbuf), "%s", handler); - } -+ ReadIntFromFile(szbuf, &Freq); - } else { -- // sleep_ms(30); -- xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -+ // sleep_ms(30); -+ xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/scaling_cur_freq", cpu); -+ if (ReadIntFromFile(szbuf, &Freq) < 0) { -+ xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -+ ReadIntFromFile(szbuf, &Freq); -+ } - } -- fd = fopen(szbuf, "r"); -+ return Freq; -+} -+ -+int ReadIntFromFile(char *file_name, int *out) { -+ FILE *fd; -+ fd = fopen(file_name, "r"); - if (fd) { - int n; -- n = fscanf(fd, "%d", &Freq); -+ n = fscanf(fd, "%d", out); - fclose(fd); -- if (n <= 0) return 0; -+ return n; - } -- return Freq; -+ return 0; - } - - int Platform_getCpuVcore(Meter* this) { diff --git a/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-on-biglittle.patch b/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-on-biglittle.patch deleted file mode 100644 index a8ca9b16e31c..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/fix-cpufreq-meter-on-biglittle.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a/CpuFreqMeter.c b/CpuFreqMeter.c -index a2f39eb..5436156 100644 ---- a/CpuFreqMeter.c -+++ b/CpuFreqMeter.c -@@ -47,9 +47,7 @@ static void CpuFreqMeter_setValues(Meter* this, char* buffer, int len) { - xSnprintf(buf_b, ln, "%4d MHz", Freq); - } - -- cpu--; -- if (cpu < 0) -- cpu = 0; -+ cpu = 0; - Freq = Platform_getCpuFreq(this, cpu); - if (Freq > 1000) { - Freq /= 1000; -diff --git a/linux/Platform.c b/linux/Platform.c -index e87089c..cd95463 100644 ---- a/linux/Platform.c -+++ b/linux/Platform.c -@@ -320,8 +320,7 @@ int Platform_getCpuFreq(Meter* this, int cpu) { - } - } else { - // sleep_ms(30); -- // xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); -- xSnprintf(szbuf, sizeof(szbuf), "%s", "/sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq"); -+ xSnprintf(szbuf, sizeof(szbuf), "/sys/devices/system/cpu/cpufreq/policy%d/cpuinfo_cur_freq", cpu); - } - fd = fopen(szbuf, "r"); - if (fd) { diff --git a/packages/extras-buildpkgs/htop/debian/patches/fix-linux-process.patch b/packages/extras-buildpkgs/htop/debian/patches/fix-linux-process.patch deleted file mode 100644 index 3caef041faec..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/fix-linux-process.patch +++ /dev/null @@ -1,13 +0,0 @@ -Make sure the auto-regenerated headers (after scripts/MakeHeader.py) actually compile. - ---- a/linux/LinuxProcess.c 2018-04-26 18:17:31.349248819 +0200 -+++ b/linux/LinuxProcess.c 2018-04-11 02:58:46.994360617 +0200 -@@ -143,7 +143,7 @@ - } LinuxProcess; - - #ifndef Process_isKernelThread --#define Process_isKernelThread(_process) ((LinuxProcess*)(_process)->isKernelThread) -+#define Process_isKernelThread(_process) (((LinuxProcess*)(_process))->isKernelThread) - #endif - - #ifndef Process_isUserlandThread diff --git a/packages/extras-buildpkgs/htop/debian/patches/fix-unchecked-buffer-writes-in-avafinger-cpu-monitor.patch b/packages/extras-buildpkgs/htop/debian/patches/fix-unchecked-buffer-writes-in-avafinger-cpu-monitor.patch deleted file mode 100644 index d9d115c8b5e2..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/fix-unchecked-buffer-writes-in-avafinger-cpu-monitor.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff --git a/Settings.c b/Settings.c -index 912ad7d..94503f6 100644 ---- a/Settings.c -+++ b/Settings.c -@@ -273,37 +273,37 @@ static bool Settings_read(Settings* this, const char* fileName) { - Settings_readMeterModes(this, option[1], 1); - didReadMeters = true; - } else if (String_eq(option[0], "BoardName")) { -- strcpy(this->BoardName,option[1]); -+ String_safeStrncpy(this->BoardName, option[1], sizeof(this->BoardName)); - didReadMeters = true; - } else if (String_eq(option[0], "CpuFreq_handler")) { -- strcpy(this->CpuFreq_handler,option[1]); -+ String_safeStrncpy(this->CpuFreq_handler, option[1], sizeof(this->CpuFreq_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "CpuTemp_handler")) { -- strcpy(this->CpuTemp_handler,option[1]); -+ String_safeStrncpy(this->CpuTemp_handler, option[1], sizeof(this->CpuTemp_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "CpuVCore_l_handler")) { -- strcpy(this->CpuVCore_l_handler,option[1]); -+ String_safeStrncpy(this->CpuVCore_l_handler, option[1], sizeof(this->CpuVCore_l_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "CpuVCore_b_handler")) { -- strcpy(this->CpuVCore_b_handler,option[1]); -+ String_safeStrncpy(this->CpuVCore_b_handler, option[1], sizeof(this->CpuVCore_b_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "GpuVCore_handler")) { -- strcpy(this->GpuVCore_handler,option[1]); -+ String_safeStrncpy(this->GpuVCore_handler, option[1], sizeof(this->GpuVCore_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "GpuTemp_handler")) { -- strcpy(this->GpuTemp_handler,option[1]); -+ String_safeStrncpy(this->GpuTemp_handler, option[1], sizeof(this->GpuTemp_handler)); - didReadMeters = true; - } else if (String_eq(option[0], "eth0_alias")) { -- strcpy(this->eth0_alias,option[1]); -+ String_safeStrncpy(this->eth0_alias, option[1], sizeof(this->eth0_alias)); - didReadMeters = true; - } else if (String_eq(option[0], "eth1_alias")) { -- strcpy(this->eth1_alias,option[1]); -+ String_safeStrncpy(this->eth1_alias, option[1], sizeof(this->eth1_alias)); - didReadMeters = true; - } else if (String_eq(option[0], "wlan0_alias")) { -- strcpy(this->wlan0_alias,option[1]); -+ String_safeStrncpy(this->wlan0_alias, option[1], sizeof(this->wlan0_alias)); - didReadMeters = true; - } else if (String_eq(option[0], "wlan1_alias")) { -- strcpy(this->wlan1_alias,option[1]); -+ String_safeStrncpy(this->wlan1_alias, option[1], sizeof(this->wlan1_alias)); - didReadMeters = true; - } - -diff --git a/StringUtils.c b/StringUtils.c -index 0578cde..fd1c3db 100644 ---- a/StringUtils.c -+++ b/StringUtils.c -@@ -154,3 +154,17 @@ char* String_readLine(FILE* fd) { - at = buffer + bufSize - step; - } - } -+ -+// Function borowed from upstream htop, see: -+// https://github.com/htop-dev/htop/blob/feec16cbb53dabc6a52ef2f69a6a13798be82617/XUtils.c#L196-L206 -+size_t String_safeStrncpy(char *restrict dest, const char *restrict src, size_t size) { -+ assert(size > 0); -+ -+ size_t i = 0; -+ for (; i < size - 1 && src[i]; i++) -+ dest[i] = src[i]; -+ -+ dest[i] = '\0'; -+ -+ return i; -+} -diff --git a/StringUtils.h b/StringUtils.h -index d3378b3..22d0bd5 100644 ---- a/StringUtils.h -+++ b/StringUtils.h -@@ -33,4 +33,6 @@ char* String_getToken(const char* line, const unsigned short int numMatch); - - char* String_readLine(FILE* fd); - -+size_t String_safeStrncpy(char *restrict dest, const char *restrict src, size_t size); -+ - #endif -diff --git a/interfaces.c b/interfaces.c -index aa41d2a..312851b 100644 ---- a/interfaces.c -+++ b/interfaces.c -@@ -22,6 +22,7 @@ - - #include "interfaces.h" - #include "Settings.h" -+#include "StringUtils.h" - - #define BLEN 256 - /* -@@ -72,10 +73,10 @@ int ReadKeyValue( char *fname, char *key, char *value) { - break; - } - *str_end = 0; -- strcpy(value, str); -+ String_safeStrncpy(value, str, sizeof(value)); - fd = 1; - } else { -- strcpy(value, str); -+ String_safeStrncpy(value, str, sizeof(value)); - fd = 1; - } - } -@@ -107,7 +108,7 @@ int ReadTokenValue( char *fname, char *key, char *value) { - str_end++; - } - *str_end = 0; -- strcpy(value, str); -+ String_safeStrncpy(value, str, sizeof(value)); - fd = 1; - } - } -@@ -154,7 +155,7 @@ int FindDataValueFromKey( char *fname, char *key, char *value) { - if (strcasecmp(str_start, key) == 0) { - str = str_end + 1; - str = trim(str); -- strcpy(value, str); -+ String_safeStrncpy(value, str, sizeof(value)); - printf("key: %s, value: %s\n", str_start, str); - fd = 1; - break; diff --git a/packages/extras-buildpkgs/htop/debian/patches/remove-fancy-flashing.patch b/packages/extras-buildpkgs/htop/debian/patches/remove-fancy-flashing.patch deleted file mode 100644 index c6aefe604f8c..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/remove-fancy-flashing.patch +++ /dev/null @@ -1,356 +0,0 @@ -diff --git a/BlockDevice_ioStatsMeter.c b/BlockDevice_ioStatsMeter.c -index 9dccbde..95532cd 100644 ---- a/BlockDevice_ioStatsMeter.c -+++ b/BlockDevice_ioStatsMeter.c -@@ -26,7 +26,6 @@ static void BlockDevice_sda_ioStatsMeter_setValues(Meter* this, char* buffer, in - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -81,11 +80,7 @@ static void BlockDevice_sda_ioStatsMeter_setValues(Meter* this, char* buffer, in - Platform_BlockDevice_sda_stats.write_sectors_comp = Platform_BlockDevice_sda_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -112,7 +107,6 @@ static void BlockDevice_sdb_ioStatsMeter_setValues(Meter* this, char* buffer, in - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -167,11 +161,7 @@ static void BlockDevice_sdb_ioStatsMeter_setValues(Meter* this, char* buffer, in - Platform_BlockDevice_sdb_stats.write_sectors_comp = Platform_BlockDevice_sdb_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -198,7 +188,6 @@ static void BlockDevice_sdc_ioStatsMeter_setValues(Meter* this, char* buffer, in - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -253,11 +242,7 @@ static void BlockDevice_sdc_ioStatsMeter_setValues(Meter* this, char* buffer, in - Platform_BlockDevice_sdc_stats.write_sectors_comp = Platform_BlockDevice_sdc_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -284,7 +269,6 @@ static void BlockDevice_sdd_ioStatsMeter_setValues(Meter* this, char* buffer, in - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -339,11 +323,7 @@ static void BlockDevice_sdd_ioStatsMeter_setValues(Meter* this, char* buffer, in - Platform_BlockDevice_sdd_stats.write_sectors_comp = Platform_BlockDevice_sdd_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -370,7 +350,6 @@ static void BlockDevice_mmcblk0_ioStatsMeter_setValues(Meter* this, char* buffer - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -425,11 +404,7 @@ static void BlockDevice_mmcblk0_ioStatsMeter_setValues(Meter* this, char* buffer - Platform_BlockDevice_mmcblk0_stats.write_sectors_comp = Platform_BlockDevice_mmcblk0_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -456,7 +431,6 @@ static void BlockDevice_mmcblk1_ioStatsMeter_setValues(Meter* this, char* buffer - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -511,11 +485,7 @@ static void BlockDevice_mmcblk1_ioStatsMeter_setValues(Meter* this, char* buffer - Platform_BlockDevice_mmcblk1_stats.write_sectors_comp = Platform_BlockDevice_mmcblk1_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -542,7 +512,6 @@ static void BlockDevice_mmcblk2_ioStatsMeter_setValues(Meter* this, char* buffer - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -597,11 +566,7 @@ static void BlockDevice_mmcblk2_ioStatsMeter_setValues(Meter* this, char* buffer - Platform_BlockDevice_mmcblk2_stats.write_sectors_comp = Platform_BlockDevice_mmcblk2_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -@@ -628,7 +593,6 @@ static void BlockDevice_mmcblk3_ioStatsMeter_setValues(Meter* this, char* buffer - char block_device[80]; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - static unsigned long sec_size = 0; - FILE *fp; - -@@ -683,11 +647,7 @@ static void BlockDevice_mmcblk3_ioStatsMeter_setValues(Meter* this, char* buffer - Platform_BlockDevice_mmcblk3_stats.write_sectors_comp = Platform_BlockDevice_mmcblk3_stats.write_sectors; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavailable"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavailable"); - } - } - -diff --git a/CpuFreqMeter.c b/CpuFreqMeter.c -index 6508180..a2f39eb 100644 ---- a/CpuFreqMeter.c -+++ b/CpuFreqMeter.c -@@ -23,7 +23,6 @@ static void CpuFreqMeter_setValues(Meter* this, char* buffer, int len) { - char buf_b[32]; - char buf_l[32]; - int ln = sizeof(buf_l); -- static int pulse = 0; - - memset(buf_l, 0, sizeof(buf_l)); - memset(buf_b, 0, sizeof(buf_b)); -@@ -66,11 +65,7 @@ static void CpuFreqMeter_setValues(Meter* this, char* buffer, int len) { - xSnprintf(buf_l, ln, "%4d MHz", Freq); - } - -- if (pulse) -- xSnprintf(buffer, len, "%s %s (big.LITTLE)", buf_b, buf_l, pulse); -- else -- xSnprintf(buffer, len, "%s %s ", buf_b, buf_l, pulse); -- pulse = !pulse; -+ xSnprintf(buffer, len, "%s %s (big.LITTLE)", buf_b, buf_l); - return; - } - -@@ -89,7 +84,6 @@ static void CpuFreqMeter_setValues(Meter* this, char* buffer, int len) { - } else { - xSnprintf(buffer, len, "%4d MHz", Freq); - } -- pulse = !pulse; - } - - MeterClass CpuFreqMeter_class = { -diff --git a/Eth0_Meter.c b/Eth0_Meter.c -index 90e512a..21e4b05 100644 ---- a/Eth0_Meter.c -+++ b/Eth0_Meter.c -@@ -35,11 +35,10 @@ static void Eth0_Meter_setValues(Meter* this, char* buffer, int len) { - ret = findIP_interface("eth0", szIP, sizeof(szIP)); - } - -- if (ret) { -- xSnprintf(buffer, len, "%s", szIP); -- } else { -- xSnprintf(buffer, len, "%s", "down"); -+ if (!ret) { -+ snprintf(szIP, sizeof(szIP), "%s", "down"); - } -+ xSnprintf(buffer, len, "%s", szIP); - } - - MeterClass Eth0_Meter_class = { -diff --git a/Eth0_StatsMeter.c b/Eth0_StatsMeter.c -index 974c656..1a42334 100644 ---- a/Eth0_StatsMeter.c -+++ b/Eth0_StatsMeter.c -@@ -27,7 +27,6 @@ static void Eth0_StatsMeter_setValues(Meter* this, char* buffer, int len) { - double refreshdelay; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - - now = get_wall_time(); - refreshdelay = now - old; -@@ -57,11 +56,7 @@ static void Eth0_StatsMeter_setValues(Meter* this, char* buffer, int len) { - Platform_Eth0_stats.tx_bytes_comp = Platform_Eth0_stats.tx_bytes; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavail"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavail"); - } - } - -diff --git a/Eth1_Meter.c b/Eth1_Meter.c -index 41cfa05..181370f 100644 ---- a/Eth1_Meter.c -+++ b/Eth1_Meter.c -@@ -35,11 +35,10 @@ static void Eth1_Meter_setValues(Meter* this, char* buffer, int len) { - ret = findIP_interface("eth1", szIP, sizeof(szIP)); - } - -- if (ret) { -- xSnprintf(buffer, len, "%s", szIP); -- } else { -- xSnprintf(buffer, len, "%s", "down"); -+ if (!ret) { -+ snprintf(szIP, sizeof(szIP), "%s", "down"); - } -+ xSnprintf(buffer, len, "%s", szIP); - } - - MeterClass Eth1_Meter_class = { -diff --git a/Eth1_StatsMeter.c b/Eth1_StatsMeter.c -index 85e6dc9..e7c5718 100644 ---- a/Eth1_StatsMeter.c -+++ b/Eth1_StatsMeter.c -@@ -27,7 +27,6 @@ static void Eth1_StatsMeter_setValues(Meter* this, char* buffer, int len) { - double refreshdelay; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - - now = get_wall_time(); - refreshdelay = now - old; -@@ -57,11 +56,7 @@ static void Eth1_StatsMeter_setValues(Meter* this, char* buffer, int len) { - Platform_Eth1_stats.tx_bytes_comp = Platform_Eth1_stats.tx_bytes; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavail"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavail"); - } - } - -diff --git a/Wlan0_Meter.c b/Wlan0_Meter.c -index bf75623..8296a6c 100644 ---- a/Wlan0_Meter.c -+++ b/Wlan0_Meter.c -@@ -33,11 +33,10 @@ static void Wlan0_Meter_setValues(Meter* this, char* buffer, int len) { - ret = findIP_interface("wlan0", szIP, sizeof(szIP)); - } - -- if (ret) { -- xSnprintf(buffer, len, "%s", szIP); -- } else { -- xSnprintf(buffer, len, "%s", "down"); -+ if (!ret) { -+ snprintf(szIP, sizeof(szIP), "%s", "down"); - } -+ xSnprintf(buffer, len, "%s", szIP); - } - - MeterClass Wlan0_Meter_class = { -diff --git a/Wlan0_StatsMeter.c b/Wlan0_StatsMeter.c -index f920f9c..9ced108 100644 ---- a/Wlan0_StatsMeter.c -+++ b/Wlan0_StatsMeter.c -@@ -27,7 +27,6 @@ static void Wlan0_StatsMeter_setValues(Meter* this, char* buffer, int len) { - double refreshdelay; - static double old = 0.; - static double now = 0.; -- static int flash = 0; - - now = get_wall_time(); - refreshdelay = now - old; -@@ -57,11 +56,7 @@ static void Wlan0_StatsMeter_setValues(Meter* this, char* buffer, int len) { - Platform_Wlan0_stats.tx_bytes_comp = Platform_Wlan0_stats.tx_bytes; - - } else { -- if (!(flash % 2)) -- xSnprintf(buffer, len, "%s", "unavail"); -- else -- xSnprintf(buffer, len, "%s", ""); -- flash++; -+ xSnprintf(buffer, len, "%s", "unavail"); - } - } - -diff --git a/Wlan1_Meter.c b/Wlan1_Meter.c -index c5acd69..4c5fcea 100644 ---- a/Wlan1_Meter.c -+++ b/Wlan1_Meter.c -@@ -35,11 +35,10 @@ static void Wlan1_Meter_setValues(Meter* this, char* buffer, int len) { - ret = findIP_interface("wlan1", szIP, sizeof(szIP)); - } - -- if (ret) { -- xSnprintf(buffer, len, "%s", szIP); -- } else { -- xSnprintf(buffer, len, "%s", "down"); -+ if (!ret) { -+ snprintf(szIP, sizeof(szIP), "%s", "down"); - } -+ xSnprintf(buffer, len, "%s", szIP); - } - - MeterClass Wlan1_Meter_class = { diff --git a/packages/extras-buildpkgs/htop/debian/patches/series b/packages/extras-buildpkgs/htop/debian/patches/series deleted file mode 100644 index 9c1db79247a6..000000000000 --- a/packages/extras-buildpkgs/htop/debian/patches/series +++ /dev/null @@ -1,8 +0,0 @@ -780-fix-option-string.patch -fix-linux-process.patch -avafinger-cpu-monitor.patch -fix-unchecked-buffer-writes-in-avafinger-cpu-monitor.patch -remove-fancy-flashing.patch -fix-cpufreq-meter-on-biglittle.patch -fix-cpufreq-meter-for-non-root.patch -cpu-temperatute-from-hwmon.patch diff --git a/packages/extras-buildpkgs/htop/debian/rules b/packages/extras-buildpkgs/htop/debian/rules deleted file mode 100755 index d5bcbe33410c..000000000000 --- a/packages/extras-buildpkgs/htop/debian/rules +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/make -f - -export DEB_BUILD_MAINT_OPTIONS = hardening=+all -DPKG_EXPORT_BUILDFLAGS = 1 -include /usr/share/dpkg/buildflags.mk - -ifeq (linux,$(DEB_HOST_ARCH_OS)) - ARCH_DEPENDENT_CONFIGURE_PARAMS = --enable-linux-affinity -else - ARCH_DEPENDENT_CONFIGURE_PARAMS = --enable-hwloc -endif - -%: - dh $@ - -override_dh_auto_configure: - dh_auto_configure -- \ - --enable-taskstats \ - --enable-openvz \ - --enable-vserver \ - --enable-cgroup \ - --enable-unicode \ - $(ARCH_DEPENDENT_CONFIGURE_PARAMS) diff --git a/packages/extras-buildpkgs/htop/debian/source/format b/packages/extras-buildpkgs/htop/debian/source/format deleted file mode 100644 index 163aaf8d82b6..000000000000 --- a/packages/extras-buildpkgs/htop/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/packages/extras-buildpkgs/htop/debian/upstream/signing-key.asc b/packages/extras-buildpkgs/htop/debian/upstream/signing-key.asc deleted file mode 100644 index 0a418fa07622..000000000000 --- a/packages/extras-buildpkgs/htop/debian/upstream/signing-key.asc +++ /dev/null @@ -1,65 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v2.0.22 (GNU/Linux) -Comment: from http://hisham.hm/public_key - -mQINBFgXtC8BEAC63n7b7ZaYuXjfAwHY5hVZLbc1nM33csFLGi+vIVuYO45nUUax -CM7QSwADncr9GLHqULEvVQ6hgPGPCik0La4FtyLphqiHXlNeKVwnLqO4OCo45KJv -KEYDkq7w8SK6wxNu+aEY0PVN7aEnk6AwidWsNavbott7GQbuS+9gDyN+LGazLi+6 -IB9+3mAlfvJUCG9qtKFIt2EsGqEYINie9TXTub4duw1ZEoR7Smjwo8caDQZUQQlc -Sbdc0TLymVtnfb1WAWyRZO059GG0lLgfoRNlupAkNkXQawXDLtU+3A6QJnJUD+qd -VbagJNqbpooeM5FY45s1Dpjpu+CQ7N4ufUYy5hzNhNdCphFmROehdo+ncpP3WRw1 -W4Ti36WC/NSocTmXKuMmwP4W3E8NVNy9jv3guaDcDZi8ugOFsz4sLa2stJDVj7QA -oiJHhQQHqbBWBC2sEt5Ya1KuHet23eiNbBt6bRCXzcs4veKBB1Ax3aFFIBW0P/kh -Pe+vy+lH74AtkcRNd2Qq7lMTW+04THSctI6jcLwWOlxKELZgp3M8hI89GvWwTV+g -ZNnzTY0Wi0GQGHC19fAeywxMijpAWEGiF/oLow3NNyVhxeA/38eAQCzBdzZPPFH+ -QiYO2DD1yE0UFDesYUEzmzml7bT8P5DX9geh5zLW5F6cqD+hE2i0Wt++BwARAQAB -tCZIaXNoYW0gTXVoYW1tYWQgPGhpc2hhbUBnb2JvbGludXgub3JnPokCNwQTAQgA -IQUCWBe0LwIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRA/2PQ8K7PEeDSJ -EACER7tqgOEzoft81kBoDIAyhW4ioQMHsIi6cERpRTRWsTBj7+oFgWHZfrit+gVv -17bWdWNQNE26ZEtZfYnHZ00MB9KFwWiul2mtM+Pz4ufFnffZdkYsDVF0j3nOCR1f -+m/8xzgMKy6c+GJkbE8FGwn7nYxhRDbqCF7HJOsiHwI2zEJTJKIXaFXxxTgF5KAw -FjZOFO2jw4FSNzGiATr+y2itTGY0xTI+k2uXBIxM3VH/AxXQJSSpL1XRT2q20bHJ -dsmq+EbisC8VwbHMrT6yXr54N+BXdIdxxfaMsQVtB7MH2Jpu4Q0k6dUPa4u5r6Ij -IYvG31Y8qcNr8WuRkDPVWcjKQ6Hp5pkRQoGWB9lYFghFjNQ9ChiFIXggHHbpx/XG -JM0UrLOstqf+tMLEsJeF7Rs4YDxAvb/BLD0onpqkFFUnraHtFzIKRemlrnX7yL5G -0FL4HCZXPbzVzV3PPZauHTIpaI39u3ZicO54CaOlt6AjKBZmtoZCRPUbBpSSh/uL -OKmVqAsqXfzKfOHnqW7LTieiUggvlNLfeQ17bvr5hnfAKTmnqeAz1Xrdjo2h+LAH -PXSTDrytNfPQqO4I072AkP6FiFMB0xMuPBPRnCRWur6R0z6U2Q22G72FNBxh0bYA -NJ3QmOdYNmL+xEZMZccq+/LmlRWhl0jkOCaSD/ruTqB5+bQdSGlzaGFtIE11aGFt -bWFkIDxoQGhpc2hhbS5obT6JAjoEEwEIACQCGwMFCwkIBwMFFQoJCAsFFgIDAQAC -HgECF4AFAlgXvEQCGQEACgkQP9j0PCuzxHhVpg/8CfQ7fFxzMgoUUI2IzUKnBKYo -igt9KDSV+OroT0CCEFaZLaDa9xsZE81uDpvvhnTxAr04JYsKtrOI2lOnjnVJzBAY -LcHF2aSncdKkLf8LoALJ14Amxwj7AXI7j2okqrxLuJOFzhUxTQqL18/RpIM+3nvF -ylaQLajLHpcfkQJza13ccYAAu87ScP8vpPEouw9zgSSB/lWmcW0F+xKzZLgbt69u -hlhKSofd/N/PzqMsssvpHkP+ql2ZWN6+62mncnuvO4EfUBZJBWPtFyozrvMlsyLt -5F99q1RZGeVzY6Jf7ATwsMpH1yH0a4ryDrK4XTB0UYcXJrgQysltSPT7dFyOWvjw -RzHdRrHv7xj0chCoMYk1GlMiMoa6jXrHdwVw+tfTyLwnyFTu8xsoZ5dN8gjEF8Mb -Vo0EFuAsEe2wJCbKmdt6bKTTTcEOCWOFJOfn+z73/LDsf1X5kREKD8N3uJuMMTHo -QZ3iEAKNax8Es7RrMSvOXFfDDjhBQ8YlZd06cFMRpxhpP1Q+7oBQkCmcDxCMsJRe -Rk7J09Idt7pRhAtFb5yWNiTh7MCrYO9pDKQSM2UdSolUfDNoGwcjL5XV4PHIFA8x -ETTLzCsjO9LJQ1XPrsnxfxHx7VnKILrDH+Z+nPvX/Ll36OeRNa9zy8iMGgcJt3xF -+tLm3Fx7KZsXVxrYZz25Ag0EWBe0LwEQALFYOSbANalfQ3tnN2MTNdGoJ30BoR+j -zaqdYB6wAJti1NYZG61KVlaahN6IFrvlMe6stdpoyRwCYYWR7EmdIdwkId+2mn2V -YnHIQghtfcYzs1w6d3fmbprPmVDYVa+JNo0/SgfNLgp8Qr8fKM7EhkI91WUVIIhy -X+otI4p0kpslPRezMW8ChPpxdtAgEaie1+EsadOc3S3DxeI6e1QwffGVMlHmvXsA -JEU8bBh28qHOtXQ0GoDVVssYkMsSVIoAh21lKiojEflxkuftweZOsYM6MNmlxGAY -m1rly7FOubiEQ4DnghyPAzjuPBxELrkmm4Bvq1WKRVSN3hIHCt7VCyExs6gcp4bD -lp9wK06I+qC6PeFTwK5P42GQkfqrJuQUjVnT77SeM31mWw1pWq/7xRqbjgSw86+g -WGGFhuQNjxJZPZ7yZBhR4EaDnR8XoYcxcPq+NrFwfGAyA5wIcdX3e8J1oF2UREKm -yj1vgxCO+FTiQMYlN0oFQobhz7o1oaR+wjC4idzp4SCGVaOLFPxRU08ezNEn/zzo -IuqdizcZjtgzea5j83pRLcuhdQhhKb/pnO7PiHYWuIFIhVnNVt+NUDBA9e2H1bnB -m3Xug3NbFg0EWd01Nw8hA4pU5d3j7s+ubddyA09+RUD1Fe9f33B7Rax49Y/mIcqx -j05MGUVY8JZHABEBAAGJAh8EGAEIAAkFAlgXtC8CGwwACgkQP9j0PCuzxHgThQ// -f8K+u6/Bo38u9TEduEdKOJXkPMUCYDda7PizQ/OXMaFCd9Jr6zNjfNpBVqk+YMzi -eziWqlUZGHj86zs5aQHBhBhj2H05jUMTi5lh8rM3j+5NZ7hlJm9Xn1Y0cfiMUlCO -7icG9J2J8zvJ82ONm+Vp3FOlluny8Axo9OkuwXzUbdbTV4JOyQtYiUYaEMPbbBtB -cVdjEH35jlGkFvc0OMTF5s2iHnjKfbexXDhqWHIhErJpH3hBerXB/yxRps1enyT9 -SRum2KFBjgKYQ0JVm4sZOK8zH41SYleGW6i1COxegXXfO3vKvDsAsnfDHpEXh0Zl -wZo8E8tU+zWw9PpS1ljTCBtTsGX25mS+dYBZ7Xfh92fJbWOM/etWUwt+AOAKsAyK -Pmr4jfXwDer9Dtw8RKIkt5xaI9k4o0RW/CH0Cv06Y93IBZCnKRFZubGk3BmHH2xA -xAcR3apL3ZUlvA17zgI1D7TMIo3ydr2qwPRepsLkrmh5nvSQmLD0k7ym8LVeO5tD -7rJIq8V2KUpzT0ldcpxYoCk9gN8ifQjTUdk0t64Cx+ywfsiLLJWHDTBq/iAhNq+M -4g6HOM1GZu8aIoIAtKSiPIeFQGHfuOJcX0kV4GVAsCYzokbuSFDGQCpdSrGiySHA -SJZKVMLCnjlSplh3gkfnEEZNmy8L727oON+zd0hth/4= -=2P/4 ------END PGP PUBLIC KEY BLOCK----- diff --git a/packages/extras-buildpkgs/htop/debian/watch b/packages/extras-buildpkgs/htop/debian/watch deleted file mode 100644 index b3c2edff4fcd..000000000000 --- a/packages/extras-buildpkgs/htop/debian/watch +++ /dev/null @@ -1,4 +0,0 @@ -version=4 -opts=dversionmangle=s/\+svn(.*)//,\ -pgpsigurlmangle=s/$/.asc/ \ -https://hisham.hm/htop/releases/([\d\.]+)/htop-([\d\.]+)\.tar\.gz diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/changelog b/packages/extras-buildpkgs/sunxi-tools/debian/changelog deleted file mode 100644 index 3cb2bd174f3d..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/changelog +++ /dev/null @@ -1,23 +0,0 @@ -sunxi-tools (1.3-1) unstable; urgency=medium - - * New upstream release. - - Support for new "spl" sub command to the fel tool. - - Various bug fixes. - * Update Vcs-* to point to anonscm. - * Recommend split u-boot-sunxi package only. - - -- Ian Campbell Tue, 24 Nov 2015 20:27:33 +0000 - -sunxi-tools (1.2-2) unstable; urgency=medium - - * Create a "sunxi-fel" group and add udev rules to make the FEL mode USB - device available to members of that group. - * Include upstream README in the package (Closes: #757642) - - -- Ian Campbell Mon, 25 Aug 2014 21:40:38 +0100 - -sunxi-tools (1.2-1) unstable; urgency=medium - - * Initial release (Closes: #750104). - - -- Ian Campbell Sat, 12 Jul 2014 20:51:56 +0100 diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/compat b/packages/extras-buildpkgs/sunxi-tools/debian/compat deleted file mode 100644 index ec635144f600..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/control b/packages/extras-buildpkgs/sunxi-tools/debian/control deleted file mode 100644 index 2a301deaeb16..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/control +++ /dev/null @@ -1,29 +0,0 @@ -Source: sunxi-tools -Section: utils -Priority: optional -Maintainer: Ian Campbell -Build-Depends: debhelper (>= 9), - pkg-config, - u-boot-tools, - binutils-arm-none-eabi, - ruby, - libusb-1.0-0-dev, - libfdt-dev, - zlib1g-dev -Standards-Version: 3.9.5 -Vcs-Git: git://anonscm.debian.org/collab-maint/sunxi-tools.git -Vcs-Browser: http://anonscm.debian.org/cgit/collab-maint/sunxi-tools.git -Homepage: http://linux-sunxi.org/Sunxi-tools - -Package: sunxi-tools -Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} -Description: tools for working with Allwinner (sunxi) ARM processors - This package contains various tools for working with devices based around the - Allwinner sunxi processors (A10/A13/A20/A31 etc). Utilities include tools to: - . - - interact with the processors' lowlevel bootrom (AKA FEL mode). - - boot over the USB OTG port. - - compile and decompile the Allwinner binary hardware descriptions (FEX - files). - - display information about sunxi boot headers. diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/copyright b/packages/extras-buildpkgs/sunxi-tools/debian/copyright deleted file mode 100644 index a2250021dd33..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/copyright +++ /dev/null @@ -1,96 +0,0 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: sunxi-tools -Upstream-Contact: Alejandro Mery , linux-sunxi@googlegroups.com -Source: git://github.com/linux-sunxi/sunxi-tools.git - -Files: adb-devprobe.sh - fel-gpio - include/endian_compat.h -Copyright: 2012 Henrik Nordstrom - 2012 Eric Molitor -License: MIT - -Files: README - Makefile - boot_head.S boot_head.lds - fel-pio.c fel-pio.lds - fel-sdboot.c fel-sdboot.lds - jtag-loop.c jtag-loop.S jtag-loop.lds - bootinfo.c - common.h - fel.c - fel-copy.c - fexc.c fexc.h - nand-common.h - nand-part-a10.h - nand-part-a20.h - nand-part.c - nand-part-main.c - phoenix_info.c - pio.c - script.c script.h - script_bin.c script_bin.h - script_fex.c script_fex.h - script_uboot.c script_uboot.h - include/types.h -Copyright: 2011,2012,2013 Henrik Nordstrom - 2012 Alejandro Mery - 2012 Jens Andersen - 2013 Patrick Wood - 2013 Pat Wood - 2012,2013 Patrick H Wood. - 2007-2012 Allwinner Technology Co., Ltd. -License: GPL-2+ - -Files: fel-to-spl-thunk.S fel-to-spl-thunk.h -Copyright: 2015 Siarhei Siamashka -License: MIT - -Files: meminfo.c -Copyright: 2012 Floris Bos - 2014 Luc Verhaegen -License: GPL-2+ - -Files: script_extractor.c -Copyright: 2015 Olliver Schinagl -License: GPL-2+ - -Files: debian/* -Copyright: 2014 Ian Campbell -License: GPL-2+ - -License: GPL-2+ - 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 - along with this program. If not, see . - . - On Debian systems, the complete text of the GNU General Public License version - 2 can be found in `/usr/share/common-licenses/GPL-2'. - -License: MIT - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - . - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - . - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/rules b/packages/extras-buildpkgs/sunxi-tools/debian/rules deleted file mode 100644 index ad2dc03f3522..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/rules +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/make -f -# -*- makefile -*- - -include /usr/share/dpkg/architecture.mk - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -%: - dh $@ - -override_dh_auto_clean: - dh_auto_clean - rm -f bin/fel-pio.* bin/*.sunxi - -override_dh_auto_build: - $(MAKE) EXTRA_CFLAGS="$(CFLAGS) $(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" tools - -override_dh_auto_install: PKG := debian/sunxi-tools -override_dh_auto_install: - $(MAKE) install-tools DESTDIR=$(CURDIR)/$(PKG) PREFIX=/usr diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/source/format b/packages/extras-buildpkgs/sunxi-tools/debian/source/format deleted file mode 100644 index 163aaf8d82b6..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/source/patch-header b/packages/extras-buildpkgs/sunxi-tools/debian/source/patch-header deleted file mode 100644 index cc7b7b10b78e..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/source/patch-header +++ /dev/null @@ -1,5 +0,0 @@ -This patch contains the complete set of Debian changes. - -See http://git.debian.org/?p=collab-maint/sunxi-tools.git for individual patches -and history. - diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.dirs b/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.dirs deleted file mode 100644 index 111fa737c77b..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.dirs +++ /dev/null @@ -1,2 +0,0 @@ -usr/bin -usr/share/sunxi-tools diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.docs b/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.docs deleted file mode 100644 index b43bf86b50fd..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.docs +++ /dev/null @@ -1 +0,0 @@ -README.md diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.postinst b/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.postinst deleted file mode 100644 index e692edf70557..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.postinst +++ /dev/null @@ -1,26 +0,0 @@ -#! /bin/sh - -set -e - -case "$1" in - configure) - - addgroup --system --quiet sunxi-fel - - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - - ;; - - *) - - echo "postinst called with unknown argument \`$1'" >&2 - exit 0 - - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.udev b/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.udev deleted file mode 100644 index bc90bd60f03a..000000000000 --- a/packages/extras-buildpkgs/sunxi-tools/debian/sunxi-tools.udev +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEMS=="usb", ATTR{idVendor}=="1f3a", ATTR{idProduct}=="efe8", GROUP="sunxi-fel"