From 112fdee738d28c4e8bfb66ad7202d4348c4e7771 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Tue, 2 Aug 2016 23:47:38 +0300 Subject: [PATCH] P2P: Fix D-Bus persistent parameter in group started event wpas_p2p_persistent_group() returns non-zero for persistent groups. This value happens to be 2 instead of 1 due to the P2P_GROUP_CAPAB_PERSISTENT_GROUP value. This ended up with D-Bus code trying to encode 2 as a DBUS_TYPE_BOOLEAN value which results in an assert from the library. Fix this by modifying wpas_p2p_persistent_group() to return 0 or 1 instead of 0 or an arbitrary non-zero. Signed-off-by: Jouni Malinen --- wpa_supplicant/p2p_supplicant.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c index cb8df66..31eeb38 100644 --- a/wpa_supplicant/p2p_supplicant.c +++ b/wpa_supplicant/p2p_supplicant.c @@ -1076,7 +1076,7 @@ static int wpas_p2p_persistent_group(struct wpa_supplicant *wpa_s, "go_dev_addr=" MACSTR, MAC2STR(bssid), group_capab, MAC2STR(go_dev_addr)); - return group_capab & P2P_GROUP_CAPAB_PERSISTENT_GROUP; + return !!(group_capab & P2P_GROUP_CAPAB_PERSISTENT_GROUP); } -- 2.1.4