diff options
author | Jouni Malinen <jouni@qca.qualcomm.com> | 2011-06-27 15:19:46 -0700 |
---|---|---|
committer | Dmitry Shmidt <dimitrysh@google.com> | 2011-06-27 15:20:55 -0700 |
commit | 75ecf5267604f166b85a7ee2cf0d9cb682966680 (patch) | |
tree | 0056e7ebf5af72a85abe6c0868de6ffc2f08eaae /hostapd | |
parent | e61a2d6db6113da5fad91660764afdb0596dbc46 (diff) | |
download | external_wpa_supplicant_8-75ecf5267604f166b85a7ee2cf0d9cb682966680.zip external_wpa_supplicant_8-75ecf5267604f166b85a7ee2cf0d9cb682966680.tar.gz external_wpa_supplicant_8-75ecf5267604f166b85a7ee2cf0d9cb682966680.tar.bz2 |
Accumulative patch from commit 20a0b03debef66cc57b0c34a05f8be5229be907c
atheros: Fix auth_alg configuration for static WEP
nl80211: Implement set_rate_sets for non-hostapd AP case
nl80211: Enable more AP callbacks for non-hostapd AP mode
nl80211: Re-order functions to group AP/hostapd specific code
Remove compiler warning for non-P2P builds
random: Add support for maintaining internal entropy store over restarts
Fix a compiler warning on WPS-AP-without-UPnP builds
P2P: Retry provision discovery requests in IDLE state
P2P: Add callback for provision discovery failure
P2P: Add wpas_notify_p2p_provision_discovery()
P2P: Add group started notification
DBus: Move wpas_dbus_new_decompose_object_path()
DBus: Refactor array adding, add binary arrays
DBus: Add support for P2P primitives
DBus: Fix some typos on comments
Fix CONFIG_AP=y build without CONFIG_P2P=y
Fix non-P2P D-Bus build
nl80211: Add support for driver-based PMKSA cache
P2P: Start GO without extra scan step
Remove a compiler warning on uninitialized variable
Add EVENT_RX_ACTION handler for hostapd
Fix hostapd build without NEED_AP_MLME=y
Fix AP selection to check privacy mismatch and IBSS with WPA/RSN IE
bsd: Fix set_key() sequence number endian issue
Add a copyright and license statement for a radiotap header file
Use nl80211 as an example instead of WEXT
Add notes for CONFIG_WPS_ER build configuration option
Fix CONFIG_NO_WPA_PASSPHRASE=y build
hostapd: Don't mask out non-symmetric STA HT caps
P2P: Enable P2P capability advertisement on D-Bus
P2P: Update D-Bus network object semantics during group formation
P2P: Show P2P peer signal level in D-Bus P2P device properties
P2P: Fix P2P device signal level type in D-Bus
P2P: Add dissasoc_low_ack in P2P device properties
P2P: More complete persistent group management over D-Bus
P2P: Add WpsFailed signal in P2P D-Bus
P2P: Update listen and operating channel from P2P D-Bus
P2P: Fix WpsFailed signal in P2P D-Bus
atheros: Fix glibc 'invalid pointer' error when WPA_TRACE is enabled
Clear WPA and EAPOL state machine config pointer on network removal
20a0b03debef66cc57b0c34a05f8be5229be907c
Change-Id: I2b83bf86ba9c7a9a218638be7b4de31d209cdde1
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'hostapd')
-rw-r--r-- | hostapd/defconfig | 10 | ||||
-rw-r--r-- | hostapd/main.c | 16 |
2 files changed, 19 insertions, 7 deletions
diff --git a/hostapd/defconfig b/hostapd/defconfig index 38d3284..26be2a8 100644 --- a/hostapd/defconfig +++ b/hostapd/defconfig @@ -193,9 +193,15 @@ CONFIG_IPV6=y # it may help in cases where the system pool is not initialized properly. # However, it is very strongly recommended that the system pool is initialized # with enough entropy either by using hardware assisted random number -# generatior or by storing state over device reboots. +# generator or by storing state over device reboots. # -# If the os_get_random() is known to provide strong ramdom data (e.g., on +# hostapd can be configured to maintain its own entropy store over restarts to +# enhance random number generation. This is not perfect, but it is much more +# secure than using the same sequence of random numbers after every reboot. +# This can be enabled with -e<entropy file> command line option. The specified +# file needs to be readable and writable by hostapd. +# +# If the os_get_random() is known to provide strong random data (e.g., on # Linux/BSD, the board in question is known to have reliable source of random # data from /dev/urandom), the internal hostapd random pool can be disabled. # This will save some in binary size and CPU use. However, this should only be diff --git a/hostapd/main.c b/hostapd/main.c index 7a4cfb0..01ad826 100644 --- a/hostapd/main.c +++ b/hostapd/main.c @@ -369,7 +369,8 @@ static void handle_dump_state(int sig, void *signal_ctx) #endif /* CONFIG_NATIVE_WINDOWS */ -static int hostapd_global_init(struct hapd_interfaces *interfaces) +static int hostapd_global_init(struct hapd_interfaces *interfaces, + const char *entropy_file) { hostapd_logger_register_cb(hostapd_logger_cb); @@ -383,7 +384,7 @@ static int hostapd_global_init(struct hapd_interfaces *interfaces) return -1; } - random_init(); + random_init(entropy_file); #ifndef CONFIG_NATIVE_WINDOWS eloop_register_signal(SIGHUP, handle_reload, interfaces); @@ -468,13 +469,14 @@ static void usage(void) show_version(); fprintf(stderr, "\n" - "usage: hostapd [-hdBKtv] [-P <PID file>] " + "usage: hostapd [-hdBKtv] [-P <PID file>] [-e <entropy file>] " "<configuration file(s)>\n" "\n" "options:\n" " -h show this usage\n" " -d show more debug messages (-dd for even more)\n" " -B run daemon in the background\n" + " -e entropy file\n" " -P PID file\n" " -K include key data in debug messages\n" #ifdef CONFIG_DEBUG_FILE @@ -504,12 +506,13 @@ int main(int argc, char *argv[]) int c, debug = 0, daemonize = 0; char *pid_file = NULL; const char *log_file = NULL; + const char *entropy_file = NULL; if (os_program_init()) return -1; for (;;) { - c = getopt(argc, argv, "Bdf:hKP:tv"); + c = getopt(argc, argv, "Bde:f:hKP:tv"); if (c < 0) break; switch (c) { @@ -524,6 +527,9 @@ int main(int argc, char *argv[]) case 'B': daemonize++; break; + case 'e': + entropy_file = optarg; + break; case 'f': log_file = optarg; break; @@ -564,7 +570,7 @@ int main(int argc, char *argv[]) return -1; } - if (hostapd_global_init(&interfaces)) + if (hostapd_global_init(&interfaces, entropy_file)) return -1; /* Initialize interfaces */ |