diff options
| author | Eric S. Raymond <esr@thyrsus.com> | 1999-05-03 03:36:39 +0000 | 
|---|---|---|
| committer | Eric S. Raymond <esr@thyrsus.com> | 1999-05-03 03:36:39 +0000 | 
| commit | 2fa3184aaaa257a1eb54347e1d14b7df084e4d97 (patch) | |
| tree | d22569d331af18b04416ac55659800441b10af00 /sink.c | |
| parent | 6efc562bccfcf4484e8c18ee98296e0c1fb60eac (diff) | |
| download | fetchmail-2fa3184aaaa257a1eb54347e1d14b7df084e4d97.tar.gz fetchmail-2fa3184aaaa257a1eb54347e1d14b7df084e4d97.tar.bz2 fetchmail-2fa3184aaaa257a1eb54347e1d14b7df084e4d97.zip  | |
Correct an embarassing buffer smash.
svn path=/trunk/; revision=2463
Diffstat (limited to 'sink.c')
| -rw-r--r-- | sink.c | 8 | 
1 files changed, 5 insertions, 3 deletions
@@ -378,9 +378,6 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg)      xalloca(responses[0], char *, strlen(smtp_response)+1);      strcpy(responses[0], smtp_response); -    /* required by RFC1870; sets us up to be able to send bouncemail */ -    SMTP_rset(ctl->smtp_socket); -      /*       * Note: send_bouncemail message strings are not made subject       * to gettext translation because (a) they're going to be  @@ -404,6 +401,7 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg)  	 * 571 = sendmail's "unsolicited email refused"  	 *  	 */ +	SMTP_rset(ctl->smtp_socket);    /* stay on the safe site */  	send_bouncemail(ctl, msg, XMIT_ACCEPT,  			"Our spam filter rejected this transaction.\r\n",   			1, responses); @@ -436,6 +434,7 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg)  	 * this is not an actual failure, we're very likely to be  	 * able to recover on the next cycle.  	 */ +	SMTP_rset(ctl->smtp_socket);    /* required by RFC1870 */  	return(PS_TRANSIENT);      case 552: /* message exceeds fixed maximum message size */ @@ -444,6 +443,7 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg)  	 * ESMTP server.  Don't try to ship the message,   	 * and allow it to be deleted.  	 */ +	SMTP_rset(ctl->smtp_socket);    /* required by RFC1870 */  	send_bouncemail(ctl, msg, XMIT_ACCEPT,  			"This message was too large.\r\n",   			1, responses); @@ -454,12 +454,14 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg)  	 * These latter days 553 usually means a spammer is trying to  	 * cover his tracks.  	 */ +	SMTP_rset(ctl->smtp_socket);    /* stay on the safe side */  	send_bouncemail(ctl, msg, XMIT_ACCEPT,  			"Invalid address.\r\n",   			1, responses);  	return(PS_REFUSED);      default:	/* bounce the error back to the sender */ +	SMTP_rset(ctl->smtp_socket);    /* stay on the safe side */  	if (send_bouncemail(ctl, msg, XMIT_ACCEPT,  			"General SMTP/ESMTP error.\r\n",   			1, responses))  | 
