aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Gmelin <grembo@FreeBSD.org>2024-06-12 16:11:52 +0000
committerMark Johnston <markj@FreeBSD.org>2024-08-07 13:31:10 +0000
commit01792dd7f27b3415e721f43f2d6e98df2346fd1f (patch)
tree088d945965a4addddec18afdf9b91e7ca89f1f2b
parentc4ade13d5498870de2cae09f5468aca0d73c126f (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.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sbin/ifconfig/af_inet.c b/sbin/ifconfig/af_inet.c
index 83b605e8c4cb..8032c7035c95 100644
--- a/sbin/ifconfig/af_inet.c
+++ b/sbin/ifconfig/af_inet.c
@@ -445,7 +445,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);
@@ -456,11 +456,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