Apply by doing:
	cd /sys
	patch < send.patch

Index: kern/uipc_socket.c
diff -c kern/uipc_socket.c:1.17 kern/uipc_socket.c:1.18
*** kern/uipc_socket.c:1.17	Sun Aug 31 14:42:24 1997
--- kern/uipc_socket.c	Tue Nov 11 11:22:49 1997
***************
*** 354,361 ****
  	 * if we over-committed, and we must use a signed comparison
  	 * of space and resid.  On the other hand, a negative resid
  	 * causes us to loop sending 0-length segments to the protocol.
  	 */
! 	if (resid < 0) {
  		error = EINVAL;
  		goto out;
  	}
--- 354,363 ----
  	 * if we over-committed, and we must use a signed comparison
  	 * of space and resid.  On the other hand, a negative resid
  	 * causes us to loop sending 0-length segments to the protocol.
+ 	 * MSG_EOR on a SOCK_STREAM socket is also invalid.
  	 */
! 	if (resid < 0 ||
! 	    (so->so_type == SOCK_STREAM && (flags & MSG_EOR))) {
  		error = EINVAL;
  		goto out;
  	}
