Yahoo Groups archive

Milter-greylist

Index last updated: 2026-04-28 23:32 UTC

Message

Re: [milter-greylist] smfi_getsymval failed for {i} in milter-greylist 4.2.6

2011-03-03 by Johann Klasek

Hi Anatoly!

On Thu, Mar 03, 2011 at 10:14:47AM +0300, Anatoly Oreshkin wrote:
> > Anatoly Oreshkin <Anatoly.Oreshkin@...> wrote:
> >
> >> O InputMailFilters=greylist, drweb-milter
> >> O Milter.LogLevel=6
> >> O Milter.macros.connect=_, j, {if_addr}
> >> O Milter.macros.helo={verify}, {cert_subject}
> >> O Milter.macros.envfrom=i, {auth_authen}
> >> O Milter.macros.envrcpt={rcpt_mailer}, {rcpt_host}, {rcpt_addr}
> >> O Milter.macros.eom={msg_id}
> > (...)
> >> When I remove drweb-milter from  InputMailFilters then
> >> error messages disappear.

AFAI understand this it seems that DrWeb specifies only those variables
which is necessarily used. Nothing more.
My installation (plain Sendmail with Milter-Greylist) has

O Milter.macros.connect=j, _, {daemon_name}, {if_name}, {if_addr}
O Milter.macros.helo={verify}, {tls_version}, {cipher}, {cipher_bits}, {cert_subject}, {cert_issuer}
O Milter.macros.envfrom=i, {auth_type}, {auth_authen}, {auth_ssf}, {auth_author}, {mail_mailer}, {mail_host}, {mail_addr}
O Milter.macros.envrcpt={rcpt_mailer}, {rcpt_host}, {rcpt_addr}, {greylist}, {client_resolve}


You may try this (in this manner that you merge them together!).

AFAIK additional variables needed for one milter should not harm the
operation of some other milter.

> > The line you quoted above are taken from sendmail.cf, or they are the
> > lines drweb-milter is supposed to add?
> 
> When installing DrWeb have added the following lines to sendmail.cf:
> 
> O InputMailFilters=drweb-milter
> O Milter.LogLevel=6
> Xdrweb-milter,  S=local:/var/run/drweb/drweb-smf.sock, F=T, T=C:1m;S:5m;R:5m;E:1h
> 
> O Milter.macros.connect=_,{if_addr}
> O Milter.macros.envfrom=i,{auth_type}

Looks like the minimum DrWeb needs ...

> So when configuring milter-greylist I have combined macros both from drweb and
> milter-greylist.
> 
> I've added to sendmail.mc the lines:
> 
> INPUT_MAIL_FILTER(`drweb-milter', `S=local:/var/run/drweb/drweb-smf.sock, F=T,
> T=C:1m;S:5m;R:5m;E:1h')dnl
> INPUT_MAIL_FILTER(`greylist', `S=local:/var/milter-greylist/milter-greylist.sock,
> F=, T=S:1m;R:1m')dnl
> define(`confMILTER_MACROS_CONNECT', `_, j, {if_addr}')dnl
> define(`confMILTER_MACROS_HELO', `{verify}, {cert_subject}')dnl
> define(`confMILTER_MACROS_ENVFROM', `i, {auth_authen}')dnl

Milter-Greylist installation adds only these variables which are not
given in standard Sendmail environment. The required set is usually
greater.

> Right now I've noticed that Milter.macros.envfrom for drweb has {auth_type}
> but milter-greylist has {auth_authen}.
> Therefore I've checked 2 new variants in sendmail.cf that is
> 
> 
> O Milter.macros.envfrom=i, {auth_type}
> 
> O Milter.macros.envfrom=i, {auth_type}, {auth_authen}

The latter should be prefered.

> Nothing has changed.

I think, because some default variable coming from a plain/standard Sendmail
installation are still missing.


> > The O Milter.macros.envfrom=i sounds correct, but we should make sure
> > you really have this in the configuration.
> >
> > Also, do you have the error for any message, or only for those coming
> > from 127.0.0.1?
> 
> When message coming from address other than 127.0.0.1
> error messages appear too, for example:
> 
> milter-greylist: smfi_getsymval failed for {i}
> milter-greylist: (unknown id): addr 195.19.214.218 from
> <Anatoly.Oreshkin@...> rcpt <anatoly.oreshkin@...>: autowhitelisted
> for more 720:00:00

Is the .cf configuration file from the running system really the same as
the one you have generated from the .mc file?
What gives following?

/usr/lib/sendmail -bt -d64.100



Johann

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.