fix packaging
[adaptation/panda/wpa_supplicant.git] / packaging / 0001-events-Custom-event-for-broadcom-proprietary-driver.patch
1 From bf47542f9db46e7bd9a79f66e8d919c583991c5b Mon Sep 17 00:00:00 2001
2 From: Samuel Ortiz <sameo@linux.intel.com>
3 Date: Wed, 15 Dec 2010 20:36:04 +0100
4 Subject: [PATCH 1/3] events: Custom event for broadcom proprietary driver
5
6 ---
7  src/drivers/driver.h      |   10 +++++++++-
8  src/drivers/driver_wext.c |    3 +++
9  wpa_supplicant/events.c   |    9 +++++++++
10  3 files changed, 21 insertions(+), 1 deletions(-)
11
12 diff --git a/src/drivers/driver.h b/src/drivers/driver.h
13 index fa49da4..511f613 100644
14 --- a/src/drivers/driver.h
15 +++ b/src/drivers/driver.h
16 @@ -2046,7 +2046,15 @@ enum wpa_event_type {
17          * observed in frames received from the current AP if signal strength
18          * monitoring has been enabled with signal_monitor().
19          */
20 -       EVENT_SIGNAL_CHANGE
21 +       EVENT_SIGNAL_CHANGE,
22 +
23 +       /**
24 +        * EVENT_BROADCOM_CUSTOM - Broadcom custom event
25 +        *
26 +        * This event is sent when failing to associate while running the
27 +        * initial scan.
28 +        */
29 +       EVENT_BROADCOM_CUSTOM
30  };
31  
32  
33 diff --git a/src/drivers/driver_wext.c b/src/drivers/driver_wext.c
34 index 2614f23..04094ee 100644
35 --- a/src/drivers/driver_wext.c
36 +++ b/src/drivers/driver_wext.c
37 @@ -299,6 +299,9 @@ wpa_driver_wext_event_wireless_custom(void *ctx, char *custom)
38                 }
39                 wpa_supplicant_event(ctx, EVENT_STKSTART, &data);
40  #endif /* CONFIG_PEERKEY */
41 +       } else if (os_strncmp(custom, "Conn NoNetworks", 15) == 0) {
42 +               wpa_printf(MSG_DEBUG, "WEXT: Broadcom custom event");
43 +               wpa_supplicant_event(ctx, EVENT_BROADCOM_CUSTOM, &data);
44         }
45  }
46  
47 diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
48 index 85dcfb2..e925447 100644
49 --- a/wpa_supplicant/events.c
50 +++ b/wpa_supplicant/events.c
51 @@ -1722,6 +1722,15 @@ void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
52                 bgscan_notify_signal_change(
53                         wpa_s, data->signal_change.above_threshold);
54                 break;
55 +       case EVENT_BROADCOM_CUSTOM:
56 +               wpa_printf(MSG_DEBUG, "Broadcom event in state %d",
57 +                          wpa_s->wpa_state);
58 +               if (wpa_s->wpa_state == WPA_SCANNING) {
59 +                       /* Force scanning */
60 +                       wpa_s->scan_req = 1;
61 +                       wpa_supplicant_req_scan(wpa_s, 0, 0);
62 +               }
63 +               break;
64         default:
65                 wpa_printf(MSG_INFO, "Unknown event %d", event);
66                 break;
67 -- 
68 1.7.2.3
69