diff options
| author | Jouni Malinen <jouni@qca.qualcomm.com> | 2014-01-24 13:58:00 +0000 |
|---|---|---|
| committer | Steve Kondik <shade@chemlab.org> | 2014-06-12 14:07:59 -0700 |
| commit | 75387528ec9c45fa273f9e0c7574836db55df181 (patch) | |
| tree | a400e3a5885a8084e782cc27e4dbb1eacd7dc6a8 | |
| parent | 3131ab317a42d42e82186b91a73907dd3884bac7 (diff) | |
| download | android_external_wpa_supplicant_8-75387528ec9c45fa273f9e0c7574836db55df181.tar.gz android_external_wpa_supplicant_8-75387528ec9c45fa273f9e0c7574836db55df181.tar.bz2 android_external_wpa_supplicant_8-75387528ec9c45fa273f9e0c7574836db55df181.zip | |
Add a header file defining QCA OUI and vendor extensions
This file is used as a registry of identifier assignments from the
Qualcomm Atheros OUI 00:13:74 for purposes other than MAC address
assignment. One of the first uses will be for nl80211 vendor
commands/events which is reason for the preparation change in
driver_nl80211.c
Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
Git-commit: 1682c6236017f28b8fdb3b791565c835e988a559
Git-repo : git://w1.fi/srv/git/hostap.git
Change-Id: I25a164a2541a57511c9e737d582b14975fc550b3
CRs-Fixed: 598923
| -rw-r--r-- | src/common/qca-vendor.h | 33 | ||||
| -rw-r--r-- | src/drivers/driver_nl80211.c | 17 |
2 files changed, 50 insertions, 0 deletions
diff --git a/src/common/qca-vendor.h b/src/common/qca-vendor.h new file mode 100644 index 00000000..6e2f0c00 --- /dev/null +++ b/src/common/qca-vendor.h @@ -0,0 +1,33 @@ +/* + * Qualcomm Atheros OUI and vendor specific assignments + * Copyright (c) 2014, Qualcomm Atheros, Inc. + * + * This software may be distributed under the terms of the BSD license. + * See README for more details. + */ + +#ifndef QCA_VENDOR_H +#define QCA_VENDOR_H + +/* + * This file is a registry of identifier assignments from the Qualcomm Atheros + * OUI 00:13:74 for purposes other than MAC address assignment. New identifiers + * can be assigned through normal review process for changes to the upstream + * hostap.git repository. + */ + +#define OUI_QCA 0x001374 + +/** + * enum qca_nl80211_vendor_subcmds - QCA nl80211 vendor command identifiers + * + * @QCA_NL80211_VENDOR_SUBCMD_UNSPEC: Reserved value 0 + * + * @QCA_NL80211_VENDOR_SUBCMD_TEST: Test command/event + */ +enum qca_nl80211_vendor_subcmds { + QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0, + QCA_NL80211_VENDOR_SUBCMD_TEST = 1, +}; + +#endif /* QCA_VENDOR_H */ diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c index 53ef1a0b..0881868e 100644 --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c @@ -28,6 +28,7 @@ #include "common.h" #include "eloop.h" #include "utils/list.h" +#include "common/qca-vendor.h" #include "common/ieee802_11_defs.h" #include "common/ieee802_11_common.h" #include "l2_packet/l2_packet.h" @@ -2612,6 +2613,19 @@ static void nl80211_spurious_frame(struct i802_bss *bss, struct nlattr **tb, } +static void nl80211_vendor_event_qca(struct wpa_driver_nl80211_data *drv, + u32 subcmd, u8 *data, size_t len) +{ + switch (subcmd) { + default: + wpa_printf(MSG_DEBUG, + "nl80211: Ignore unsupported QCA vendor event %u", + subcmd); + break; + } +} + + static void nl80211_vendor_event(struct wpa_driver_nl80211_data *drv, struct nlattr **tb) { @@ -2647,6 +2661,9 @@ static void nl80211_vendor_event(struct wpa_driver_nl80211_data *drv, } switch (vendor_id) { + case OUI_QCA: + nl80211_vendor_event_qca(drv, subcmd, data, len); + break; default: wpa_printf(MSG_DEBUG, "nl80211: Ignore unsupported vendor event"); break; |
