summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/ppp/iface.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/usr.sbin/ppp/iface.c b/usr.sbin/ppp/iface.c
index 67768da..5c7f7d0 100644
--- a/usr.sbin/ppp/iface.c
+++ b/usr.sbin/ppp/iface.c
@@ -568,14 +568,20 @@ iface_ChangeFlags(const char *ifname, int flags, int how)
close(s);
return 0;
}
+#ifdef __FreeBSD__
new_flags = (ifrq.ifr_flags & 0xffff) | (ifrq.ifr_flagshigh << 16);
+#else
+ new_flags = ifrq.ifr_flags & 0xffff;
+#endif
if (how == IFACE_ADDFLAGS)
new_flags |= flags;
else
new_flags &= ~flags;
ifrq.ifr_flags = new_flags & 0xffff;
+#ifdef __FreeBSD__
ifrq.ifr_flagshigh = new_flags >> 16;
+#endif
if (ID0ioctl(s, SIOCSIFFLAGS, &ifrq) < 0) {
log_Printf(LogERROR, "iface_ChangeFlags: ioctl(SIOCSIFFLAGS): %s\n",
OpenPOWER on IntegriCloud