tonix (Antonio Nati) wrote:

At 15.31 16/03/2005, you wrote:

Good morning,

I recently installed chkuser in response to a SpamCop listing. I have a user getting addresses rejected that we know exist. The addresses are in valias and work fine when I send a message. The user in question is recently getting rejections. Here is a sample of the qmail-smtp log.

2005-03-15 17:06:06.731444500 CHKUSER rejected rcpt: from <[EMAIL PROTECTED]::> remote <SUPPORT4:wls-41-226-196-65.tls.net:65.196.226.41> rcpt <[EMAIL PROTECTED]> : not existing recipient

2005-03-16 08:37:28.526532500 CHKUSER accepted rcpt: from <[EMAIL PROTECTED]::> remote <[192.168.1.101]:64-184-8-148.bb.hrtc.net:64.184.8.148> rcpt <[EMAIL PROTECTED]> : found existing recipient


You should enable CHKUSER_RCPT_FORMAT and see if there are any strange characters (invisible in log) that make the address unusable (you have rcpt not existing when you could have INVALID FORMAT)

I can certainly do that. But I am confused, if I did't enable CHKUSER_RCPT_FORMAT shouldn't the address work as it did before? Or is there some level of format checking going on by default?



You could also modify chkuser.c this way, in order to track better the rejected recipient... The following change display complete address length, so you may check if the address length corresponds to what you read:

If I get an INVALID_FORMAT I will do so.


static void chkuser_commonlog (char *sender, char *rcpt, char *title, char *description) {


char str[30];
sprintf (str, "%d", strlen (rcpt));

  substdio_puts (subfderr, "CHKUSER ");
  substdio_puts (subfderr, title);
  substdio_puts (subfderr, ": from <");
  substdio_puts (subfderr, sender);
  substdio_puts (subfderr, ":" );
  if (remoteinfo) {
        substdio_puts (subfderr, remoteinfo);
  }
  substdio_puts (subfderr, ":" );
#if defined CHKUSER_IDENTIFY_REMOTE_VARIABLE
  if (identify_remote) substdio_puts (subfderr, identify_remote);
#endif
  substdio_puts (subfderr, "> remote <");
  if (fakehelo) substdio_puts (subfderr, fakehelo);
  substdio_puts (subfderr, ":" );
  if (remotehost) substdio_puts (subfderr, remotehost);
  substdio_puts (subfderr, ":" );
  if (remoteip) substdio_puts (subfderr, remoteip);
  substdio_puts (subfderr, "> rcpt <");
  substdio_puts (subfderr, rcpt);
  substdio_puts (subfderr, ":" );
  substdio_puts (subfderr, str);
  substdio_puts (subfderr, "> : ");
  substdio_puts (subfderr, description);
  substdio_puts (subfderr, "\n");
  substdio_flush (subfderr);

I'm not sure just why this is happening, I do not have CHKUSER_RCPT_FORMAT defined, in fact the only changes I made to the chkuser_settings.h was to uncomment CHKUSER_ALWAYS_ON and set the CHKUSER_MBXQUOTA to "90" in my qmail-smtpd run script.

I had the user send me the message in question and I noticed that the addresses had single qoutes in them,

> > '[EMAIL PROTECTED]' <mailto:[EMAIL PROTECTED]>.
> > '[EMAIL PROTECTED]' <mailto:[EMAIL PROTECTED]>.

I would suspect that was the issue except that this address book worked prior to installing chkuser, and the qmail-smtpd log shows the address correctly when it is rejected.

chkuser uses and logs exactly what receives from qmail-smtpd.

Thanks,

DAve


-- Dave Goodrich Systems Administrator http://www.tls.net Get rid of Unwanted Emails...get TLS Spam Blocker!



Reply via email to