diff options
| author | Michael Gmelin <grembo@FreeBSD.org> | 2024-06-12 16:11:52 +0000 |
|---|---|---|
| committer | Mark Johnston <markj@FreeBSD.org> | 2024-08-07 13:32:56 +0000 |
| commit | b9115dba07e8e7035cb54a7eb319e7166c59c7a4 (patch) | |
| tree | 09dc18a739ca80f60bda0141899fc1616324e2e4 | |
| parent | 4504250892124d6282ca931dd5f612afb8b799f6 (diff) | |
ifconfig: Fix default netmask calculation
Approved by: so
Security: FreeBSD-EN-24:14.ifconfig
Reported by: phk
Reviewed by: emaste, kp
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D45570
(cherry picked from commit 8a9f0fa42b1c6cffd45459bb552e138083b00369)
(cherry picked from commit 048ad7a9ef9fe15368ff287db5c705c8163f4e1c)
| -rw-r--r-- | sbin/ifconfig/af_inet.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sbin/ifconfig/af_inet.c b/sbin/ifconfig/af_inet.c index 5e3084165b33..e21956cfc4fd 100644 --- a/sbin/ifconfig/af_inet.c +++ b/sbin/ifconfig/af_inet.c @@ -440,7 +440,7 @@ in_exec_nl(if_ctx *ctx, unsigned long action, void *data) static void in_setdefaultmask_nl(void) { - struct in_px *px = sintab_nl[ADDR]; + struct in_px *px = sintab_nl[ADDR]; in_addr_t i = ntohl(px->addr.s_addr); @@ -451,11 +451,11 @@ in_setdefaultmask_nl(void) * we should return an error rather than warning. */ if (IN_CLASSA(i)) - px->plen = IN_CLASSA_NSHIFT; + px->plen = 32 - IN_CLASSA_NSHIFT; else if (IN_CLASSB(i)) - px->plen = IN_CLASSB_NSHIFT; + px->plen = 32 - IN_CLASSB_NSHIFT; else - px->plen = IN_CLASSC_NSHIFT; + px->plen = 32 - IN_CLASSC_NSHIFT; px->maskset = true; } #endif |
