Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!ihnp4!zehntel!hplabs!sri-unix!Satz@sri-tsc
From: Satz%sri-tsc@sri-unix.UUCP
Newsgroups: net.unix-wizards
Subject: another sendmail problem
Message-ID: <17395@sri-arpa.UUCP>
Date: Fri, 9-Mar-84 21:33:00 EST
Article-I.D.: sri-arpa.17395
Posted: Fri Mar  9 21:33:00 1984
Date-Received: Tue, 13-Mar-84 07:52:56 EST
Lines: 29

From:  Greg Satz 


If util.c/sfgets times out during a read, a line gets passed to syserr:

554 sfgets: timeout on read (mailer may be hung)

The problem is that errno is zero so the arpanet error number becomes
554 (a permanent failure) instead of a 451 (transient).

*** util.cO	Fri Mar  9 00:15:27 1984
--- util.c	Fri Mar  9 18:26:07 1984
***************
*** 643,648
  	{
  		if (setjmp(CtxReadTimeout) != 0)
  		{
  			syserr("sfgets: timeout on read (mailer may be hung)");
  			return (NULL);
  		}

--- 643,649 -----
  	{
  		if (setjmp(CtxReadTimeout) != 0)
  		{
+ 			errno = ETIMEDOUT;
  			syserr("sfgets: timeout on read (mailer may be hung)");
  			return (NULL);
  		}