NetBSD-Bugs archive

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

kern/54150: COMPAT_50 vs NET_RT_IFLIST

>Number:         54150
>Category:       kern
>Synopsis:       COMPAT_50 vs NET_RT_IFLIST broken
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu May 02 11:10:00 +0000 2019
>Originator:     Paul Goyette
>Release:        NetBSD 8.99.37
| Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:     |
| (Retired)          | FA29 0E3B 35AF E8AE 6651 |     |
| Software Developer | 0786 F758 55DE 53BA 7731 |   |
System: NetBSD 8.99.37 NetBSD 8.99.37 (SPEEDY 2019-04-24 23:45:06 UTC) #0: Thu Apr 25 09:00:09 UTC 2019 amd64
Architecture: x86_64
Machine: amd64
Recent kernels are unable to properly return results for a NetBSD-5.2
version of getifaddrs.
1. Build a release, and install it (qemu VM is fine)
2. Create a /chroot52 directory, and unpack the base.tgz from
   NetBSD-5.2 into that directory
3. Boot the result, login as root, and execute the command

	# chroot /chroot52 ifconfig -l

4. A working system will display lo0 (and for qemu, wm0) while a
   broken system displays a blank line.

A manual bisect of the issue shows that the compat_50 code was working
correctly as of 2019-09-21 at 10:00:00 UTC, while kernels from 19:18:10
on that same date fail.  During that interval there was a series of
relevant commits starting with

	Module Name:	src
	Committed By:	roy
	Date:		Wed Sep 21 10:50:23 UTC 2016

	Modified Files:
		src/share/man/man4: route.4
		src/sys/compat/common: Makefile
		src/sys/compat/net: if.h route.h
		src/sys/net: if.h route.h rtsock.c
		src/sys/rump/net/lib/libnet: Makefile
		src/sys/sys: socket.h
	Added Files:
		src/sys/compat/common: rtsock_70.c

	Log Message:
	Add ifam_pid and ifam_addrflags to ifa_msghdr.
	Add compat code for old version.



Home | Main Index | Thread Index | Old Index