git: 048ad7a9ef9f - stable/14 - ifconfig: Fix default netmask calculation

From: Michael Gmelin <grembo_at_FreeBSD.org>
Date: Sat, 15 Jun 2024 15:26:17 UTC
The branch stable/14 has been updated by grembo:

URL: https://cgit.FreeBSD.org/src/commit/?id=048ad7a9ef9fe15368ff287db5c705c8163f4e1c

commit 048ad7a9ef9fe15368ff287db5c705c8163f4e1c
Author:     Michael Gmelin <grembo@FreeBSD.org>
AuthorDate: 2024-06-12 16:11:52 +0000
Commit:     Michael Gmelin <grembo@FreeBSD.org>
CommitDate: 2024-06-15 15:24:59 +0000

    ifconfig: Fix default netmask calculation
    
    Reported by:    phk
    Reviewed by:    emaste, kp
    MFC after:      3 days
    Differential Revision:  https://reviews.freebsd.org/D45570
    
    (cherry picked from commit 8a9f0fa42b1c6cffd45459bb552e138083b00369)
---
 sbin/ifconfig/af_inet.c | 8 ++++----
 1 file 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