Browse Source

bsd: Fix NULL pointer dereference on error path

The error path in bsd_init() on struct bsd_driver_data allocation was
jumping to location where drv is dereferenced. That will crash and it is
easier to just return from the function since no cleanup steps are
needed in this case.

Signed-hostap: Jouni Malinen <j@w1.fi>
Jouni Malinen 11 years ago
parent
commit
bfdc2a3172
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/drivers/driver_bsd.c

+ 2 - 2
src/drivers/driver_bsd.c

@@ -857,8 +857,8 @@ bsd_init(struct hostapd_data *hapd, struct wpa_init_params *params)
 
 	drv = os_zalloc(sizeof(struct bsd_driver_data));
 	if (drv == NULL) {
-		printf("Could not allocate memory for bsd driver data\n");
-		goto bad;
+		wpa_printf(MSG_ERROR, "Could not allocate memory for bsd driver data");
+		return NULL;
 	}
 
 	drv->event_buf_len = rtbuf_len();