[pkg-wpa-devel] r1027 - /wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch
kelmo-guest at users.alioth.debian.org
kelmo-guest at users.alioth.debian.org
Fri Jan 11 07:17:32 UTC 2008
Author: kelmo-guest
Date: Fri Jan 11 07:17:30 2008
New Revision: 1027
URL: http://svn.debian.org/wsvn/pkg-wpa/?sc=1&rev=1027
Log:
use similar failure handling to driver_{bsd,madwifi}.c init function
Modified:
wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch
Modified: wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch?rev=1027&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch (original)
+++ wpasupplicant/trunk/debian/patches/33_wait_for_interface_driver_init.patch Fri Jan 11 07:17:30 2008
@@ -191,7 +191,30 @@
}
--- a/src/drivers/driver_wext.c
+++ b/src/drivers/driver_wext.c
-@@ -945,9 +945,15 @@
+@@ -924,9 +924,7 @@
+ s = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE);
+ if (s < 0) {
+ perror("socket(PF_NETLINK,SOCK_RAW,NETLINK_ROUTE)");
+- close(drv->ioctl_sock);
+- os_free(drv);
+- return NULL;
++ goto fail;
+ }
+
+ os_memset(&local, 0, sizeof(local));
+@@ -934,10 +932,7 @@
+ local.nl_groups = RTMGRP_LINK;
+ if (bind(s, (struct sockaddr *) &local, sizeof(local)) < 0) {
+ perror("bind(netlink)");
+- close(s);
+- close(drv->ioctl_sock);
+- os_free(drv);
+- return NULL;
++ goto fail2;
+ }
+
+ eloop_register_read_sock(s, wpa_driver_wext_event_receive, drv, ctx);
+@@ -945,9 +940,10 @@
drv->mlme_sock = -1;
@@ -199,13 +222,25 @@
+ if (wpa_driver_wext_get_ifflags(drv, &flags) != 0) {
printf("Could not get interface '%s' flags\n", drv->ifname);
- else if (!(flags & IFF_UP)) {
-+ close(drv->event_sock);
-+ eloop_unregister_read_sock(s);
-+ close(s);
-+ close(drv->ioctl_sock);
-+ os_free(drv);
-+ return NULL;
++ goto fail3;
+ } else if (!(flags & IFF_UP)) {
if (wpa_driver_wext_set_ifflags(drv, flags | IFF_UP) != 0) {
printf("Could not set interface '%s' UP\n",
drv->ifname);
+@@ -996,6 +992,16 @@
+ wpa_driver_wext_send_oper_ifla(drv, 1, IF_OPER_DORMANT);
+
+ return drv;
++
++fail3:
++ close(drv->event_sock);
++ eloop_unregister_read_sock(s);
++fail2:
++ close(s);
++ close(drv->ioctl_sock);
++fail:
++ os_free(drv);
++ return NULL;
+ }
+
+
More information about the Pkg-wpa-devel
mailing list