Re: [Mimedefang] Embedded Perl (continued)

2015-09-23 Thread Jan-Pieter Cornet
On 2015-9-22 17:16 , Steffen Kaiser wrote:
> I had SpamAssassin rules allocating about 100MB, the forked children
> only shared the C libraries after some time. That's a problem of
> Perl's way to handle rereferences to data.

It might help not to integrate SpamAssassin, but to use spamc to communicate 
with spamd. However, that only saves memory if you have other stuff in your 
filter rules that take time processing messages, like DNS blacklist checks, 
virus scanners, SPF/DKIM/DMARC processing, SMTP forward lookups, etc.

That way, perl processes doing those other things do not have a big lump of 
SpamAssassin rules sitting in memory (which is usually quite a lot of memory 
due to the way spamassassin works). You'd generally need fewer spamassassin 
slaves than mimedefang slaves (if you don't, then this won't save memory but 
eat a bit more memory instead because of the extra perl processes involved).

On the other hand, it does make things a bit more complex because you have to 
manage another daemon, monitor it, restart when rules change, maintain configs, 
etc. Per-recipient rules might be somewhat harder.

Oh, and stock mimedefang doesn't support it. I've attached the SpamC.pm that we 
use for spamd communication. Also make sure that you set 
$Features{"SpamAssassin"} = 0 in your filter, to prevent Mail::SpamAssassin 
from loading (otherwise your mimedefang slaves would still eat memory for 
spamassassin).

You will need to modify this SpamC.pm as it uses a modular Mimedefang.pm, but 
the changes should be trivial.

-- 
Jan-Pieter Cornet 
"Any sufficiently advanced incompetence is indistinguishable from malice."
- Grey's Law
package MailFilter::SpamC;

# provide spamc interface to spamassassin, call-compatible with mimedefang
# API
# ... mostly. It actually only provides spam_assassin_check().

use Mimedefang qw(gen_msgid_header synthesize_received_header
  :global :logging :config);
use IPC::Open2;
use base Exporter;

our @SpamAssassinExtraHeaders;

our @EXPORT_OK = qw(
spam_assassin_check
@SpamAssassinExtraHeaders
);

my $spamc = "/usr/bin/spamc";
my @spamc_opts = qw(-F /etc/spamd/spamc.conf);

sub spam_assassin_check {
### open communications to spamc
my $in;
unless ( open $in, "<", "./INPUTMSG" ) {
md_syslog('err', "$MsgID: Spamc error: Cannot read INPUTMSG: $!");
return;
}
my($sprd, $spwr);
my $sp_pid = open2($sprd, $spwr, $spamc, @spamc_opts);
unless ( $sp_pid ) {
md_syslog('err', "$MsgID: Spamc error: Cannot fork $spamc: $!");
return;
}
### note: the lines below duplicate the effect in the real
### spam_assassin_check somewhat

### build complete headers
my $hdrs = "Return-Path: $Sender\n" .
synthesize_received_header();
$hdrs .= gen_msgid_header() if ($MessageID eq "NOQUEUE");

### get message headers, remember if we had a "To:" header
my($seen_to, $seen_eoh);
while ( <$in> ) {
if ( /^$/ ) {
$seen_eoh++;
last;
}
$seen_to++ if /^To:/i;
$hdrs .= $_;
}
$hdrs .= "To: undisclosed-recipients:;\n" if !$seen_to;
if ( $AddApparentlyToForSpamAssassin and @Recipients ) {
$hdrs .= "Apparently-To: " . join(", ", @Recipients) . "\n";
}
$hdrs .= join("", @SpamAssassinExtraHeaders);

### add header-body separation line that we ate in the loop above
$hdrs .= "\n";

### $hdrs now contains the complete headers as sent to spamc

### send headers to spamc
print $spwr $hdrs;
### send rest of message (if there was any left)
if ( $seen_eoh ) {
print $spwr $_ while <$in>;
}
close $spwr;

### wait for result
my $output = join("", <$sprd>);
close $sprd;
waitpid($sp_pid, 0);

if ( $? ) {
md_syslog('err', "$MsgID: spamc returned non-zero exit code: $?\n");
return;
}

my($hits, $req, $names, $report, %sa_tags);
### first line is hits/req
if ( $output =~ s!\A(-?\d+(?:\.\d+)?)/(-?\d+(?:\.\d+)?)\r?\n!! ) {
($hits, $req) = ($1, $2);
} else {
my $sample = $output;
if ( length($sample) > 80 ) {
$sample = substr($sample, 0, 80) . "...";
}
$sample =~ s{[^ -~]}{sprintf("\\x%02x", ord $1)}ge;
md_syslog('err',
"$MsgID: Error: spamc returned invalid output: $sample");
return;
}

### process rest of output
while ( $output =~ s/\A(\w+):\s+(.*)\r?\n// ) {
my($k,$v) = ($1,$2);
$hits = $v, next if $k eq "Score";
$req = $v, next if $k eq "Required";
$names = $v, next if $k eq "Tests";
$sa_tags{$k} = $v;
}
### anything that is left now is the full report
$output =~ s/^\s+//;
$report = $output;

return($hits, $req, $names, $report, \%sa_tags);
}

1;


signature.asc
Description: OpenPGP digital signature
___
NOTE: If 

Re: [Mimedefang] Embedded Perl (continued)

2015-09-22 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Tue, 22 Sep 2015, Amit Gupta wrote:


My situation is that the number of mimedefang.pl processes jumps to
about 70 during peak loads (we are processing a couple hundres
messages per minute on average).  Our filter file is in need of some
optimizations(since each mimedefang.pl is taking about 125mb of

   ^^^


resident memory), but I'm wondering if using embedded perl will help
in this situation.  I see you mentioned using embedded perl prevents
forking entire processes.. So does this mean each request is handled
by a thread within the main process instead?  So would my RAM
requirements be reduced drastically?


Read Dianne's response about the garbage collector. Unless the script use 
very view different values of your loaded data or use weak references, you 
will not notice any reduction in long run.


I had SpamAssassin rules allocating about 100MB, the forked children only 
shared the C libraries after some time. That's a problem of Perl's way to 
handle rereferences to data.



- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQEVAwUBVgFwzFGgR0+MU/4GAQJ5gQf7B/MqyaeU97R22AxFCsT2+/se7Aqy8yFK
oMcjXfsyIKG0sUVLbR5fGNALHtw/jpxDFiiikm2z7QzFIhingTUS04/zAwjuqVF2
LhvQ/RgZeGUyq8MHDd4z6sFLH8znbOINpnoIJBhrrE0ewq77gONwi8XRU+F/382z
VW3a0k8t9A2QRLqa2JgE1lsVF+mRM/R7/YCASf2CazscwdUtgd0bFUDbzYhGZvO3
Xm1hajxMjdm+xCMBN5WxsjO/iQ1Q9XF083oQy8A/1GGXJR9R91psU4q+Bsu7V5N8
LFLHKGLZayCms1Eh4qshEPtUJde8AX1CicVvr0u3q6DivQHTeQ08Zw==
=yqjd
-END PGP SIGNATURE-
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl (continued)

