reorganize window management to allow display routines to set
[unix-history] / usr / src / usr.bin / window / wwtty.c
index d7acf80..31134ec 100644 (file)
@@ -1,5 +1,5 @@
 #ifndef lint
 #ifndef lint
-static char *sccsid = "@(#)wwtty.c     1.1 83/07/17";
+static char *sccsid = "@(#)wwtty.c     3.4 83/08/26";
 #endif
 
 #include "ww.h"
 #endif
 
 #include "ww.h"
@@ -7,35 +7,41 @@ static        char *sccsid = "@(#)wwtty.c     1.1 83/07/17";
 wwgettty(d, t)
 register struct ww_tty *t;
 {
 wwgettty(d, t)
 register struct ww_tty *t;
 {
-       if (ioctl(d, TIOCGETP, &t->ww_sgttyb) < 0)
-               return -1;
-       if (ioctl(d, TIOCGETC, &t->ww_tchars) < 0)
-               return -1;
-       if (ioctl(d, TIOCGLTC, &t->ww_ltchars) < 0)
-               return -1;
-       if (ioctl(d, TIOCLGET, &t->ww_lmode) < 0)
-               return -1;
-       if (ioctl(d, TIOCGETD, &t->ww_ldisc) < 0)
-               return -1;
-       if (ioctl(d, TIOCGPGRP, &t->ww_pgrp) < 0)
-               return -1;
+       if (ioctl(d, (int)TIOCGETP, (char *)&t->ww_sgttyb) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCGETC, (char *)&t->ww_tchars) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCGLTC, (char *)&t->ww_ltchars) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCLGET, (char *)&t->ww_lmode) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCGETD, (char *)&t->ww_ldisc) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCGPGRP, (char *)&t->ww_pgrp) < 0)
+               goto bad;
        return 0;
        return 0;
+bad:
+       wwerrno = WWE_SYS;
+       return -1;
 }
 
 wwsettty(d, t)
 register struct ww_tty *t;
 {
 }
 
 wwsettty(d, t)
 register struct ww_tty *t;
 {
-       if (ioctl(d, TIOCSETP, &t->ww_sgttyb) < 0)
-               return -1;
-       if (ioctl(d, TIOCSETC, &t->ww_tchars) < 0)
-               return -1;
-       if (ioctl(d, TIOCSLTC, &t->ww_ltchars) < 0)
-               return -1;
-       if (ioctl(d, TIOCLSET, &t->ww_lmode) < 0)
-               return -1;
-       if (ioctl(d, TIOCSETD, &t->ww_ldisc) < 0)
-               return -1;
-       if (ioctl(d, TIOCSPGRP, &t->ww_pgrp) < 0)
-               return -1;
+       if (ioctl(d, (int)TIOCSETN, (char *)&t->ww_sgttyb) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCSETC, (char *)&t->ww_tchars) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCSLTC, (char *)&t->ww_ltchars) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCLSET, (char *)&t->ww_lmode) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCSETD, (char *)&t->ww_ldisc) < 0)
+               goto bad;
+       if (ioctl(d, (int)TIOCSPGRP, (char *)&t->ww_pgrp) < 0)
+               goto bad;
        return 0;
        return 0;
+bad:
+       wwerrno = WWE_SYS;
+       return -1;
 }
 }