]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
nl80211: Check for proper nlmsg allocation in send_and_recv_msgs_owner()
authorPooventhiran G <pooventh@codeaurora.org>
Tue, 27 Oct 2020 06:24:21 +0000 (11:54 +0530)
committerJouni Malinen <j@w1.fi>
Tue, 27 Oct 2020 09:39:45 +0000 (11:39 +0200)
When nlmsg allocation fails, nl80211_drv_msg() returns NULL and the call
to send_and_recv_msgs_owner() from nl80211_leave_ibss() could have ended
up dereferencing a NULL pointer. Fix this by make
send_and_recv_msgs_owner() more consistent with other send_and_recv*()
cases that check msg == NULL internally.

Fixes: 12ea7dee311b ("nl80211: Use nl80211 control port for receiving EAPOL frames")
Signed-off-by: Pooventhiran G <pooventh@codeaurora.org>
src/drivers/driver_nl80211.c

index 2ee34d11d64e895a1ec235d36443c099f0723495..ffa0c467e40d6bb3aa6a6a0f501cc8c922bf031e 100644 (file)
@@ -502,6 +502,9 @@ static int send_and_recv_msgs_owner(struct wpa_driver_nl80211_data *drv,
                                                              void *),
                                    void *ack_data)
 {
+       if (!msg)
+               return -ENOMEM;
+
        /* Control port over nl80211 needs the flags and attributes below.
         *
         * The Linux kernel has initial checks for them (in nl80211.c) like: