Increased wpa_cli/hostapd_cli ping interval and made it configurable
The default interval is now 5 seconds (used to be 1 second for interactive mode and 2 seconds for wpa_cli -a). The interval can be changed with -G<seconds> command line option.
This commit is contained in:
parent
3a4606585c
commit
1cc84c1c6b
4 changed files with 27 additions and 9 deletions
|
@ -1,5 +1,9 @@
|
||||||
ChangeLog for hostapd
|
ChangeLog for hostapd
|
||||||
|
|
||||||
|
????-??-?? - v0.7.0
|
||||||
|
* increased hostapd_cli ping interval to 5 seconds and made this
|
||||||
|
configurable with a new command line options (-G<seconds>)
|
||||||
|
|
||||||
2009-01-06 - v0.6.7
|
2009-01-06 - v0.6.7
|
||||||
* added support for Wi-Fi Protected Setup (WPS)
|
* added support for Wi-Fi Protected Setup (WPS)
|
||||||
(hostapd can now be configured to act as an integrated WPS Registrar
|
(hostapd can now be configured to act as an integrated WPS Registrar
|
||||||
|
|
|
@ -101,6 +101,7 @@ static int hostapd_cli_quit = 0;
|
||||||
static int hostapd_cli_attached = 0;
|
static int hostapd_cli_attached = 0;
|
||||||
static const char *ctrl_iface_dir = "/var/run/hostapd";
|
static const char *ctrl_iface_dir = "/var/run/hostapd";
|
||||||
static char *ctrl_ifname = NULL;
|
static char *ctrl_ifname = NULL;
|
||||||
|
static int ping_interval = 5;
|
||||||
|
|
||||||
|
|
||||||
static void usage(void)
|
static void usage(void)
|
||||||
|
@ -109,6 +110,7 @@ static void usage(void)
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"\n"
|
"\n"
|
||||||
"usage: hostapd_cli [-p<path>] [-i<ifname>] [-hv] "
|
"usage: hostapd_cli [-p<path>] [-i<ifname>] [-hv] "
|
||||||
|
"[-G<ping interval>] \\\n"
|
||||||
" [command..]\n"
|
" [command..]\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Options:\n"
|
"Options:\n"
|
||||||
|
@ -507,7 +509,7 @@ static void hostapd_cli_interactive(void)
|
||||||
do {
|
do {
|
||||||
hostapd_cli_recv_pending(ctrl_conn, 0);
|
hostapd_cli_recv_pending(ctrl_conn, 0);
|
||||||
printf("> ");
|
printf("> ");
|
||||||
alarm(1);
|
alarm(ping_interval);
|
||||||
res = fgets(cmd, sizeof(cmd), stdin);
|
res = fgets(cmd, sizeof(cmd), stdin);
|
||||||
alarm(0);
|
alarm(0);
|
||||||
if (res == NULL)
|
if (res == NULL)
|
||||||
|
@ -569,7 +571,7 @@ static void hostapd_cli_alarm(int sig)
|
||||||
}
|
}
|
||||||
if (ctrl_conn)
|
if (ctrl_conn)
|
||||||
hostapd_cli_recv_pending(ctrl_conn, 1);
|
hostapd_cli_recv_pending(ctrl_conn, 1);
|
||||||
alarm(1);
|
alarm(ping_interval);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -580,10 +582,13 @@ int main(int argc, char *argv[])
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
c = getopt(argc, argv, "hi:p:v");
|
c = getopt(argc, argv, "hG:i:p:v");
|
||||||
if (c < 0)
|
if (c < 0)
|
||||||
break;
|
break;
|
||||||
switch (c) {
|
switch (c) {
|
||||||
|
case 'G':
|
||||||
|
ping_interval = atoi(optarg);
|
||||||
|
break;
|
||||||
case 'h':
|
case 'h':
|
||||||
usage();
|
usage();
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
ChangeLog for wpa_supplicant
|
ChangeLog for wpa_supplicant
|
||||||
|
|
||||||
|
????-??-?? - v0.7.0
|
||||||
|
* increased wpa_cli ping interval to 5 seconds and made this
|
||||||
|
configurable with a new command line options (-G<seconds>)
|
||||||
|
|
||||||
2009-01-06 - v0.6.7
|
2009-01-06 - v0.6.7
|
||||||
* added support for Wi-Fi Protected Setup (WPS)
|
* added support for Wi-Fi Protected Setup (WPS)
|
||||||
(wpa_supplicant can now be configured to act as a WPS Enrollee to
|
(wpa_supplicant can now be configured to act as a WPS Enrollee to
|
||||||
|
|
|
@ -95,6 +95,7 @@ static const char *ctrl_iface_dir = "/var/run/wpa_supplicant";
|
||||||
static char *ctrl_ifname = NULL;
|
static char *ctrl_ifname = NULL;
|
||||||
static const char *pid_file = NULL;
|
static const char *pid_file = NULL;
|
||||||
static const char *action_file = NULL;
|
static const char *action_file = NULL;
|
||||||
|
static int ping_interval = 5;
|
||||||
|
|
||||||
|
|
||||||
static void print_help();
|
static void print_help();
|
||||||
|
@ -104,7 +105,8 @@ static void usage(void)
|
||||||
{
|
{
|
||||||
printf("wpa_cli [-p<path to ctrl sockets>] [-i<ifname>] [-hvB] "
|
printf("wpa_cli [-p<path to ctrl sockets>] [-i<ifname>] [-hvB] "
|
||||||
"[-a<action file>] \\\n"
|
"[-a<action file>] \\\n"
|
||||||
" [-P<pid file>] [-g<global ctrl>] [command..]\n"
|
" [-P<pid file>] [-g<global ctrl>] [-G<ping interval>] "
|
||||||
|
"[command..]\n"
|
||||||
" -h = help (show this usage text)\n"
|
" -h = help (show this usage text)\n"
|
||||||
" -v = shown version information\n"
|
" -v = shown version information\n"
|
||||||
" -a = run in daemon mode executing the action file based on "
|
" -a = run in daemon mode executing the action file based on "
|
||||||
|
@ -1586,7 +1588,7 @@ static void wpa_cli_interactive(void)
|
||||||
do {
|
do {
|
||||||
wpa_cli_recv_pending(ctrl_conn, 0, 0);
|
wpa_cli_recv_pending(ctrl_conn, 0, 0);
|
||||||
#ifndef CONFIG_NATIVE_WINDOWS
|
#ifndef CONFIG_NATIVE_WINDOWS
|
||||||
alarm(1);
|
alarm(ping_interval);
|
||||||
#endif /* CONFIG_NATIVE_WINDOWS */
|
#endif /* CONFIG_NATIVE_WINDOWS */
|
||||||
#ifdef CONFIG_READLINE
|
#ifdef CONFIG_READLINE
|
||||||
cmd = readline("> ");
|
cmd = readline("> ");
|
||||||
|
@ -1690,7 +1692,7 @@ static void wpa_cli_action(struct wpa_ctrl *ctrl)
|
||||||
while (!wpa_cli_quit) {
|
while (!wpa_cli_quit) {
|
||||||
FD_ZERO(&rfds);
|
FD_ZERO(&rfds);
|
||||||
FD_SET(fd, &rfds);
|
FD_SET(fd, &rfds);
|
||||||
tv.tv_sec = 2;
|
tv.tv_sec = ping_interval;
|
||||||
tv.tv_usec = 0;
|
tv.tv_usec = 0;
|
||||||
res = select(fd + 1, &rfds, NULL, NULL, &tv);
|
res = select(fd + 1, &rfds, NULL, NULL, &tv);
|
||||||
if (res < 0 && errno != EINTR) {
|
if (res < 0 && errno != EINTR) {
|
||||||
|
@ -1744,7 +1746,7 @@ static void wpa_cli_alarm(int sig)
|
||||||
wpa_cli_reconnect();
|
wpa_cli_reconnect();
|
||||||
if (ctrl_conn)
|
if (ctrl_conn)
|
||||||
wpa_cli_recv_pending(ctrl_conn, 1, 0);
|
wpa_cli_recv_pending(ctrl_conn, 1, 0);
|
||||||
alarm(1);
|
alarm(ping_interval);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_NATIVE_WINDOWS */
|
#endif /* CONFIG_NATIVE_WINDOWS */
|
||||||
|
|
||||||
|
@ -1817,7 +1819,7 @@ int main(int argc, char *argv[])
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
c = getopt(argc, argv, "a:Bg:hi:p:P:v");
|
c = getopt(argc, argv, "a:Bg:G:hi:p:P:v");
|
||||||
if (c < 0)
|
if (c < 0)
|
||||||
break;
|
break;
|
||||||
switch (c) {
|
switch (c) {
|
||||||
|
@ -1830,6 +1832,9 @@ int main(int argc, char *argv[])
|
||||||
case 'g':
|
case 'g':
|
||||||
global = optarg;
|
global = optarg;
|
||||||
break;
|
break;
|
||||||
|
case 'G':
|
||||||
|
ping_interval = atoi(optarg);
|
||||||
|
break;
|
||||||
case 'h':
|
case 'h':
|
||||||
usage();
|
usage();
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in a new issue