Module Name: src Committed By: rtr Date: Mon Jul 7 15:13:22 UTC 2014
Modified Files: src/sys/net: rtsock.c src/sys/netatalk: ddp_usrreq.c src/sys/netbt: hci_socket.c l2cap_socket.c rfcomm_socket.c sco_socket.c src/sys/netinet: raw_ip.c tcp_usrreq.c udp_usrreq.c src/sys/netinet6: raw_ip6.c udp6_usrreq.c src/sys/netipsec: keysock.c src/sys/netnatm: natm.c src/sys/rump/net/lib/libsockin: sockin.c Log Message: backout change that made pr_stat return EOPNOTSUPP for protocols that were not filling in struct stat. decision made after further discussion with rmind and investigation of how other operating systems behave. soo_stat() is doing just enough to be able to call what gets returned valid and thus justifys a return of success. additional review will be done to determine of the pr_stat functions that were already returning EOPNOTSUPP can be considered successful with what soo_stat() is doing. To generate a diff of this commit: cvs rdiff -u -r1.151 -r1.152 src/sys/net/rtsock.c cvs rdiff -u -r1.49 -r1.50 src/sys/netatalk/ddp_usrreq.c cvs rdiff -u -r1.28 -r1.29 src/sys/netbt/hci_socket.c cvs rdiff -u -r1.19 -r1.20 src/sys/netbt/l2cap_socket.c cvs rdiff -u -r1.20 -r1.21 src/sys/netbt/rfcomm_socket.c cvs rdiff -u -r1.21 -r1.22 src/sys/netbt/sco_socket.c cvs rdiff -u -r1.129 -r1.130 src/sys/netinet/raw_ip.c cvs rdiff -u -r1.182 -r1.183 src/sys/netinet/tcp_usrreq.c cvs rdiff -u -r1.204 -r1.205 src/sys/netinet/udp_usrreq.c cvs rdiff -u -r1.123 -r1.124 src/sys/netinet6/raw_ip6.c cvs rdiff -u -r1.103 -r1.104 src/sys/netinet6/udp6_usrreq.c cvs rdiff -u -r1.31 -r1.32 src/sys/netipsec/keysock.c cvs rdiff -u -r1.33 -r1.34 src/sys/netnatm/natm.c cvs rdiff -u -r1.44 -r1.45 src/sys/rump/net/lib/libsockin/sockin.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/net/rtsock.c diff -u src/sys/net/rtsock.c:1.151 src/sys/net/rtsock.c:1.152 --- src/sys/net/rtsock.c:1.151 Mon Jul 7 10:18:20 2014 +++ src/sys/net/rtsock.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: rtsock.c,v 1.151 2014/07/07 10:18:20 rtr Exp $ */ +/* $NetBSD: rtsock.c,v 1.152 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -61,7 +61,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rtsock.c,v 1.151 2014/07/07 10:18:20 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rtsock.c,v 1.152 2014/07/07 15:13:21 rtr Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -233,7 +233,7 @@ COMPATNAME(route_ioctl)(struct socket *s static int COMPATNAME(route_stat)(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } static int Index: src/sys/netatalk/ddp_usrreq.c diff -u src/sys/netatalk/ddp_usrreq.c:1.49 src/sys/netatalk/ddp_usrreq.c:1.50 --- src/sys/netatalk/ddp_usrreq.c:1.49 Mon Jul 7 07:09:58 2014 +++ src/sys/netatalk/ddp_usrreq.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: ddp_usrreq.c,v 1.49 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: ddp_usrreq.c,v 1.50 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (c) 1990,1991 Regents of The University of Michigan. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ddp_usrreq.c,v 1.49 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ddp_usrreq.c,v 1.50 2014/07/07 15:13:21 rtr Exp $"); #include "opt_mbuftrace.h" @@ -481,7 +481,8 @@ ddp_ioctl(struct socket *so, u_long cmd, static int ddp_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize. */ + return 0; } /* Index: src/sys/netbt/hci_socket.c diff -u src/sys/netbt/hci_socket.c:1.28 src/sys/netbt/hci_socket.c:1.29 --- src/sys/netbt/hci_socket.c:1.28 Mon Jul 7 07:09:58 2014 +++ src/sys/netbt/hci_socket.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: hci_socket.c,v 1.28 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: hci_socket.c,v 1.29 2014/07/07 15:13:21 rtr Exp $ */ /*- * Copyright (c) 2005 Iain Hibbert. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: hci_socket.c,v 1.28 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hci_socket.c,v 1.29 2014/07/07 15:13:21 rtr Exp $"); /* load symbolic names */ #ifdef BLUETOOTH_DEBUG @@ -496,7 +496,7 @@ hci_ioctl(struct socket *up, u_long cmd, static int hci_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/netbt/l2cap_socket.c diff -u src/sys/netbt/l2cap_socket.c:1.19 src/sys/netbt/l2cap_socket.c:1.20 --- src/sys/netbt/l2cap_socket.c:1.19 Mon Jul 7 07:09:58 2014 +++ src/sys/netbt/l2cap_socket.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: l2cap_socket.c,v 1.19 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: l2cap_socket.c,v 1.20 2014/07/07 15:13:21 rtr Exp $ */ /*- * Copyright (c) 2005 Iain Hibbert. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: l2cap_socket.c,v 1.19 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: l2cap_socket.c,v 1.20 2014/07/07 15:13:21 rtr Exp $"); /* load symbolic names */ #ifdef BLUETOOTH_DEBUG @@ -125,7 +125,7 @@ l2cap_ioctl(struct socket *up, u_long cm static int l2cap_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/netbt/rfcomm_socket.c diff -u src/sys/netbt/rfcomm_socket.c:1.20 src/sys/netbt/rfcomm_socket.c:1.21 --- src/sys/netbt/rfcomm_socket.c:1.20 Mon Jul 7 07:09:58 2014 +++ src/sys/netbt/rfcomm_socket.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: rfcomm_socket.c,v 1.20 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: rfcomm_socket.c,v 1.21 2014/07/07 15:13:21 rtr Exp $ */ /*- * Copyright (c) 2006 Itronix Inc. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rfcomm_socket.c,v 1.20 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rfcomm_socket.c,v 1.21 2014/07/07 15:13:21 rtr Exp $"); /* load symbolic names */ #ifdef BLUETOOTH_DEBUG @@ -133,7 +133,7 @@ rfcomm_ioctl(struct socket *up, u_long c static int rfcomm_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/netbt/sco_socket.c diff -u src/sys/netbt/sco_socket.c:1.21 src/sys/netbt/sco_socket.c:1.22 --- src/sys/netbt/sco_socket.c:1.21 Mon Jul 7 07:09:58 2014 +++ src/sys/netbt/sco_socket.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: sco_socket.c,v 1.21 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: sco_socket.c,v 1.22 2014/07/07 15:13:21 rtr Exp $ */ /*- * Copyright (c) 2006 Itronix Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sco_socket.c,v 1.21 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sco_socket.c,v 1.22 2014/07/07 15:13:21 rtr Exp $"); /* load symbolic names */ #ifdef BLUETOOTH_DEBUG @@ -116,7 +116,7 @@ sco_ioctl(struct socket *up, u_long cmd, static int sco_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/netinet/raw_ip.c diff -u src/sys/netinet/raw_ip.c:1.129 src/sys/netinet/raw_ip.c:1.130 --- src/sys/netinet/raw_ip.c:1.129 Mon Jul 7 07:09:58 2014 +++ src/sys/netinet/raw_ip.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: raw_ip.c,v 1.129 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: raw_ip.c,v 1.130 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -65,7 +65,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: raw_ip.c,v 1.129 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: raw_ip.c,v 1.130 2014/07/07 15:13:21 rtr Exp $"); #include "opt_inet.h" #include "opt_compat_netbsd.h" @@ -575,7 +575,8 @@ rip_ioctl(struct socket *so, u_long cmd, static int rip_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize. */ + return 0; } int Index: src/sys/netinet/tcp_usrreq.c diff -u src/sys/netinet/tcp_usrreq.c:1.182 src/sys/netinet/tcp_usrreq.c:1.183 --- src/sys/netinet/tcp_usrreq.c:1.182 Mon Jul 7 07:09:58 2014 +++ src/sys/netinet/tcp_usrreq.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_usrreq.c,v 1.182 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: tcp_usrreq.c,v 1.183 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -99,7 +99,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: tcp_usrreq.c,v 1.182 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tcp_usrreq.c,v 1.183 2014/07/07 15:13:21 rtr Exp $"); #include "opt_inet.h" #include "opt_ipsec.h" @@ -956,7 +956,8 @@ tcp_ioctl(struct socket *so, u_long cmd, static int tcp_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize. */ + return 0; } /* Index: src/sys/netinet/udp_usrreq.c diff -u src/sys/netinet/udp_usrreq.c:1.204 src/sys/netinet/udp_usrreq.c:1.205 --- src/sys/netinet/udp_usrreq.c:1.204 Mon Jul 7 07:09:58 2014 +++ src/sys/netinet/udp_usrreq.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: udp_usrreq.c,v 1.204 2014/07/07 07:09:58 rtr Exp $ */ +/* $NetBSD: udp_usrreq.c,v 1.205 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -66,7 +66,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: udp_usrreq.c,v 1.204 2014/07/07 07:09:58 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: udp_usrreq.c,v 1.205 2014/07/07 15:13:21 rtr Exp $"); #include "opt_inet.h" #include "opt_compat_netbsd.h" @@ -903,7 +903,8 @@ udp_ioctl(struct socket *so, u_long cmd, static int udp_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize. */ + return 0; } static int Index: src/sys/netinet6/raw_ip6.c diff -u src/sys/netinet6/raw_ip6.c:1.123 src/sys/netinet6/raw_ip6.c:1.124 --- src/sys/netinet6/raw_ip6.c:1.123 Mon Jul 7 07:09:59 2014 +++ src/sys/netinet6/raw_ip6.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: raw_ip6.c,v 1.123 2014/07/07 07:09:59 rtr Exp $ */ +/* $NetBSD: raw_ip6.c,v 1.124 2014/07/07 15:13:21 rtr Exp $ */ /* $KAME: raw_ip6.c,v 1.82 2001/07/23 18:57:56 jinmei Exp $ */ /* @@ -62,7 +62,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: raw_ip6.c,v 1.123 2014/07/07 07:09:59 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: raw_ip6.c,v 1.124 2014/07/07 15:13:21 rtr Exp $"); #include "opt_ipsec.h" @@ -653,7 +653,8 @@ rip6_ioctl(struct socket *so, u_long cmd static int rip6_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize */ + return 0; } int Index: src/sys/netinet6/udp6_usrreq.c diff -u src/sys/netinet6/udp6_usrreq.c:1.103 src/sys/netinet6/udp6_usrreq.c:1.104 --- src/sys/netinet6/udp6_usrreq.c:1.103 Mon Jul 7 07:09:59 2014 +++ src/sys/netinet6/udp6_usrreq.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: udp6_usrreq.c,v 1.103 2014/07/07 07:09:59 rtr Exp $ */ +/* $NetBSD: udp6_usrreq.c,v 1.104 2014/07/07 15:13:21 rtr Exp $ */ /* $KAME: udp6_usrreq.c,v 1.86 2001/05/27 17:33:00 itojun Exp $ */ /* @@ -62,7 +62,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: udp6_usrreq.c,v 1.103 2014/07/07 07:09:59 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: udp6_usrreq.c,v 1.104 2014/07/07 15:13:21 rtr Exp $"); #include "opt_inet.h" #include "opt_inet_csum.h" @@ -696,7 +696,8 @@ udp6_ioctl(struct socket *so, u_long cmd static int udp6_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + /* stat: don't bother with a blocksize */ + return 0; } int Index: src/sys/netipsec/keysock.c diff -u src/sys/netipsec/keysock.c:1.31 src/sys/netipsec/keysock.c:1.32 --- src/sys/netipsec/keysock.c:1.31 Mon Jul 7 07:09:59 2014 +++ src/sys/netipsec/keysock.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: keysock.c,v 1.31 2014/07/07 07:09:59 rtr Exp $ */ +/* $NetBSD: keysock.c,v 1.32 2014/07/07 15:13:21 rtr Exp $ */ /* $FreeBSD: src/sys/netipsec/keysock.c,v 1.3.2.1 2003/01/24 05:11:36 sam Exp $ */ /* $KAME: keysock.c,v 1.25 2001/08/13 20:07:41 itojun Exp $ */ @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: keysock.c,v 1.31 2014/07/07 07:09:59 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: keysock.c,v 1.32 2014/07/07 15:13:21 rtr Exp $"); #include "opt_ipsec.h" @@ -493,7 +493,7 @@ key_ioctl(struct socket *so, u_long cmd, static int key_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/netnatm/natm.c diff -u src/sys/netnatm/natm.c:1.33 src/sys/netnatm/natm.c:1.34 --- src/sys/netnatm/natm.c:1.33 Mon Jul 7 07:09:59 2014 +++ src/sys/netnatm/natm.c Mon Jul 7 15:13:21 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: natm.c,v 1.33 2014/07/07 07:09:59 rtr Exp $ */ +/* $NetBSD: natm.c,v 1.34 2014/07/07 15:13:21 rtr Exp $ */ /* * Copyright (c) 1996 Charles D. Cranor and Washington University. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: natm.c,v 1.33 2014/07/07 07:09:59 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: natm.c,v 1.34 2014/07/07 15:13:21 rtr Exp $"); #include <sys/param.h> #include <sys/kmem.h> @@ -140,7 +140,7 @@ done: static int natm_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } /* Index: src/sys/rump/net/lib/libsockin/sockin.c diff -u src/sys/rump/net/lib/libsockin/sockin.c:1.44 src/sys/rump/net/lib/libsockin/sockin.c:1.45 --- src/sys/rump/net/lib/libsockin/sockin.c:1.44 Mon Jul 7 07:09:59 2014 +++ src/sys/rump/net/lib/libsockin/sockin.c Mon Jul 7 15:13:22 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: sockin.c,v 1.44 2014/07/07 07:09:59 rtr Exp $ */ +/* $NetBSD: sockin.c,v 1.45 2014/07/07 15:13:22 rtr Exp $ */ /* * Copyright (c) 2008, 2009 Antti Kantee. All Rights Reserved. @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sockin.c,v 1.44 2014/07/07 07:09:59 rtr Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sockin.c,v 1.45 2014/07/07 15:13:22 rtr Exp $"); #include <sys/param.h> #include <sys/condvar.h> @@ -462,7 +462,7 @@ sockin_ioctl(struct socket *so, u_long c static int sockin_stat(struct socket *so, struct stat *ub) { - return EOPNOTSUPP; + return 0; } static int