Re: [PATCH 13/15] mka: do not ignore MKPDU parameter set decoding failures

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 02, 2018 at 03:11:01PM -0500, msiedzik@xxxxxxxxxxxxxxxxxxx wrote:
> The status values returned by mka_param_body_handler.body_rx functions
> are currently ignored by ieee802_1x_kay_decode_mkpdu().  If a failure is
> detected the KaY should (a) stop processing the MKDPU and (b) do not
> update the associated peer's liveliness.
> 
> IEEE802.1X-2010's Table 11-7 MKPDU Parameter sets and Clause 11.11.3
> Encoding MKPDUs dictate that MKA_SAK_USE (set type 3) will always be
> encoded before MKA_DISTRIBUTED_SAK (set type 4) in MKPDUs.  Due to
> hostap's implementation of mka_param_body_handler, the code will always
> decode MKA_SAK_USE before MKA_DISTRIBUTED_SAK.  When MKA_DISTRUBUTED_SAK
> contains a new SAK the code should decode MKA_DISTRUBUTED_SAK first so
> that the lastest SAK is in known before decoding MKA_SAK_USE.
> 
> The ideal solution would be to make two passes at MKDPU decoding: the
> first pass decodes MKA_DISTRIBUTED_SAK, the second pass decodes all
> other parameter sets.
> 
> A simpler and less risky solution is presented here: ignore MKA_SAK_USE
> failures if MKA_DISTRIBUTED_SAK is also present.  The new SAK will be
> saved so that the next MKPDU's MKA_SAK_USE can be properly decoded.
> This is basically what the code prior to this commit was doing (by
> ignoring all errors).
> 
> Also, the only real recourse the KaY has when detecting any bad
> parameter set is to ignore the MKPDU by not updating the corresponding
> peer's liveliness timer, 'peer->expire'.

Thanks, applied.
 
-- 
Jouni Malinen                                            PGP id EFC895FA

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux