[netfilter-cvslog] r3390 - trunk/nfsim/core
rusty at netfilter.org
rusty at netfilter.org
Wed Dec 15 09:59:22 CET 2004
Author: rusty at netfilter.org
Date: 2004-12-15 09:59:21 +0100 (Wed, 15 Dec 2004)
New Revision: 3390
Modified:
trunk/nfsim/core/core.c
trunk/nfsim/core/tui.c
trunk/nfsim/core/tui.h
Log:
Allow script name on cmdline (easier for gdb)
Remove stdin assumption from tui.c.
Modified: trunk/nfsim/core/core.c
===================================================================
--- trunk/nfsim/core/core.c 2004-12-15 08:55:57 UTC (rev 3389)
+++ trunk/nfsim/core/core.c 2004-12-15 08:59:21 UTC (rev 3390)
@@ -182,7 +182,7 @@
int main(int argc, char **argv)
{
- int termfd, failtest = 0, load_modules = 1;
+ int failtest = 0, load_modules = 1;
char c;
char *p;
char *failpattern = NULL;
@@ -220,6 +220,14 @@
}
}
+ if (optind < argc) {
+ int input = open(argv[optind], O_RDONLY);
+ if (input < 0)
+ barf_perror("Opening %s", argv[optind]);
+ dup2(input, STDIN_FILENO);
+ close(input);
+ }
+
/* Hack to make users' lives easier: set LD_LIBRARY_PATH for
* fakesockopt.so, based on where we are. */
p = strrchr(argv[0], '/');
@@ -265,19 +273,18 @@
running = 1;
message_init();
- if ((termfd = tui_init()) < 0)
- barf_perror("tui_init");
+ tui_init();
while (running) {
- wait_for_message(termfd);
- tui_userinput(termfd);
+ wait_for_message(STDIN_FILENO);
+ tui_userinput(STDIN_FILENO);
}
if (!tui_quiet)
printf("\n");
message_cleanup();
- tui_cleanup(termfd);
+ tui_cleanup(STDIN_FILENO);
unload_all_modules();
check_allocations();
Modified: trunk/nfsim/core/tui.c
===================================================================
--- trunk/nfsim/core/tui.c 2004-12-15 08:55:57 UTC (rev 3389)
+++ trunk/nfsim/core/tui.c 2004-12-15 08:59:21 UTC (rev 3390)
@@ -171,7 +171,7 @@
*/
}
-int tui_init(void)
+void tui_init(void)
{
rl_callback_handler_install(tui_quiet ? "" : "> ", process_line);
@@ -180,8 +180,6 @@
tui_register_command("q", tui_exit, tui_exit_help);
tui_register_command("test", tui_argtest, NULL);
tui_register_command("help", tui_help, tui_help_help);
-
- return fileno(stdin);
}
void script_fail(const char *fmt, ...)
Modified: trunk/nfsim/core/tui.h
===================================================================
--- trunk/nfsim/core/tui.h 2004-12-15 08:55:57 UTC (rev 3389)
+++ trunk/nfsim/core/tui.h 2004-12-15 08:59:21 UTC (rev 3390)
@@ -27,7 +27,7 @@
#define TUI_MAX_CMD_LEN 1024
#define TUI_MAX_ARGS 128
-int tui_init(void);
+void tui_init(void);
void tui_cleanup(int fd);
int tui_userinput(int fd);
More information about the netfilter-cvslog
mailing list