projects
/
mech_eap.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wpa_supplicant: Allow FTM functionality to be published
[mech_eap.git]
/
wpa_supplicant
/
main_winsvc.c
diff --git
a/wpa_supplicant/main_winsvc.c
b/wpa_supplicant/main_winsvc.c
index
b5be9fc
..
9950aa9
100644
(file)
--- a/
wpa_supplicant/main_winsvc.c
+++ b/
wpa_supplicant/main_winsvc.c
@@
-2,17
+2,11
@@
* WPA Supplicant / main() function for Win32 service
* Copyright (c) 2003-2006, Jouni Malinen <j@w1.fi>
*
* WPA Supplicant / main() function for Win32 service
* Copyright (c) 2003-2006, Jouni Malinen <j@w1.fi>
*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * Alternatively, this software may be distributed under the terms of BSD
- * license.
- *
- * See README and COPYING for more details.
+ * This software may be distributed under the terms of the BSD license.
+ * See README for more details.
*
* The root of wpa_supplicant configuration in registry is
*
* The root of wpa_supplicant configuration in registry is
- * HKEY_LOCAL_MACHINE\
SOFTWARE\
wpa_supplicant. This level includes global
+ * HKEY_LOCAL_MACHINE\
\SOFTWARE\\%
wpa_supplicant. This level includes global
* parameters and a 'interfaces' subkey with all the interface configuration
* (adapter to confname mapping). Each such mapping is a subkey that has
* 'adapter' and 'config' values.
* parameters and a 'interfaces' subkey with all the interface configuration
* (adapter to confname mapping). Each such mapping is a subkey that has
* 'adapter' and 'config' values.
@@
-70,9
+64,10
@@
static int read_interface(struct wpa_global *global, HKEY _hk,
HKEY hk;
#define TBUFLEN 255
TCHAR adapter[TBUFLEN], config[TBUFLEN], ctrl_interface[TBUFLEN];
HKEY hk;
#define TBUFLEN 255
TCHAR adapter[TBUFLEN], config[TBUFLEN], ctrl_interface[TBUFLEN];
- DWORD buflen;
+ DWORD buflen
, val
;
LONG ret;
struct wpa_interface iface;
LONG ret;
struct wpa_interface iface;
+ int skip_on_error = 0;
ret = RegOpenKeyEx(_hk, name, 0, KEY_QUERY_VALUE, &hk);
if (ret != ERROR_SUCCESS) {
ret = RegOpenKeyEx(_hk, name, 0, KEY_QUERY_VALUE, &hk);
if (ret != ERROR_SUCCESS) {
@@
-116,10
+111,21
@@
static int read_interface(struct wpa_global *global, HKEY _hk,
iface.confname = (char *) config;
}
iface.confname = (char *) config;
}
+ buflen = sizeof(val);
+ ret = RegQueryValueEx(hk, TEXT("skip_on_error"), NULL, NULL,
+ (LPBYTE) &val, &buflen);
+ if (ret == ERROR_SUCCESS && buflen == sizeof(val))
+ skip_on_error = val;
+
RegCloseKey(hk);
RegCloseKey(hk);
- if (wpa_supplicant_add_iface(global, &iface) == NULL)
- return -1;
+ if (wpa_supplicant_add_iface(global, &iface, NULL) == NULL) {
+ if (skip_on_error)
+ wpa_printf(MSG_DEBUG, "Skipped interface '%s' due to "
+ "initialization failure", iface.ifname);
+ else
+ return -1;
+ }
return 0;
}
return 0;
}
@@
-162,6
+168,13
@@
static int wpa_supplicant_thread(void)
}
buflen = sizeof(val);
}
buflen = sizeof(val);
+ ret = RegQueryValueEx(hk, TEXT("debug_timestamp"), NULL, NULL,
+ (LPBYTE) &val, &buflen);
+ if (ret == ERROR_SUCCESS && buflen == sizeof(val)) {
+ params.wpa_debug_timestamp = val;
+ }
+
+ buflen = sizeof(val);
ret = RegQueryValueEx(hk, TEXT("debug_use_file"), NULL, NULL,
(LPBYTE) &val, &buflen);
if (ret == ERROR_SUCCESS && buflen == sizeof(val) && val) {
ret = RegQueryValueEx(hk, TEXT("debug_use_file"), NULL, NULL,
(LPBYTE) &val, &buflen);
if (ret == ERROR_SUCCESS && buflen == sizeof(val) && val) {