SPFENU spf;
char *domain;
-AFNTYP **afns;
spf=spf_unknown;
domain=strchr(mailfrom,'@');
+(void) rou_dbglive(9,OPEP,"Domain=<%s>",domain);
if (domain!=(char *)0)
domain++;
-afns=afn_getipnums(peerip);
-if ((afns!=(AFNTYP **)0)&&(domain!=(char *)0)) {
- int try;
-
- try=0;
- for (int i=0;afns[i]!=(AFNTYP *)0;i++) {
- spf=spf_getstatus(&try,domain,afns[i]);
- (void) rou_dbglive(9,OPEP,"SPF[%d] for [%s]=<%s>",
- i,afns[i]->strnumip,spf_spfASCII(spf));
+if (domain!=(char *)0) {
+ AFNTYP **afns;
+
+ afns=afn_getipnums(peerip);
+ if (afns!=(AFNTYP **)0) {
+ int try;
+
+ try=0;
+ for (int i=0;afns[i]!=(AFNTYP *)0;i++) {
+ spf=spf_getstatus(&try,domain,afns[i]);
+ (void) rou_dbglive(9,OPEP,"SPF[%d] for [%s]=<%s>",
+ i,afns[i]->strnumip,spf_spfASCII(spf));
+ }
+ afns=(AFNTYP **)rou_freelist((void **)afns,(genfree_t)afn_freeipnum);
}
- afns=(AFNTYP **)rou_freelist((void **)afns,(genfree_t)afn_freeipnum);
}
return spf;
static _Bool checkfrom(CONTYP *contact,char *mailfrom)
{
-#define OPEP "lvleml.c:checkfrom,"
+#define OPEP "lvleml.c:checkfrom"
_Bool success;
char *strsize;
}
break;
case 5 : //Checking if the SPF is good from the originator
+ contact->fromspf=spf_getspf(mailfrom,contact->peerip);
break;
case 6 : //everything ok
contact->mailfrom=strdup(mailfrom);