3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-09 05:29:23 +01:00
Commit Graph

87 Commits

Author SHA1 Message Date
Andrew Zaborowski
5d8cb6260f ie: Handle Extended Element IDs
Make parsing TLVs using Extended Element IDs easier by returning the
extended tag value as listed in enum ie_type instead of just the 255
value, and not returning the pointer to the extended tag as the IE data
and instead the pointer to the next byte after the extended ID.
2017-09-22 11:55:47 -05:00
Andrew Zaborowski
b344d27c56 ie: Fix Supported Rates length check
Supported Rates IEs can be 1-8 bytes, not only 8 byte long, according to
802.11-2012 8.4.2.3.
2017-08-15 13:57:27 -05:00
Andrew Zaborowski
9ceca7a521 ie: Parse GTK and IGTK subelements in FTE
Parse the contents of the GTK and IGTK subelements in an FT IE instead
of working with buffers containing the whole subelement.  Some more
validation of the subelement contents.  Drop support for GTK / IGTK when
building the FTE (unused).
2017-02-01 10:02:14 -06:00
Andrew Zaborowski
1b99521e98 ie: Implement ie_parse_neighbor_report 2016-11-03 09:59:49 -05:00
Andrew Zaborowski
e4c168cc3b ie: Fast BSS Transition IE utilities 2016-10-29 22:53:14 -05:00
Andrew Zaborowski
b20f1a2d50 ie: Mobility Domain IE utilities 2016-10-28 11:28:21 -05:00
Andrew Zaborowski
955c88a64a ie: Consistently set group_management_cipher
RSNE_ADVANCE may return and if it is before the assignment of
info.group_management_cipher, that assignment will be dependent on where
the RSNE ends.
2016-09-05 23:10:29 -05:00
Andrew Zaborowski
316752c5e4 ie: Error in tlv_iter_next if no space to length byte
When parsing the EAPoL-Key key data field we don't strip the 0xdd /
0x00 padding from the decrypted data so there may be trailing padding
after the IE sequence and valgrind will report an invalid read of the
length byte.  Same thing may happen if we're sent garbage.
2016-09-05 23:00:01 -05:00
Denis Kenzior
8261dab46b ie: Add ie_tlv_encapsulate_wsc_payload 2015-09-10 22:30:43 -05:00
Denis Kenzior
c2aa596dd4 ie: Tweak function signature 2015-09-10 22:29:58 -05:00
Denis Kenzior
3442736869 ie: add ie_tlv_extract_wsc_payload 2015-07-09 14:20:10 -05:00
Denis Kenzior
7cded805ce ie: Add [extended] supported rates parser 2015-06-10 16:28:12 -05:00
Denis Kenzior
baa97b13e9 ie: Add BSS Load parser 2015-06-10 10:39:33 -05:00
Denis Kenzior
d4cdd74ae0 ie: Add ie_rsn_cipher_suite_to_cipher 2015-05-21 20:58:42 -05:00
Denis Kenzior
29a89d2a8b ie: There can be only one group_cipher
So the use of & operation is unneeded.  A more correct way is to use the
equals operator.
2015-03-16 12:12:59 -05:00
Denis Kenzior
8c172f4ec1 ie: Group comments together with relevant code 2015-03-16 12:10:43 -05:00
Ravi kumar Veeramally
b9007cbc9a ie: Provide a utility to build WPA IE
Build WPA IE based on vendor specific data.
2015-03-16 12:06:49 -05:00
Ravi kumar Veeramally
50c7346d19 ie: Parse vendor specific IE
Currently it supports Microsoft vendor specific information element
with version and type value 1 only. Typically it contains WPA security
related information.
2015-03-16 12:01:59 -05:00
Denis Kenzior
b1ca41b476 ie: Add length/data/tag inline getters 2015-02-24 17:11:27 -06:00
Denis Kenzior
fc60014d47 ie: Add ie_build_rsne 2015-02-03 21:45:14 -06:00
Denis Kenzior
51dfb02ade ie: Add ie_build_akm_suite 2015-02-03 21:44:56 -06:00
Denis Kenzior
5653baa0b9 ie: Add ie_build_cipher_suite 2015-02-03 21:44:35 -06:00
Denis Kenzior
7f5bb70422 ie: Move ieee_oui to toplevel 2015-02-03 21:11:26 -06:00
Denis Kenzior
8a4e135bc8 ie: Add parsine of Group Management Cipher field 2015-01-20 00:30:54 -06:00
Denis Kenzior
e5574d031d ie: Parse PMKIDs in RSN IE 2015-01-19 23:26:45 -06:00
Denis Kenzior
02170b200f ie: Decode RSNE Capabilities field 2015-01-15 23:59:19 -06:00
Denis Kenzior
2be20e6644 ie: Add RSNE parser that works on raw data 2015-01-15 23:59:18 -06:00
Denis Kenzior
2d8f1cca0b ie: Add initial parser for RSN Elements
As found in 802.11 Section 8.4.2.27.  Currently the parser does not
handle the Capabilities, Group Management Cipher Suite or PMKID related
fields.
2015-01-15 23:59:18 -06:00
Denis Kenzior
2b7432bddb ie: Add utility to parse pairwise cipher suites
This utility works by validating values that make sense for pairwise
ciphers.
2015-01-15 23:59:18 -06:00
Denis Kenzior
4216cf793b ie: Add utility to parse group cipher suites
This utility works by validating values that make sense for group
ciphers.
2015-01-15 23:59:18 -06:00
Denis Kenzior
d8583424e8 ie: Add utility to parse key management suites 2015-01-15 23:59:18 -06:00
Denis Kenzior
20a02eba6a ie: Add utility to parse RSN cipher suites 2015-01-15 23:59:18 -06:00
Marcel Holtmann
34d8b0d308 ie: Keep copyright notice the same for all source files 2014-08-03 08:14:16 +02:00
Jukka Rissanen
b90d914a3f ie: Adding IE builder support
These functions can be used to create IE TLV messages.
2014-07-31 09:58:58 -05:00
Jukka Rissanen
61245bc14e ie: Adding function to recurse when reading
This function is needed when building recursive IE.
2014-07-15 19:19:04 -05:00
Denis Kenzior
119a1e7de3 ie: Add additional boundary checking
==20758== Invalid read of size 1
==20758==    at 0x401254: ie_tlv_iter_next (ie.c:55)
==20758==    by 0x40104B: ie_test (test-ie.c:57)
==20758==    by 0x4021C0: l_test_run (test.c:83)
==20758==    by 0x4011B7: main (test-ie.c:123)
==20758==  Address 0x51e10f3 is 0 bytes after a block of size 19 alloc'd
==20758==    at 0x4C2C874: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20758==    by 0x4010CF: append_data (test-ie.c:101)
==20758==    by 0x40118F: main (test-ie.c:119)
==20758==
==20758== Invalid read of size 1
==20758==    at 0x401266: ie_tlv_iter_next (ie.c:56)
==20758==    by 0x40104B: ie_test (test-ie.c:57)
==20758==    by 0x4021C0: l_test_run (test.c:83)
==20758==    by 0x4011B7: main (test-ie.c:123)
==20758==  Address 0x51e10f4 is 1 bytes after a block of size 19 alloc'd
==20758==    at 0x4C2C874: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20758==    by 0x4010CF: append_data (test-ie.c:101)
==20758==    by 0x40118F: main (test-ie.c:119)
2014-07-15 19:18:08 -05:00
Jukka Rissanen
458ac1aba4 ie: Simple informational element parser
The parsing API goes through the byte stream and parses the
TLV (Type, Length and Value) values and avoids data copying.
2014-07-15 19:18:08 -05:00