Message ID | 1512407906-6986-1-git-send-email-greearb@candelatech.com |
---|---|
State | Accepted |
Headers | show |
Series | wpa-cli: Make ping/pong work more reliably. | expand |
On Mon, Dec 04, 2017 at 09:18:26AM -0800, greearb@candelatech.com wrote: > In 2013 or so, IFNAME=foo was prepended to at least the > Unix socket communication from wpa_supplicant to wpa_cli. > > This broke the (fragile) logic that made ping/pong work more > often when the supplicant is busy sending logging info to > the wpa_cli. > > Adding check for IFNAME=foo makes this work better. Thanks, applied.
diff --git a/src/common/wpa_ctrl.c b/src/common/wpa_ctrl.c index 623c2a7..1f1c9c4 100644 --- a/src/common/wpa_ctrl.c +++ b/src/common/wpa_ctrl.c @@ -540,7 +540,8 @@ retry_send: res = recv(ctrl->s, reply, *reply_len, 0); if (res < 0) return res; - if (res > 0 && reply[0] == '<') { + if ((res > 0 && reply[0] == '<') || + (res > 6 && strncmp(reply, "IFNAME=", 7) == 0)) { /* This is an unsolicited message from * wpa_supplicant, not the reply to the * request. Use msg_cb to report this to the