diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2005-04-28 22:28:01 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2005-04-28 22:28:01 +0000 |
commit | dcab2f258a23b9342479f3e7875a2cb296956006 (patch) | |
tree | e70b662b50fe3350d6e7e3eb2f31dba4fd2a4162 /usr.sbin/config | |
parent | 2cd2e96fbef16347e3c3126edfcdbe819d989396 (diff) |
if running in -e mode, and stdin is not a tty, then re-print the commands
that are read. This makes this more easily to script.
Note: sparc needs a new config(8) installed before attempting to build
a new release because of stuff in src/etc/etc.sparc/Makefile.inc
Diffstat (limited to 'usr.sbin/config')
-rw-r--r-- | usr.sbin/config/main.c | 7 | ||||
-rw-r--r-- | usr.sbin/config/misc.c | 20 |
2 files changed, 21 insertions, 6 deletions
diff --git a/usr.sbin/config/main.c b/usr.sbin/config/main.c index 2d2cb808db0..b83116f6a9a 100644 --- a/usr.sbin/config/main.c +++ b/usr.sbin/config/main.c @@ -1,4 +1,4 @@ -/* $OpenBSD: main.c,v 1.36 2004/01/04 18:30:05 deraadt Exp $ */ +/* $OpenBSD: main.c,v 1.37 2005/04/28 22:28:00 deraadt Exp $ */ /* $NetBSD: main.c,v 1.22 1997/02/02 21:12:33 thorpej Exp $ */ /* @@ -82,6 +82,8 @@ static void optiondelta(void); int madedir = 0; +int verbose; + void usage(void) { @@ -117,6 +119,8 @@ main(int argc, char *argv[]) case 'e': eflag = 1; + if (!isatty(STDIN_FILENO)) + verbose = 1; break; case 'g': @@ -153,7 +157,6 @@ main(int argc, char *argv[]) srcdir = optarg; break; - case '?': default: usage(); } diff --git a/usr.sbin/config/misc.c b/usr.sbin/config/misc.c index e638ff41375..a6389b6a3dd 100644 --- a/usr.sbin/config/misc.c +++ b/usr.sbin/config/misc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: misc.c,v 1.4 2003/06/28 04:55:07 deraadt Exp $ */ +/* $OpenBSD: misc.c,v 1.5 2005/04/28 22:28:00 deraadt Exp $ */ /* * Copyright (c) 1997 Tobias Weingartner @@ -26,7 +26,7 @@ */ #ifndef LINT -static char rcsid[] = "$OpenBSD: misc.c,v 1.4 2003/06/28 04:55:07 deraadt Exp $"; +static char rcsid[] = "$OpenBSD: misc.c,v 1.5 2005/04/28 22:28:00 deraadt Exp $"; #endif #include <sys/types.h> @@ -38,6 +38,8 @@ static char rcsid[] = "$OpenBSD: misc.c,v 1.4 2003/06/28 04:55:07 deraadt Exp $" #include "misc.h" +extern int verbose; + int ask_cmd(cmd_t *cmd) { @@ -47,6 +49,8 @@ ask_cmd(cmd_t *cmd) if (fgets(lbuf, sizeof lbuf, stdin) == NULL) errx(1, "eof"); lbuf[strlen(lbuf)-1] = '\0'; + if (verbose) + printf("%s\n", lbuf); /* Parse input */ buf = lbuf; @@ -69,9 +73,17 @@ ask_yn(const char *str) fflush(stdout); first = ch = getchar(); - while (ch != '\n' && ch != EOF) + if (verbose) { + printf("%c", ch); + fflush(stdout); + } + while (ch != '\n' && ch != EOF) { ch = getchar(); - + if (verbose) { + printf("%c\n", ch); + fflush(stdout); + } + } if (ch == EOF || first == EOF) errx(1, "eof"); |