2015-09-22 Thread Amit Gupta
Apologies for starting a new thread. I couldn't find any messages in
my inbox to reply to.

Thanks Paul, Bill and Diane for your replies.

My situation is that the number of mimedefang.pl processes jumps to
about 70 during peak loads (we are processing a couple hundres
messages per minute on average).  Our filter file is in need of some
optimizations(since each mimedefang.pl is taking about 125mb of
resident memory), but I'm wondering if using embedded perl will help
in this situation.  I see you mentioned using embedded perl prevents
forking entire processes.. So does this mean each request is handled
by a thread within the main process instead?  So would my RAM
requirements be reduced drastically?

In my peak case, I roughly calculate my RAM usage just for md.pl to be
about 8GB.  If embedded perl makes this go down a lot, it's a major
win for me.

Thanks again for your help
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl (continued)

2015-09-22 Thread Dianne Skoll
On Tue, 22 Sep 2015 07:57:18 -0700
Amit Gupta  wrote:

> My situation is that the number of mimedefang.pl processes jumps to
> about 70 during peak loads (we are processing a couple hundres
> messages per minute on average).

How much RAM do you have?  70 parallel scanners is not outlandish on
busy machines.  Our biggest scanning machine is configured to allow
up to 400 scanners.  It's a pretty powerful machine with 48GB of RAM,
though, and our volume is 5-10x yours.

> I see you mentioned using embedded perl prevents
> forking entire processes.

No... it still forks each time, but it doesn't exec a new program.

> So would my RAM requirements be reduced drastically?

Probably not.  As I said, embedded Perl helps a little bit, but not
dramatically.

Regards,

Dianne.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl (continued)

2015-09-22 Thread Amit Gupta
We have 16GB of ram, though there are other processes running on this
machine such as DB that will be segmented later.  I'm curious how much
resident memory each of your mimedefang.pl processes uses?  I haven't
been tracking my mimedefang.pl memory usage over time, so I was a
little surprised to see it at 125Mb.  Before I go down a rabbit hole
of minimizing it, i want to make sure it's actually significantly
higher than your situation.

Also, Am I right in thinking  the forking issue is not such a big deal
because the processes are pre-forked and stay running for some amount
of time and eventually get cleared down to your minimum setting.   I
have my min processes set to 10, and max to 100.. And my monitoring
system shows that I have about 20 running mimedefang.pl processes on
average.

On Tue, Sep 22, 2015 at 8:12 AM, Dianne Skoll  wrote:
> On Tue, 22 Sep 2015 07:57:18 -0700
> Amit Gupta  wrote:
>
>> My situation is that the number of mimedefang.pl processes jumps to
>> about 70 during peak loads (we are processing a couple hundres
>> messages per minute on average).
>
> How much RAM do you have?  70 parallel scanners is not outlandish on
> busy machines.  Our biggest scanning machine is configured to allow
> up to 400 scanners.  It's a pretty powerful machine with 48GB of RAM,
> though, and our volume is 5-10x yours.
>
>> I see you mentioned using embedded perl prevents
>> forking entire processes.
>
> No... it still forks each time, but it doesn't exec a new program.
>
>> So would my RAM requirements be reduced drastically?
>
> Probably not.  As I said, embedded Perl helps a little bit, but not
> dramatically.
>
> Regards,
>
> Dianne.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl (continued)

2015-09-22 Thread Dianne Skoll
On Tue, 22 Sep 2015 08:20:16 -0700
Amit Gupta  wrote:

> We have 16GB of ram, though there are other processes running on this
> machine such as DB that will be segmented later.  I'm curious how much
> resident memory each of your mimedefang.pl processes uses?

About 110MB, but not sure how much of that is shared.

> Also, Am I right in thinking  the forking issue is not such a big deal
> because the processes are pre-forked and stay running for some amount
> of time and eventually get cleared down to your minimum setting.

Forking is not a big deal at all.  execing may be more of a big
deal, but still probably not a major performance factor.

Regards,

Dianne.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl

2015-09-21 Thread Bill Cole

On 21 Sep 2015, at 17:04, Amit Gupta wrote:


Hi, I'm using Centos7.1 and mimedefang 2.75 (still need to upgrade to
latest). The documentation indicates that if you start mimedefang with
the -E parameter, it uses embedded perl which is supposedly faster.  I
was wondering if someone could give me insight into why it's actually
faster under the hood?


Because the multiplexor only loads a single Perl interpreter,  
mimedefang.pl, and mimedefang-filter once at launch (and whenever it 
gets a 'reread' command) and forks off slaves using the embedded 
interpreter and pre-loaded scripts as needed, rather than launching new 
independent slave processes that have to load the interpreter and load 
the scripts themselves.



And maybe any anecdotal or real statistics on
how much faster.


Oh, you want real data... Picky picky!

I can't say how much faster it is in any real world sense, as it was 
dysfunctional a decade ago on the platforms I tried it on then and I 
haven't bothered with it since. In principle it isn't going to do much 
for you if you don't use a lot of slaves and/or don't recycle them 
often.(The specific definitions of "a lot" and "often" are left as an 
exercise for you to determine...) As MD & Perl have matured and systems 
have gotten much bigger and much faster it has become less of a burden 
to just fork and exec fully independent slaves and let them live a very 
long time, so it is somewhat questionable whether embedding Perl is 
valuable to very many users. At a scale of hundreds of messages per 
minute on a single slow CPU it could be indispensable, but few systems 
have that sort of challenge.



Also, should embedded perl be enabled by default?


That depends on your system. I'd expect not for yours. A basic EL7 
installation doesn't include the perl-ExtUtils-Embed package (although 
it is in RedHat's "base" collection so you needn't use CPAN or hunt down 
a 3rd-party RPM.)



I see a --disable-embedded-perl option in the configure script. I did
not configure my system to disable embedded perl, however when I try
to experiment with the -E option, mimedefang complains that I did not
enable embedded perl..


Since ExtUtils::Embed is needed for building an embedded Perl 
interpreter, the MD configure script won't enable the feature for you 
automatically if the module's not present, which it isn't by default on 
CentOS 7.1:


[root@cloud119-65 ~]# cat /etc/centos-release
CentOS Linux release 7.1.1503 (Core)
[root@cloud119-65 ~]# yum list installed perl-ExtUtils-Embed
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.advancedhosters.com
 * extras: centos.mirror.constant.com
 * updates: mirror.us.leaseweb.net
Error: No matching Packages to list
[root@cloud119-65 ~]# yum info perl-ExtUtils-Embed
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.advancedhosters.com
 * extras: centos.mirror.constant.com
 * updates: mirror.us.leaseweb.net
Available Packages
Name: perl-ExtUtils-Embed
Arch: noarch
Version : 1.30
Release : 285.el7
Size: 49 k
Repo: base/7/x86_64
Summary : Utilities for embedding Perl in C/C++ applications
URL : http://www.perl.org/
License : GPL+ or Artistic
Description : Utilities for embedding Perl in C/C++ applications.


___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl

2015-09-21 Thread Dianne Skoll
On Mon, 21 Sep 2015 18:53:04 -0400
"Bill Cole"  wrote:

