fix for ctrl interface socket setup
Submitted by: brooks
This commit is contained in:
parent
75c61a94a4
commit
b1bb8b1684
@ -10,6 +10,8 @@
|
||||
* license.
|
||||
*
|
||||
* See README and COPYING for more details.
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
@ -88,7 +90,7 @@ struct wpa_ctrl * wpa_ctrl_open(const char *ctrl_path)
|
||||
}
|
||||
|
||||
ctrl->local.sun_family = AF_UNIX;
|
||||
snprintf(ctrl->local.sun_path, sizeof(ctrl->local.sun_path),
|
||||
snprintf(ctrl->local.sun_path, sizeof(ctrl->local.sun_path) - 1,
|
||||
"/tmp/wpa_ctrl_%d-%d", getpid(), counter++);
|
||||
if (bind(ctrl->s, (struct sockaddr *) &ctrl->local,
|
||||
sizeof(ctrl->local.sun_family) +
|
||||
@ -99,10 +101,9 @@ struct wpa_ctrl * wpa_ctrl_open(const char *ctrl_path)
|
||||
}
|
||||
|
||||
ctrl->dest.sun_family = AF_UNIX;
|
||||
strncpy(ctrl->dest.sun_path, ctrl_path, sizeof(ctrl->dest.sun_path));
|
||||
strncpy(ctrl->dest.sun_path, ctrl_path, sizeof(ctrl->dest.sun_path) - 1);
|
||||
if (connect(ctrl->s, (struct sockaddr *) &ctrl->dest,
|
||||
sizeof(ctrl->dest.sun_family) +
|
||||
strlen(ctrl->dest.sun_path)) < 0) {
|
||||
sizeof(ctrl->dest)) < 0) {
|
||||
close(ctrl->s);
|
||||
unlink(ctrl->local.sun_path);
|
||||
free(ctrl);
|
||||
|
Loading…
x
Reference in New Issue
Block a user