OpenCloudOS-Kernel/net/mac802154
Diogenes Pereira 3e4962667e mac802154: Fix MAC header and payload encrypted
According to  802.15.4-2003/2006/2015 specifications the MAC frame is
composed of MHR, MAC payload and MFR and just the outgoing MAC payload
must be encrypted.

If communication is secure,sender build Auxiliary Security Header(ASH),
insert it next to the standard MHR header with security enabled bit ON,
and secure frames before transmitting them. According to the information
carried within the ASH, recipient retrieves the right cryptographic key
and correctly un-secure MAC frames.

The error scenario occurs on Linux using IEEE802154_SCF_SECLEVEL_ENC(4)
security level when llsec_do_encrypt_unauth() function builds theses MAC
frames incorrectly. On recipients these MAC frames are discarded,logging
"got invalid frame" messages.

Signed-off-by: Diogenes Pereira <dvnp@cesar.org.br>
Signed-off-by: Stefan Schmidt <stefan@osg.samsung.com>
2017-09-20 13:37:16 +02:00
..
Kconfig mac802154: select CRYPTO when needed 2015-05-19 19:35:48 +02:00
Makefile Makefile: drop -D__CHECK_ENDIAN__ from cflags 2016-12-16 00:13:43 +02:00
cfg.c nl802154: add support for security layer 2015-09-30 13:16:44 +02:00
cfg.h mac802154: introduce mac802154_config_ops 2014-11-02 04:51:06 +01:00
driver-ops.h mac802154: tx: fix synced xmit deadlock 2015-12-10 19:17:11 +01:00
ieee802154_i.h drivers: add explicit interrupt.h includes 2017-03-30 11:05:34 -07:00
iface.c net: Fix inconsistent teardown and release of private netdev state. 2017-06-07 15:53:24 -04:00
llsec.c mac802154: Fix MAC header and payload encrypted 2017-09-20 13:37:16 +02:00
llsec.h mac802154: Use skcipher 2016-01-27 20:36:05 +08:00
mac_cmd.c mac802154: constify ieee802154_llsec_ops structure 2016-01-04 20:40:41 +01:00
main.c mac802154: Fixes kernel oops when unloading a radio driver 2016-02-23 20:29:40 +01:00
mib.c mac802154: remove mib lock 2015-05-23 17:57:08 +02:00
rx.c mac802154: use rate limited warnings for malformed frames 2016-09-19 20:19:34 +02:00
trace.c mac802154: add trace functionality for driver ops 2015-06-02 19:21:09 +02:00
trace.h mac802154: add trace functionality for driver ops 2015-06-02 19:21:09 +02:00
tx.c mac802154: tx: fix synced xmit deadlock 2015-12-10 19:17:11 +01:00
util.c ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00