> As MD & Perl have matured and systems have gotten much bigger and
> much faster it has become less of a burden to just fork and exec
> fully independent slaves and let them live a very long time, so it
> is somewhat questionable whether embedding Perl is valuable to very
> many users. At a scale of hundreds of messages per minute on a
> single slow CPU it could be indispensable, but few systems have that
> sort of challenge.

Well... in theory, embedded Perl can also save memory because by not
execing an external program, the child processes can share memory pages
as long as no-one writes to them.  In practice, this isn't very effective
because Perl uses reference-counting to implment its garbage collector,
so even so-called "read-only" data gets touched as references to it are
added and deleted when variables come into and go out of scope.

My personal opinion is similar to Bill Cole's, except I'd phrase it as:

"It can't hurt.  It might help a little bit.  But it probably won't make
all that much difference."

FWIW, we do run a fairly busy scanning cluster that peaks around
11 million messages/day (~127/second or so) and we do use embedded
Perl.  A given machine in the cluster might peak at 3 million/day.

Regards,

Dianne.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl

2015-09-21 Thread Dianne Skoll
On Mon, 21 Sep 2015 14:04:04 -0700
Amit Gupta  wrote:

> Hi, I'm using Centos7.1 and mimedefang 2.75 (still need to upgrade to
> latest). The documentation indicates that if you start mimedefang with
> the -E parameter, it uses embedded perl which is supposedly faster.  I
> was wondering if someone could give me insight into why it's actually
> faster under the hood?

The speedup comes because with embedded Perl, the multiplexor does
not have to fork/exec a Perl process.  I don't think it's significantly
faster, but it probably helps a little bit.

> Also, should embedded perl be enabled by default?

Yes.  It can't hurt.

> I see a --disable-embedded-perl option in the configure script. I did
> not configure my system to disable embedded perl, however when I try
> to experiment with the -E option, mimedefang complains that I did not
> enable embedded perl..

If you didn't have the Perl development libraries installed when you
compiled MIMEDefang, it won't have support for embedded Perl.

Regards,

Dianne.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl

2015-09-21 Thread Amit Gupta
Hi, I'm using Centos7.1 and mimedefang 2.75 (still need to upgrade to
latest). The documentation indicates that if you start mimedefang with
the -E parameter, it uses embedded perl which is supposedly faster.  I
was wondering if someone could give me insight into why it's actually
faster under the hood?  And maybe any anecdotal or real statistics on
how much faster.   Also, should embedded perl be enabled by default?
I see a --disable-embedded-perl option in the configure script. I did
not configure my system to disable embedded perl, however when I try
to experiment with the -E option, mimedefang complains that I did not
enable embedded perl..

Thank you!
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl

2015-09-21 Thread Paul Orr
If embedded perl is the same as compiled perl then I would guess the
speed-up comes from not having to interpret a perl script with the perl
interpreter.   Or am I off-base here?

-Original Message-
From: mimedefang-boun...@lists.roaringpenguin.com
[mailto:mimedefang-boun...@lists.roaringpenguin.com] On Behalf Of Amit
Gupta
Sent: Monday, September 21, 2015 2:04 PM
To: mimedefang@lists.roaringpenguin.com
Subject: [Mimedefang] Embedded Perl

Hi, I'm using Centos7.1 and mimedefang 2.75 (still need to upgrade to
latest). The documentation indicates that if you start mimedefang with
the -E parameter, it uses embedded perl which is supposedly faster.  I
was wondering if someone could give me insight into why it's actually
faster under the hood?  And maybe any anecdotal or real statistics on
how much faster.   Also, should embedded perl be enabled by default?
I see a --disable-embedded-perl option in the configure script. I did
not configure my system to disable embedded perl, however when I try
to experiment with the -E option, mimedefang complains that I did not
enable embedded perl..

Thank you!
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl

2012-06-18 Thread David F. Skoll
On Mon, 18 Jun 2012 19:19:57 +0900
Nathan Findley nat...@zenlok.com wrote:

 The man pages for the multiplexer indicate that when using embedded
 perl the PID of the slave is not available ($$). Is there a way
 around this?

Wow, that man page is way out of date. :)  I fixed that many versions
of MIMEDefang ago.  I'll have to remove that statement from the man page.

Regards,

David.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


File::Scan (was Re: [Mimedefang] Embedded Perl multiplexor on Debian - sarge Error)

2006-07-20 Thread David F. Skoll
Kayne Kruse wrote:

 Now Take david, hes a rather nice person.  Now that I said that, why do
 you support this monstrosity?  :)  That was some hideous code, makes me
 want to puke shellcodes in the morning! :D  Anywho, note taken and I
 yanked that crap out.

In fact, I'd never looked closely at File::Scan before.

I have removed support for File::Scan from MIMEDefang completely; the
next release won't support it.  If you want to continue to use it, you'll
have to write the supporting code in your filter file.  I can't in good
conscience have built-in support for such a terrible module.

Regards,

David.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: File::Scan (was Re: [Mimedefang] Embedded Perl multiplexor onDebian - sarge Error)

2006-07-20 Thread Kayne Kruse
On Thu, 2006-07-20 at 10:03 -0400, David F. Skoll wrote:

 In fact, I'd never looked closely at File::Scan before.
 
 I have removed support for File::Scan from MIMEDefang completely; the
 next release won't support it.  If you want to continue to use it, you'll
 have to write the supporting code in your filter file.  I can't in good
 conscience have built-in support for such a terrible module.
 
 Regards,
 
 David.

Well, join the club.  I guess its only defense is, where else is it
going to put that information.  I guess they could have distributed it
with a database type file, but have not.  Im still okay on that front
tho thanks to clam.  Only reason I had it to begin with was as an extra
scanner.  Call me paranoid, but the cost of two scanners is worth the
cpu time just to be extra safe.  Its not like Im doing 10s of 1000s of
emails a day.  Averaging around 150 mails/hr through 1 mimedefang box
hideously underpowered.  :D


KK



signature.asc
Description: This is a digitally signed message part
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: File::Scan (was Re: [Mimedefang] Embedded Perl multiplexoronDebian - sarge Error)

2006-07-20 Thread Cormack, Ken
::snip::

 Only reason I had it to begin with was as an extra scanner.
 Call me paranoid, but the cost of two scanners is worth the
 cpu time just to be extra safe.

We killed-off File::Scan several months ago, when it was corrupting PDF
files from some of our production batch jobs, depending upon the encoding
used.

Until the next release, when David officially removes support for
File::Scan, you can still add the following lines (suggested months ago by
David, I believe), to the top of mimedefang-filter, to disable File::Scan in
your installation...

$Features{File::Scan} = 0;
$Features{Virus:FileScan} = 0;
detect_and_load_perl_modules();

Ken

___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: File::Scan (was Re: [Mimedefang] Embedded Perl multiplexor onDebian - sarge Error)

2006-07-20 Thread Kayne Kruse
On Thu, 2006-07-20 at 10:03 -0400, David F. Skoll wrote:
 I can't in good
 conscience have built-in support for such a terrible module.
 
 Regards,
 
 David. 

