[Mimedefang] Embedded Perl & External Perl Modules

Michael Sims michaels at crye-leike.com
Wed May 5 10:39:14 EDT 2004


Chris Masters wrote:
> I've just tested the embedded perl option and they
> don't seem to be functioning properly. The first
> module (Net::LDAP) that gets used doesn't function
> properly (cannot establish connections).
>
> If I change back to normal [non-embedded] mode it's
> fine.
>
> Are there any issues with using perl modules when
> mimedefang runs in embedded mode?

There's a new section in the mimedefang-filter man page with the heading
"INITIALIZATION AND CLEANUP" which says, in part:

"... How-ever, if you are using an embedded Perl interpreter, then anything you call
directly from outside a function definition is executed once only in the parent
process.  Anything in filter_initialize is executed once per slave. If you use any
code that opens a descriptor (for example, a connection to a database server), you
must run that code inside filter_initialize and not directly from the filter,
because the multiplexor closes all open descriptors when it activates a new slave."

If you are creating a new instance of the Net::LDAP object directly in your filter
file (outside of any subroutine), then try creating the filter_initialize sub moving
that initialization inside it.

HTH

___________________________________________
Michael Sims
Project Analyst - Information Technology
Crye-Leike Realtors
Office: (901)758-5648  Pager: (901)769-3722
___________________________________________



More information about the MIMEDefang mailing list