aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/gifconfig
diff options
context:
space:
mode:
authorMaxim Sobolev <sobomax@FreeBSD.org>2002-08-29 12:52:28 +0000
committerMaxim Sobolev <sobomax@FreeBSD.org>2002-08-29 12:52:28 +0000
commit88202a1f33e7e11ee0103dc060f3f96930b3bcdf (patch)
treebf6fa5bf3cde5d37361cdaf648e7b799b38c9f19 /usr.sbin/gifconfig
parent3aea1e1405e636c7608de6bdd9131ac904ad1103 (diff)
downloadsrc-88202a1f33e7e11ee0103dc060f3f96930b3bcdf.tar.gz
src-88202a1f33e7e11ee0103dc060f3f96930b3bcdf.zip
Correctly handle ifr.ifr_flags/ifr.ifr_flagshigh like ifconfig(8) does.
MFC after: 1 day
Notes
Notes: svn path=/head/; revision=102574
Diffstat (limited to 'usr.sbin/gifconfig')
-rw-r--r--usr.sbin/gifconfig/gifconfig.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.sbin/gifconfig/gifconfig.c b/usr.sbin/gifconfig/gifconfig.c
index b8032364971e..e7fc1c0995f1 100644
--- a/usr.sbin/gifconfig/gifconfig.c
+++ b/usr.sbin/gifconfig/gifconfig.c
@@ -454,14 +454,15 @@ setifflags(vname, value)
exit(1);
}
strncpy(ifr.ifr_name, name, sizeof (ifr.ifr_name));
- flags = ifr.ifr_flags;
+ flags = (ifr.ifr_flags & 0xffff) | (ifr.ifr_flagshigh << 16);
if (value < 0) {
value = -value;
flags &= ~value;
} else
flags |= value;
- ifr.ifr_flags = flags;
+ ifr.ifr_flags = flags & 0xffff;
+ ifr.ifr_flagshigh = flags >> 16;
if (ioctl(s, SIOCSIFFLAGS, (caddr_t)&ifr) < 0)
Perror(vname);
}