Ironically, I think this has been the cause of my hanging mimedefang i
hadnt posted about.  Watching the logs I dont appear to have any slaves
just hanging around busy doing nothing but making sendmail return
tempfails.  I havent had one hung slave that didnt kill properly today.
Nothing to a milter error state. :D

I think I missed the other thread about File::Scan vs PDFs, if it was on
this list, I have been MIA thanks to Katrina.  I've since said bye bye
to the land of hurricanes and Louisiana politics.  Life is completely
different now. :D

Thanks again guys,

KK



signature.asc
Description: This is a digitally signed message part
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: File::Scan (was Re: [Mimedefang] Embedded Perl multiplexoronDebian - sarge Error)

2006-07-20 Thread Steve Campbell
I've been following this thread, and see where the module should not be 
used. I use a very simple mimedefang-filter with just filter_recipient in 
it. It does do the detect_and_load_perl_modules, but I don't really know 
when the bad module is used. I see a lot of d* files in my input queue with 
no q* files of delivered email.


Should I worry and be doing something? And if so, what should be done? I use 
the RPM to install, so I'm not sure if that would be a problem with what you 
all are talking about or not.


Thanks

Steve Campbell
[EMAIL PROTECTED]
Charleston Newspapers

- Original Message - 
From: Kayne Kruse [EMAIL PROTECTED]

To: mimedefang@lists.roaringpenguin.com
Sent: Thursday, July 20, 2006 3:36 PM
Subject: Re: File::Scan (was Re: [Mimedefang] Embedded Perl 
multiplexoronDebian - sarge Error)




___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang




___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl multiplexor on Debian - sarge Error

2006-07-19 Thread Kayne Kruse
I just noticed this error, and was curious as to what in the filter is
the FD.

Jul 19 17:03:02 mailfilter mimedefang-multiplexor[4711]: WARNING:
Something in your Perl filter appears to have opened a file descriptor
outside of any function.  With embedded Perl, you should move any code
that opens a file descriptor into filter_initialize.  On some systems,
the C library may open a descriptor, but you should verify your filter
just in case.

I dont have anything other than the standard windows suggested filter as
a base with only some filter_relay code exempting 127.0.0.1 from
filtering and filter_end spam check is doing action_discard for anything
over $req.

Im only guessing that this might be the cause:


 total 20
 dr-x--  2 root   root0 Jul 19 17:19 .
 dr-xr-xr-x  5 defang defang  0 Jul 19 17:17 ..
 lrwx--  1 root   root   64 Jul 19 17:19 0 - /dev/null
 lrwx--  1 root   root   64 Jul 19 17:19 1 - /dev/null
 lr-x--  1 root   root   64 Jul 19 17:19 10 - pipe:[11402537]
 l-wx--  1 root   root   64 Jul 19 17:19 11 - pipe:[11402543]
 lr-x--  1 root   root   64 Jul 19 17:19 12 - pipe:[11402538]
 lr-x--  1 root   root   64 Jul 19 17:19 13 - pipe:[11402544]
 l-wx--  1 root   root   64 Jul 19 17:19 14 - pipe:[11402546]
 lr-x--  1 root   root   64 Jul 19 17:19 15 - pipe:[11402545]
 lr-x--  1 root   root   64 Jul 19 17:19 16 - pipe:[11402547]
 l-wx--  1 root   root   64 Jul 19 17:19 17 - pipe:[11402549]
 lr-x--  1 root   root   64 Jul 19 17:19 18 - pipe:[11402548]
 lr-x--  1 root   root   64 Jul 19 17:19 19 - pipe:[11402550]
 lrwx--  1 root   root   64 Jul 19 17:19 2 - /dev/null
 lr-x--  1 root   root   64 Jul 19 17:19 21 - pipe:[11402551]
 lrwx--  1 root   root   64 Jul 19 17:19 3 - socket:[11402510]
 lr-x--  1 root   root   64 Jul 19 17:19 4 - pipe:[11402512]
 l-wx--  1 root   root   64 Jul 19 17:19 5 - pipe:[11402512]
 lrwx--  1 root   root   64 Jul 19 17:19 6 - socket:[11402515]
 lr-x--  1 root   root   64 Jul 19 17:19 7
 - /usr/share/perl5/File/Scan.pm
 l-wx--  1 root   root   64 Jul 19 17:19 9 - pipe:[11402536]
 

Now You see I think its Mimedefangs own open File::Scan causing this
warning.  Whats the fix for the annoyance?

Thanks,

Kayne


signature.asc
Description: This is a digitally signed message part
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl multiplexor on Debian - sarge Error

2006-07-19 Thread David F. Skoll
Kayne Kruse wrote:

 I just noticed this error, and was curious as to what in the filter is
 the FD.
 Jul 19 17:03:02 mailfilter mimedefang-multiplexor[4711]: WARNING:
 Something in your Perl filter appears to have opened a file descriptor
 outside of any function.  [...]

 lr-x-- 1 root root 64 Jul 19 17:19  7 - /usr/share/perl5/File/Scan.pm

 Now You see I think its Mimedefangs own open File::Scan causing this
 warning.  Whats the fix for the annoyance?

Remove File::Scan from your system.  It's buggy and evil.

The open descriptor results from the dubious practice of using
SelfLoader to load functions only on demand.  SelfLoader keeps a file
descriptor open.  File::Scan uses this to load its file patterns as
Perl routines.

Did I mention that File::Scan was evil?  Read the code sometime.
Here's a snippet:

