Blame ax25-tools-0.0.8-Unix98-ptmx.patch
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
--- kiss/mkiss.c.orig 2008-12-05 22:01:49.000000000 +0100
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+++ kiss/mkiss.c 2008-12-05 22:09:36.000000000 +0100
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
@@ -96,6 +96,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
{
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
char *name; /* Interface name (/dev/???) */
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
int fd; /* File descriptor */
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ int is_pty;
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
int escaped; /* FESC received? */
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
u16 crc; /* Incoming frame crc */
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
unsigned char obuf[SIZE]; /* TX buffer */
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
@@ -475,6 +476,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
perror("mkiss: open");
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
return 1;
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
}
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ grantpt(tty->fd);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ tty->is_pty = !unlockpt(tty->fd);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
tty->name = argv[optind];
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
tty_raw(tty->fd, hwflag);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
@@ -502,6 +505,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
perror("mkiss: open");
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
return 1;
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
}
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ grantpt(pty[i]->fd);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ pty[i]->is_pty = !unlockpt(pty[i]->fd);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
pty[i]->name = argv[optind + i + 1];
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
tty_raw(pty[i]->fd, FALSE);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
pty[i]->optr = pty[i]->obuf;
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
@@ -511,9 +516,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
/*
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
* Now all the ports are open, lock them.
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
*/
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
- tty_lock(argv[optind]);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ if (!tty->is_pty)
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ tty_lock(argv[optind]);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
for (i = 0; i < numptys; i++)
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
- tty_lock(argv[optind + i + 1]);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ if (!pty[i]->is_pty)
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
+ tty_lock(argv[optind + i + 1]);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
signal(SIGHUP, SIG_IGN);
|
|
![](https://seccdn.libravatar.org/avatar/c35e920d11f94c98ebcb1c4d9a8e5ee023bcc2f1ab3a26ab695b6c35a239ca10?s=16&d=retro) |
ae21e03 |
signal(SIGUSR1, sigusr1_handler);
|