Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/netinet6 Revert regression introduced in in6.h r. 1.95



details:   https://anonhg.NetBSD.org/src/rev/f6dd38f74ea7
branches:  trunk
changeset: 965203:f6dd38f74ea7
user:      kamil <kamil%NetBSD.org@localhost>
date:      Thu Sep 05 20:17:27 2019 +0000

description:
Revert regression introduced in in6.h r. 1.95

----------------------------
revision 1.95
date: 2019-05-28 05:56:46 +0200;  author: kamil;  state: Exp;  lines: +2 -2;  commitid: YrUzDYl5zfcjiVoB;
Decorate struct in6_addr with the __packed attribute

This avoids undefined behavior when accessing misaligned pointers.

Detected by kUBSan.

Patch by Akul Pillai.
----------------------------

This change caused regression in at least qemu and addresses potential binary ABI breakage.

Fixes PR/54523 by <gson>

diffstat:

 sys/netinet6/in6.h |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (18 lines):

diff -r c08a0530b590 -r f6dd38f74ea7 sys/netinet6/in6.h
--- a/sys/netinet6/in6.h        Thu Sep 05 20:12:11 2019 +0000
+++ b/sys/netinet6/in6.h        Thu Sep 05 20:17:27 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: in6.h,v 1.95 2019/05/28 03:56:46 kamil Exp $   */
+/*     $NetBSD: in6.h,v 1.96 2019/09/05 20:17:27 kamil Exp $   */
 /*     $KAME: in6.h,v 1.83 2001/03/29 02:55:07 jinmei Exp $    */
 
 /*
@@ -126,7 +126,7 @@
                __uint16_t  __u6_addr16[8];
                uint32_t  __u6_addr32[4];
        } __u6_addr;                    /* 128-bit IP6 address */
-} __packed;
+};
 
 #define s6_addr   __u6_addr.__u6_addr8
 #ifdef _KERNEL /* XXX nonstandard */



Home | Main Index | Thread Index | Old Index