Subject: CVS commit: src/sys
To: None <source-changes@NetBSD.org>
From: Christos Zoulas <christos@netbsd.org>
List: source-changes
Date: 05/29/2007 21:32:31
Module Name:	src
Committed By:	christos
Date:		Tue May 29 21:32:31 UTC 2007

Modified Files:
	src/sys/compat/common: Makefile uipc_syscalls_43.c
	src/sys/compat/freebsd: freebsd_ioctl.c freebsd_ioctl.h
	src/sys/compat/ibcs2: ibcs2_socksys.h
	src/sys/compat/linux/common: linux_socket.c
	src/sys/compat/sunos: sunos_ioctl.c
	src/sys/compat/sunos32: sunos32_ioctl.c
	src/sys/compat/svr4: svr4_sockio.c
	src/sys/compat/svr4_32: svr4_32_sockio.c
	src/sys/compat/sys: socket.h
	src/sys/compat/ultrix: ultrix_ioctl.c
	src/sys/conf: files
	src/sys/net: bpf.c if.c if.h if_etherip.c if_ethersubr.c if_gre.c
	    if_media.c if_tap.c
	src/sys/net80211: ieee80211_ioctl.c
	src/sys/sys: ioccom.h sockio.h
Added Files:
	src/sys/compat/common: uipc_syscalls_40.c
	src/sys/compat/sys: sockio.h

Log Message:
Add a sockaddr_storage member to "struct ifreq" maintaining backwards
compatibility with the older ioctls. This avoids stack smashing and
abuse of "struct sockaddr" when ioctls placed "struct sockaddr_foo's" that
were longer than "struct sockaddr".
XXX: Some of the emulations might be broken; I tried to add code for
them but I did not test them.


To generate a diff of this commit:
cvs rdiff -r1.38 -r1.39 src/sys/compat/common/Makefile
cvs rdiff -r0 -r1.1 src/sys/compat/common/uipc_syscalls_40.c
cvs rdiff -r1.28 -r1.29 src/sys/compat/common/uipc_syscalls_43.c
cvs rdiff -r1.12 -r1.13 src/sys/compat/freebsd/freebsd_ioctl.c
cvs rdiff -r1.5 -r1.6 src/sys/compat/freebsd/freebsd_ioctl.h
cvs rdiff -r1.5 -r1.6 src/sys/compat/ibcs2/ibcs2_socksys.h
cvs rdiff -r1.71 -r1.72 src/sys/compat/linux/common/linux_socket.c
cvs rdiff -r1.54 -r1.55 src/sys/compat/sunos/sunos_ioctl.c
cvs rdiff -r1.21 -r1.22 src/sys/compat/sunos32/sunos32_ioctl.c
cvs rdiff -r1.29 -r1.30 src/sys/compat/svr4/svr4_sockio.c
cvs rdiff -r1.15 -r1.16 src/sys/compat/svr4_32/svr4_32_sockio.c
cvs rdiff -r1.5 -r1.6 src/sys/compat/sys/socket.h
cvs rdiff -r0 -r1.1 src/sys/compat/sys/sockio.h
cvs rdiff -r1.29 -r1.30 src/sys/compat/ultrix/ultrix_ioctl.c
cvs rdiff -r1.846 -r1.847 src/sys/conf/files
cvs rdiff -r1.126 -r1.127 src/sys/net/bpf.c
cvs rdiff -r1.185 -r1.186 src/sys/net/if.c
cvs rdiff -r1.123 -r1.124 src/sys/net/if.h
cvs rdiff -r1.6 -r1.7 src/sys/net/if_etherip.c
cvs rdiff -r1.148 -r1.149 src/sys/net/if_ethersubr.c
cvs rdiff -r1.93 -r1.94 src/sys/net/if_gre.c
cvs rdiff -r1.25 -r1.26 src/sys/net/if_media.c
cvs rdiff -r1.28 -r1.29 src/sys/net/if_tap.c
cvs rdiff -r1.45 -r1.46 src/sys/net80211/ieee80211_ioctl.c
cvs rdiff -r1.8 -r1.9 src/sys/sys/ioccom.h
cvs rdiff -r1.25 -r1.26 src/sys/sys/sockio.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.