changeset 2483:ef73d9711718 draft

Ensure that ND6_IFF_PERFORMNUD is set.
author Roy Marples <roy@marples.name>
date Thu, 08 May 2014 23:55:33 +0000
parents 46cb55263209
children 4b43ba8b6c11
files if-bsd.c
diffstat 1 files changed, 31 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/if-bsd.c	Thu May 08 23:38:15 2014 +0000
+++ b/if-bsd.c	Thu May 08 23:55:33 2014 +0000
@@ -1076,16 +1076,29 @@
 		char *p, **nrest;
 #endif
 
-#ifdef ND_IFF_AUTO_LINKLOCAL
-		if (set_if_nd6_flag(ifname, ND6_IFF_AUTO_LINKLOCAL) == -1) {
-			syslog(LOG_ERR, "%s: set_if_nd6_flag: %m", ifname);
+#ifdef ND6_IFF_IFDISABLED
+		if (del_if_nd6_flag(ifname, ND6_IFF_IFDISABLED) == -1) {
+			syslog(LOG_ERR,
+			    "%s: del_if_nd6_flag: ND6_IFF_IFDISABLED: %m",
+			    ifname);
 			return -1;
 		}
 #endif
 
-#ifdef ND6_IFF_IFDISABLED
-		if (del_if_nd6_flag(ifname, ND6_IFF_IFDISABLED) == -1) {
-			syslog(LOG_ERR, "%s: del_if_nd6_flag: %m", ifname);
+#ifdef ND6_IFF_PERFORMNUD
+		if (set_if_nd6_flag(ifname, ND6_IFF_PERFORMNUD) == -1) {
+			syslog(LOG_ERR,
+			    "%s: set_if_nd6_flag: ND6_IFF_PERFORMNUD: %m",
+			    ifname);
+			return -1;
+		}
+#endif
+
+#ifdef ND_IFF_AUTO_LINKLOCAL
+		if (set_if_nd6_flag(ifname, ND6_IFF_AUTO_LINKLOCAL) == -1) {
+			syslog(LOG_ERR,
+			    "%s: set_if_nd6_flag: ND6_IFF_AUTO_LINKLOCAL: %m",
+			    ifname);
 			return -1;
 		}
 #endif
@@ -1093,7 +1106,9 @@
 #ifdef ND6_IFF_OVERRIDE_RTADV
 		override = get_if_nd6_flag(ifname, ND6_IFF_OVERRIDE_RTADV);
 		if (override == -1)
-			syslog(LOG_ERR, "%s: get_if_nd6_flag: %m", ifname);
+			syslog(LOG_ERR,
+			    "%s: get_if_nd6_flag: ND6_IFF_OVERRIDE_RTADV: %m",
+			    ifname);
 		else if (override == 0 && !own)
 			return 0;
 #endif
@@ -1101,7 +1116,9 @@
 #ifdef ND6_IFF_ACCEPT_RTADV
 		ra = get_if_nd6_flag(ifname, ND6_IFF_ACCEPT_RTADV);
 		if (ra == -1)
-			syslog(LOG_ERR, "%s: get_if_nd6_flag: %m", ifname);
+			syslog(LOG_ERR,
+			    "%s: get_if_nd6_flag: ND6_IFF_ACCEPT_RTADV: %m",
+			    ifname);
 		else if (ra != 0 && own) {
 			syslog(LOG_INFO,
 			    "%s: disabling Kernel IPv6 RA support",
@@ -1109,7 +1126,9 @@
 			if (del_if_nd6_flag(ifname, ND6_IFF_ACCEPT_RTADV)
 			    == -1)
 			{
-				syslog(LOG_ERR, "%s: del_if_nd6_flag: %m",
+				syslog(LOG_ERR,
+				    "%s: del_if_nd6_flag: "
+				    "ND6_IFF_ACCEPT_RTADV: %m",
 				    ifname);
 				return ra;
 			}
@@ -1118,7 +1137,9 @@
 			    set_if_nd6_flag(ifname, ND6_IFF_OVERRIDE_RTADV)
 			    == -1)
 			{
-				syslog(LOG_ERR, "%s: set_if_nd6_flag: %m",
+				syslog(LOG_ERR,
+				    "%s: set_if_nd6_flag: "
+				    "ND6_IFF_OVERRIDE_RTADV: %m",
 				    ifname);
 				return ra;
 			}