56 lines
1.6 KiB
Diff
56 lines
1.6 KiB
Diff
|
|
From ffc480c2e93f05266e4b130229877ad13f71a8c0 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Samanta Navarro <ferivoz@riseup.net>
|
||
|
|
Date: Mon, 30 Jan 2023 11:53:47 +0000
|
||
|
|
Subject: [PATCH] Explicitly override only newlines
|
||
|
|
|
||
|
|
Override only newlines with '\0' to avoid undesired truncation of
|
||
|
|
actual line content.
|
||
|
|
|
||
|
|
Signed-off-by: Samanta Navarro <ferivoz@riseup.net>
|
||
|
|
---
|
||
|
|
lib/port.c | 6 +++---
|
||
|
|
libmisc/console.c | 3 ++-
|
||
|
|
2 files changed, 5 insertions(+), 4 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/lib/port.c b/lib/port.c
|
||
|
|
index 0bea2ef4..90eb1498 100644
|
||
|
|
--- a/lib/port.c
|
||
|
|
+++ b/lib/port.c
|
||
|
|
@@ -130,8 +130,8 @@ static struct port *getportent (void)
|
||
|
|
again:
|
||
|
|
|
||
|
|
/*
|
||
|
|
- * Get the next line and remove the last character, which
|
||
|
|
- * is a '\n'. Lines which begin with '#' are all ignored.
|
||
|
|
+ * Get the next line and remove optional trailing '\n'.
|
||
|
|
+ * Lines which begin with '#' are all ignored.
|
||
|
|
*/
|
||
|
|
|
||
|
|
if (fgets (buf, (int) sizeof buf, ports) == 0) {
|
||
|
|
@@ -149,7 +149,7 @@ static struct port *getportent (void)
|
||
|
|
* TTY devices.
|
||
|
|
*/
|
||
|
|
|
||
|
|
- buf[strlen (buf) - 1] = 0;
|
||
|
|
+ buf[strcspn (buf, "\n")] = 0;
|
||
|
|
|
||
|
|
port.pt_names = ttys;
|
||
|
|
for (cp = buf, j = 0; j < PORT_TTY; j++) {
|
||
|
|
diff --git a/libmisc/console.c b/libmisc/console.c
|
||
|
|
index bc024eba..63d3ceb3 100644
|
||
|
|
--- a/libmisc/console.c
|
||
|
|
+++ b/libmisc/console.c
|
||
|
|
@@ -71,7 +71,8 @@ static bool is_listed (const char *cfgin, const char *tty, bool def)
|
||
|
|
*/
|
||
|
|
|
||
|
|
while (fgets (buf, (int) sizeof (buf), fp) != NULL) {
|
||
|
|
- buf[strlen (buf) - 1] = '\0';
|
||
|
|
+ /* Remove optional trailing '\n'. */
|
||
|
|
+ buf[strcspn (buf, "\n")] = '\0';
|
||
|
|
if (strcmp (buf, tty) == 0) {
|
||
|
|
(void) fclose (fp);
|
||
|
|
return true;
|
||
|
|
--
|
||
|
|
2.27.0
|
||
|
|
|