version 1.28, 2007/02/27 15:51:17 |
version 1.29, 2007/03/21 03:31:19 |
|
|
cont = 0; |
cont = 0; |
if (strncasecmp(buf, "Auto-Submitted:", 15)) |
if (strncasecmp(buf, "Auto-Submitted:", 15)) |
break; |
break; |
for (p = buf + 15; *p && isspace(*p); ++p) |
for (p = buf + 15; isspace(*p); ++p) |
; |
; |
/* |
/* |
* RFC 3834 section 2: |
* RFC 3834 section 2: |
|
|
*/ |
*/ |
if ((p[0] == 'n' || p[0] == 'N') && |
if ((p[0] == 'n' || p[0] == 'N') && |
(p[1] == 'o' || p[1] == 'O')) { |
(p[1] == 'o' || p[1] == 'O')) { |
for (p += 2; *p && isspace(*p); ++p) |
for (p += 2; isspace(*p); ++p) |
; |
; |
if (*p == '\0') |
if (*p == '\0') |
break; /* Auto-Submitted: no */ |
break; /* Auto-Submitted: no */ |
|
|
sizeof("Return-Path:")-1) || |
sizeof("Return-Path:")-1) || |
(buf[12] != ' ' && buf[12] != '\t')) |
(buf[12] != ' ' && buf[12] != '\t')) |
break; |
break; |
for (p = buf + 12; *p && isspace(*p); ++p) |
for (p = buf + 12; isspace(*p); ++p) |
; |
; |
if (strlcpy(from, p, sizeof(from)) >= sizeof(from)) { |
if (strlcpy(from, p, sizeof(from)) >= sizeof(from)) { |
syslog(LOG_NOTICE, |
syslog(LOG_NOTICE, |
|
|
cont = 0; |
cont = 0; |
if (strncasecmp(buf, "Precedence:", 11)) |
if (strncasecmp(buf, "Precedence:", 11)) |
break; |
break; |
for (p = buf + 11; *p && isspace(*p); ++p) |
for (p = buf + 11; isspace(*p); ++p) |
; |
; |
if (!strncasecmp(p, "junk", 4) || |
if (!strncasecmp(p, "junk", 4) || |
!strncasecmp(p, "bulk", 4) || |
!strncasecmp(p, "bulk", 4) || |
|
|
sizeof("Subject:")-1) || |
sizeof("Subject:")-1) || |
(buf[8] != ' ' && buf[8] != '\t')) |
(buf[8] != ' ' && buf[8] != '\t')) |
break; |
break; |
for (p = buf + 8; *p && isspace(*p); ++p) |
for (p = buf + 8; isspace(*p); ++p) |
; |
; |
if (strlcpy(subj, p, sizeof(subj)) >= sizeof(subj)) { |
if (strlcpy(subj, p, sizeof(subj)) >= sizeof(subj)) { |
syslog(LOG_NOTICE, |
syslog(LOG_NOTICE, |