29 pp =
awk(mesg,
':', 1);
32 if (pc==NULL)
return NULL;
34 if (!strcasecmp(
"RCPT TO", pc)) {
35 pp = (
char*)malloc(strlen((
const char*)mesg)+1);
36 pt = strstr(mesg,
":");
37 if (pp==NULL || pt==NULL) {
42 memset(pp, 0, strlen((
const char*)mesg)+1);
43 memcpy(pp, pt, strlen((
const char*)pt));
67 i = strlen((
const char*)mesg);
68 mb = (
char*)malloc(i+1);
69 if (mb==NULL)
return NULL;
74 if (mesg[i]!=
' ' && mesg[i]!=
'>' && mesg[i]!=
CHAR_CR && mesg[i]!=
CHAR_LF)
break;
80 if (mesg[i]==
':' || mesg[i]==
'<' || mesg[i]==
' ')
break;
85 for (i=k, j=0; i<=l; i++) mb[j++] = mesg[i];
103 pc =
awk(pp,
' ', 1);
105 if (pc==NULL)
return FALSE;
107 if (!strncasecmp(com, pc, strlen((
const char*)com))) ret =
TRUE;
123 static int preDot =
OFF;
127 if (!strncmp(
".\r\n", mesg, 3)) {
135 if (!strncmp(
"\r\n", p, 2)) {
140 else if (!strncmp(
"\r\n.\r\n", p, 5)) {