[PATCH v2 04/11] handshake: add vendor quirks into handshake object
James Prestwood <[email protected]> Wed, 27 Aug 2025 05:54:54 -0700
| Newsgroups | dev.linux.lists.iwd |
|---|---|
| Message-ID | <[email protected]> |
---
src/handshake.c | 6 ++++++
src/handshake.h | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/src/handshake.c b/src/handshake.c
index 92edac30..02dfe2d8 100644
--- a/src/handshake.c
+++ b/src/handshake.c
@@ -368,6 +368,12 @@ void handshake_state_set_vendor_ies(struct handshake_state *s,
}
}
+void handshake_state_set_vendor_quirks(struct handshake_state *s,
+ struct vendor_quirk quirks)
+{
+ s->vendor_quirks = quirks;
+}
+
void handshake_state_set_kh_ids(struct handshake_state *s,
const uint8_t *r0khid, size_t r0khid_len,
const uint8_t *r1khid)
diff --git a/src/handshake.h b/src/handshake.h
index b8891490..9ddeecd6 100644
--- a/src/handshake.h
+++ b/src/handshake.h
@@ -26,6 +26,8 @@
#include <linux/types.h>
#include <ell/cleanup.h>
+#include "src/vendor_quirks.h"
+
struct handshake_state;
enum crypto_cipher;
struct eapol_frame;
@@ -107,6 +109,7 @@ struct handshake_state {
uint8_t *authenticator_fte;
uint8_t *supplicant_fte;
uint8_t *vendor_ies;
+ struct vendor_quirk vendor_quirks;
size_t vendor_ies_len;
enum ie_rsn_cipher_suite pairwise_cipher;
enum ie_rsn_cipher_suite group_cipher;
@@ -237,6 +240,9 @@ void handshake_state_set_vendor_ies(struct handshake_state *s,
const struct iovec *iov,
size_t n_iovs);
+void handshake_state_set_vendor_quirks(struct handshake_state *s,
+ struct vendor_quirk quirks);
+
void handshake_state_set_kh_ids(struct handshake_state *s,
const uint8_t *r0khid, size_t r0khid_len,
const uint8_t *r1khid);
--
2.34.1