FT: Add RIC Request generation and validation (but not processing)
This adds first part of FT resource request as part of Reassocition Request frame (i.e., FT Protocol, not FT Resource Request Protocol). wpa_supplicant can generate a test resource request when driver_test.c is used with internal MLME code and hostapd can verify the FTIE MIC properly with the included RIC Request. The actual RIC Request IEs are not processed yet and hostapd does not yet reply with RIC Response (nor would wpa_supplicant be able to validate the FTIE MIC for a frame with RIC Response).
This commit is contained in:
parent
143a4bf632
commit
babfbf15cc
9 changed files with 173 additions and 48 deletions
|
@ -257,3 +257,25 @@ ParseRes ieee802_11_parse_elems(u8 *start, size_t len,
|
|||
|
||||
return unknown ? ParseUnknown : ParseOK;
|
||||
}
|
||||
|
||||
|
||||
int ieee802_11_ie_count(const u8 *ies, size_t ies_len)
|
||||
{
|
||||
int count = 0;
|
||||
const u8 *pos, *end;
|
||||
|
||||
if (ies == NULL)
|
||||
return 0;
|
||||
|
||||
pos = ies;
|
||||
end = ies + ies_len;
|
||||
|
||||
while (pos + 2 <= end) {
|
||||
if (pos + 2 + pos[1] > end)
|
||||
break;
|
||||
count++;
|
||||
pos += 2 + pos[1];
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
|
|
@ -70,5 +70,6 @@ typedef enum { ParseOK = 0, ParseUnknown = 1, ParseFailed = -1 } ParseRes;
|
|||
ParseRes ieee802_11_parse_elems(u8 *start, size_t len,
|
||||
struct ieee802_11_elems *elems,
|
||||
int show_errors);
|
||||
int ieee802_11_ie_count(const u8 *ies, size_t ies_len);
|
||||
|
||||
#endif /* IEEE802_11_COMMON_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue