Module Name:    src
Committed By:   bouyer
Date:           Mon Apr  9 13:34:11 UTC 2018

Modified Files:
        src/lib/libc/sys [netbsd-8]: recv.2
        src/sbin/route [netbsd-8]: route.c
        src/sys/kern [netbsd-8]: uipc_socket.c uipc_socket2.c uipc_usrreq.c
        src/sys/net [netbsd-8]: raw_usrreq.c rtsock.c
        src/sys/netatalk [netbsd-8]: ddp_input.c
        src/sys/netcan [netbsd-8]: can.c
        src/sys/netinet [netbsd-8]: ip_mroute.c raw_ip.c udp_usrreq.c
        src/sys/netinet6 [netbsd-8]: icmp6.c ip6_input.c ip6_mroute.c raw_ip6.c
        src/sys/netipsec [netbsd-8]: keysock.c
        src/sys/sys [netbsd-8]: socketvar.h
        src/tests/lib/libc/sys [netbsd-8]: t_recvmmsg.c
        src/tests/net/icmp [netbsd-8]: t_ping.c

Log Message:
Pull up following revision(s) (requested by roy in ticket #724):
        tests/net/icmp/t_ping.c: revision 1.19
        sys/netinet6/raw_ip6.c: revision 1.166
        sys/netinet6/ip6_input.c: revision 1.195
        sys/net/raw_usrreq.c: revision 1.59
        sys/sys/socketvar.h: revision 1.151
        sys/kern/uipc_socket2.c: revision 1.128
        tests/lib/libc/sys/t_recvmmsg.c: revision 1.2
        lib/libc/sys/recv.2: revision 1.38
        sys/net/rtsock.c: revision 1.239
        sys/netinet/udp_usrreq.c: revision 1.246
        sys/netinet6/icmp6.c: revision 1.224
        tests/net/icmp/t_ping.c: revision 1.20
        sys/netipsec/keysock.c: revision 1.63
        sys/netinet/raw_ip.c: revision 1.172
        sys/kern/uipc_socket.c: revision 1.260
        tests/net/icmp/t_ping.c: revision 1.22
        sys/kern/uipc_socket.c: revision 1.261
        tests/net/icmp/t_ping.c: revision 1.23
        sys/netinet/ip_mroute.c: revision 1.155
        sbin/route/route.c: revision 1.159
        sys/netinet6/ip6_mroute.c: revision 1.123
        sys/netatalk/ddp_input.c: revision 1.31
        sys/netcan/can.c: revision 1.3
        sys/kern/uipc_usrreq.c: revision 1.184
        sys/netinet6/udp6_usrreq.c: revision 1.138
        tests/net/icmp/t_ping.c: revision 1.18
socket: report receive buffer overflows
Add soroverflow() which increments the overflow counter, sets so_error
to ENOBUFS and wakes the receive socket up.
Replace all code that manually increments this counter with soroverflow().
Add soroverflow() to raw_input().
This allows userland to detect route(4) overflows so it can re-sync
with the current state.
socket: clear error even when peeking
The error has already been reported and it's pointless requiring another
recv(2) call just to clear it.
socket: remove now incorrect comment that so_error is only udp
As it can be affected by route(4) sockets which are raw.
rtsock: log dropped messages that we cannot report to userland
Handle ENOBUFS when receiving messages.
Don't send messages if the receiver has died.
Sprinkle more soroverflow().
Handle ENOBUFS in recv
Handle ENOBUFS in sendto
Note value received. Harden another sendto for ENOBUFS.
Handle the routing socket overflowing gracefully.
Allow a valid sendto .... duh
Handle errors better.
Fix test for checking we sent all the data we asked to.

To generate a diff of this commit:
cvs rdiff -u -r1.36 -r1.36.20.1 src/lib/libc/sys/recv.2
cvs rdiff -u -r1.155.4.2 -r1.155.4.3 src/sbin/route/route.c
cvs rdiff -u -r1.255.2.1 -r1.255.2.2 src/sys/kern/uipc_socket.c
cvs rdiff -u -r1.124 -r1.124.8.1 src/sys/kern/uipc_socket2.c
cvs rdiff -u -r1.181 -r1.181.8.1 src/sys/kern/uipc_usrreq.c
cvs rdiff -u -r1.56.4.1 -r1.56.4.2 src/sys/net/raw_usrreq.c
cvs rdiff -u -r1.213.2.7 -r1.213.2.8 src/sys/net/rtsock.c
cvs rdiff -u -r1.29 -r1.29.8.1 src/sys/netatalk/ddp_input.c
cvs rdiff -u -r1.2 -r1.2.2.1 src/sys/netcan/can.c
cvs rdiff -u -r1.146.6.2 -r1.146.6.3 src/sys/netinet/ip_mroute.c
cvs rdiff -u -r1.164.4.1 -r1.164.4.2 src/sys/netinet/raw_ip.c
cvs rdiff -u -r1.233.4.1 -r1.233.4.2 src/sys/netinet/udp_usrreq.c
cvs rdiff -u -r1.211.6.4 -r1.211.6.5 src/sys/netinet6/icmp6.c
cvs rdiff -u -r1.178.2.6 -r1.178.2.7 src/sys/netinet6/ip6_input.c
cvs rdiff -u -r1.119.6.1 -r1.119.6.2 src/sys/netinet6/ip6_mroute.c
cvs rdiff -u -r1.157.2.3 -r1.157.2.4 src/sys/netinet6/raw_ip6.c
cvs rdiff -u -r1.129 -r1.129.4.1 src/sys/netinet6/udp6_usrreq.c
cvs rdiff -u -r1.58.2.1 -r1.58.2.2 src/sys/netipsec/keysock.c
cvs rdiff -u -r1.144.6.1 -r1.144.6.2 src/sys/sys/socketvar.h
cvs rdiff -u -r1.1 -r1.1.26.1 src/tests/lib/libc/sys/t_recvmmsg.c
cvs rdiff -u -r1.17 -r1.17.6.1 src/tests/net/icmp/t_ping.c

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

Reply via email to