From e18f69e17157af25965396a09ec3e003c45ffa32 Mon Sep 17 00:00:00 2001
From: Maxime Bizon <mbizon@freebox.fr>
Date: Thu, 16 Jan 2020 01:04:21 +0100
Subject: [PATCH 09/18] pppd: make sure we log option errors to logfd

---
 pppd/options.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/pppd/options.c b/pppd/options.c
index f1d2dc9..aa7b137 100644
--- a/pppd/options.c
+++ b/pppd/options.c
@@ -1117,6 +1117,15 @@ option_error __V((char *fmt, ...))
     if (phase == PHASE_INITIALIZE)
 	fprintf(stderr, "%s: %s\n", progname, buf);
     syslog(LOG_ERR, "%s", buf);
+    if (log_to_fd >= 0) {
+	int n = strlen(buf);
+
+	if (n > 0 && buf[n-1] == '\n')
+	    --n;
+	if (write(log_to_fd, buf, n) != n
+	    || write(log_to_fd, "\n", 1) != 1)
+	    log_to_fd = -1;
+    }
 }
 
 #if 0
-- 
2.17.1

