mirror of
https://github.com/pentoo/pentoo-overlay
synced 2026-05-08 12:30:44 +02:00
updated madwifi-hal to add karma support. w00t
This commit is contained in:
parent
898d96de0c
commit
ef9e48f9ef
3 changed files with 35 additions and 96 deletions
|
|
@ -1,4 +1,4 @@
|
|||
AUX madwifi-hal-digininja-karma-updated.patch 15927 RMD160 a41dc0e86f1d474704d911fa47924fdddb6a7ea4 SHA1 7b3e65bed82634dd04d4a69bad71fef4e97cd65b SHA256 ffc0ded27c4f27fe107a921b75d74ea1b8a41c2d6fe2606296e7c207467b00f5
|
||||
AUX madwifi-hal-digininja-karma-updated_1.patch 13367 RMD160 0aec423b72ef38503e730da5a500d68907ff8482 SHA1 cac1b0ba1ef9852dced5bc02e78766f43ecbdfd9 SHA256 e37cf81cd9121bfa84e9ff97c7154d07ff5db2c1a4eb6909171b4ced5aebd647
|
||||
AUX madwifi-hal-injection-r3925.patch 1176 RMD160 8147fbd8919bb6e48f1ea7f327c1bb2eaee76bef SHA1 eff3598129235b30e3841652fc3ec8770a7aa5a4 SHA256 2bb1d618ab01f08cd4b15a66bd4dd6d0dbcebba301edd14c5b0e9095eb23a6cc
|
||||
AUX madwifi-hal-release_header_fix.patch 582 RMD160 9ffcdda76be8d5561adb893fa9fced0064cbf25b SHA1 9038ce45e4a3b7477067843d591ebe45fd3ec84b SHA256 5572ba1214c55d99baf2f613e7a2d2c6432844d40025e335d502e8e6d9954c09
|
||||
DIST madwifi-hal-0.10.5.6-r3917-20090116.tar.gz 4421921 RMD160 833301ec92cda683737d639b59d29332970097f3 SHA1 22bf3d5980586fc956c8437477ae3f481ccdaa69 SHA256 06d6a65f467f3a8cbc42251e2be53487425db37d55f7e4cbc7aa31edb9c0d81e
|
||||
|
|
@ -6,4 +6,4 @@ DIST madwifi-hal-0.10.5.6-r3942-20090205.tar.gz 4421112 RMD160 6c2589d08e64c1ec1
|
|||
DIST madwifi-hal-0.10.5.6-r3977-20090408.tar.gz 4422482 RMD160 3e65325e4985b88a1e3bc522d0129cd18af90dc1 SHA1 c6aa1c3cd75c60c3d01a363606a3803784c13d37 SHA256 36caffc316a329f77c5a90adc9230c6f4181ac16dc2fe7ef76c0a2eb34dfc983
|
||||
EBUILD madwifi-hal-0.10.5.6-r3917.ebuild 3154 RMD160 b16c74c718c6d4ca5e97cc0b365a4a06361ea3c0 SHA1 2c2b7628e0633107b3c5d30f4cb2a2fc12549115 SHA256 975f979ddfd9578b431ebdedd8c1d4bcb2246521c99d50e327032adcc65b3835
|
||||
EBUILD madwifi-hal-0.10.5.6-r3942.ebuild 4798 RMD160 52e1771a9854d8eef55523ac70428bcc3c565cf9 SHA1 f136073d1a8f3c27fc1799eddc1a9050936ec457 SHA256 b1d56cf0769dfeaa9f2112fd8fb3674f012e99eac6960215262a9eb19f6074a0
|
||||
EBUILD madwifi-hal-0.10.5.6-r3977.ebuild 4888 RMD160 678aa881e85b0264332c837fb71d252ced9bd183 SHA1 73093aac909c94d8bf245579e4586cea57a96de8 SHA256 7f424ad390e35a51e040255dbdd76db76cb839d410fe0b5a5b694f5b280d2acd
|
||||
EBUILD madwifi-hal-0.10.5.6-r3977.ebuild 4888 RMD160 044252a3b985e69db5467860999bf890bb1d1ec2 SHA1 9010bb141413ae9140ee4af20c0c43f1a030b87d SHA256 8a15240e59e38bcafffdee8a20349d601b9cddd2124f47751966ec17d4d46771
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/ath/if_ath.c madwifi-hal-0.10.5.6-r3977-20090408-newkarma/ath/if_ath.c
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/ath/if_ath.c 2009-04-08 12:07:08.000000000 -0400
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/ath/if_ath.c 2009-04-08 12:18:36.000000000 -0400
|
||||
diff -Naur ./ath/if_ath.c ../madwifi-hal-patched/ath/if_ath.c
|
||||
--- ./ath/if_ath.c 2009-04-10 00:52:27.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/ath/if_ath.c 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -657,6 +657,9 @@
|
||||
rfkill ? "on" : "off");
|
||||
ath_hal_setrfsilent(ah, rfkill);
|
||||
|
|
@ -11,9 +11,9 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/ath/if_ath.c madwifi-hal-0.10.5.6
|
|||
/*
|
||||
* Setup rate tables for all potential media types.
|
||||
*/
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211.h madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211.h
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211.h 2008-07-05 19:19:37.000000000 -0400
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211.h 2009-04-08 12:14:08.000000000 -0400
|
||||
diff -Naur ./net80211/ieee80211.h ../madwifi-hal-patched/net80211/ieee80211.h
|
||||
--- ./net80211/ieee80211.h 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211.h 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -996,4 +996,13 @@
|
||||
*/
|
||||
#define IEEE80211_TSF_LEN 8
|
||||
|
|
@ -28,9 +28,9 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211.h madwifi-hal-
|
|||
+} karma_ssid_t;
|
||||
+
|
||||
#endif /* _NET80211_IEEE80211_H_ */
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_input.c madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_input.c
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_input.c 2008-07-23 20:14:35.000000000 -0400
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_input.c 2009-04-08 12:14:08.000000000 -0400
|
||||
diff -Naur ./net80211/ieee80211_input.c ../madwifi-hal-patched/net80211/ieee80211_input.c
|
||||
--- ./net80211/ieee80211_input.c 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211_input.c 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -1709,6 +1709,41 @@
|
||||
} while (0)
|
||||
#endif /* !IEEE80211_DEBUG */
|
||||
|
|
@ -39,7 +39,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_input.c madwif
|
|||
+ /* Reject any 0 length ssids */ \
|
||||
+ if (_ssid[1] == 0) { \
|
||||
+ vap->iv_stats.is_rx_ssidmismatch++; \
|
||||
+ return; \
|
||||
+ return 0; \
|
||||
+ } \
|
||||
+ \
|
||||
+ traverse = ic->karma_list; \
|
||||
|
|
@ -58,14 +58,14 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_input.c madwif
|
|||
+ ieee80211_print_essid(_ssid + 2, _ssid[1]); \
|
||||
+ printk ("] not found in whitelist so rejecting\n"); \
|
||||
+ vap->iv_stats.is_rx_ssidmismatch++; \
|
||||
+ return; \
|
||||
+ return 0; \
|
||||
+ } \
|
||||
+ if (karma_match && !ic->ic_karma_black_white) { \
|
||||
+ printk ("KARMA: ssid ["); \
|
||||
+ ieee80211_print_essid(_ssid + 2, _ssid[1]); \
|
||||
+ printk ("] found in blacklist so rejecting\n"); \
|
||||
+ vap->iv_stats.is_rx_ssidmismatch++; \
|
||||
+ return; \
|
||||
+ return 0; \
|
||||
+ } \
|
||||
+} while (0)
|
||||
+
|
||||
|
|
@ -155,9 +155,9 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_input.c madwif
|
|||
ieee80211_node_join(ni, resp);
|
||||
#ifdef ATH_SUPERG_XR
|
||||
if (ni->ni_prev_vap &&
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_ioctl.h madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_ioctl.h
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_ioctl.h 2008-04-09 18:25:51.000000000 -0400
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_ioctl.h 2009-04-08 12:20:19.000000000 -0400
|
||||
diff -Naur ./net80211/ieee80211_ioctl.h ../madwifi-hal-patched/net80211/ieee80211_ioctl.h
|
||||
--- ./net80211/ieee80211_ioctl.h 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211_ioctl.h 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -555,6 +555,7 @@
|
||||
#define IEEE80211_IOCTL_WDSADDMAC (SIOCIWFIRSTPRIV+26)
|
||||
#define IEEE80211_IOCTL_WDSDELMAC (SIOCIWFIRSTPRIV+28)
|
||||
|
|
@ -180,9 +180,9 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_ioctl.h madwif
|
|||
};
|
||||
|
||||
#define SIOCG80211STATS (SIOCDEVPRIVATE+2)
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_output.c madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_output.c
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_output.c 2009-01-13 21:43:13.000000000 -0500
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_output.c 2009-04-08 12:14:08.000000000 -0400
|
||||
diff -Naur ./net80211/ieee80211_output.c ../madwifi-hal-patched/net80211/ieee80211_output.c
|
||||
--- ./net80211/ieee80211_output.c 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211_output.c 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -1835,9 +1835,17 @@
|
||||
*(__le16 *)frm = htole16(capinfo);
|
||||
frm += 2;
|
||||
|
|
@ -203,9 +203,9 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_output.c madwi
|
|||
|
||||
/* supported rates */
|
||||
frm = ieee80211_add_rates(frm, &ni->ni_rates);
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_var.h madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_var.h
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_var.h 2009-04-06 20:03:41.000000000 -0400
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_var.h 2009-04-08 12:22:20.000000000 -0400
|
||||
diff -Naur ./net80211/ieee80211_var.h ../madwifi-hal-patched/net80211/ieee80211_var.h
|
||||
--- ./net80211/ieee80211_var.h 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211_var.h 2009-04-10 00:33:29.000000000 +0100
|
||||
@@ -520,6 +520,14 @@
|
||||
unsigned int (*ic_read_register)(struct ieee80211com *, unsigned int, unsigned int*);
|
||||
#endif /* #ifdef ATH_REVERSE_ENGINEERING */
|
||||
|
|
@ -221,10 +221,10 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_var.h madwifi-
|
|||
};
|
||||
|
||||
#define MAX_PROC_IEEE80211_SIZE 16383
|
||||
diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_wireless.c
|
||||
--- madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c 2009-01-23 13:23:39.000000000 -0500
|
||||
+++ madwifi-hal-0.10.5.6-r3977-20090408-newkarma/net80211/ieee80211_wireless.c 2009-04-08 12:24:32.000000000 -0400
|
||||
@@ -2127,6 +2127,108 @@
|
||||
diff -Naur ./net80211/ieee80211_wireless.c ../madwifi-hal-patched/net80211/ieee80211_wireless.c
|
||||
--- ./net80211/ieee80211_wireless.c 2009-04-10 00:49:00.000000000 +0100
|
||||
+++ ../madwifi-hal-patched/net80211/ieee80211_wireless.c 2009-04-10 00:42:13.000000000 +0100
|
||||
@@ -2127,6 +2127,57 @@
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
@ -278,62 +278,11 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int
|
||||
+ieee80211_ioctl_karma_addssid(struct net_device *dev, struct iw_request_info *info,
|
||||
+ struct iw_point *wri, char *extra)
|
||||
+{
|
||||
+ struct ieee80211vap *vap = dev->priv;
|
||||
+ struct ieee80211com *ic = vap->iv_ic;
|
||||
+ char s[IEEE80211_NWID_LEN + 1]; // +1 for null terminator
|
||||
+ int length;
|
||||
+ karma_ssid_t *karma_ssid;
|
||||
+
|
||||
+ /*
|
||||
+ * The buffer is a max size of 32 chars so the last char may be
|
||||
+ * the null terminator or may be a character if the string has been truncated
|
||||
+ * by whatever gets the string into here
|
||||
+ */
|
||||
+
|
||||
+ if (wri->length == IEEE80211_NWID_LEN && (wri->pointer + IEEE80211_NWID_LEN) != 0) {
|
||||
+ length = wri->length; // no null terminator as the max buffer size has already done the truncation
|
||||
+ } else {
|
||||
+ if (wri->length > IEEE80211_NWID_LEN) {
|
||||
+ length = IEEE80211_NWID_LEN; // truncate to max length
|
||||
+ } else {
|
||||
+ length = wri->length - 1; // In this case the length will include the null terminator
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (length == 0) {
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
+ if (copy_from_user(s, wri->pointer, length))
|
||||
+ return -EINVAL;
|
||||
+
|
||||
+ printk ("KARMA: Adding the following ssid to the list [");
|
||||
+ ieee80211_print_essid(wri->pointer, length);
|
||||
+ printk ("]\n");
|
||||
+
|
||||
+ karma_ssid = kmalloc (sizeof (karma_ssid_t), GFP_KERNEL);
|
||||
+
|
||||
+ if (copy_from_user(karma_ssid->ssid, wri->pointer, length))
|
||||
+ return -EINVAL;
|
||||
+
|
||||
+ karma_ssid->length = length;
|
||||
+
|
||||
+ // Add to list
|
||||
+ karma_ssid->next = ic->karma_list;
|
||||
+ ic->karma_list = karma_ssid;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int
|
||||
ieee80211_ioctl_setmode(struct net_device *dev, struct iw_request_info *info,
|
||||
struct iw_point *wri, char *extra)
|
||||
{
|
||||
@@ -2288,8 +2390,43 @@
|
||||
@@ -2288,8 +2339,43 @@
|
||||
int j, caps, bmiss;
|
||||
const struct ieee80211_authenticator *auth;
|
||||
const struct ieee80211_aclator *acl;
|
||||
|
|
@ -377,7 +326,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
case IEEE80211_PARAM_AUTHMODE:
|
||||
switch (value) {
|
||||
case IEEE80211_AUTH_WPA: /* WPA */
|
||||
@@ -2967,6 +3104,12 @@
|
||||
@@ -2967,6 +3053,12 @@
|
||||
unsigned int *param = (unsigned int *)extra;
|
||||
|
||||
switch (param[0]) {
|
||||
|
|
@ -390,7 +339,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
case IEEE80211_PARAM_AUTHMODE:
|
||||
if (vap->iv_flags & IEEE80211_F_WPA)
|
||||
param[0] = IEEE80211_AUTH_WPA;
|
||||
@@ -5256,6 +5399,8 @@
|
||||
@@ -5256,6 +5348,8 @@
|
||||
IW_PRIV_BLOB_TYPE_ENCODING(sizeof(struct ieee80211req_getset_appiebuf) + IEEE80211_APPIE_MAX)
|
||||
#define IW_PRIV_TYPE_FILTER \
|
||||
IW_PRIV_BLOB_TYPE_ENCODING(sizeof(struct ieee80211req_set_filter))
|
||||
|
|
@ -399,7 +348,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
|
||||
static const struct iw_priv_args ieee80211_priv_args[] = {
|
||||
/* NB: setoptie & getoptie are !IW_PRIV_SIZE_FIXED */
|
||||
@@ -5644,6 +5789,22 @@
|
||||
@@ -5644,6 +5738,22 @@
|
||||
0, IW_PRIV_TYPE_APPIEBUF, "getiebuf" },
|
||||
{ IEEE80211_IOCTL_FILTERFRAME,
|
||||
IW_PRIV_TYPE_FILTER , 0, "setfilter" },
|
||||
|
|
@ -422,7 +371,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
{ IEEE80211_PARAM_RSSI_EWMA,
|
||||
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "rssi_ewma" },
|
||||
{ IEEE80211_PARAM_RSSI_EWMA,
|
||||
@@ -5662,6 +5823,7 @@
|
||||
@@ -5662,6 +5772,7 @@
|
||||
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "debug_scanbufs" },
|
||||
{ IEEE80211_PARAM_LEAKTXBUFS,
|
||||
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1, 0, "debug_leaktxbufs" },
|
||||
|
|
@ -430,17 +379,7 @@ diff -Naur madwifi-hal-0.10.5.6-r3977-20090408/net80211/ieee80211_wireless.c mad
|
|||
|
||||
#ifdef ATH_REVERSE_ENGINEERING
|
||||
/*
|
||||
@@ -5674,6 +5836,9 @@
|
||||
{ IEEE80211_IOCTL_WRITEREG,
|
||||
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 2, 0, "writereg" },
|
||||
#endif /* #ifdef ATH_REVERSE_ENGINEERING */
|
||||
+
|
||||
+ /* KARMA */
|
||||
+ set_priv(IEEE80211_IOCTL_KARMA_ADDSSID, ieee80211_ioctl_karma_addssid),
|
||||
};
|
||||
|
||||
#define set_handler(x,f) [x - SIOCIWFIRST] = (iw_handler) f
|
||||
@@ -5761,6 +5926,9 @@
|
||||
@@ -5761,6 +5872,9 @@
|
||||
set_priv(IEEE80211_IOCTL_READREG, ieee80211_ioctl_readreg),
|
||||
set_priv(IEEE80211_IOCTL_WRITEREG, ieee80211_ioctl_writereg),
|
||||
#endif /* #ifdef ATH_REVERSE_ENGINEERING */
|
||||
|
|
@ -15,7 +15,7 @@ SRC_URI="http://snapshots.madwifi-project.org/${P}/${MY_PVR}.tar.gz"
|
|||
LICENSE="atheros-hal
|
||||
|| ( BSD GPL-2 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
KEYWORDS="amd64 ~ppc x86"
|
||||
IUSE="+injection default +karma"
|
||||
DEPEND="app-arch/sharutils
|
||||
net-wireless/athload"
|
||||
|
|
@ -64,7 +64,7 @@ src_unpack() {
|
|||
cd "${S}"
|
||||
epatch "${FILESDIR}"/${PN}-release_header_fix.patch
|
||||
if use injection; then epatch "${FILESDIR}/${PN}-injection-r3925.patch"; fi
|
||||
if use karma; then epatch "${FILESDIR}/${PN}-digininja-karma-updated.patch"; fi
|
||||
if use karma; then epatch "${FILESDIR}/${PN}-digininja-karma-updated_1.patch"; fi
|
||||
for dir in ath ath_hal net80211 ath_rate ath_rate/amrr ath_rate/minstrel ath_rate/onoe ath_rate/sample; do
|
||||
convert_to_m "${S}"/${dir}/Makefile
|
||||
done
|
||||
|
|
|
|||
Loading…
Reference in a new issue