diff options
| author | Eric S. Raymond <esr@thyrsus.com> | 1997-09-23 20:42:52 +0000 | 
|---|---|---|
| committer | Eric S. Raymond <esr@thyrsus.com> | 1997-09-23 20:42:52 +0000 | 
| commit | 64fd771b149e643658983d30384fdd8e8d3c06d6 (patch) | |
| tree | 0bc86fd00c6328943ecec3aea7a8f20cd2c7ebb6 /driver.c | |
| parent | 9b6b11cf6cc3e0d3408aad96abaec98efb685122 (diff) | |
| download | fetchmail-64fd771b149e643658983d30384fdd8e8d3c06d6.tar.gz fetchmail-64fd771b149e643658983d30384fdd8e8d3c06d6.tar.bz2 fetchmail-64fd771b149e643658983d30384fdd8e8d3c06d6.zip | |
Avoid spurious matches in the Received line.
svn path=/trunk/; revision=1393
Diffstat (limited to 'driver.c')
| -rw-r--r-- | driver.c | 10 | 
1 files changed, 3 insertions, 7 deletions
| @@ -303,7 +303,7 @@ struct idlist **xmit_names;	/* list of recipient names parsed out */  static char *parse_received(struct query *ctl, char *bufp)  /* try to extract real addressee from the Received line */  { -    char *ok; +    char *ok = (char *)NULL;      static char rbuf[HOSTLEN + USERNAMELEN + 4];       /* @@ -314,9 +314,7 @@ static char *parse_received(struct query *ctl, char *bufp)       * address in the Received line.  Sendmail itself only       * does this when the mail has a single recipient.       */ -    if ((ok = strstr(bufp, "by ")) == (char *)NULL) -	ok = (char *)NULL; -    else +    if ((ok = strstr(bufp, "by ")) && isspace(ok[-1]))      {  	char	*sp, *tp; @@ -335,10 +333,8 @@ static char *parse_received(struct query *ctl, char *bufp)  	 */  	if (!is_host_alias(rbuf, ctl))  	    ok = (char *)NULL; -	else if ((ok = strstr(sp, "for ")) != 0) +	else if ((ok = strstr(sp, "for ")) && isspace(ok[-1]))  	{ -	    char	*sp, *tp; -  	    tp = rbuf;  	    sp = ok + 4;  	    if (*sp == '<') | 