if($type == 1) {
} elsif($type == 2) {
if($subtype == 1) {
if($total==10240) {

/\x48\x45\x4c\x4f\x44\x1d\x4d\x41\x49\xec\xc8\x1e\x52\xbc\x6e\x5d\xc3\x43\x50\x54/s
 and $virus = W32/[EMAIL PROTECTED], last LINE;
}
if($total==1024) {

/\x0f\x4d\x61\x70\x56\x5f\xc5\x77\x4f\x66\x18\x10\x1e\x55\x6e\x56\x6d\x11\x90\x2f\x62\x08\x72\x73\xb3\x30\x0c\x99\x45\x6e\x76\x22\x6f\xdf\x52\xfc\x7b\x3c\x56\x61\xfb\xe6\x62\xac\x19\x67\x44\x1a\x76\xb1\x54\x79\x70\x4c\x0f\x53\xf5\xbf\x6c\x8e\x6d\x54\x69\x79/s
 and $virus = W32/[EMAIL PROTECTED], last LINE;
}
} elsif($subtype == 2) {
if($total==4096) {


... and so on.

Regards,

David.
___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded Perl multiplexor on Debian - sarge Error

2006-07-19 Thread Kayne Kruse

Remove File::Scan from your system.  It's buggy and evil.

Regards,

David.



Now Take david, hes a rather nice person.  Now that I said that, why do
you support this monstrosity?  :)  That was some hideous code, makes me
want to puke shellcodes in the morning! :D  Anywho, note taken and I
yanked that crap out.

Kayne

___
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded perl problems with 2.45, again ... (reload broken)

2004-09-23 Thread Martin Blapp

Hi all,

I just tried 2.45 out and found out that MD 2.45 is not able to reload
embedded perl slaves anymore. I've tracked it down to:

+(eval 'use Net::DNS; $Features{Net::DNS} = 1;')
+or $Features{Net::DNS} = 0;

This module seems to specify a var which is used somewhere else
(namespace conflict or something like this.)

Any ideas how to fix this ?

Martin

Martin Blapp, [EMAIL PROTECTED] [EMAIL PROTECTED]
--
ImproWare AG, UNIXSP  ISP, Zurlindenstrasse 29, 4133 Pratteln, CH
Phone: +41 61 826 93 00 Fax: +41 61 826 93 01
PGP: finger -l [EMAIL PROTECTED]
PGP Fingerprint: B434 53FC C87C FE7B 0A18 B84C 8686 EF22 D300 551E
--
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded perl problems with 2.45, again ... (reload broken)

2004-09-23 Thread Martin Blapp
 +(eval 'use Net::DNS; $Features{Net::DNS} = 1;')
 +or $Features{Net::DNS} = 0;

After looking at Net::DNS I suspect that a circular reference is the problem
here.

I dunno how to solve it.

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl side effect: $$ is wrong in slaves.

2004-08-25 Thread David F. Skoll
Hi,

We have just noticed a bit of weirdness with embedded Perl.  If you
use an embedded Perl interpreter, the Perl $$ variable does not
reflect the process ID of each slave.  Instead, it continues to hold
the process ID of the master multiplexor.

I've looked into the Perl source code and (recoiling in horror)
decided not to fix this.  Instead, I documented it in the multiplexor
man page and converted the bug into a feature. :-)

Just something to watch out for.

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-29 Thread Lucas Albers

Chris Gauch said:
 The embedded perl interpreter definitely minimizes the memory usage by the
 MD slaves, but I don't really notice an overall improvement in total
 memory
 usage when using the embedded perl option.  All 1.5GB of RAM is still used
 up entirely, and I have the same number of min/max slaves that I used when
I went over this item a few month's ago.
It uses less memory but does not show using less memory, depending on how
ou measure memory used.

 I
 was not using the embedded perl interpreter.  I also use a RAM disk for
 the
 /var/spool/MIMEDefang directory, and have that set at 128MB.  Maybe I'm
 doing something wrong here, but I haven't found much documentation on the
 embedded perl interpreter, other than it improves throughput and reduces
 memory usage.

 Any insight would be appreciated.
What OS and version of perl are you using.
I would reccomend you use at least 5.8 if you are using the embedded perl
version.
How many slaves do you run?
What is your mail volume?
What is your max message size you accept?

Could you add some delay to your cron jobs, so they don't all start at the
same time?
What is your maximum sendmail processes?

The embedded perl should decrease memory usage, and increase startup time
on pre-forked slaves.

I noticed signifigant memory savings on my 6 slave system.
Do you have a decent amount of memory in reserve, or are you generally
allocating all of your memory?



-- 
Luke Computer Science System Administrator
Security Administrator,College of Engineering
Montana State University-Bozeman,Montana

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-29 Thread Lucas Albers
duh,
didn't see any of the previous posts, until just now.

I guess I never do a reread, always a restart, that would explain why I
never saw the error.

Dave,
Should the default mimedefang-filter have use strict in it, in the
default install?
Would that solve some problems?

-- 
Luke Computer Science System Administrator
Security Administrator,College of Engineering
Montana State University-Bozeman,Montana

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-29 Thread Martin Blapp

Hi,

 Should the default mimedefang-filter have use strict in it, in the
 default install?
 Would that solve some problems?

It can fix some unpropper written code which makes troubles in the
reload szenario ...

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-29 Thread Matthew . van . Eerde
 From: Martin Blapp [mailto:[EMAIL PROTECTED]
  Should the default mimedefang-filter have use strict in it, in the
default install?
  Would that solve some problems?
 
 It can fix some unpropper written code which makes troubles in the
 reload szenario ...

*ALL* production Perl code should live under use strict - or have a very
good reason why not!
I almost wish
use strict;
was the default, and could only be turned off by a specific
no strict;
with a mandatory
# turning off stricture because (can't think of a reason right now...)

To use strict or not use strict is the subject of an ongoing religious war.
Flame me at will. :)

[EMAIL PROTECTED]  805.964.4554 x902
Hispanic Business Inc./HireDiversity.com Software Engineer
perl -emap{y/a-z/l-za-k/;print}shift Jjhi pcdiwtg Ptga wprztg,
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-28 Thread Chris Gauch
David,

The patch appears to have taken care of the issue.  I applied the patch
(according to directions) on Friday and no crashes during the weekend.  

- Chris

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of David F.
Skoll
Sent: Friday, June 25, 2004 11:15 AM
To: [EMAIL PROTECTED]
Subject: RE: [Mimedefang] MIMEDefang embedded perl stability issues

On Fri, 25 Jun 2004, Chris Gauch wrote:

 Yep -- just realized that -- see my previous email about doing a
mimedefang
 reread in a cron.daily script.  Hopefully removing that reread command
will
 fix the issue!

Could you see if 2.44-BETA-1 fixes it?  I applied a patch from Martin
Blapp:

http://lists.roaringpenguin.com/pipermail/mimedefang/2004-June/022707.html

--
David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Chris Gauch
A couple weeks ago I opted to use the MIMEDefang embedded perl interpreter
(by turning on MX_EMBED_PERL=yes in the MD init script), however, I have
noticed some stability problems when using the embedded interpreter.  Every
morning at 5am the MD multiplexor essentially craps out, requiring
MIMEDefang, clamd, and sendmail to be restarted.  I didn't see much in the
log files indicating what was causing the multiplexor to die off, but I do
know that the daily CRON jobs run at around 4-5am every night.

The embedded perl interpreter definitely minimizes the memory usage by the
MD slaves, but I don't really notice an overall improvement in total memory
usage when using the embedded perl option.  All 1.5GB of RAM is still used
up entirely, and I have the same number of min/max slaves that I used when I
was not using the embedded perl interpreter.  I also use a RAM disk for the
/var/spool/MIMEDefang directory, and have that set at 128MB.  Maybe I'm
doing something wrong here, but I haven't found much documentation on the
embedded perl interpreter, other than it improves throughput and reduces
memory usage.

Any insight would be appreciated.

- Chris

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread David F. Skoll
On Fri, 25 Jun 2004, Chris Gauch wrote:

 A couple weeks ago I opted to use the MIMEDefang embedded perl interpreter
 (by turning on MX_EMBED_PERL=yes in the MD init script), however, I have
 noticed some stability problems when using the embedded interpreter.  Every
 morning at 5am the MD multiplexor essentially craps out,

What OS are you on?  I don't observe this.

 The embedded perl interpreter definitely minimizes the memory usage by the
 MD slaves, but I don't really notice an overall improvement in total memory
 usage when using the embedded perl option.  All 1.5GB of RAM is still used
 up entirely,

That's normal under Linux.  It uses memory aggressively to do file system
caching.

--
David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Chris Gauch

I'm on Redhat Linux 9 for the OS, latest kernel, etc. (through RHN update).
MIMEDefang version is 2.43, Spamassassin 2.63, and ClamAV 0.72. This problem
was fairly consistent when using the embedded perl interpreter, the MD
multiplexor would crash at almost the exact same time every morning (around
4-5am).  I don't encounter the problem when I'm not using embedded perl.

- Chris 

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of David F.
Skoll
Sent: Friday, June 25, 2004 10:02 AM
To: [EMAIL PROTECTED]
Subject: Re: [Mimedefang] MIMEDefang embedded perl stability issues

On Fri, 25 Jun 2004, Chris Gauch wrote:

 A couple weeks ago I opted to use the MIMEDefang embedded perl interpreter
 (by turning on MX_EMBED_PERL=yes in the MD init script), however, I have
 noticed some stability problems when using the embedded interpreter.
Every
 morning at 5am the MD multiplexor essentially craps out,

What OS are you on?  I don't observe this.

 The embedded perl interpreter definitely minimizes the memory usage by the
 MD slaves, but I don't really notice an overall improvement in total
memory
 usage when using the embedded perl option.  All 1.5GB of RAM is still used
 up entirely,

That's normal under Linux.  It uses memory aggressively to do file system
caching.

--
David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Martin Blapp

Hi,

  noticed some stability problems when using the embedded interpreter.  Every
  morning at 5am the MD multiplexor essentially craps out,

We had the same issue. We found that unproper handling with global variables was
the cause.

So use 'use strinct' in mimedefang-filter and be careful with global variables.
Defined them in the class qw(). Then the errors may stop.

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Kevin A. McGrail
I would check your crontab to see what is running at 5AM.  This sounds more
like the box running out or ram or something.

 A couple weeks ago I opted to use the MIMEDefang embedded perl interpreter
 (by turning on MX_EMBED_PERL=yes in the MD init script), however, I have
 noticed some stability problems when using the embedded interpreter.
Every
 morning at 5am the MD multiplexor essentially craps out, requiring
 MIMEDefang, clamd, and sendmail to be restarted.  I didn't see much in the
 log files indicating what was causing the multiplexor to die off, but I do
 know that the daily CRON jobs run at around 4-5am every night.

 Any insight would be appreciated.

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Martin Blapp
 I would check your crontab to see what is running at 5AM.  This sounds more
 like the box running out or ram or something.

Are you doing a mimedefang reload at this time ?

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Chris Gauch

The only item of doubt is a rulesdujour script that runs in cron.daily --
this updates a number of my spamassassin rules.  I placed a
/etc/init.d/mimedefang reread command in that script so that the
multiplexor reread the configuration after a rules update, I suppose that is
the source of the problems (afterall, the server does deal with a large
volume of email, and is quite underpowered).  I removed the reread command
in the script and have re-enabled the embedded interpreter. 

- Chris   

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Kevin A.
McGrail
Sent: Friday, June 25, 2004 10:24 AM
To: [EMAIL PROTECTED]
Subject: Re: [Mimedefang] MIMEDefang embedded perl stability issues

I would check your crontab to see what is running at 5AM.  This sounds more
like the box running out or ram or something.

 A couple weeks ago I opted to use the MIMEDefang embedded perl interpreter
 (by turning on MX_EMBED_PERL=yes in the MD init script), however, I have
 noticed some stability problems when using the embedded interpreter.
Every
 morning at 5am the MD multiplexor essentially craps out, requiring
 MIMEDefang, clamd, and sendmail to be restarted.  I didn't see much in the
 log files indicating what was causing the multiplexor to die off, but I do
 know that the daily CRON jobs run at around 4-5am every night.

 Any insight would be appreciated.

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Chris Gauch

Yep -- just realized that -- see my previous email about doing a mimedefang
reread in a cron.daily script.  Hopefully removing that reread command will
fix the issue!

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Martin
Blapp
Sent: Friday, June 25, 2004 10:34 AM
To: [EMAIL PROTECTED]
Subject: Re: [Mimedefang] MIMEDefang embedded perl stability issues

 I would check your crontab to see what is running at 5AM.  This sounds
more
 like the box running out or ram or something.

Are you doing a mimedefang reload at this time ?

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Re: MIMEDefang embedded perl stability issues

2004-06-25 Thread Jeremy Mates
* Chris Gauch [EMAIL PROTECTED]
 I'm on Redhat Linux 9 for the OS, latest kernel, etc. (through RHN
 update). MIMEDefang version is 2.43, Spamassassin 2.63, and ClamAV
 0.72. This problem was fairly consistent when using the embedded perl
 interpreter, the MD multiplexor would crash at almost the exact same
 time every morning (around 4-5am). I don't encounter the problem when
 I'm not using embedded perl.

