[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ZMailer] SMTP Timeout Parm in Scheduler.conf



Neal Morgan escribió:
> Greetings:
> 
> I have a remote server that has an intermittent problem with its SMTP
> service.  As a result, I see messages queue growing as my outbound smtp
> waits through a connection timeout and subsequent retries.
> 
> The remote eventually self corrects and shortly thereafter the messages
> deliver.
> 
> I would like to change my configuration for this channel/host so the
> SMTP timeout is substantially lower than the 5 minute default - to see
> if I can reduce the amount of delay experienced in message delivery.
> 
> The message I am seeing is:
> 
> 	"diag	Timeout of 300 sec while waiting responses from remote"
> 
> 
> I see a timeout parm in the man page for smtp, but I am not
> understanding the exact syntax required.  Here is what I have tried (in
> scheduler.conf) for this channel/host - but neither of these seem to
> work.  I still see the 300 sec timeout message.
> 
> 
> 	command="smtp -s -L [204.16.171.8] -T conn=30s tcpw=30s"
> 
> and 
> 
> 	command="smtp -s -L [204.16.171.8] -Tconn=30s -Ttcpw=30s"
> 
> 
> What is the correct syntax here?
> 
That is what the man page for smtp reads, but from the source code for
smtp.c you can see that the timeouts are in seconds.
Extract from smtp.c :
-----------
...
...
...
 case 'T':		/* specify Timeout in seconds */
	    if (CISTREQN(optarg,"conn=",5)) {
	      timeout_conn = parse_interval(optarg+5,NULL);
	      if (timeout_conn < 10) {
		fprintf(stderr, "%s: bad tcp connection timeout: %s\n",
			argv[0], optarg+5);
		++errflg;
	      }
	      break;
	    } else if (CISTREQN(optarg,"data=",5)) {
	      timeout_data = parse_interval(optarg+5,NULL);
	      if (timeout_data < 10) {
		fprintf(stderr, "%s: bad data timeout: %s\n",
			argv[0], optarg+5);
		++errflg;
	      }
	      break;
	    } else if (CISTREQN(optarg,"dot=",4)) {
	      timeout_dot = parse_interval(optarg+4,NULL);
	      if (timeout_dot < 10) {
		fprintf(stderr, "%s: bad data-dot-reply timeout: %s\n",
			argv[0], optarg+4);
		++errflg;
	      }
	      break;
...
...

-------------------
I didn't try it myself

hth
Rodolfo

> 
> Thanks,
> 
> Neal Morgan
> 
> --
> To unsubscribe from this list: send the line "unsubscribe zmailer" in
> the body of a message to majordomo@nic.funet.fi

--
To unsubscribe from this list: send the line "unsubscribe zmailer" in
the body of a message to majordomo@nic.funet.fi