1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-21 20:38:45 +00:00

Add patch.

This commit is contained in:
Kris Kennaway 2000-04-16 09:31:00 +00:00
parent dba281ef60
commit 142040ae41
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=27643

View File

@ -0,0 +1,130 @@
--- Source-Tree/lpserver/all-systems/lpserver.c.orig Mon Mar 20 00:18:51 2000
+++ Source-Tree/lpserver/all-systems/lpserver.c Mon Apr 10 20:37:29 2000
@@ -29,13 +29,14 @@
#if GPORT_HAS_termios_h
#include <termios.h>
-#endif
+#else /* for BSD platforms */
#if GPORT_HAS_sgtty_h
#include <sgtty.h>
#if GPORT_HAS_termio_h
#include <termio.h> /* for SUN */
#endif
#endif
+#endif
#include <sys/wait.h>
#include <unistd.h>
@@ -75,7 +76,8 @@
static struct termios save; /* Original printer characteristics */
#else
#if GPORT_HAS_BSD_IOCTL
-static struct sgttyb save; /* Original printer characteristics */
+static struct termios save; /* Original printer characteristics */
+/*static struct sgttyb save;*/ /* Original printer characteristics */
#else
BAD SYSTEM TYPE
#endif
@@ -1201,7 +1203,8 @@
struct termios tbuf; /* Used for printer ioctl() */
#else
#if GPORT_HAS_sgtty_h && (GPORT_HAS_BSD_IOCTL)
- struct sgttyb tbuf; /* Used for printer ioctl() */
+ struct termios tbuf; /* Used for printer ioctl() */
+/* struct sgttyb tbuf; */ /* Used for printer ioctl() */
int bsdmask;
#else
BAD SYSTEM TYPE
@@ -1447,10 +1450,10 @@
*/
#if GPORT_HAS_POSIX_IOCTL
if (translate)
- ioctl (fileno (stdout), TCGETA, &save);
+ ioctl (fileno (stdout), TCGETS, &save);
#else
#if GPORT_HAS_BSD_IOCTL
- ioctl (fileno (stdout), TIOCGETP , &save);
+ ioctl (fileno (stdout), TIOCGETA , &save);
#else
BAD SYSTEM TYPE
#endif
@@ -1566,13 +1569,13 @@
* Set new device state.
*/
tbuf = save;
-#if GPORT_HAS_POSIX_IOCTL
+#if GPORT_HAS_POSIX_IOCTL || (GPORT_HAS_BSD_IOCTL)
tbuf.c_iflag = IGNPAR | ISTRIP | BRKINT | IXON;
- tbuf.c_oflag = OPOST | ONLCR | TAB3 | FF1;
+ tbuf.c_oflag = OPOST | ONLCR | OXTABS | ONOEOT;
tbuf.c_cflag = baud | bits | CREAD | PARENB;
tbuf.c_lflag = ISIG;
if (translate)
- ioctl (fileno (stdout), TCSETA, &tbuf);
+ ioctl (fileno (stdout), TIOCSETA, &tbuf);
#else
#if GPORT_HAS_BSD_IOCTL
/*
@@ -1772,34 +1775,40 @@
*/
#if GPORT_HAS_POSIX_IOCTL
if (translate)
- ioctl (fileno (stdout), TCSETAW, &save);
+ ioctl (fileno (stdout), TCSETSW, &save);
#else
#if GPORT_HAS_BSD_IOCTL
- ioctl (fileno (stdout), TIOCSETP , &save);
+ ioctl (fileno (stdout), TIOCSETA , &save);
#else
BAD SYSTEM TYPE
#endif
#endif
errno=0;
- if (model_interface && forked)
+ if (model_interface && forked) {
while((ret=wait (&status)) == -1 &&
(errno == EINTR || errno == ENOTTY));
+ }
/*
* Format message with number of pages printed and exit.
*/
- if (status != 0)
- if ((status & 0xFF) == 0)
+ if (status != 0) {
+ if ((status & 0xFF) == 0) {
sprintf(message, "Interface: _exit value was: %1d.",
(status >> 8) & 0xFF);
- else if ((status & 0xFF00) == 0)
+ }
+ else if ((status & 0xFF00) == 0) {
sprintf(message,
"Interface: Aborting signal was %1d.",
status & 0x7F);
- else if (no_preprocess)
+ }
+ }
+ else if (no_preprocess) {
sprintf (message, "1 job completed.");
- else
+ }
+ else {
sprintf (message, "%1d pages printed.", pages);
+ }
serexit (RCM_EXITED, message);
return 0;
}
@@ -2035,10 +2044,10 @@
*/
#if GPORT_HAS_POSIX_IOCTL
if (translate)
- ioctl (fileno (stdout), TCSETAW, &save);
+ ioctl (fileno (stdout), TCSETSW, &save);
#else
#if GPORT_HAS_BSD_IOCTL
- ioctl (fileno (stdout), TIOCSETP , &save);
+ ioctl (fileno (stdout), TIOCSETA , &save);
#else
BAD SYSTEM TYPE
#endif