That time of morning is when various cron jobs are run by default, such
as those under /etc/cron.{hourly,daily}. I have seen Mandrake and RedHat
systems croak in a variety of entertaining ways due to these cron jobs
when the system is under heavy load or using excessive amounts of RAM
for something.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Kevin A. McGrail
Yeah, you might want to tail -f your maillog and then do a reread and see if
your mimedefang is even capable of a reread on your platform with embedded
perl.  It is not on mine.

Regards,
KAM

 The only item of doubt is a rulesdujour script that runs in cron.daily --
 this updates a number of my spamassassin rules.  I placed a
 /etc/init.d/mimedefang reread command in that script so that the
 multiplexor reread the configuration after a rules update, I suppose that
is
 the source of the problems (afterall, the server does deal with a large
 volume of email, and is quite underpowered).  I removed the reread
command
 in the script and have re-enabled the embedded interpreter.

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Martin Blapp
 Yep -- just realized that -- see my previous email about doing a mimedefang
 reread in a cron.daily script.  Hopefully removing that reread command will
 fix the issue!

Hi,

We had exactly the same issue.

Add:

use strict;

to your mimedefang filter and the problem will stop after you have fixed all
the error messages.

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread David F. Skoll
On Fri, 25 Jun 2004, Chris Gauch wrote:

 Yep -- just realized that -- see my previous email about doing a mimedefang
 reread in a cron.daily script.  Hopefully removing that reread command will
 fix the issue!

Could you see if 2.44-BETA-1 fixes it?  I applied a patch from Martin
Blapp:

http://lists.roaringpenguin.com/pipermail/mimedefang/2004-June/022707.html

--
David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Richard Laager
 
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 Add:
 
 use strict;
 
 to your mimedefang filter and the problem will stop after you 
 have fixed all
 the error messages.

This is not true in all cases. This is the same problem I'm having. I
can't do a reread. I've been using use strict in my filter as long
as I remember.

David, I still haven't gotten around to running the gdb commands you
suggested in the other thread a few days back. I hope to get to that
soon if I have time.

Richard Laager

-BEGIN PGP SIGNATURE-
Version: PGP 8.0.2
Comment: If you don't know what this is, you can safely ignore it.

iQA/AwUBQNyAn231OrleHxvOEQKfRACgj5TPGIzWaCxGWxh70+zjfwChHwIAmwWe
UtEhskBtvRFI+dFgAnnrDUM3
=Q1lK
-END PGP SIGNATURE-

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] MIMEDefang embedded perl stability issues

