Merge pull request #3 from mickybart/lollipop

add lightbar support patch, thank mickybart
fix crash when input layer list is empty
add patch to fix device node parse when partition PARTN>NPARTS
add patch to roll back mOomMinFreeHigh value
add missing camera button receiver
build new kernel base on mako lollipop release
fix camera not work on new kernel
bluetooth wake via proc due to kernel driver switch to bluesleep
support recovery in fota patition
fix screen turn dark in very low power state
enable wifi background scan
enable multi user
enable kernel same page merging
add patch to fix MountService crash while switching user
Work around AP misbehavior on EAPOL-Key descriptor version

It looks like some APs are incorrectly selecting descriptor version 3
(AES-128-CMAC) for EAPOL-Key frames when version 2 (HMAC-SHA1) was
expected to be used. This is likely triggered by an attempt to negotiate
PMF with SHA1-based AKM.

Since AES-128-CMAC is considered stronger than HMAC-SHA1, allow the
incorrect, but stronger, option to be used in these cases to avoid
interoperability issues with deployed APs.

This issue shows up with "WPA: CCMP is used, but EAPOL-Key descriptor
version (3) is not 2" in debug log. With the new workaround, this issue
is ignored and "WPA: Interoperability workaround: allow incorrect
(should have been HMAC-SHA1), but stronger (is AES-128-CMAC), descriptor
version to be used" is written to the log.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>

Diffstat

-rw-r--r-- src/rsn_supp/wpa.c

1 files changed, 3 insertions, 0 deletions

diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
index d95c1bd..f8825d2 100644
--- a/src/rsn_supp/wpa.c
+++ b/src/rsn_supp/wpa.c
@@ -1756,6 +1756,9 @@ int wpa_sm_rx_eapol(struct wpa_sm *sm, const u8 *src_addr,
 			wpa_msg(sm->ctx->msg_ctx, MSG_INFO,
 				"WPA: Backwards compatibility: allow invalid "
 				"version for non-CCMP group keys");
+		} else if (ver == WPA_KEY_INFO_TYPE_AES_128_CMAC) {
+			wpa_msg(sm->ctx->msg_ctx, MSG_INFO,
+				"WPA: Interoperability workaround: allow incorrect (should have been HMAC-SHA1), but stronger (is AES-128-CMAC), descriptor version to be used");
 		} else
 			goto out;
 	} else if (sm->pairwise_cipher == WPA_CIPHER_GCMP &&
add patch to fix InputMethodManagerService crash while switching user