Module Name: src
Committed By: roy
Date: Sat Mar 14 22:26:39 UTC 2020
Modified Files:
src/sbin/route: route.c
Log Message:
route: Enable receive error reporting on the routing socket
To generate a diff of this commit:
cvs rdiff -u -r1.166 -r1.167 src/sbin/route/route.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sbin/route/route.c
diff -u src/sbin/route/route.c:1.166 src/sbin/route/route.c:1.167
--- src/sbin/route/route.c:1.166 Sat Feb 22 00:42:15 2020
+++ src/sbin/route/route.c Sat Mar 14 22:26:39 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: route.c,v 1.166 2020/02/22 00:42:15 kamil Exp $ */
+/* $NetBSD: route.c,v 1.167 2020/03/14 22:26:39 roy Exp $ */
/*
* Copyright (c) 1983, 1989, 1991, 1993
@@ -39,7 +39,7 @@ __COPYRIGHT("@(#) Copyright (c) 1983, 19
#if 0
static char sccsid[] = "@(#)route.c 8.6 (Berkeley) 4/28/95";
#else
-__RCSID("$NetBSD: route.c,v 1.166 2020/02/22 00:42:15 kamil Exp $");
+__RCSID("$NetBSD: route.c,v 1.167 2020/03/14 22:26:39 roy Exp $");
#endif
#endif /* not lint */
@@ -208,8 +208,14 @@ main(int argc, char * const *argv)
pid = prog_getpid();
if (tflag)
sock = prog_open("/dev/null", O_WRONLY, 0);
- else
+ else {
+ int on = 1;
+
sock = prog_socket(PF_ROUTE, SOCK_RAW, 0);
+ if (setsockopt(sock, SOL_SOCKET, SO_RERROR,
+ &on, sizeof(on)) == -1)
+ warn("SO_RERROR");
+ }
if (sock < 0)
err(EXIT_FAILURE, "socket");