wlantest: Add history file for wlantest_cli
authorJouni Malinen <j@w1.fi>
Sun, 21 Nov 2010 10:09:27 +0000 (12:09 +0200)
committerJouni Malinen <j@w1.fi>
Sun, 21 Nov 2010 10:09:27 +0000 (12:09 +0200)
wlantest/wlantest_cli.c

index c0f6f54..751ea77 100644 (file)
@@ -1084,18 +1084,29 @@ static char ** wlantest_cli_edit_completion_cb(void *ctx, const char *str,
 static void wlantest_cli_interactive(int s)
 {
        struct wlantest_cli cli;
+       char *home, *hfile = NULL;
 
        if (eloop_init())
                return;
 
+       home = getenv("HOME");
+       if (home) {
+               const char *fname = ".wlantest_cli_history";
+               int hfile_len = os_strlen(home) + 1 + os_strlen(fname) + 1;
+               hfile = os_malloc(hfile_len);
+               if (hfile)
+                       os_snprintf(hfile, hfile_len, "%s/%s", home, fname);
+       }
+
        cli.s = s;
        eloop_register_signal_terminate(wlantest_cli_eloop_terminate, &cli);
        edit_init(wlantest_cli_edit_cmd_cb, wlantest_cli_edit_eof_cb,
-                 wlantest_cli_edit_completion_cb, &cli, NULL);
+                 wlantest_cli_edit_completion_cb, &cli, hfile);
 
        eloop_run();
 
-       edit_deinit(NULL, NULL);
+       edit_deinit(hfile, NULL);
+       os_free(hfile);
        eloop_destroy();
 }