[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Whoson continued



Matti:

The diff is below.  I took the shotgun approach here so I suspect some of this is unnecessary and/or just plain wrong.  Also included is a log from an interactive smtpserver session.  Note that I show a whoson query in advance - showing that I'm not logged in, but it still acts like I am.  Don't know if that's because of my bad modifications or something else.  

Thanks for your help!


Neal Morgan



DIFF
--------------------------------------------------------
778,783c778
<     if (debug){
< 	  type(NULL,0,NULL,"TEST: have-whoson found");
< 	  type(NULL,0,NULL,"TEST: state-whoson=[%d] whosonrc=[%d]",
<         state->whoson_result, whosonrc);
<  	}
<     state->whoson_result = whosonrc;
---
>     state->whoson_result = whosonrc;
1542,1552d1536
< 
< #ifdef HAVE_WHOSON_H
<     if (valueeq(state->values[P_A_TrustWhosOn], "+")) {
<       if (debug)
< 	    type(NULL,0,NULL," policytestaddr: 'trust-whoson +' found, accept? = %d",
< 	      (state->whoson_result == 0));
<       if (state->whoson_result == 0)
< 	    return state->whoson_result;
<     }
< #endif
< 
1582,1589d1565
< #ifdef HAVE_WHOSON_H
<       if (debug){
< 	    type(NULL,0,NULL,"TEST: 'have-whoson' found");
< 	    type(NULL,0,NULL,"TEST: 'state-whoson=[%d] ",
<           state->values[P_A_TrustWhosOn]);
<  	  }
< #endif
< 
1596,1598d1571
< #ifdef HAVE_WHOSON_H
< 			1 << P_A_TrustWhosOn       |
< #endif
1603,1610d1575
< #ifdef HAVE_WHOSON_H
<       if (valueeq(state->values[P_A_TrustWhosOn], "+")) {
<         if (state->whoson_result == 0){
<           PICK_PA_MSG(P_A_TrustWhosOn);
<           return 0;
<         }
<       }
< #endif
1649,1651d1613
< #ifdef HAVE_WHOSON_H
< 			1 << P_A_TrustWhosOn       |
< #endif
1700,1702d1661
< #ifdef HAVE_WHOSON_H
< 			1 << P_A_TrustWhosOn       |
< #endif
1734,1736d1692
< #ifdef HAVE_WHOSON_H
< 			1 << P_A_TrustWhosOn       |
< #endif
1758,1766d1713
< #ifdef HAVE_WHOSON_H
<       if (valueeq(state->values[P_A_TrustWhosOn], "+")) {
<         if (state->whoson_result == 0){
<           PICK_PA_MSG(P_A_TrustWhosOn);
<           return 0;
<         }
<       }
< #endif
< 
1796,1804d1742
< 
< #ifdef HAVE_WHOSON_H
<       if (valueeq(state->values[P_A_TrustWhosOn], "+")) {
<         if (state->whoson_result == 0){
<           PICK_PA_MSG(P_A_TrustWhosOn);
<           return 0;
<         }
<       }
< #endif




Interactive smtpserver Session
-------------------------------------------------
TestServer:/usr/lib/zmailer whoson query 66.27.53.185                         
     rc=1, info="Not logged in"

TestServer:/usr/lib/zmailer /usr/lib/zmailer/smtpserver -i -w -sve -d 1 -T '[66.27.53.185]'
000-Test: 'have-whoson' found
000-Test: 'state-whoson=[0] whosonrc=[0]
000- policytestaddr: lcldom/myaddress=0/0
000- Key: 7/IPv4/66.27.53.185/32
000-  query failed
000- Key: 7/IPv4/66.27.53.184/31
000-  query failed
000- Key: 7/IPv4/66.27.53.184/30
000-  query failed
000- Key: 7/IPv4/66.27.53.184/29
000-  query failed
000- Key: 7/IPv4/66.27.53.176/28
000-  query failed
000- Key: 7/IPv4/66.27.53.160/27
000-  query failed
000- Key: 7/IPv4/66.27.53.128/26
000-  query failed
000- Key: 7/IPv4/66.27.53.128/25
000-  query failed
000- Key: 7/IPv4/66.27.53.0/24
000-  query failed
000- Key: 7/IPv4/66.27.52.0/23
000-  query failed
000- Key: 7/IPv4/66.27.52.0/22
000-  query failed
000- Key: 7/IPv4/66.27.48.0/21
000-  query failed
000- Key: 7/IPv4/66.27.48.0/20
000-  query failed
000- Key: 7/IPv4/66.27.32.0/19
000-  query failed
000- Key: 7/IPv4/66.27.0.0/18
000-  query failed
000- Key: 7/IPv4/66.27.0.0/17
000-  query failed
000- Key: 7/IPv4/66.27.0.0/16
000-  query failed
000- Key: 7/IPv4/66.26.0.0/15
000-  query failed
000- Key: 7/IPv4/66.24.0.0/14
000-  query failed
000- Key: 7/IPv4/66.24.0.0/13
000-  query failed
000- Key: 7/IPv4/66.16.0.0/12
000-  query failed
000- Key: 7/IPv4/66.0.0.0/11
000-  query failed
000- Key: 7/IPv4/66.0.0.0/10
000-  query failed
000- Key: 7/IPv4/66.0.0.0/9
000-  query failed
000- Key: 7/IPv4/66.0.0.0/8
000-  query failed
000- Key: 7/IPv4/66.0.0.0/7
000-  query failed
000- Key: 7/IPv4/64.0.0.0/6
000-  query failed
000- Key: 7/IPv4/64.0.0.0/5
000-  query failed
000- Key: 7/IPv4/64.0.0.0/4
000-  query failed
000- Key: 7/IPv4/64.0.0.0/3
000-  query failed
000- Key: 7/IPv4/64.0.0.0/2
000-  query failed
000- Key: 7/IPv4/0.0.0.0/1
000-  query failed
000- Key: 7/IPv4/0.0.0.0/0
000-   Attribute: 18/alias/'_default_ipaddr'
000- Alias-recursion: 4
000- Key: 18/TAG/'_default_ipaddr'
000-   Attribute: 4/trust-whoson/'+'
000-     accepted!
000-   Attribute: 4/relaycustomer/'-'
000-     not interested, skipped...
000-   Attribute: 4/relaytarget/'-'
000-     not interested, skipped...
000-   Attribute: 4/senderokwithdns/'+'
000-     not interested, skipped...
000-   Attribute: 8/alias/'_rbl0'
000- Alias-recursion: 3
000- Key: 8/TAG/'_rbl0'
000-   Attribute: 97/test-dns-rbl/'relays.ordb.org:blackholes.mail-abuse.org:dun.dnsrbl.net:spam.dnsrbl.net:blacklist.spambag.org'
000-     accepted!
000- Results:  rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl relays.ordb.org:blackholes.mail-abuse.org:dun.dnsrbl.net:spam.dnsrbl.net:blacklist.spambag.org message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson + rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- policytestaddr: 'trust-whoson +' found, accept? = 1
000- policytest what=2
000- always_reject=0
000- always_freeze=0
000- always_accept=1
000- full_trust=0
000- trust_recipients=0
000- sender_reject=0
000- sender_freeze=0
000- sender_norelay=0
000- relaycustnet=0
000- rcpt_nocheck=0
000- rejectnet: requested, value=.
000- freezenet: requested, value=.
000- rejectsource: not requested, value=.
000- freezesource: not requested, value=.
000- relaycustomer: not requested, value=.
000- relaycustnet: requested, value=.
000- relaytarget: not requested, value=.
000- acceptifmx: not requested, value=.
000- acceptifdns: not requested, value=.
000- senderokwithdns: not requested, value=.
000- acceptbutfreeze: not requested, value=.
000- sendernorelay: not requested, value=.
000- test-dns-rbl: requested, value=relays.ordb.org:blackholes.mail-abuse.org:dun.dnsrbl.net:spam.dnsrbl.net:blacklist.spambag.org
000- message: not requested, value=.
000- localdomain: not requested, value=.
000- maxinsize: requested, value=.
000- maxoutsize: requested, value=.
000- fulltrustnet: requested, value=.
000- trustrecipients: requested, value=.
000- trust-whoson: requested, value=+
000- rcpt-dns-rbl: requested, value=.
000- test-rcpt-dns-rbl: not requested, value=.
000- warn-rcpt-dns-rbl: not requested, value=.
000- filtering: requested, value=.
000- maxsameipsource: requested, value=.
000- maxinsize=-1
000- maxoutsize=-1
000- maxsameiplimit=-1
220 TestServer ESMTP (NO UCE)(NO UBE) our local time is now Fri, 19 Dec 2003 10:47:26 -0800

HELO FOO
000- policytest what=0
000- always_reject=0
000- always_freeze=0
000- always_accept=1
000- full_trust=0
000- trust_recipients=0
000- sender_reject=0
000- sender_freeze=0
000- sender_norelay=0
000- relaycustnet=0
000- rcpt_nocheck=0
000- rejectnet: requested, value=.
000- freezenet: requested, value=.
000- rejectsource: not requested, value=.
000- freezesource: not requested, value=.
000- relaycustomer: not requested, value=.
000- relaycustnet: requested, value=.
000- relaytarget: not requested, value=.
000- acceptifmx: not requested, value=.
000- acceptifdns: not requested, value=.
000- senderokwithdns: not requested, value=.
000- acceptbutfreeze: not requested, value=.
000- sendernorelay: not requested, value=.
000- test-dns-rbl: requested, value=relays.ordb.org:blackholes.mail-abuse.org:dun.dnsrbl.net:spam.dnsrbl.net:blacklist.spambag.org
000- message: not requested, value=.
000- localdomain: not requested, value=.
000- maxinsize: requested, value=.
000- maxoutsize: requested, value=.
000- fulltrustnet: requested, value=.
000- trustrecipients: requested, value=.
000- trust-whoson: requested, value=+
000- rcpt-dns-rbl: requested, value=.
000- test-rcpt-dns-rbl: not requested, value=.
000- warn-rcpt-dns-rbl: not requested, value=.
000- filtering: requested, value=.
000- maxsameipsource: requested, value=.
000- maxinsize=-1
000- maxoutsize=-1
000- maxsameiplimit=-1
250 TestServer Hello FOO

MAIL FROM:<BOGUS@MSN.COM>
000- policytest what=3
000- always_reject=0
000- always_freeze=0
000- always_accept=1
000- full_trust=0
000- trust_recipients=0
000- sender_reject=0
000- sender_freeze=0
000- sender_norelay=0
000- relaycustnet=0
000- rcpt_nocheck=0
000- rejectnet: requested, value=.
000- freezenet: requested, value=.
000- rejectsource: not requested, value=.
000- freezesource: not requested, value=.
000- relaycustomer: not requested, value=.
000- relaycustnet: requested, value=.
000- relaytarget: not requested, value=.
000- acceptifmx: not requested, value=.
000- acceptifdns: not requested, value=.
000- senderokwithdns: not requested, value=.
000- acceptbutfreeze: not requested, value=.
000- sendernorelay: not requested, value=.
000- test-dns-rbl: requested, value=relays.ordb.org:blackholes.mail-abuse.org:dun.dnsrbl.net:spam.dnsrbl.net:blacklist.spambag.org
000- message: not requested, value=.
000- localdomain: not requested, value=.
000- maxinsize: requested, value=.
000- maxoutsize: requested, value=.
000- fulltrustnet: requested, value=.
000- trustrecipients: requested, value=.
000- trust-whoson: requested, value=+
000- rcpt-dns-rbl: requested, value=.
000- test-rcpt-dns-rbl: not requested, value=.
000- warn-rcpt-dns-rbl: not requested, value=.
000- filtering: requested, value=.
000- maxsameipsource: requested, value=.
000- maxinsize=-1
000- maxoutsize=-1
000- maxsameiplimit=-1
000- checkaddr(): user of 'bogus@msn.com'
000- Key: 16/USER/'bogus@msn.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- checkaddr(): user of 'bogus@'
000- Key: 9/USER/'bogus@'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 10/DOMAIN/'msn.com'
000- checkaddr(): domain of 'msn.com'
000- Key: 10/DOMAIN/'msn.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 11/DOMAIN/'.msn.com'
000- checkaddr(): domain of '.msn.com'
000- Key: 11/DOMAIN/'.msn.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 7/DOMAIN/'.com'
000- checkaddr(): domain of '.com'
000- Key: 7/DOMAIN/'.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 4/DOMAIN/'.'
000- checkaddr(): domain of '.'
000- Key: 4/DOMAIN/'.'
000-   Attribute: 15/alias/'_default_dot'
000- Alias-recursion: 4
000- Key: 15/TAG/'_default_dot'
000-   Attribute: 4/trust-whoson/'+'
000-     not interested, skipped...
000-   Attribute: 4/relaycustomer/'-'
000-     not interested, skipped...
000-   Attribute: 4/relaytarget/'-'
000-     not interested, skipped...
000-   Attribute: 4/senderokwithdns/'+'
000-     accepted!
000-   Attribute: 8/alias/'_rbl1'
000- Alias-recursion: 3
000- Key: 8/TAG/'_rbl1'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns + acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- dnsmxlookup('MSN.COM', depth=0 mxmode=0 qtype=T_MX)
000-  len=509 rcode=0 qdcount=1 ancount=4 nscount=6 arcount=16 TC=0
000  MX[0] = 'mx2.hotmail.COM'
000  MX[1] = 'mx3.hotmail.COM'
000  MX[2] = 'mx4.hotmail.COM'
000  MX[3] = 'mx1.hotmail.COM'
000-  ... accepted!
000- dnsmxlookup() did yield: 1, retmode='+'
000- ... returns: 0
250 2.1.0 Sender syntax Ok


RCPT TO:<Bogus@Yahoo.com>
000- policytest what=4
000- always_reject=0
000- always_freeze=0
000- always_accept=1
000- full_trust=0
000- trust_recipients=0
000- sender_reject=0
000- sender_freeze=0
000- sender_norelay=0
000- relaycustnet=0
000- rcpt_nocheck=0
000- rejectnet: not requested, value=.
000- freezenet: not requested, value=.
000- rejectsource: requested, value=.
000- freezesource: requested, value=.
000- relaycustomer: not requested, value=.
000- relaycustnet: not requested, value=.
000- relaytarget: not requested, value=.
000- acceptifmx: not requested, value=.
000- acceptifdns: not requested, value=.
000- senderokwithdns: requested, value=+
000- acceptbutfreeze: not requested, value=.
000- sendernorelay: requested, value=.
000- test-dns-rbl: not requested, value=.
000- message: not requested, value=.
000- localdomain: not requested, value=.
000- maxinsize: not requested, value=.
000- maxoutsize: not requested, value=.
000- fulltrustnet: not requested, value=.
000- trustrecipients: not requested, value=.
000- trust-whoson: not requested, value=.
000- rcpt-dns-rbl: not requested, value=.
000- test-rcpt-dns-rbl: not requested, value=.
000- warn-rcpt-dns-rbl: not requested, value=.
000- filtering: not requested, value=.
000- maxsameipsource: not requested, value=.
000- maxinsize=-1
000- maxoutsize=-1
000- maxsameiplimit=-1
000-Test: 'have-whoson' found
000-Test: 'state-whoson=[0]
000- checkaddr(): user of 'bogus@yahoo.com'
000- Key: 18/USER/'bogus@yahoo.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- checkaddr(): user of 'bogus@'
000- Key: 9/USER/'bogus@'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 12/DOMAIN/'yahoo.com'
000- checkaddr(): domain of 'yahoo.com'
000- Key: 12/DOMAIN/'yahoo.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 13/DOMAIN/'.yahoo.com'
000- checkaddr(): domain of '.yahoo.com'
000- Key: 13/DOMAIN/'.yahoo.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 7/DOMAIN/'.com'
000- checkaddr(): domain of '.com'
000- Key: 7/DOMAIN/'.com'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget . acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson . rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
000- DEBUG: 4/DOMAIN/'.'
000- checkaddr(): domain of '.'
000- Key: 4/DOMAIN/'.'
000-   Attribute: 15/alias/'_default_dot'
000- Alias-recursion: 4
000- Key: 15/TAG/'_default_dot'
000-   Attribute: 4/trust-whoson/'+'
000-     accepted!
000-   Attribute: 4/relaycustomer/'-'
000-     not interested, skipped...
000-   Attribute: 4/relaytarget/'-'
000-     accepted!
000-   Attribute: 4/senderokwithdns/'+'
000-     not interested, skipped...
000-   Attribute: 8/alias/'_rbl1'
000- Alias-recursion: 3
000- Key: 8/TAG/'_rbl1'
000-  query failed
000- Results: rejectnet . freezenet . rejectsource . freezesource . relaycustomer . relaycustnet . relaytarget - acceptifmx . acceptifdns . senderokwithdns . acceptbutfreeze . sendernorelay . test-dns-rbl . message . localdomain . maxinsize -1 maxoutsize -1 fulltrustnet . trustrecipients . trust-whoson + rcpt-dns-rbl . test-rcpt-dns-rbl . warn-rcpt-dns-rbl . filtering . maxsameipsource -1
250 2.1.5 Recipient address syntax Ok; rcpt=<Bogus@Yahoo.com>

QUIT

-----Original Message-----
From: Matti Aarnio [mailto:mea@nic.funet.fi]
Sent: Thursday, December 18, 2003 10:35 PM
To: Neal Morgan
Cc: zmailer@nic.funet.fi
Subject: Re: Whoson continued


On Thu, Dec 18, 2003 at 10:13:08PM -0800, Neal Morgan wrote:
> Matti/Eugene:
> 
> I could really use some help on my previous whoson question (from 
> yesterday).  Are you guys on vacation already?  

No, but the world at work-work has to be completed before xmas...  

> I managed to muddle my way through modifying the code to correct my 
> issue - by modifying the pt_rcptto function in policytest.c - but my 
> comfort level is low and I generally leave the C programming to people 
> smarter than me.

Could you send me the diff ?
It would help me to understand the issues at hand.

> A couple other things you might want to know: in running smtpserver in 
> interactive mode it looks like it ignores the passed IP address and 
> instead uses my real IP for whoson testing.  Also, the whoson included 
> in /contrib is not the current version on SourceForge.  Worth updating 
> this in CVS?

Hmm..  Doesn't sound like it should be.
A full test log should show it..

> Thanks for any help and the great software!
> 
> Happy Holidays
> 
> Neal Morgan

-- 
/Matti Aarnio	<mea@nic.funet.fi>

-
To unsubscribe from this list: send the line "unsubscribe zmailer" in
the body of a message to majordomo@nic.funet.fi