summaryrefslogtreecommitdiff
path: root/usr/src/cmd/ttymon/stty.c
diff options
context:
space:
mode:
authorRobert Mustacchi <rm@joyent.com>2013-12-05 01:26:55 +0000
committerRobert Mustacchi <rm@joyent.com>2014-01-21 18:24:13 -0800
commit19d32b9ab53d17ac6605971e14c45a5281f8d9bb (patch)
treee0d013df65909af86605dcdb177f0394680922b3 /usr/src/cmd/ttymon/stty.c
parent4f364e7c95ee7fd9d5bbeddc1940e92405bb0e72 (diff)
downloadillumos-joyent-19d32b9ab53d17ac6605971e14c45a5281f8d9bb.tar.gz
4493 want siginfo
4494 Make dd show progress when you send INFO/USR1 signals 4495 dd could support O_SYNC and O_DSYNC Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com> Reviewed by: Joshua M. Clulow <josh@sysmgr.org> Reviewed by: Richard Lowe <richlowe@richlowe.net> Reviewed by: Garrett D'Amore <garrett@damore.org> Approved by: Garrett D'Amore <garrett@damore.org>
Diffstat (limited to 'usr/src/cmd/ttymon/stty.c')
-rw-r--r--usr/src/cmd/ttymon/stty.c107
1 files changed, 55 insertions, 52 deletions
diff --git a/usr/src/cmd/ttymon/stty.c b/usr/src/cmd/ttymon/stty.c
index fd4013d313..bfccdd3cc0 100644
--- a/usr/src/cmd/ttymon/stty.c
+++ b/usr/src/cmd/ttymon/stty.c
@@ -22,6 +22,7 @@
/*
* Copyright 1999-2002 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright (c) 2014, Joyent, Inc. All rights reserved.
*/
/*
@@ -30,8 +31,6 @@
*
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <ctype.h>
#include <locale.h>
@@ -115,7 +114,7 @@ main(int argc, char *argv[])
if (read(fd, (void *)&cswp, sizeof (cswp)) <
sizeof (cswp)) {
(void) fprintf(stderr, gettext(
- "cannot read entier %s file\n"), tmps);
+ "cannot read entire %s file\n"), tmps);
exit(2);
}
@@ -173,14 +172,14 @@ main(int argc, char *argv[])
return (0);
default:
(void) fprintf(stderr, gettext(
- "usage: stty [-a| -g]\n"));
+ "usage: stty [-a| -g]\n"));
(void) fprintf(stderr, gettext(
- " stty [modes]\n"));
+ " stty [modes]\n"));
return (2);
}
if ((argc == 3) && (argv[1][0] == '-') && (argv[1][2] == '\0') &&
- (argv[2][0] == '-') && (argv[2][1] == '-') && (argv[2][2] == '\0'))
+ (argv[2][0] == '-') && (argv[2][1] == '-') && (argv[2][2] == '\0'))
switch (argv[1][1]) {
case 'a':
pramodes();
@@ -190,13 +189,13 @@ main(int argc, char *argv[])
return (0);
default:
(void) fprintf(stderr, gettext(
- "usage: stty [-a| -g]\n"));
+ "usage: stty [-a| -g]\n"));
(void) fprintf(stderr, gettext(
- " stty [modes]\n"));
+ " stty [modes]\n"));
return (2);
}
if ((argc >= 3) && (argv[1][0] == '-') && (argv[1][1] == '-') &&
- (argv[1][2] == '\0')) {
+ (argv[1][2] == '\0')) {
/* ignore -- */
--argc;
++argv;
@@ -211,8 +210,9 @@ main(int argc, char *argv[])
for (i = 0; not_supported[i]; i++) {
if (strcmp(not_supported[i], s) == 0) {
(void) fprintf(stderr,
- gettext(
- "mode not supported on this device: %s\n"), s_arg);
+ gettext(
+ "mode not supported on this device: %s\n"),
+ s_arg);
exit(2);
}
}
@@ -306,11 +306,11 @@ prmodes(void) /* print modes, no options, argc is 1 */
if (ocb.c_line != 0)
(void) printf(gettext("line = %d; "), ocb.c_line);
if (term & WINDOW) {
+ (void) printf(gettext("rows = %d; columns = %d;"),
+ winsize.ws_row, winsize.ws_col);
(void) printf(gettext(
- "rows = %d; columns = %d;"), winsize.ws_row, winsize.ws_col);
- (void) printf(gettext(
- " ypixels = %d; xpixels = %d;\n"),
- winsize.ws_ypixel, winsize.ws_xpixel);
+ " ypixels = %d; xpixels = %d;\n"),
+ winsize.ws_ypixel, winsize.ws_xpixel);
}
if ((cb.c_lflag&ICANON) == 0)
(void) printf(gettext("min = %d; time = %d;\n"),
@@ -348,6 +348,8 @@ prmodes(void) /* print modes, no options, argc is 1 */
pit(cb.c_cc[VWERASE], "werase", "; ");
if (cb.c_cc[VLNEXT] != CLNEXT)
pit(cb.c_cc[VLNEXT], "lnext", "; ");
+ if (cb.c_cc[VSTATUS] != CSTATUS)
+ pit(cb.c_cc[VSTATUS], "status", "; ");
}
if (pitt) (void) printf("\n");
m = cb.c_iflag;
@@ -453,41 +455,41 @@ prmodes(void) /* print modes, no options, argc is 1 */
m = termiox.x_cflag;
switch (m & XMTCLK) {
case XCIBRG: (void)printf("xcibrg ");
- break;
+ break;
case XCTSET: (void)printf("xctset ");
- break;
+ break;
case XCRSET: (void)printf("xcrset ");
}
switch (m & RCVCLK) {
case RCIBRG: (void)printf("rcibrg ");
- break;
+ break;
case RCTSET: (void)printf("rctset ");
- break;
+ break;
case RCRSET: (void)printf("rcrset ");
}
switch (m & TSETCLK) {
case TSETCOFF: (void)printf("tsetcoff ");
- break;
+ break;
case TSETCRBRG: (void)printf("tsetcrbrg ");
- break;
+ break;
case TSETCTBRG: (void)printf("tsetctbrg ");
- break;
+ break;
case TSETCTSET: (void)printf("tsetctset ");
- break;
+ break;
case TSETCRSET: (void)printf("tsetcrset ");
}
switch (m & RSETCLK) {
case RSETCOFF: (void)printf("rsetcoff ");
- break;
+ break;
case RSETCRBRG: (void)printf("rsetcrbrg ");
- break;
+ break;
case RSETCTBRG: (void)printf("rsetctbrg ");
- break;
+ break;
case RSETCTSET: (void)printf("rsetctset ");
- break;
+ break;
case RSETCRSET: (void)printf("rsetcrset ");
}
(void) printf("\n");
@@ -512,10 +514,10 @@ pramodes(void) /* print all modes, -a option */
(void) printf("\n");
if (term & WINDOW) {
(void) printf(gettext("rows = %d; columns = %d;"),
- winsize.ws_row, winsize.ws_col);
+ winsize.ws_row, winsize.ws_col);
(void) printf(gettext(
- " ypixels = %d; xpixels = %d;\n"),
- winsize.ws_ypixel, winsize.ws_xpixel);
+ " ypixels = %d; xpixels = %d;\n"),
+ winsize.ws_ypixel, winsize.ws_xpixel);
}
#ifdef EUC
if ((term & CSIW) && kcswp.locale_name[0]) {
@@ -529,15 +531,15 @@ pramodes(void) /* print all modes, -a option */
*/
if ((term & EUCW) && kwp.eucw[0]) {
(void) printf("eucw %d:%d:%d:%d, ", kwp.eucw[0],
- kwp.eucw[1], kwp.eucw[2], kwp.eucw[3]);
+ kwp.eucw[1], kwp.eucw[2], kwp.eucw[3]);
(void) printf("scrw %d:%d:%d:%d\n", kwp.scrw[0],
- kwp.scrw[1], kwp.scrw[2], kwp.scrw[3]);
+ kwp.scrw[1], kwp.scrw[2], kwp.scrw[3]);
} else
(void) printf("eucw ?, scrw ?\n");
#endif /* EUC */
if ((cb.c_lflag&ICANON) == 0)
(void) printf(gettext("min = %d; time = %d;\n"),
- cb.c_cc[VMIN], cb.c_cc[VTIME]);
+ cb.c_cc[VMIN], cb.c_cc[VTIME]);
pit(cb.c_cc[VINTR], "intr", "; ");
pit(cb.c_cc[VQUIT], "quit", "; ");
pit(cb.c_cc[VERASE], "erase", "; ");
@@ -555,6 +557,7 @@ pramodes(void) /* print all modes, -a option */
pit(cb.c_cc[VDISCARD], "flush", "; ");
pit(cb.c_cc[VWERASE], "werase", "; ");
pit(cb.c_cc[VLNEXT], "lnext", ";\n");
+ pit(cb.c_cc[VSTATUS], "status", ";\n");
}
} else
pit((unsigned)stio.tab, "ctab", "\n");
@@ -644,41 +647,41 @@ pramodes(void) /* print all modes, -a option */
m = termiox.x_cflag;
switch (m & XMTCLK) {
case XCIBRG: (void)printf("xcibrg ");
- break;
+ break;
case XCTSET: (void)printf("xctset ");
- break;
+ break;
case XCRSET: (void)printf("xcrset ");
}
switch (m & RCVCLK) {
case RCIBRG: (void)printf("rcibrg ");
- break;
+ break;
case RCTSET: (void)printf("rctset ");
- break;
+ break;
case RCRSET: (void)printf("rcrset ");
}
switch (m & TSETCLK) {
case TSETCOFF: (void)printf("tsetcoff ");
- break;
+ break;
case TSETCRBRG: (void)printf("tsetcrbrg ");
- break;
+ break;
case TSETCTBRG: (void)printf("tsetctbrg ");
- break;
+ break;
case TSETCTSET: (void)printf("tsetctset ");
- break;
+ break;
case TSETCRSET: (void)printf("tsetcrset ");
}
switch (m & RSETCLK) {
case RSETCOFF: (void)printf("rsetcoff ");
- break;
+ break;
case RSETCRBRG: (void)printf("rsetcrbrg ");
- break;
+ break;
case RSETCTBRG: (void)printf("rsetctbrg ");
- break;
+ break;
case RSETCTSET: (void)printf("rsetctset ");
- break;
+ break;
case RSETCRSET: (void)printf("rsetcrset ");
}
(void) printf("\n");
@@ -693,7 +696,7 @@ pit(unsigned char what, char *itsname, char *sep)
pitt++;
(void) printf("%s", itsname);
if ((term & TERMIOS) && what == _POSIX_VDISABLE ||
- !(term & TERMIOS) && what == 0200) {
+ !(term & TERMIOS) && what == 0200) {
(void) printf(" = <undef>%s", sep);
return;
}
@@ -753,7 +756,7 @@ prencode(void) /* another stty cmd, used for -g option */
* output, control, and line discipline modes.
*/
(void) printf("%x:%x:%x:%x", cb.c_iflag, cb.c_oflag, cb.c_cflag,
- cb.c_lflag);
+ cb.c_lflag);
/* Print the control character fields. */
if (term & TERMIOS)
@@ -771,7 +774,7 @@ prencode(void) /* another stty cmd, used for -g option */
* structure.
*/
(void) printf(":%x:%x:%x:", kcswp.version, kcswp.codeset_type,
- kcswp.csinfo_num);
+ kcswp.csinfo_num);
if (*kcswp.locale_name == '\0') {
(void) printf("00");
} else {
@@ -780,10 +783,10 @@ prencode(void) /* another stty cmd, used for -g option */
}
for (i = 0; i < LDTERM_CS_MAX_CODESETS; i++)
(void) printf(":%x:%x:%x:%x",
- kcswp.eucpc_data[i].byte_length,
- kcswp.eucpc_data[i].screen_width,
- kcswp.eucpc_data[i].msb_start,
- kcswp.eucpc_data[i].msb_end);
+ kcswp.eucpc_data[i].byte_length,
+ kcswp.eucpc_data[i].screen_width,
+ kcswp.eucpc_data[i].msb_start,
+ kcswp.eucpc_data[i].msb_end);
} else {
#endif /* EUC */
for (i = 0; i < last; i++)