-void discard_input(void);
-char *mr_gets(char *, char *, size_t);
-
-main(argc, argv)
- int argc;
- char **argv;
-{
- int status;
- char cmdbuf[BUFSIZ];
-#ifdef POSIX
- struct sigaction action;
-#endif
-
- whoami = argv[0];
-
- initialize_sms_error_table();
- initialize_krb_error_table();
-
-#ifdef POSIX
- action.sa_handler = discard_input;
- action.sa_flags = 0;
- sigemptyset(&action.sa_mask);
- sigaction(SIGINT, &action, NULL);
- sigsetjmp(jb, 1);
-#else
- signal(SIGINT, discard_input);
- setjmp(jb);
-#endif
+void discard_input(int sig);
+char *mr_gets(char *prompt, char *buf, size_t len);
+void execute_line(char *cmdbuf);
+int parse(char *buf, char *argv[MAXARGS]);
+int print_reply(int argc, char **argv, void *help);
+void test_noop(void);
+void test_connect(int argc, char **argv);
+void test_disconnect(void);
+void test_host(void);
+void test_motd(void);
+void test_query(int argc, char **argv);
+void test_auth(void);
+void test_proxy(int argc, char **argv);
+void test_access(int argc, char **argv);
+void test_dcm(void);
+void test_script(int argc, char **argv);
+void test_list_requests(void);
+void test_version(int argc, char **argv);
+void test_krb5_auth(void);
+void set_signal_handler(int, void (*handler)(int));
+void set_signal_blocking(int, int);
+
+int main(int argc, char **argv)
+{
+ char cmdbuf[BUFSIZ];
+ int c;
+
+ whoami = argv[0];
+ interactive = (isatty(0) && isatty(1));
+
+ while ((c = getopt(argc, argv, "q")) != -1)
+ {
+ switch (c)
+ {
+ case 'q':
+ quote_output = 1;
+ break;