* fhandler_socket.cc (fhandler_socket::sendto): Restrict EPIPE and
SIGPIPE handling to connection oriented sockets. Add comment.
This commit is contained in:
		@@ -1,3 +1,8 @@
 | 
			
		||||
2003-03-20  Corinna Vinschen  <corinna@vinschen.de>
 | 
			
		||||
 | 
			
		||||
	* fhandler_socket.cc (fhandler_socket::sendto): Restrict EPIPE and
 | 
			
		||||
	SIGPIPE handling to connection oriented sockets.  Add comment.
 | 
			
		||||
 | 
			
		||||
2003-03-19  Christopher Faylor  <cgf@redhat.com>
 | 
			
		||||
 | 
			
		||||
	* sigproc.h (signal_fixup_after_exec): Eliminate argument in declaration.
 | 
			
		||||
 
 | 
			
		||||
@@ -1058,8 +1058,13 @@ fhandler_socket::sendto (const void *ptr, size_t len, int flags,
 | 
			
		||||
  else
 | 
			
		||||
    res = ret;
 | 
			
		||||
 | 
			
		||||
  /* Special handling for SIGPIPE */
 | 
			
		||||
  if (res == -1 && get_errno () == ESHUTDOWN)
 | 
			
		||||
  /* Special handling for EPIPE and SIGPIPE.
 | 
			
		||||
     
 | 
			
		||||
     EPIPE is generated if the local end has been shut down on a connection
 | 
			
		||||
     oriented socket.  In this case the process will also receive a SIGPIPE
 | 
			
		||||
     unless MSG_NOSIGNAL is set.  */
 | 
			
		||||
  if (res == -1 && get_errno () == ESHUTDOWN
 | 
			
		||||
      && get_socket_type () == SOCK_STREAM)
 | 
			
		||||
    {
 | 
			
		||||
      set_errno (EPIPE);
 | 
			
		||||
      if (! (flags & MSG_NOSIGNAL))
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user