2004-06-25 Thread Martin Blapp

Hi,

 This is not true in all cases. This is the same problem I'm having. I
 can't do a reread. I've been using use strict in my filter as long
 as I remember.

Have run run mimedefang.pl -f mimedefang-filter /tmp as test ? Are there
still any warnings ?

Martin
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl External Perl Modules

2004-05-05 Thread Chris Masters
Hi All,

Appologies if this is too far OT.

I'm 'use'ing some perl modules from within my
mimedefang-filter script.

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?

Do I have to include external perl modules in a
special way?

I've done some googling and mailing list searching to
no avail [so far].

Thanks for any help,

Chris

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded Perl External Perl Modules

2004-05-05 Thread Michael Sims
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
___

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded Perl External Perl Modules

2004-05-05 Thread Chris Masters

--- Michael Sims [EMAIL PROTECTED] wrote:
 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?
 

 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.
 

Hmmm. I initialise all connection handles in a
getConnection function that checks the connection and
opens one if necessary (because there never used to be
a filter_initialize function and it's very resilient).

Any other reasons?

Thanks for your response Michael.





__
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs  
http://hotjobs.sweepstakes.yahoo.com/careermakeover 
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded Perl External Perl Modules

2004-05-05 Thread David F. Skoll
On Wed, 5 May 2004, Chris Masters wrote:

 Hmmm. I initialise all connection handles in a
 getConnection function that checks the connection and
 opens one if necessary (because there never used to be
 a filter_initialize function and it's very resilient).

 Any other reasons?

We've noticed a problem with error reporting and the embedded interpreter,
but haven't been able to track it down.  Try wrapping your use
statements in a BEGIN { eval { use XXX; } or die (Error with use: $@); }

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded Perl External Perl Modules

2004-05-05 Thread Chris Masters

--- David F. Skoll [EMAIL PROTECTED] wrote:
 On Wed, 5 May 2004, Chris Masters wrote:
 
  Hmmm. I initialise all connection handles in a
  getConnection function that checks the connection
 and
  opens one if necessary (because there never used
 to be
  a filter_initialize function and it's very
 resilient).
 
  Any other reasons?
 
 We've noticed a problem with error reporting and the
 embedded interpreter,
 but haven't been able to track it down.  Try
 wrapping your use
 statements in a BEGIN { eval { use XXX; } or die
 (Error with use: $@); }
 

Thanks David. Already doing that - the error is based
around the connection error:

Can't locate object method new via package
Net::LDAP::Bind at
/usr/lib/perl5/site_perl/5.8.0/Net/LDAP.pm line 227.

H. This is the same error if it cannot connect. I
can recreate and test further if required.

Cheers, Chris

code:

eval
{
   md_syslog('info',Connecting to LDAP Directory);
   $ldap = Net::LDAP-new($LDAPServer,timeout =
$LDAPTimeout);
   $mesg = $ldap-bind($LDAP_user, password =
$LDAP_passwd);

   if ($mesg-code)
   {
   use Net::LDAP::Util qw(ldap_error_text);
   $error = ldap_error_text($mesg-code);
   md_syslog('err',LDAP Connect Error: $error);
   undef $ldap;
   }
};

if($@ || !defined($ldap))
{
   action_tempfail(LDAP Connect Error(Queuing
mail));
   md_syslog('err',LDAP Error: $@);
   undef $ldap;
}







__
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs  
http://hotjobs.sweepstakes.yahoo.com/careermakeover 
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded perl

2004-04-24 Thread David F. Skoll
On Fri, 23 Apr 2004, Henrik Schmiediche wrote:

 How can you test if a given implementation is safe?

Look at configure.in and search for
AC_MSG_CHECKING([if it is safe to destroy and recreate a Perl interpreter])

 Does Perl need to be compiled in any special way to enable embedded Perl to
 work?

Yes; you need either a shared library libperl.so, or a static one (libperl.a)
on your system.

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded perl

2004-04-24 Thread Les Mikesell
On Sat, 2004-04-24 at 09:10, David F. Skoll wrote:

 Yes; you need either a shared library libperl.so, or a static one (libperl.a)
 on your system.

Would you have a lot of unnecessary overhead if, instead of
writing your own multiplexing and embedded perl, you ran
a stock apache/mod_perl or fastcgi and a really simple
front end that dispatches the jobs via http requests?
It would add some software dependencies, but all things
that are well tested, packaged in distributions, and
already understood by system administrators.  You would
also inherit a framework for web status checking and
administration.

---
  Les Mikesell
   [EMAIL PROTECTED]


___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded perl

2004-04-24 Thread David Eisner


On Fri, 23 Apr 2004, David F. Skoll wrote:
 On Fri, 23 Apr 2004, Henrik Schmiediche wrote:
  What is the advantage to Embedding Perl in the muliplexor?

 Faster startup time and much less memory use.


The man mimedefang-multiplexor man page says:

  -E   Specifies that the multiplexor should create an embedded Perl
   interpreter.  This can improve performance dramatically.  But
   see the section EMBEDDING PERL for more information.

When I read this it wasn't clear whether performance applied only to
speed, or to memory use, or to both.  Perhaps the second sentence should
be This can dramatically decrease both startup time and memory use.

Just a thought.

-David

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded perl

2004-04-24 Thread David F. Skoll
On Sat, 24 Apr 2004, Les Mikesell wrote:

 Would you have a lot of unnecessary overhead if, instead of
 writing your own multiplexing and embedded perl, you ran
 a stock apache/mod_perl or fastcgi and a really simple
 front end that dispatches the jobs via http requests?

I have no idea, and I have no inclination to find out. :-)

 It would add some software dependencies, but all things
 that are well tested, packaged in distributions, and
 already understood by system administrators.

apache + mod_perl is a very fragile thing, IMO.  There are lots of
things still broken in apache2's mod_perl.

 You would also inherit a framework for web status checking and
 administration.

We already have that in our commercial product using the multiplexor
control socket and other means, so it's already doable.

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded perl

2004-04-23 Thread David F. Skoll
On Fri, 23 Apr 2004, Henrik Schmiediche wrote:

 What is the advantage to Embedding Perl in the muliplexor?

Faster startup time and much less memory use.

 Why is it not enabled by default?

Because it's broken on some platforms.  It's fine on Linux,
mostly fine on Solaris 9, and all bets are off on other platforms.

The innards of Perl are very scary...

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


RE: [Mimedefang] Embedded perl

2004-04-23 Thread Henrik Schmiediche

Thanks... 

How can you test if a given implementation is safe?

Does Perl need to be compiled in any special way to enable embedded Perl to
work?

Sincerely,

   - Henrik


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of David F.
Skoll
Sent: Friday, April 23, 2004 5:29 PM
To: [EMAIL PROTECTED]
Subject: Re: [Mimedefang] Embedded perl

On Fri, 23 Apr 2004, Henrik Schmiediche wrote:

 What is the advantage to Embedding Perl in the muliplexor?

Faster startup time and much less memory use.

 Why is it not enabled by default?

Because it's broken on some platforms.  It's fine on Linux,
mostly fine on Solaris 9, and all bets are off on other platforms.

The innards of Perl are very scary...

Regards,

David.
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl problems - bugfix

2004-03-24 Thread Josh Kelley
I think that I've found and fixed a problem in MIMEDefang's embedded 
Perl mode.

The problem:  The MIMEDefang multiplexor uses the openlog and syslog 
functions to write to the syslog.  These functions use a file descriptor 
kept in a static variable somewhere to do the actual writing.  However, 
when the multiplexor forks off a child, the child closes all open FDs.  
If the Perl filter then opens a file, it may happen to get the same FD 
that the openlog/syslog functions expect to use.  Bad things ensue.  (On 
my system, the FD conflict was causing slave processes to hang.)

Solution:  Add a closelog() call to mimedefang-multiplexor.c's 
activateSlave function, just before Close unneeded file descriptors loop.

Josh Kelley
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl problems

2004-03-22 Thread Josh Kelley
Lucas Albers wrote:

You should show this sort of command arguments when you run

ps axuww|grep mimedefang

/usr/bin/mimedefang-multiplexor -p
/var/spool/MIMEDefang/mimedefang-multiplexor.pid -E -m 4 -x 9 -U defang -i
30 -b 600 -W 1 -l -q 10 -s
/var/spool/MIMEDefang/mimedefang-multiplexor.sock
Notice the -E.
Verify that it had embedded support when it was compiled.
 

I've verified that the -E is listed in the ps auxwww listing, and I've 
verified that embedded support was compiled in.  Any other suggestions?

Josh Kelley
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl problems

2004-03-22 Thread Lucas Albers
Verify it is using the newer embedded version by calling manually.
what is the full memory listing for all the mimedefang process?
post the result of ps axuww | grep mimedefang
cut off parts so it doesn't word wrap.


Josh Kelley said:
 I've verified that the -E is listed in the ps auxwww listing, and I've
 verified that embedded support was compiled in.  Any other suggestions?


-- 
Luke Computer Science System Administrator
Security Administrator,College of Engineering
Montana State University-Bozeman,Montana

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


[Mimedefang] Embedded Perl problems

2004-03-19 Thread Josh Kelley
I'm trying to get the multiplexor's embedded Perl mode to work, since 
messages on the mailing list indicated that it would save a lot of 
memory, and our mail server (running Red Hat Enterprise Linux 3) is a 
bit limited on memory.

First, a minor point:  it doesn't seem to be helping the memory usage 
any.  I'd read on the list that embedded Perl mode should cause the 
shared column of top to be much higher, but it seems to be about the 
same as in non-embedded mode.

Second, a major point: when I enable embedded mode, slaves apparently 
tend to become busy and never report that they're done.  Slaves will 
still sometimes work, so some mail goes through - I haven't been able to 
figure out why things sometimes work and sometimes don't.  Eventually, 
though, all of the slaves become busy, up to MX_MAXIMUM.

Any idea what might be causing this?  Any suggestions on how I could 
track down the problem?

Thanks.

Josh Kelley
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl problems

2004-03-19 Thread Lucas Albers
Josh Kelley said:
 I'm trying to get the multiplexor's embedded Perl mode to work, since
 messages on the mailing list indicated that it would save a lot of
 memory, and our mail server (running Red Hat Enterprise Linux 3) is a
 bit limited on memory.

 First, a minor point:  it doesn't seem to be helping the memory usage

 Second, a major point: when I enable embedded mode, slaves apparently
 tend to become busy and never report that they're done.

 Thanks.

What version of perl are you running?
Look at the shared memory, it will indicate that each slave is sharing 2/3
of it's memory with the master.
Like such:
defang 9   0 31992  31M 19972 S 0.0  6.3   0:00 mimedefang-mult
defang 9   0 31040  30M 20600 S 0.0  6.1   0:00 mimedefang-mult
defang 9   0 30220  29M 29740 S 0.0  5.9   0:00 mimedefang-mult
defang 9   0 30212  29M 29732 S 0.0  5.9   0:09 mimedefang-mult
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 4   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang

See the number after 31m that is 20m or so?
You can see te 3rd and 4th slave aren't using any extra memory, they are
sharing all from the parent.

That is the amount of memory it is sharing, so memory usage is
(Total Mem X n-slaves - (Shared Mem X n-slaves)
31M+30M - 20M = 40M
You save about 10M per slave over non embedded.
You need to specifically enable the embedded option with the -E switch on
the multiplexor startup script.
-- 
Luke Computer Science System Administrator
Security Administrator,College of Engineering
Montana State University-Bozeman,Montana

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl problems

2004-03-19 Thread Josh Kelley
Lucas Albers wrote:

What version of perl are you running?
 

5.8.0, the version that ships with RHEL 3.

Look at the shared memory, it will indicate that each slave is sharing 2/3
of it's memory with the master.
Like such:
defang 9   0 31992  31M 19972 S 0.0  6.3   0:00 mimedefang-mult
defang 9   0 31040  30M 20600 S 0.0  6.1   0:00 mimedefang-mult
defang 9   0 30220  29M 29740 S 0.0  5.9   0:00 mimedefang-mult
defang 9   0 30212  29M 29732 S 0.0  5.9   0:09 mimedefang-mult
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 4   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
defang 9   0  1632 1628  1408 S 0.0  0.3   0:00 mimedefang
See the number after 31m that is 20m or so?
You can see te 3rd and 4th slave aren't using any extra memory, they are
sharing all from the parent.
 

That's what I was looking at.  The 5th column for the 
mimedefang-multiplexors was only 3m or so, the same as it is when I have 
embedded Perl disabled.

You need to specifically enable the embedded option with the -E switch on
the multiplexor startup script.
 

I'm using the provided init script for Red Hat, so I can set the 
appropriate option in /etc/sysconfig/mimedefang to make the init script 
pass the -E option.

I've confirmed that ps lists the children as mimedefang-multiplexor 
rather than perl mimedefang.pl, which should mean that embedded Perl 
is enabled.

Josh Kelley
___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang


Re: [Mimedefang] Embedded Perl problems

2004-03-19 Thread Lucas Albers

Josh Kelley said:

 I'm using the provided init script for Red Hat, so I can set the
 appropriate option in /etc/sysconfig/mimedefang to make the init script
 pass the -E option.

 I've confirmed that ps lists the children as mimedefang-multiplexor
 rather than perl mimedefang.pl, which should mean that embedded Perl
 is enabled.
You should show this sort of command arguments when you run

ps axuww|grep mimedefang

/usr/bin/mimedefang-multiplexor -p
/var/spool/MIMEDefang/mimedefang-multiplexor.pid -E -m 4 -x 9 -U defang -i
30 -b 600 -W 1 -l -q 10 -s
/var/spool/MIMEDefang/mimedefang-multiplexor.sock

Notice the -E.
Verify that it had embedded support when it was compiled.

-- 
Luke Computer Science System Administrator
Security Administrator,College of Engineering
Montana State University-Bozeman,Montana

___
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang