|
@@ -0,0 +1,88 @@
|
|
|
+/*
|
|
|
+ * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
|
|
|
+ *
|
|
|
+ * 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.
|
|
|
+ */
|
|
|
+
|
|
|
+#ifndef _WLAN_NAN_MSG_COMMON_V2_H_
|
|
|
+#define _WLAN_NAN_MSG_COMMON_V2_H_
|
|
|
+/*
|
|
|
+ * WLAN NAN CONSTANTS
|
|
|
+ */
|
|
|
+#ifndef PACKED_PRE
|
|
|
+#define PACKED_PRE PREPACK
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifndef PACKED_POST
|
|
|
+#define PACKED_POST POSTPACK
|
|
|
+#endif
|
|
|
+
|
|
|
+/* ALL THE INTERFACE DEFINITIONS ARE ASSUMED TO BE IN LITTLE ENDIAN ORDER.
|
|
|
+ * BIG ENDIAN HOST IS RESPONSIBLE TO SEND/INTERPRET MESSAGES IN LITTLE
|
|
|
+ * ENDIAN FORMAT ONLY
|
|
|
+ */
|
|
|
+
|
|
|
+/* NAN message IDs */
|
|
|
+typedef enum {
|
|
|
+ NAN_MSG_ID_ERROR_RSP = 0,
|
|
|
+ NAN_MSG_ID_CONFIGURATION_REQ = 1,
|
|
|
+ NAN_MSG_ID_CONFIGURATION_RSP = 2,
|
|
|
+ NAN_MSG_ID_PUBLISH_SERVICE_REQ = 3,
|
|
|
+ NAN_MSG_ID_PUBLISH_SERVICE_RSP = 4,
|
|
|
+ NAN_MSG_ID_PUBLISH_SERVICE_CANCEL_REQ = 5,
|
|
|
+ NAN_MSG_ID_PUBLISH_SERVICE_CANCEL_RSP = 6,
|
|
|
+ NAN_MSG_ID_PUBLISH_REPLIED_IND = 7,
|
|
|
+ NAN_MSG_ID_PUBLISH_TERMINATED_IND = 8,
|
|
|
+ NAN_MSG_ID_SUBSCRIBE_SERVICE_REQ = 9,
|
|
|
+ NAN_MSG_ID_SUBSCRIBE_SERVICE_RSP = 10,
|
|
|
+ NAN_MSG_ID_SUBSCRIBE_SERVICE_CANCEL_REQ = 11,
|
|
|
+ NAN_MSG_ID_SUBSCRIBE_SERVICE_CANCEL_RSP = 12,
|
|
|
+ NAN_MSG_ID_MATCH_IND = 13,
|
|
|
+ NAN_MSG_ID_UNMATCH_IND = 14,
|
|
|
+ NAN_MSG_ID_SUBSCRIBE_TERMINATED_IND = 15,
|
|
|
+ NAN_MSG_ID_DE_EVENT_IND = 16,
|
|
|
+ NAN_MSG_ID_TRANSMIT_FOLLOWUP_REQ = 17,
|
|
|
+ NAN_MSG_ID_TRANSMIT_FOLLOWUP_RSP = 18,
|
|
|
+ NAN_MSG_ID_FOLLOWUP_IND = 19,
|
|
|
+ NAN_MSG_ID_STATS_REQ = 20,
|
|
|
+ NAN_MSG_ID_STATS_RSP = 21,
|
|
|
+ NAN_MSG_ID_ENABLE_REQ = 22,
|
|
|
+ NAN_MSG_ID_ENABLE_RSP = 23,
|
|
|
+ NAN_MSG_ID_DISABLE_REQ = 24,
|
|
|
+ NAN_MSG_ID_DISABLE_RSP = 25,
|
|
|
+ NAN_MSG_ID_DISABLE_IND = 26,
|
|
|
+ NAN_MSG_ID_TCA_REQ = 27,
|
|
|
+ NAN_MSG_ID_TCA_RSP = 28,
|
|
|
+ NAN_MSG_ID_TCA_IND = 29,
|
|
|
+ NAN_MSG_ID_BEACON_SDF_REQ = 30,
|
|
|
+ NAN_MSG_ID_BEACON_SDF_RSP = 31,
|
|
|
+ NAN_MSG_ID_BEACON_SDF_IND = 32,
|
|
|
+ NAN_MSG_ID_CAPABILITIES_REQ = 33,
|
|
|
+ NAN_MSG_ID_CAPABILITIES_RSP = 34,
|
|
|
+ NAN_MSG_ID_SELF_TRANSMIT_FOLLOWUP_IND = 35,
|
|
|
+ NAN_MSG_ID_RANGING_REQUEST_IND = 36,
|
|
|
+ NAN_MSG_ID_RANGING_RESULT_IND = 37,
|
|
|
+ /* Add regular/non-test mode messages here */
|
|
|
+ NAN_MSG_ID_TESTMODE_REQ = 1025,
|
|
|
+} nan_msg_id_t;
|
|
|
+
|
|
|
+/* 8-byte control message header used by NAN */
|
|
|
+typedef PACKED_PRE struct PACKED_POST {
|
|
|
+ A_UINT16 msg_version:4;
|
|
|
+ A_UINT16 msg_id:12;
|
|
|
+ A_UINT16 msg_len;
|
|
|
+ A_UINT16 handle;
|
|
|
+ A_UINT16 transaction_id;
|
|
|
+} nan_msg_header_t, *nan_msg_header_tp;
|
|
|
+
|
|
|
+#endif /* WLAN_NAN_MSG_COMMON_V2_H */
|