diff options
Diffstat (limited to 'net-wireless/aircrack-ng/files/ignore-channel-1-error.patch')
-rw-r--r-- | net-wireless/aircrack-ng/files/ignore-channel-1-error.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/net-wireless/aircrack-ng/files/ignore-channel-1-error.patch b/net-wireless/aircrack-ng/files/ignore-channel-1-error.patch new file mode 100644 index 00000000..6189af13 --- /dev/null +++ b/net-wireless/aircrack-ng/files/ignore-channel-1-error.patch @@ -0,0 +1,65 @@ +Adapted for version 1.1 by Zero_Chaos based on original + +From: Paul Fertser <fercerpav@gmail.com> +Date: Wed, 12 Jan 2011 00:27:07 +0300 +Subject: [PATCH] aireplay-ng: add an option to ignore channel -1 error + +Allow the user to ignore the channel match check when the host kernel is +not providing channel for the used interface. Required with unpatched +cfg80211 kernels. + +Signed-off-by: Paul Fertser <fercerpav@gmail.com> + +diff -Naur aircrack-ng-1.1-orig/src/aireplay-ng.c aircrack-ng-1.1/src/aireplay-ng.c +--- aircrack-ng-1.1-orig/src/aireplay-ng.c 2011-01-11 19:45:09.000000000 -0500 ++++ aircrack-ng-1.1/src/aireplay-ng.c 2011-01-11 19:44:34.000000000 -0500 +@@ -205,7 +205,9 @@ + "\n" + " Miscellaneous options:\n" + "\n" +-" -R : disable /dev/rtc usage\n" ++" -R : disable /dev/rtc usage\n" ++" --ignore-negative-one : if the interface's channel can't be determined,\n" ++" ignore the mismatch, needed for unpatched cfg80211\n" + "\n" + " Attack modes (numbers can still be used):\n" + "\n" +@@ -274,6 +276,7 @@ + int bittest; + + int nodetect; ++ int ignore_negative_one; + int rtc; + + int reassoc; +@@ -723,6 +726,13 @@ + + iface_chan = wi_get_channel(wi); + ++ if(iface_chan == -1 && !opt.ignore_negative_one) ++ { ++ PCT; printf("Couldn't determine current channel for %s, you should either force the operation with --ignore-negative-one or apply a kernel patch\n", ++ wi_get_ifname(wi)); ++ return -1; ++ } ++ + if(bssid != NULL) + { + ap_chan = wait_for_beacon(bssid, capa, essid); +@@ -731,7 +741,7 @@ + PCT; printf("No such BSSID available.\n"); + return -1; + } +- if(ap_chan != iface_chan) ++ if((ap_chan != iface_chan) && (iface_chan != -1 || !opt.ignore_negative_one)) + { + PCT; printf("%s is on channel %d, but the AP uses channel %d\n", wi_get_ifname(wi), iface_chan, ap_chan); + return -1; +@@ -6318,6 +6328,7 @@ + {"fast", 0, 0, 'F'}, + {"bittest", 0, 0, 'B'}, + {"migmode", 0, 0, 'W'}, ++ {"ignore-negative-one", 0, &opt.ignore_negative_one, 1}, + {0, 0, 0, 0 } + }; + |