qmail Digest 2 Aug 2000 10:00:01 -0000 Issue 1081
Topics (messages 45933 through 45989):
Qmail problem
45933 by: FCP Wong
45934 by: Sylwester S. Biernacki
Cannot send mail thru SMTP
45935 by: markf.samsung.co.kr
45936 by: markf.samsung.co.kr
45939 by: Dave Sill
45986 by: markf.samsung.co.kr
Re: [offtopic?] RE: Encryption (was: Open letter)
45937 by: Dave Sill
45943 by: Michael T. Babcock
Re: many processes open
45938 by: Dave Sill
tcpserver delaying connections
45940 by: Ben Beuchler
45949 by: James Raftery
45951 by: Ben Beuchler
45958 by: James Raftery
45959 by: Ben Beuchler
Rctp hosts....
45941 by: Alexander Meis
45944 by: Slider
45945 by: Slider
Re: Duplicate Message-ID question
45942 by: Dave Sill
45954 by: Sten
Re: tai64n -- why?
45946 by: Michael T. Babcock
45947 by: Petr Novotny
45950 by: Michael T. Babcock
Me retirem desta lista
45948 by: monicab
Re: Arguments in favor of djbdns?
45952 by: Ben Beuchler
45953 by: Bennett Todd
45956 by: Ben Beuchler
Qmail and MRTG
45955 by: Cedric Fontaine
45980 by: Russell Nelson
Re: How to requeue messages?
45957 by: Scott Gifford
smtproutes
45960 by: Jacob Scott
45961 by: John White
Re: Blocking Spam, badmailfrom not working
45962 by: Michael T. Babcock
Re: question ?
45963 by: Robin S. Socha
Re: MUA HTML support (was: question)
45964 by: Michael T. Babcock
Qmail and non-Linux clients
45965 by: Subba Rao
45966 by: Alexander Jernejcic
Header address info hiding
45967 by: Subba Rao
Re: (OT) MUA HTML support
45968 by: Ronny Haryanto
Re: qmail-pw2u error
45969 by: Vincent Danen
updated load balancing qmail-qmqpc.c mods
45970 by: Austad, Jay
45973 by: JuanE
45978 by: Austad, Jay
45988 by: Frank D. Cringle
Mailing list performance Im setting a mailing list system that will require a VERY
good performance. After search for a lot of options, Ive decided to use qmail because
I think it is the most quick and configurable MTA. Im wondering what can I change to
improve the performance of my mailing list, I already read the documentation and found
a lot of thinks like the number of paralell proccess and other things. I really need a
great performance in this mailing list, so I would like to know some tips and the best
mailing list manager to use. I would like to know also some statistics of performance
in mailing list using qmail.... Best Regards, Im setting a mailing list system that
will require a VERY good performance. After search for a lot of options, Ive decided
to use qmail because I think it is the most quick and configurable MTA. Im wondering
what can I change to improve the performance of my mailing list, I already read the
documentation and found a lot of thinks like the number of paralell proccess and other
things. I really need a great performance in this mailing list, so I would like to
know some Mailing list performance
45971 by: Fernando Almeida
Copy and paste!!!
45972 by: Fernando Almeida
smtproutes and From-Address
45974 by: Moritz Jodeit
45982 by: Robin S. Socha
RFC 2645 server and client that is compatible with qmail?
45975 by: John Conover
send to group functionality ?
45976 by: Barry Smoke
45983 by: Robin S. Socha
ezmlm-send core dumped
45977 by: Χ岸
45979 by: J. Paul Reed
How do you add prog arguments using tcpserver
45981 by: Martin Searancke
Re: Sort maildir and send smallest first
45984 by: qmail.col7.metta.lk
再次问您有关qmail的问题
45985 by: luo163-local
qmqp and fetchmail
45987 by: Oliver Koch
SPAM BLOCKING
45989 by: Slider
Administrivia:
To unsubscribe from the digest, e-mail:
[EMAIL PROTECTED]
To subscribe to the digest, e-mail:
[EMAIL PROTECTED]
To bug my human owner, e-mail:
[EMAIL PROTECTED]
To post to the list, e-mail:
[EMAIL PROTECTED]
----------------------------------------------------------------------
Hi guys,
I had just set up qmail for testing and I keep
receiving this email send to the root user :
---------------------------------------
rmmod: QM_MODULES: Function not
implemented
rmmod: Function not implemented rmmod:
QM_MODULES: Function not implemented
----------------------------------------
I checked the root crontab and nothing was being
run there... anybody have any idea what is this? Currently mails I send to the
server are not successfully delivered either but this is another problem I guess
and I just haven't had the time to debug that.
Thanks
Wong
|
FCP Wong wrote:
> Hi guys, I had just set up qmail for testing and I keep receiving this
> email send to the root user
> : --------------------------------------- From: [EMAIL PROTECTED]
> (Cron Daemon)
> To: [EMAIL PROTECTED]
> Subject: Cron <root@hamer> /sbin/rmmod -as
> X-Cron-Env: <SHELL=/bin/sh>
> X-Cron-Env: <HOME=/root>
> X-Cron-Env: <PATH=/usr/bin:/bin>
> X-Cron-Env: <LOGNAME=root> rmmod: QM_MODULES: Function not
> implemented rmmod: Function not implemented
> rmmod: QM_MODULES: Function not
> implemented---------------------------------------- I checked the root
> crontab and nothing was being run there... anybody have any idea what
> is this? Currently mails I send to the server are not successfully
> delivered either but this is another problem I guess and I just
> haven't had the time to debug that. ThanksWong
yeah.... look at /etc/cron.* and /etc/crontab
you've got RedHat/Mandrake Linux right ?
greetZ
S.
Hi Guys,
I'm a qmail newbie and just installed qmail 1.03 in RED HAT 6.2. Followed installation
instructions from Life w/ qmail.
Including all the packages like daemontools and ucspi. I think I followed it all,
double checking on the scripts and
the directories to make, link files, ownerships, removing sendmail, aliases. By the
way i'm using the ./Mailbox as my
mailbox. After the installation I test it using the instructions given on
TEST.deliver. It was successful cause I was able
to send to my account & to another user by checking their mailbox. Then I tried the
test.receive using the smtp.
I was able to follow the instructions given on the test.receive. But when I checked
the mailbox, mail was not received,
instead there was a mailer-daemon message...
>From MAILER-DAEMON Tue Aug 1 18:44:50 2000
Date: 01 Aug 2000 18:44:50 +0800
From: Mail System Internal Data <[EMAIL PROTECTED]>
Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA
Message-ID: <[EMAIL PROTECTED]>
X-IMAP: 0965092586 0000000002
Status: RO
This text is part of the internal format of your mail folder, and is not
a real message. It is created automatically by the mail system software.
If deleted, important folder data will be lost, and it will be re-created
with the data reset to initial values.
Then I checked the maillog it says:
supervise: fatal: unable to acquire log/supervise/lock: temporary failure
Well, I tried to double check againg all the installation instructions to make sure I
didn't forget anything.
But still same errors occurred.
Anyway I would really appreciate if someone would help me with this.
thanks,
mark
Hi Guys,
I'm a qmail newbie and just installed qmail 1.03 in RED HAT 6.2. Followed installation
instructions from Life w/ qmail.
Including all the packages like daemontools and ucspi. I think I followed it all,
double checking on the scripts and
the directories to make, link files, ownerships, removing sendmail, aliases. By the
way i'm using the ./Mailbox as my
mailbox. After the installation I test it using the instructions given on
TEST.deliver. It was successful cause I was able
to send to my account & to another user by checking their mailbox. Then I tried the
test.receive using the smtp.
I was able to follow the instructions given on the test.receive. But when I checked
the mailbox, mail was not received,
instead there was a mailer-daemon message...
>From MAILER-DAEMON Tue Aug 1 18:44:50 2000
Date: 01 Aug 2000 18:44:50 +0800
From: Mail System Internal Data <[EMAIL PROTECTED]>
Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA
Message-ID: <[EMAIL PROTECTED]>
X-IMAP: 0965092586 0000000002
Status: RO
This text is part of the internal format of your mail folder, and is not
a real message. It is created automatically by the mail system software.
If deleted, important folder data will be lost, and it will be re-created
with the data reset to initial values.
Then I checked the maillog it says:
supervise: fatal: unable to acquire log/supervise/lock: temporary failure
supervise: fatal: unable to acquire qmail-send/supervise/lock: temporary failure
supervise: fatal: unable to acquire qmail-smtpd/supervise/lock: temporary failure
I checked if qmail daemons are running by ps command:
root 21084 21083 0 17:09 tty2 00:00:00 supervise qmail-send
root 21086 21083 0 17:09 tty2 00:00:00 supervise qmail-smtpd
qmails 21088 21084 0 17:09 tty2 00:00:00 qmail-send
qmaill 21089 21087 0 17:09 tty2 00:00:00 /usr/local/bin/multilog t
qmaild 21090 21086 0 17:09 tty2 00:00:00 /usr/local/bin/tcpserver -v -p -
qmaill 21091 21085 0 17:09 tty2 00:00:00 /usr/local/bin/multilog t
root 21096 21088 0 17:09 tty2 00:00:00 qmail-lspawn ./Mailbox
qmailr 21097 21088 0 17:09 tty2 00:00:00 qmail-rspawn
qmailq 21098 21088 0 17:09 tty2 00:00:00 qmail-clean
root 21798 657 0 19:37 tty2 00:00:00 grep qmail
I think it's running ok.
Well, I tried to double check againg all the installation instructions to make sure I
didn't forget anything.
But still same errors occurred.
Anyway I would really appreciate if someone would help me with this.
thanks,
mark
[EMAIL PROTECTED] wrote:
>Then I tried the test.receive using the
>smtp. I was able to follow the instructions given on the
>test.receive. But when I checked the mailbox, mail was not received,
>instead there was a mailer-daemon message...
No, that's not really a mailer daemon message. As the Subject says,
it's "FOLDER INTERNAL DATA". (Do I smell pine?)
>Then I checked the maillog it says:
>
>supervise: fatal: unable to acquire log/supervise/lock: temporary failure
>supervise: fatal: unable to acquire qmail-send/supervise/lock: temporary failure
>supervise: fatal: unable to acquire qmail-smtpd/supervise/lock: temporary failure
I'm not sure why you got those, but apparently it *was* temporary
since all the necessary daemons seem to be running.
What do the qmail-send logs say? Did you look in ~alias/Mailbox for
bounces?
-Dave
[EMAIL PROTECTED] wrote:
>Then I tried the test.receive using the
>smtp. I was able to follow the instructions given on the
>test.receive. But when I checked the mailbox, mail was not received,
>instead there was a mailer-daemon message...
>No, that's not really a mailer daemon message. As the Subject says,
>it's "FOLDER INTERNAL DATA". (Do I smell pine?)
Yes, I used pine mail.
>Then I checked the maillog it says:
>
>supervise: fatal: unable to acquire log/supervise/lock: temporary failure
>supervise: fatal: unable to acquire qmail-send/supervise/lock: temporary failure
>supervise: fatal: unable to acquire qmail-smtpd/supervise/lock: temporary failure
>I'm not sure why you got those, but apparently it *was* temporary
>since all the necessary daemons seem to be running.
Yes it's my mistake, it's not from maillog, it just appears on the screen after I
execute
/usr/local/sbin/qmail start
>What do the qmail-send logs say? Did you look in ~alias/Mailbox for
>bounces?
There are no messages from the ~alias/Mailbox for bounces.
About qmail-send logs, I don't know where to find the log file, but what i did is I
checked the status
using the /usr/local/sbin/qmail stat, it says:
qmail-send/log: up (pid 13777).
Now I have another problem, I cheked the /var/qmail/supervise/qmail-smtpd/run file and
tried to edit it here is the file:
#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 4000000 \
/usr/local/bin/tcpserver -v -p -x /etc/tcp.smtp.cdb \
-u $QMAILDUID -g $NOFILESGID 0 smtp /var/qmail/bin/qmail-smtpd 2>&1
Then I saved it and restart qmail.....
After restarting, a repeated message appears on the screen:
> softlimit: fatal: unable to run : file does not exist
I don't know what it means, so I just ignore it and tried testing mail thru smtp.
Now I can't even connect. it says:
>telnet localhost 25
>Trying 127.0.0.1...
>telnet: Unable to connect to remote host: Connection refused.
Thanks for responding to my help, hope you could help me.
Mark
Adam McKenna <[EMAIL PROTECTED]> wrote:
>On Mon, Jul 31, 2000 at 06:04:12PM -0400, Michael T. Babcock wrote:
>> Use any version of PGP or "PGP for Windows" and use the clipboard encryption
>> features:
>> 1) select all text (Ctrl-A)
>> 2) "copy" (Ctrl-C)
>> 3) click on PGP tray icon
>> 4) click "sign & encrypt"
>> 5) enter password
>> 6) click window of program with selected text
>> 7) "paste" (Ctrl-V) (replacing original with encrypted + signed cipher-text)
>
>It's not even this complicated with 6.5. You click on the window whose text
>you want to encrypt, click on the try icon, and click "encrypt window" (or
>something like that). PGP automatically does the copying and pasting for you.
Still too hard. The way it *should* work is that I click "Send", a
pop-up asks me for my pasword, and the message is sent signed and
enrypted.
-Dave
True -- but that would require the countries the software manufacturers do business
in to relax their export regs. and allow for open encryption hooks in their tools.
Dave Sill wrote:
> >It's not even this complicated with 6.5. You click on the window whose text
> >you want to encrypt, click on the try icon, and click "encrypt window" (or
> >something like that). PGP automatically does the copying and pasting for you.
>
> Still too hard. The way it *should* work is that I click "Send", a
> pop-up asks me for my pasword, and the message is sent signed and
> encrypted.
Toens Bueker <[EMAIL PROTECTED]> wrote:
>From inetd(8):
>
>The optional `max'' suffix (separated from `wait'' or `nowait'' by a dot)
>specifies the maximum number of server instances that may be spawned from
>inetd within an interval of 60 seconds. When omitted, `max'' defaults to 40.
That's a rate limit, not a concurrency limit.
-Dave
I am running qmail w/ tcpserver, dnscache, and daemontools. Latest
versions of each, despite the annoying tai64n timestamps on multilog.
;-)
Two to three times a day, tcpserver seems to slow way down. While it is
acting up like this, it will accept a connection but will not actually
start qmail-smtpd for upwards of 60 - 90 seconds. In the logs, that
looks like this:
2000-08-01 07:41:34.707211500 tcpserver: pid 61983 from 205.188.157.37
2000-08-01 07:41:35.418205500 tcpserver: status: 8/80
2000-08-01 07:41:35.419082500 tcpserver: pid 61985 from 38.202.217.115
2000-08-01 07:41:36.068649500 tcpserver: status: 9/80
2000-08-01 07:41:36.069495500 tcpserver: pid 61989 from 204.160.241.38
2000-08-01 07:41:36.357244500 tcpserver: status: 10/80
2000-08-01 07:41:36.363963500 tcpserver: pid 61992 from 216.243.128.254
2000-08-01 07:41:37.410698500 tcpserver: status: 11/80
<snip>
2000-08-01 07:42:25.356440500 tcpserver: pid 62056 from 216.243.128.254
2000-08-01 07:42:33.785679500 tcpserver: ok 61983 :216.243.128.140:25
:205.188.1
2000-08-01 07:42:34.229199500 tcpserver: end 61983 status 0
2000-08-01 07:42:34.229575500 tcpserver: status: 22/80
2000-08-01 07:42:34.432984500 tcpserver: ok 61985
mail.bitstream.net:216.243.128
2000-08-01 07:42:34.453643500 tcpserver: ok 61989
mail.bitstream.net:216.243.128
2000-08-01 07:42:34.455611500 tcpserver: status: 23/80
2000-08-01 07:42:34.461901500 tcpserver: pid 62070 from 216.243.128.254
Note the delay from when it notes the start of a connection (07:41:34)
to when it actually accepts it and says OK (07:42:25). This one only
lasted ~ 1 minute, but I have seen it take twice as long. From other
logs it does not seem that the system load is getting too high. I am
not obtaining $TCPREMOTEINFO or doing reverse lookups. Here is the
command line I am using for tcpserver:
exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -R -H -c80 -v -x \
/etc/smtprules/tcp.smtp.cdb -u73 -g1003 0 smtp \
/var/qmail/bin/qmail-smtpd 2>&1
Any ideas?
Thanks,
Ben
--
Ben Beuchler [EMAIL PROTECTED]
MAILER-DAEMON (612) 321-9290 x101
Bitstream Underground www.bitstream.net
On Tue, Aug 01, 2000 at 08:03:23AM -0500, Ben Beuchler wrote:
> despite the annoying tai64n timestamps on multilog. ;-)
Let's just pass over that :)
> 2000-08-01 07:42:33.785679500 tcpserver: ok 61983 :216.243.128.140:25
> :205.188.1
> 2000-08-01 07:42:34.432984500 tcpserver: ok 61985
> mail.bitstream.net:216.243.128
> 2000-08-01 07:42:34.453643500 tcpserver: ok 61989
> mail.bitstream.net:216.243.128
> Note the delay from when it notes the start of a connection (07:41:34)
> to when it actually accepts it and says OK (07:42:25).
I've cut out everything but the 'ok' lines. They look incomplete. Could
you check that's what they actually contain?
> Here is the command line I am using for tcpserver:
>
> exec /usr/local/bin/softlimit -m 2000000 \
> /usr/local/bin/tcpserver -R -H -c80 -v -x \
> /etc/smtprules/tcp.smtp.cdb -u73 -g1003 0 smtp \
> /var/qmail/bin/qmail-smtpd 2>&1
Are you certain that is the invocation used for the running instance of
tcpserver? The log lines above have TCPLOCALHOST information, which
mean it is looking up your hosts IP address in the DNS. Is the reverse
DNS for your IP allocation healthy?
Regards,
james
--
James Raftery (JBR54) - Programmer Hostmaster - IE TLD Hostmaster
IE Domain Registry - www.domainregistry.ie - (+353 1) 706 2375
"Managing 4000 customer domains with BIND has been a lot like
herding cats." - Mike Batchelor, on [EMAIL PROTECTED]
On Tue, Aug 01, 2000 at 03:27:44PM +0100, James Raftery wrote:
> On Tue, Aug 01, 2000 at 08:03:23AM -0500, Ben Beuchler wrote:
> > despite the annoying tai64n timestamps on multilog. ;-)
>
> Let's just pass over that :)
>
> > 2000-08-01 07:42:33.785679500 tcpserver: ok 61983 :216.243.128.140:25
> > :205.188.1
> > 2000-08-01 07:42:34.432984500 tcpserver: ok 61985
> > mail.bitstream.net:216.243.128
> > 2000-08-01 07:42:34.453643500 tcpserver: ok 61989
> > mail.bitstream.net:216.243.128
>
> > Note the delay from when it notes the start of a connection (07:41:34)
> > to when it actually accepts it and says OK (07:42:25).
>
> I've cut out everything but the 'ok' lines. They look incomplete. Could
> you check that's what they actually contain?
I apologize, I'm not sure how I managed to truncate those lines. Here's
the actual goods:
2000-08-01 07:42:33.785679500 tcpserver: ok 61983 :216.243.128.140:25
:205.188.157.37::35254
2000-08-01 07:42:34.432984500 tcpserver: ok 61985
mail.bitstream.net:216.243.128.140:25 :38.202.217.115::1855
2000-08-01 07:42:34.453643500 tcpserver: ok 61989
mail.bitstream.net:216.243.128.140:25 :204.160.241.38::63400
> > Here is the command line I am using for tcpserver:
> >
> > exec /usr/local/bin/softlimit -m 2000000 \
> > /usr/local/bin/tcpserver -R -H -c80 -v -x \
> > /etc/smtprules/tcp.smtp.cdb -u73 -g1003 0 smtp \
> > /var/qmail/bin/qmail-smtpd 2>&1
>
> Are you certain that is the invocation used for the running instance of
> tcpserver? The log lines above have TCPLOCALHOST information, which
> mean it is looking up your hosts IP address in the DNS.
Hmmm... What flag tells it not to look for that? Anyway, here's the
actual running copy from 'ps awx | grep smtprules':
83699 ?? S 0:58.31 /usr/local/bin/tcpserver -R -H -c80 -v -x
/etc/smtprules/tcp.smtp.cdb -u73 -g1003 0 smtp
/var/qmail/bin/qmail-smtpd
> Is the reverse DNS for your IP allocation healthy?
It appears to be. If you or anyone else can find a problem with it, I
would be greatful. But... Everything appears to be fine.
Thanks,
Ben
--
Ben Beuchler [EMAIL PROTECTED]
MAILER-DAEMON (612) 321-9290 x101
Bitstream Underground www.bitstream.net
On Tue, Aug 01, 2000 at 09:43:50AM -0500, Ben Beuchler wrote:
> Hmmm... What flag tells it not to look for that?
-l localname
See http://cr.yp.to/ucspi-tcp/tcpserver.html for the full raft of
options.
> It appears to be. If you or anyone else can find a problem with it, I
> would be greatful. But... Everything appears to be fine.
The delegation information your nameservers are announcing for
128.243.216.in-addr.arpa is different to what ARIN have registered for
the netblock. There no reason this would cause tcpserver to pause, but
even so.
Regards,
james
--
James Raftery (JBR54) - Programmer Hostmaster - IE TLD Hostmaster
IE Domain Registry - www.domainregistry.ie - (+353 1) 706 2375
"Managing 4000 customer domains with BIND has been a lot like
herding cats." - Mike Batchelor, on [EMAIL PROTECTED]
On Tue, Aug 01, 2000 at 05:52:57PM +0100, James Raftery wrote:
> On Tue, Aug 01, 2000 at 09:43:50AM -0500, Ben Beuchler wrote:
> > Hmmm... What flag tells it not to look for that?
>
> -l localname
> See http://cr.yp.to/ucspi-tcp/tcpserver.html for the full raft of
> options.
I will try that, thank-you.
> > It appears to be. If you or anyone else can find a problem with it, I
> > would be greatful. But... Everything appears to be fine.
>
> The delegation information your nameservers are announcing for
> 128.243.216.in-addr.arpa is different to what ARIN have registered for
> the netblock. There no reason this would cause tcpserver to pause, but
> even so.
I will look into that.
Thanks!
Ben
--
Ben Beuchler [EMAIL PROTECTED]
MAILER-DAEMON (612) 321-9290 x101
Bitstream Underground www.bitstream.net
Hi...
i have the Problem that we are serving domains for foo.de
our Mailserver is in 194.97.15.0
The customers Mailserver is in 62.108.55.224 for example.
The customers cant send mail over our mailserver. The domain
foo.de is in rctphosts of qmail.
Is there a way to fix this problem so that they
are able to send mail witch our Server.
Regards
Alex
Hi...
Another way is to add the ip range or individual addresses into you
/etc/tcp.smtp file and recreate the smtp.cdb file. Also double check the
spelling in rcpthosts (although I think that is not poss but you never know)
:o)
Slider
Hi...
i have the Problem that we are serving domains for foo.de
our Mailserver is in 194.97.15.0
The customers Mailserver is in 62.108.55.224 for example.
The customers cant send mail over our mailserver. The domain
foo.de is in rctphosts of qmail.
Is there a way to fix this problem so that they
are able to send mail witch our Server.
Regards
Alex
In addition be sure that the qmail processes have been restarted, in order
to take up the new settings!!
;o)
Slider
Hi...
i have the Problem that we are serving domains for foo.de
our Mailserver is in 194.97.15.0
The customers Mailserver is in 62.108.55.224 for example.
The customers cant send mail over our mailserver. The domain
foo.de is in rctphosts of qmail.
Is there a way to fix this problem so that they
are able to send mail witch our Server.
Regards
Alex
Sten <[EMAIL PROTECTED]> wrote:
> I didn't see anything in the FAQ that seemed to be relevant to
>this, and the ORNL search engine wants to split 'message-id' into
>'message' and 'id'.
"message id" does the trick.
> I just received a pair of messages from PayPal, which appears
>to be using qmail. I'm fortunate to have received a pair of messages
>(headers below), because I use procmail to eliminate duplicate
>messages based upon the Message-ID header, which RFC 822 requires to
>be unique. However, I'm a paranoid bastard, and shunt all "duplicate"
>email to a duplicates folder, rather than sending it to /dev/null, so
>I caught the false duplicate.
There's paranoia, and there's prudence. :-)
>My question is, is this a known problem
>with qmail, possibly a misconfiguration or something correctable by an
>upgrade? I'd like to be able to tell PayPal more than "Your mailer is
>doing Bad Things.".
qmail's message ID's are of the form timestamp.pid.qmail@hostname. The
only way you could get a duplicate would be if the same process ID is
reused twice within the same second (the resolution of the timestamp)
to send different messages to the same user.
That appears to be what happened in your case. I take it the messages
were different?
One fix would be to increase the resolution of the timestamp to, say,
the millisecond.
This is the first case of a duplicate message ID I've heard of under
qmail.
-Dave
>>>>> Dave Sill writes:
DS> Sten <[EMAIL PROTECTED]> wrote:
>> I didn't see anything in the FAQ that seemed to be relevant to
>> this, and the ORNL search engine wants to split 'message-id' into
>> 'message' and 'id'.
DS> "message id" does the trick.
Not any better than 'message-id'. It finds what it should,
but also tosses in extraneous messages (like
http://www.ornl.gov/its/archives/mailing-lists/qmail/2000/03/msg00099.html
- 'id' doesn't even appear as a substring in that message). I'm
guessing that 'id' (and 'message-id') are matching the header field,
which doesn't get displayed.
DS> There's paranoia, and there's prudence. :-)
Just because I'm paranoid doesn't mean that I can't do
something prudent because of it. ;)
>> My question is, is this a known problem with qmail, possibly a
>> misconfiguration or something correctable by an upgrade? I'd like
>> to be able to tell PayPal more than "Your mailer is doing Bad
>> Things.".
DS> qmail's message ID's are of the form
DS> timestamp.pid.qmail@hostname. The only way you could get a
DS> duplicate would be if the same process ID is reused twice within
DS> the same second (the resolution of the timestamp) to send
DS> different messages to the same user.
Are you sure of that? It looks like the headers may have been
lost (I should have known better than to leave the 'From ' lines
unaltered), but the lines which would seem to be relevant are:
Received: (qmail 28582 invoked by uid 99); 1 Aug 2000 02:20:39 -0000
Message-ID: <[EMAIL PROTECTED]>
and
Received: (qmail 28583 invoked by uid 99); 1 Aug 2000 02:20:39 -0000
Message-ID: <[EMAIL PROTECTED]>
I can see the timestamp in the message ID, but the process IDs
doesn't seem to match up.
DS> That appears to be what happened in your case. I take it the
DS> messages were different?
Most definitely.
DS> One fix would be to increase the resolution of the timestamp to,
DS> say, the millisecond.
Would that be something that can be changed in the
configuration, or would it require a recompile?
Thanks for your help!
--
#include <disclaimer.h> /* Sten Drescher */
[The Internet is] like a library in Resident Evil.
- Mark Waid, 23 Aug 2000
Are you asking more for something like:
2000/07/31 06:02:10.42 (GMT+05)
This has always been the date format I've prefered ... its sortable (as the year
comes first -- although its quite narrow-minded of me to not allow for 5 digit
dates), its human-readable, and quite parsable. The decimal portion after the time
allows for sub-second time measurement. I'm pretty sure adding a function to your
copy of multilog/whatever that converted from the tai64n format to something more
like the above wouldn't be that hard.
David Dyer-Bennet wrote:
> > Would you prefer the splogger format (to wit, Unix timestamp with
> > fractional part) instead? I'd do anything to use a logging format
> > that avoids timezone dependency, and multilog/tai64n seems to do
> > that job well.
>
> You mean this:
> Jul 31 06:02:10 gw qmail: 965023330.820010 status: local 1/10 remote 0/50
> ?
>
> It's better than tai64n, because syslog puts a real timestamp on, but
> that big chunk of meaningless numbers in the middle wastes a lot of
> the line and adds no useful information. It's what I'm using now on
> my main server, but it's quite wasteful and annoying. (But
> qmailanalog expects it)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 1 Aug 00, at 9:58, Michael T. Babcock wrote:
> Are you asking more for something like:
>
> 2000/07/31 06:02:10.42 (GMT+05)
>
> This has always been the date format I've prefered ... its sortable
> (as the year comes first -- although its quite narrow-minded of me to
> not allow for 5 digit dates),
It's not sortable:
1. '+' precedes '-' in ASCII. Yuck.
2. How do you compare (cutting unimportant stuff) 17:30 (GMT+1)
and 18:00 (GMT+0)? Go figure.
3. Fixing seconds precision to two decimals is wrong, too.
There goes.
> > You mean this:
> > Jul 31 06:02:10 gw qmail: 965023330.820010 status: local 1/10
> > remote 0/50
> > ?
What? You're timestamping your logs both by syslog and some
timestamper from old daemontools, whatever-was-its-name,
accustamp? Why on Earth? Either you want to log through syslogd
or something which adds the stamps (you call them human
readable), or through accustamp or multilog which adds tai or tai64
timestamps.
And, for what it's worth, _my_ logs should be machine readable,
not human readable. I inspect qmail logs only seldom, and I can
surely pipe them through tai(64n)local; however, my log analyzing
tools run much more often, and I expect lots of reliability from
them. And I don't want to spend several hours explaining the log
parser that on my system, the timestamp looks like
"%D %d %M %h:%m:%.4s %TZ" or whatever.
-----BEGIN PGP SIGNATURE-----
Version: PGP 6.0.2 -- QDPGP 2.60
Comment: http://community.wow.net/grt/qdpgp.html
iQA/AwUBOYbMfVMwP8g7qbw/EQICmACeLP7qwvTtHsOz9Exks6t+8YaF2u0AoOzr
YJ5FgM9B3kdr8pUKnRZk3s0O
=1OBP
-----END PGP SIGNATURE-----
--
Petr Novotny, ANTEK CS
[EMAIL PROTECTED]
http://www.antek.cz
PGP key ID: 0x3BA9BC3F
-- Don't you know there ain't no devil there's just God when he's drunk.
[Tom Waits]
Which part of "more like" did you miss?
Fixing seconds precision to anything is unnecessary ... with a decimal to
separate the fractional portion and a space to end it, it can be as short or
long as you wish -- a parser does not need that number to have 0 padding at
the end ... comment irrelevant.
The bracketed GMT+x is for the sake of comparing times made by systems that
don't have a friendly timezone system for conversion. That said, preference
would be to store times in GMT and not need the spec ... (GMT+00) ... but
that's not as easy as it sounds sometimes, so the option was left.
Yes, I thought of those.
And yes, its sortable -- within a timezone.
Petr Novotny wrote:
> > Are you asking more for something like:
> >
> > 2000/07/31 06:02:10.42 (GMT+05)
> >
> > This has always been the date format I've prefered ... its sortable
> > (as the year comes first -- although its quite narrow-minded of me to
> > not allow for 5 digit dates),
>
> It's not sortable:
> 1. '+' precedes '-' in ASCII. Yuck.
> 2. How do you compare (cutting unimportant stuff) 17:30 (GMT+1)
> and 18:00 (GMT+0)? Go figure.
> 3. Fixing seconds precision to two decimals is wrong, too.
POR FAVOR RETIREM MEU EMAIL DESTA LISTA
MUITO OBRIGADA
MONICA
|
On Tue, Aug 01, 2000 at 10:34:51AM -0400, Bennett Todd wrote:
> 2000-07-28-16:04:47 Ben Beuchler:
> > Any major gotchas with djbdns, besides the problems nslookup has
> > talking to it?
>
> nslookup only has a problem if it's not serving its own address
> properly for reverse lookups, other than that it should be fine.
Thank you for your no doubt time-consuming reply. Lots of good
information. And I think you have convinced me: Sometime in the near
future we will be a djbdns shop. It will take some arm twisting of the
other admins, but it will happen.
Thanks again,
Ben
--
Ben Beuchler [EMAIL PROTECTED]
MAILER-DAEMON (612) 321-9290 x101
Bitstream Underground www.bitstream.net
2000-08-01-10:50:58 Ben Beuchler:
> Sometime in the near future we will be a djbdns shop. It will
> take some arm twisting of the other admins, but it will happen.
That's good. You'll be glad.
I'll tell you how I made the transition, not that this is the only
way or anything, but it worked really well for me.
I started by setting it up on my own workstation. First I ran myself
a dnscache. Then I scripted some stuff (which I've published, it's
my little packet of helper scripts, available from dnscache.org) to
make it easy for me to set up "secondaries", tinydns servers that
poll other servers via zone xfer to get the authoritative data that
they'll serve. I set up one of them on my workstation, polling from
my company's authoritative nameserver to pick up the company zones.
As my own workstation doesn't have a static IP addr, I ended up
putting my dnscache on 127.0.0.1, and my tinydns on 127.0.0.2. Then
I told my dnscache to reference my tinydns for the zones that
tinydns was tracking. Now I had a standalone nameservice of my own,
with tinydns pumping out the zones our company is authoritative for,
and could experiment and learn how it worked.
My next step was to start rolling out dnscache installs. I started
with servers; any box that wants to be able to do DNS lookups, and
that can run dnscache, I tried to install it. I got the major
servers anyway. That bought an instant security and performance
improvement, with no visible changes; this was just switching server
at a time to using 127.0.0.1 in /etc/resolv.conf and running a local
dnscache. That went perfectly, no problems at all.
Then I got the company's secondary running tinydns, with my
mirroring scripts pulling via zone xfer from our primary. That
worked fine too, and enabled the other SAs to see what a working
tinydns install looks like, and to look over the config and satisfy
themselves that they'd find it maintainable and supportable. That
was also painless, since secondaries normally don't get manually
maintained, and since I'd already tested out the scripting that
brought it up accurately and correctly the first time.
Finally we set up a new tinydns server to be the authoritative
master for our zones. We had it mirroring via zone xfers, with my
scripts, from our primary. We then had the registrars switch the
zones to the new server. Then a week or so later, when we were sure
nobody would still be thinking about the old one, we simply switched
it off, and started hand-maintaining the new tinydns master. In
between those two, when the new primary was up and mirroring
properly and before switching off the old BIND master, we switched
the secondary so it got its updates via rsync-over-ssh from the new
tinydns primary rather than via zone xfer from the old one.
It may seem kinda roundabout, but I found this a low-stress,
painless way to ease on into the new way of doing things, and I
haven't been lynched by my fellow SAs yet. I did take some care to
talk through what I wanted to do, and why, and what visible changes
would appear at each step, and how they'd need to administer things,
so everybody felt informed and felt like they had a chance to object
if I was about to gore their ox somehow.
-Bennett
PGP signature
On Tue, Aug 01, 2000 at 11:03:59AM -0400, Bennett Todd wrote:
> 2000-08-01-10:50:58 Ben Beuchler:
> > Sometime in the near future we will be a djbdns shop. It will
> > take some arm twisting of the other admins, but it will happen.
>
> That's good. You'll be glad.
>
> I'll tell you how I made the transition, not that this is the only
> way or anything, but it worked really well for me.
Sounds like a very sane way of doing it. I'm saving your message for
future reference. Thanks again!
Ben
--
Ben Beuchler [EMAIL PROTECTED]
MAILER-DAEMON (612) 321-9290 x101
Bitstream Underground www.bitstream.net
Please help me !!
I can't figure what I shall do to configure and run Mrtg for QMAIL....
I'm using multilog.... Is it possible to use it with MRTG ??
I have the following logs :
Died at /usr/local/bin/qmail-mrtg-concurrency line 14.
Could not get any data from external command
'/usr/local/bin/qmail-mrtg-concurrency /var/log/qmail/qmail-smtpd/'
Maybe the external command did not even start. (Illegal seek)
Not enough log files to cover 600 seconds at /usr/local/bin/qmail-mrtg-mess
line 27.
Could not get any data from external command '/usr/local/bin/qmail-mrtg-mess
/var/log/qmail/qmail-send/'
Maybe the external command did not even start. (Illegal seek)
Help me please
Cedric Fontaine writes:
> Please help me !!
> I can't figure what I shall do to configure and run Mrtg for QMAIL....
> I'm using multilog.... Is it possible to use it with MRTG ??
Yes, however there's a bug which I'm going to rewrite around. Going to....
--
-russ nelson <[EMAIL PROTECTED]> http://russnelson.com | If you think
Crynwr sells support for free software | PGPok | health care is expensive now
521 Pleasant Valley Rd. | +1 315 268 1925 voice | now, wait until you see
Potsdam, NY 13676-3213 | +1 315 268 9201 FAX | what it costs when it's free.
Albert Hopkins <[EMAIL PROTECTED]> writes:
> The new location is on another (non-qmail) server. Basically this
> user is wanting her currently delivered email to be send to the
> other email address (the one I put in her .qmail). I'm not sure if
> it's called requeuing or what but basically I want qmail to
> re-process the delivered mail according to the new .qmail file.
maildirsmtp in the serialmail package might do what you want it to.
See:
http://cr.yp.to/serialmail.html
-----ScottG.
I would like to bounce all mail incoming to my qmail machine (which is
qmail.domain.com) for domain.com to mail.domain.com while i set up my
server. What would this look like in smtproutes? I don't see this file in my
control files, and I didnt see it in the install docs. Can anyone point me
towards the answer/tell me which M to RTF?
Thanks,
Jacob
On Tue, Aug 01, 2000 at 11:05:18AM -0700, Jacob Scott wrote:
> I would like to bounce all mail incoming to my qmail machine (which is
> qmail.domain.com) for domain.com to mail.domain.com while i set up my
> server. What would this look like in smtproutes? I don't see this file in my
> control files, and I didnt see it in the install docs. Can anyone point me
> towards the answer/tell me which M to RTF?
man qmail-control
This man page tells you which man page each file in /var/qmail/control
is referenced under. This is mentioned in the install, but is generally
not absorbed during the initial learning curve.
John
That's more of what the RBL is for -- if you want to take that step. The RBL
is supposed to be a good list of sites that are producing spam, not that are
necessarily open relays at all.
"Hubbard, David" wrote:
> Thanks for responding Chris. I am currently using the MAPS
> relays.mail-abuse.org with rblsmtpd, I guess the spam I'm
> getting isn't coming from an open relay. Actually, the
> spammers usually relay through a valid mail server for their
> network that isn't an open relay on the internet, it's just
> allowing users who are behind it to go through it. I guess
> in this case my best bet would be to forward it to their
> admins since I can't block by originating IP...
* Chad Cranston <[EMAIL PROTECTED]> writes:
> 1. (*) text/plain ( ) text/html
^
Turn this off. It only makes your mail 5x as big without adding anything.
> I'm having problems w/ vpasswd the binary file for vpasswd (to change
> the password of a vpopmail user) is located in /home/vpopmail/bin but
> the users are located in /home/vpopmail/domains/foo.com how can i use
> the vpopmail and vadduser ??
As described in the documentation residing under /home/vpopmail/doc:
vadduser [email address] [password] [-a] [-q hard quota in bytes]
> .... it does not specify any syntax i need to add users and change
> password for vpop users from console.
http://www.inter7.com/qmailadmin/ -> man w3m?
--
Robin S. Socha <http://socha.net/>
Actually, no. The problem is that his E-mail client (Outlook Express) has
the option of sending BOTH plain and html versions of the message and is
sending them encoded as seperate MIME segments. Netscape Messenger also
supports this, but IMHO, its an incorrect reading of how MIME should be used.
"Robin S. Socha" wrote:
> * Chad Cranston <[EMAIL PROTECTED]> writes:
> > 1. (*) text/plain ( ) text/html
> ^
> Turn this off. It only makes your mail 5x as big without adding anything.
Hi,
I have been using Qmail on Linux for a while. All the mail I send from
Linux seem to get delivered to the destination SMTP server. On my local LAN
I do have non-Linux systems. When I point the email clients the Linux system
as the SMTP server, I am getting the following message:
"An error occured while sending mail: SMTP server error
The server responded
(null)
Contact your mail administrator for assistance"
It looks like qmail-smtpd is dropping the connection. Do I have to make any changes
to the tcp.smtp file? I have had the private LAN subnet in the tcp.smtp file.
127.0.0.1:allow,RELAYCLIENT=""
192.168.2.:allow,RELAYCLIENT=""
:allow
Is there anything else that I am missing? I would like to use one local SMTP server
for the Windows and OS/2 systems.
Thank you in advance for any help.
--
Subba Rao
[EMAIL PROTECTED]
http://pws.prserv.net/truemax/
=> Time is relative. Here is a new way to look at time. <=
http://www.smcinnovations.com
hi,
try a telnet to port 25 of your linuxbox from a m$-client. if you get a connection
type HELO DUDE and CR. you should see an answer
from your qmail server. if not, it may be possible, that your tcp-server is not
listening at the local device.
IMHO tcp.smtp is responsible for relaying and therefor the errormessage should be a
deferral and not a null.
and, btw what about reverse nameloockup (there my be a timeout). you may try the -R
flag for tcpserver.
hope that helps
;) alexander
> -----Original Message-----
> From: Subba Rao [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, August 01, 2000 9:09 PM
> To: Qmail Users
> Subject: Qmail and non-Linux clients
>
>
>
> Hi,
>
> I have been using Qmail on Linux for a while. All the mail I send from
> Linux seem to get delivered to the destination SMTP server. On my local LAN
> I do have non-Linux systems. When I point the email clients the Linux system
> as the SMTP server, I am getting the following message:
>
> "An error occured while sending mail: SMTP server error
> The server responded
> (null)
> Contact your mail administrator for assistance"
>
> It looks like qmail-smtpd is dropping the connection. Do I have to make any changes
> to the tcp.smtp file? I have had the private LAN subnet in the tcp.smtp file.
>
> 127.0.0.1:allow,RELAYCLIENT=""
> 192.168.2.:allow,RELAYCLIENT=""
> :allow
>
> Is there anything else that I am missing? I would like to use one local SMTP server
> for the Windows and OS/2 systems.
>
> Thank you in advance for any help.
> --
>
> Subba Rao
> [EMAIL PROTECTED]
> http://pws.prserv.net/truemax/
>
> => Time is relative. Here is a new way to look at time. <=
> http://www.smcinnovations.com
>
When the mail goes out from any of my systems on the LAN, I would like to
hide the IP addresses and possibly the host names(don't know if the later is
possible).
What Qmail files do I need to look at to hide IP address information in the
headers?
--
Subba Rao
[EMAIL PROTECTED]
http://pws.prserv.net/truemax/
=> Time is relative. Here is a new way to look at time. <=
http://www.smcinnovations.com
On 01-Aug-2000, Michael T. Babcock wrote:
> "Robin S. Socha" wrote:
> > * Chad Cranston <[EMAIL PROTECTED]> writes:
> > > 1. (*) text/plain ( ) text/html
> > ^
> > Turn this off. It only makes your mail 5x as big without adding anything.
>
> Actually, no. The problem is that his E-mail client (Outlook Express) has
> the option of sending BOTH plain and html versions of the message
> [...]
Which is the point. Sending both versions doubles (at least) the size
but not the amount of information.
Ronny
On Tue, Aug 01, 2000 at 05:34:36PM +1200, Chris, the Young One wrote:
> On Mon, Jul 31, 2000 at 11:12:54PM -0400, Vincent Danen wrote:
> ! In /etc/passwd I have this:
> !
> ! alias:x:400:401::/var/qmail/alias:/bin/true
>
> Can you please run qmail-showctl and list the output of the line
> ``user ids''. The first number shown has to be 400, in your case.
>
> Also, type ``ls -dln /var/qmail/alias'' and make sure it says 400
> in the third field.
All of the info is below...
qmail home directory: /var/qmail.
user-ext delimiter: -.
paternalism (in decimal): 2.
silent concurrency limit: 120.
subdirectory split: 23.
user ids: 400, 401, 402, 0, 403, 404, 405, 406.
group ids: 401, 400.
badmailfrom: (Default.) Any MAIL FROM is allowed.
bouncefrom: (Default.) Bounce user name is MAILER-DAEMON.
bouncehost: (Default.) Bounce host name is slave.danen.net.
concurrencylocal: (Default.) Local concurrency is 10.
concurrencyremote: (Default.) Remote concurrency is 20.
databytes: (Default.) SMTP DATA limit is 0 bytes.
defaultdomain: Default domain name is danen.net.
defaulthost: (Default.) Default host name is slave.danen.net.
doublebouncehost: (Default.) 2B recipient host: slave.danen.net.
doublebounceto: (Default.) 2B recipient user: postmaster.
envnoathost: (Default.) Presumed domain name is slave.danen.net.
helohost: (Default.) SMTP client HELO host name is slave.danen.net.
idhost: (Default.) Message-ID host name is slave.danen.net.
localiphost: (Default.) Local IP address becomes slave.danen.net.
locals:
Messages for slave.danen.net are delivered locally.
Messages for pellaria.com are delivered locally.
me: My name is slave.danen.net.
percenthack: (Default.) The percent hack is not allowed.
plusdomain: Plus domain name is danen.net.
qmqpservers: (Default.) No QMQP servers.
queuelifetime: (Default.) Message lifetime in the queue is 604800 seconds.
rcpthosts:
SMTP clients may send messages to recipients at slave.danen.net.
SMTP clients may send messages to recipients at pellaria.com.
morercpthosts: (Default.) No effect.
morercpthosts.cdb: (Default.) No effect.
smtpgreeting: (Default.) SMTP greeting: 220 slave.danen.net.
smtproutes: (Default.) No artificial SMTP routes.
timeoutconnect: (Default.) SMTP client connection timeout is 60 seconds.
timeoutremote: (Default.) SMTP client data timeout is 1200 seconds.
timeoutsmtpd: (Default.) SMTP server data timeout is 1200 seconds.
virtualdomains: (Default.) No virtual domains.
defaultdelivery: I have no idea what this file does.
aliasempty: I have no idea what this file does.
This is the output of ls -dln...
drwxr-sr-x 2 400 400 163 Jul 30 17:50 /var/qmail/alias/
Could this be it? It's owned by alias.qmail, maybe it should be
alias.nofiles? I'm guessing because the files in alias/ are owned by
alias.nofiles.
/etc/passwd:
alias:x:400:401::/var/qmail/alias:/bin/true
qmaild:x:401:401::/var/qmail:/bin/true
qmaill:x:402:401::/var/qmail:/bin/true
qmailp:x:403:401::/var/qmail:/bin/true
qmailq:x:404:400::/var/qmail:/bin/true
qmailr:x:405:400::/var/qmail:/bin/true
qmails:x:406:400::/var/qmail:/bin/true
/etc/group:
qmail:x:400:
nofiles:x:401:
--
[EMAIL PROTECTED], OpenPGP key available on www.keyserver.net
Freezer Burn BBS: telnet://bbs.freezer-burn.org . ICQ: 54924721
Webmaster for the Linux Portal Site Freezer Burn: http://www.freezer-burn.org
Current Linux uptime: 2 days 20 hours 47 minutes.
Ok, I fixed it. It now just rotates the serverindex.pos[] by a random
amount, and then loops through until it finds a good server. rand() is still
seeded with milliseconds from the system clock. I used memcpy() to move the
array around instead of loops to make it more efficient.
Would it be possible to run qmqpc as some sort of daemon? Then it could
have memory of which server it contacted last and make sure it went to the
next one, instead of having the chance of picking the same one again.
Jay
#include <sys/types.h>
#include <string.h>
#include <memory.h>
#include <sys/socket.h>
#include <stddef.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <sys/time.h>
#include <sys/timeb.h>
#include "substdio.h"
#include "getln.h"
#include "readwrite.h"
#include "exit.h"
#include "stralloc.h"
#include "slurpclose.h"
#include "error.h"
#include "sig.h"
#include "ip.h"
#include "timeoutconn.h"
#include "timeoutread.h"
#include "timeoutwrite.h"
#include "auto_qmail.h"
#include "control.h"
#include "fmt.h"
#define PORT_QMQP 628
void die_success() { _exit(0); }
void die_perm() { _exit(31); }
void nomem() { _exit(51); }
void die_read() { if (errno == error_nomem) nomem(); _exit(54); }
void die_control() { _exit(55); }
void die_socket() { _exit(56); }
void die_home() { _exit(61); }
void die_temp() { _exit(71); }
void die_conn() { _exit(74); }
void die_format() { _exit(91); }
int lasterror = 55;
int qmqpfd;
int saferead(fd,buf,len) int fd; char *buf; int len;
{
int r;
r = timeoutread(60,qmqpfd,buf,len);
if (r <= 0) die_conn();
return r;
}
int safewrite(fd,buf,len) int fd; char *buf; int len;
{
int r;
r = timeoutwrite(60,qmqpfd,buf,len);
if (r <= 0) die_conn();
return r;
}
char buf[1024];
substdio to = SUBSTDIO_FDBUF(safewrite,-1,buf,sizeof buf);
substdio from = SUBSTDIO_FDBUF(saferead,-1,buf,sizeof buf);
substdio envelope = SUBSTDIO_FDBUF(read,1,buf,sizeof buf);
/* WARNING: can use only one of these at a time! */
stralloc beforemessage = {0};
stralloc message = {0};
stralloc aftermessage = {0};
char strnum[FMT_ULONG];
stralloc line = {0};
struct sindex
{
int pos[256];
int len;
};
void getmess()
{
int match;
if (slurpclose(0,&message,1024) == -1) die_read();
strnum[fmt_ulong(strnum,(unsigned long) message.len)] = 0;
if (!stralloc_copys(&beforemessage,strnum)) nomem();
if (!stralloc_cats(&beforemessage,":")) nomem();
if (!stralloc_copys(&aftermessage,",")) nomem();
if (getln(&envelope,&line,&match,'\0') == -1) die_read();
if (!match) die_format();
if (line.len < 2) die_format();
if (line.s[0] != 'F') die_format();
strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
if (!stralloc_cats(&aftermessage,strnum)) nomem();
if (!stralloc_cats(&aftermessage,":")) nomem();
if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
if (!stralloc_cats(&aftermessage,",")) nomem();
for (;;) {
if (getln(&envelope,&line,&match,'\0') == -1) die_read();
if (!match) die_format();
if (line.len < 2) break;
if (line.s[0] != 'T') die_format();
strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
if (!stralloc_cats(&aftermessage,strnum)) nomem();
if (!stralloc_cats(&aftermessage,":")) nomem();
if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
if (!stralloc_cats(&aftermessage,",")) nomem();
}
}
void doit(server)
char *server;
{
struct ip_address ip;
char ch;
if (!ip_scan(server,&ip)) return;
qmqpfd = socket(AF_INET,SOCK_STREAM,0);
if (qmqpfd == -1) die_socket();
if (timeoutconn(qmqpfd,&ip,PORT_QMQP,10) != 0) {
lasterror = 73;
if (errno == error_timeout) lasterror = 72;
close(qmqpfd);
return;
}
strnum[fmt_ulong(strnum,(unsigned long) (beforemessage.len + message.len +
aftermessage.len))] = 0;
substdio_puts(&to,strnum);
substdio_puts(&to,":");
substdio_put(&to,beforemessage.s,beforemessage.len);
substdio_put(&to,message.s,message.len);
substdio_put(&to,aftermessage.s,aftermessage.len);
substdio_puts(&to,",");
substdio_flush(&to);
for (;;) {
substdio_get(&from,&ch,1);
if (ch == 'K') die_success();
if (ch == 'Z') die_temp();
if (ch == 'D') die_perm();
}
}
stralloc servers = {0};
main()
{
int i;
int j;
int randj;
int randarr[256];
struct timeb tp;
struct sindex serverindex;
sig_pipeignore();
if (chdir(auto_qmail) == -1) die_home();
if (control_init() == -1) die_control();
if (control_readfile(&servers,"control/qmqpservers",0) != 1)
die_control();
getmess();
serverindex.len = 1;
serverindex.pos[0]=0;
for (j = 0; j < servers.len; j++)
{
if (servers.s[j] == NULL) {
serverindex.pos[serverindex.len] = j+1;
serverindex.len++;
}
}
serverindex.len--;
ftime(&tp);
srand(tp.millitm);
randj = (serverindex.len*1.0)*rand()/(RAND_MAX+1.0);
memcpy(randarr, serverindex.pos + randj, 4 * (serverindex.len - randj));
memcpy(randarr + (serverindex.len-randj), serverindex.pos, (randj) * 4);
for (j=0; j < serverindex.len; j++)
{
doit(servers.s + randarr[j]);
}
_exit(lasterror);
}
Jay,
If I understand this correctly, then I think there is a flaw in this type
of random round robin. I think I can best describe it with an example.
Assume you have 4 servers A, B, C, D, and that server C is down. When your
random seed hits server A, B or D (with probability 1/4, respectively) the
message will go through fine. When your random seeds hits server C (again
with p=1/4), you will realize that it is down and proceed to D. So in
effect you will hit servers A and B with probability 1/4 each, and server D
with probability 1/2. This is not very good load balancing, because
basically the load of the server that's down is inherited by the next
server, which is not what you set out to accomplish.
With simple, non-random round-robin, when ever you hit server C, you will
skip it and go to server D. The next message will go to server A, the next
to B, etc... Thus, the probability of hitting server D is 1/3 (as well as A
and B).
All this rests on my interpretation of what you have done, since I am not
familiar with the code.
JES
Austad, Jay writes:
> Ok, I fixed it. It now just rotates the serverindex.pos[] by a random
> amount, and then loops through until it finds a good server. rand() is still
> seeded with milliseconds from the system clock. I used memcpy() to move the
> array around instead of loops to make it more efficient.
>
> Would it be possible to run qmqpc as some sort of daemon? Then it could
> have memory of which server it contacted last and make sure it went to the
> next one, instead of having the chance of picking the same one again.
>
> Jay
>
>
>
> #include <sys/types.h>
> #include <string.h>
> #include <memory.h>
> #include <sys/socket.h>
> #include <stddef.h>
> #include <netinet/in.h>
> #include <arpa/inet.h>
> #include <stdlib.h>
> #include <sys/time.h>
> #include <sys/timeb.h>
> #include "substdio.h"
> #include "getln.h"
> #include "readwrite.h"
> #include "exit.h"
> #include "stralloc.h"
> #include "slurpclose.h"
> #include "error.h"
> #include "sig.h"
> #include "ip.h"
> #include "timeoutconn.h"
> #include "timeoutread.h"
> #include "timeoutwrite.h"
> #include "auto_qmail.h"
> #include "control.h"
> #include "fmt.h"
>
> #define PORT_QMQP 628
>
> void die_success() { _exit(0); }
> void die_perm() { _exit(31); }
> void nomem() { _exit(51); }
> void die_read() { if (errno == error_nomem) nomem(); _exit(54); }
> void die_control() { _exit(55); }
> void die_socket() { _exit(56); }
> void die_home() { _exit(61); }
> void die_temp() { _exit(71); }
> void die_conn() { _exit(74); }
> void die_format() { _exit(91); }
>
> int lasterror = 55;
> int qmqpfd;
>
> int saferead(fd,buf,len) int fd; char *buf; int len;
> {
> int r;
> r = timeoutread(60,qmqpfd,buf,len);
> if (r <= 0) die_conn();
> return r;
> }
> int safewrite(fd,buf,len) int fd; char *buf; int len;
> {
> int r;
> r = timeoutwrite(60,qmqpfd,buf,len);
> if (r <= 0) die_conn();
> return r;
> }
>
> char buf[1024];
> substdio to = SUBSTDIO_FDBUF(safewrite,-1,buf,sizeof buf);
> substdio from = SUBSTDIO_FDBUF(saferead,-1,buf,sizeof buf);
> substdio envelope = SUBSTDIO_FDBUF(read,1,buf,sizeof buf);
> /* WARNING: can use only one of these at a time! */
>
> stralloc beforemessage = {0};
> stralloc message = {0};
> stralloc aftermessage = {0};
>
> char strnum[FMT_ULONG];
> stralloc line = {0};
>
> struct sindex
> {
> int pos[256];
> int len;
> };
>
> void getmess()
> {
> int match;
>
> if (slurpclose(0,&message,1024) == -1) die_read();
>
> strnum[fmt_ulong(strnum,(unsigned long) message.len)] = 0;
> if (!stralloc_copys(&beforemessage,strnum)) nomem();
> if (!stralloc_cats(&beforemessage,":")) nomem();
> if (!stralloc_copys(&aftermessage,",")) nomem();
>
> if (getln(&envelope,&line,&match,'\0') == -1) die_read();
> if (!match) die_format();
> if (line.len < 2) die_format();
> if (line.s[0] != 'F') die_format();
>
> strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
> if (!stralloc_cats(&aftermessage,strnum)) nomem();
> if (!stralloc_cats(&aftermessage,":")) nomem();
> if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
> if (!stralloc_cats(&aftermessage,",")) nomem();
>
> for (;;) {
> if (getln(&envelope,&line,&match,'\0') == -1) die_read();
> if (!match) die_format();
> if (line.len < 2) break;
> if (line.s[0] != 'T') die_format();
>
> strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
> if (!stralloc_cats(&aftermessage,strnum)) nomem();
> if (!stralloc_cats(&aftermessage,":")) nomem();
> if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
> if (!stralloc_cats(&aftermessage,",")) nomem();
> }
> }
>
> void doit(server)
> char *server;
> {
> struct ip_address ip;
> char ch;
>
> if (!ip_scan(server,&ip)) return;
>
> qmqpfd = socket(AF_INET,SOCK_STREAM,0);
> if (qmqpfd == -1) die_socket();
>
> if (timeoutconn(qmqpfd,&ip,PORT_QMQP,10) != 0) {
> lasterror = 73;
> if (errno == error_timeout) lasterror = 72;
> close(qmqpfd);
> return;
> }
>
> strnum[fmt_ulong(strnum,(unsigned long) (beforemessage.len + message.len +
> aftermessage.len))] = 0;
> substdio_puts(&to,strnum);
> substdio_puts(&to,":");
> substdio_put(&to,beforemessage.s,beforemessage.len);
> substdio_put(&to,message.s,message.len);
> substdio_put(&to,aftermessage.s,aftermessage.len);
> substdio_puts(&to,",");
> substdio_flush(&to);
>
> for (;;) {
> substdio_get(&from,&ch,1);
> if (ch == 'K') die_success();
> if (ch == 'Z') die_temp();
> if (ch == 'D') die_perm();
> }
> }
>
> stralloc servers = {0};
>
> main()
> {
> int i;
> int j;
> int randj;
> int randarr[256];
> struct timeb tp;
> struct sindex serverindex;
>
> sig_pipeignore();
>
> if (chdir(auto_qmail) == -1) die_home();
> if (control_init() == -1) die_control();
> if (control_readfile(&servers,"control/qmqpservers",0) != 1)
> die_control();
>
> getmess();
> serverindex.len = 1;
> serverindex.pos[0]=0;
> for (j = 0; j < servers.len; j++)
> {
> if (servers.s[j] == NULL) {
> serverindex.pos[serverindex.len] = j+1;
> serverindex.len++;
> }
> }
> serverindex.len--;
> ftime(&tp);
> srand(tp.millitm);
> randj = (serverindex.len*1.0)*rand()/(RAND_MAX+1.0);
>
> memcpy(randarr, serverindex.pos + randj, 4 * (serverindex.len - randj));
> memcpy(randarr + (serverindex.len-randj), serverindex.pos, (randj) * 4);
>
> for (j=0; j < serverindex.len; j++)
> {
> doit(servers.s + randarr[j]);
> }
>
>
> _exit(lasterror);
> }
>
You are correct. However, since qmail-qmqpc does not continually run, it is
not possible to do a non-random round robin (as far as I know). If qmqpc
could be turned into a process that ran continuously, it would be possible
to do regular round-robin and there would be no need for the random stuff at
all, this may also increase performance because it wouldn't have to read
/var/qmail/control/qmqpservers every time it started. I haven't looked at
it, but does qmail-inject work by just piping it's data into qmail-queue
(qmail-queue is a link to qmail-qmqpc in a mini-qmail setup)? If so,
couldn't qmail-queue be turned into a named pipe, and qmqpc could be
modified slightly to continously run and wait for input on that named pipe?
Just a random thought. Of course, I'm not a programmer and I may not have
any idea what the hell I'm talking about. :)
This approach that I'm using obviously isn't going to spread the load
between servers exactly evenly, but it should be close enough when mailing
large amounts of mail, unless one qmqp server dies. However, our qmqp
servers have port 628 for QMQP monitored closely and I'll get paged within a
couple of minutes if it goes down, so I'm not too worried about it. I guess
I could redo it so instead of just rotating the array by a random number, it
would shuffle it it randomly. That would keep it from banging on the server
immediately after the dead one, and give everything an even chance again.
Jay
-----Original Message-----
From: JuanE [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, August 01, 2000 6:57 PM
To: [EMAIL PROTECTED]
Subject: Re: updated load balancing qmail-qmqpc.c mods
Jay,
If I understand this correctly, then I think there is a flaw in this type
of random round robin. I think I can best describe it with an example.
Assume you have 4 servers A, B, C, D, and that server C is down. When your
random seed hits server A, B or D (with probability 1/4, respectively) the
message will go through fine. When your random seeds hits server C (again
with p=1/4), you will realize that it is down and proceed to D. So in
effect you will hit servers A and B with probability 1/4 each, and server D
with probability 1/2. This is not very good load balancing, because
basically the load of the server that's down is inherited by the next
server, which is not what you set out to accomplish.
With simple, non-random round-robin, when ever you hit server C, you will
skip it and go to server D. The next message will go to server A, the next
to B, etc... Thus, the probability of hitting server D is 1/3 (as well as A
and B).
All this rests on my interpretation of what you have done, since I am not
familiar with the code.
JES
Austad, Jay writes:
> Ok, I fixed it. It now just rotates the serverindex.pos[] by a random
> amount, and then loops through until it finds a good server. rand() is
still
> seeded with milliseconds from the system clock. I used memcpy() to move
the
> array around instead of loops to make it more efficient.
>
> Would it be possible to run qmqpc as some sort of daemon? Then it could
> have memory of which server it contacted last and make sure it went to the
> next one, instead of having the chance of picking the same one again.
>
> Jay
>
>
>
> #include <sys/types.h>
> #include <string.h>
> #include <memory.h>
> #include <sys/socket.h>
> #include <stddef.h>
> #include <netinet/in.h>
> #include <arpa/inet.h>
> #include <stdlib.h>
> #include <sys/time.h>
> #include <sys/timeb.h>
> #include "substdio.h"
> #include "getln.h"
> #include "readwrite.h"
> #include "exit.h"
> #include "stralloc.h"
> #include "slurpclose.h"
> #include "error.h"
> #include "sig.h"
> #include "ip.h"
> #include "timeoutconn.h"
> #include "timeoutread.h"
> #include "timeoutwrite.h"
> #include "auto_qmail.h"
> #include "control.h"
> #include "fmt.h"
>
> #define PORT_QMQP 628
>
> void die_success() { _exit(0); }
> void die_perm() { _exit(31); }
> void nomem() { _exit(51); }
> void die_read() { if (errno == error_nomem) nomem(); _exit(54); }
> void die_control() { _exit(55); }
> void die_socket() { _exit(56); }
> void die_home() { _exit(61); }
> void die_temp() { _exit(71); }
> void die_conn() { _exit(74); }
> void die_format() { _exit(91); }
>
> int lasterror = 55;
> int qmqpfd;
>
> int saferead(fd,buf,len) int fd; char *buf; int len;
> {
> int r;
> r = timeoutread(60,qmqpfd,buf,len);
> if (r <= 0) die_conn();
> return r;
> }
> int safewrite(fd,buf,len) int fd; char *buf; int len;
> {
> int r;
> r = timeoutwrite(60,qmqpfd,buf,len);
> if (r <= 0) die_conn();
> return r;
> }
>
> char buf[1024];
> substdio to = SUBSTDIO_FDBUF(safewrite,-1,buf,sizeof buf);
> substdio from = SUBSTDIO_FDBUF(saferead,-1,buf,sizeof buf);
> substdio envelope = SUBSTDIO_FDBUF(read,1,buf,sizeof buf);
> /* WARNING: can use only one of these at a time! */
>
> stralloc beforemessage = {0};
> stralloc message = {0};
> stralloc aftermessage = {0};
>
> char strnum[FMT_ULONG];
> stralloc line = {0};
>
> struct sindex
> {
> int pos[256];
> int len;
> };
>
> void getmess()
> {
> int match;
>
> if (slurpclose(0,&message,1024) == -1) die_read();
>
> strnum[fmt_ulong(strnum,(unsigned long) message.len)] = 0;
> if (!stralloc_copys(&beforemessage,strnum)) nomem();
> if (!stralloc_cats(&beforemessage,":")) nomem();
> if (!stralloc_copys(&aftermessage,",")) nomem();
>
> if (getln(&envelope,&line,&match,'\0') == -1) die_read();
> if (!match) die_format();
> if (line.len < 2) die_format();
> if (line.s[0] != 'F') die_format();
>
> strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
> if (!stralloc_cats(&aftermessage,strnum)) nomem();
> if (!stralloc_cats(&aftermessage,":")) nomem();
> if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
> if (!stralloc_cats(&aftermessage,",")) nomem();
>
> for (;;) {
> if (getln(&envelope,&line,&match,'\0') == -1) die_read();
> if (!match) die_format();
> if (line.len < 2) break;
> if (line.s[0] != 'T') die_format();
>
> strnum[fmt_ulong(strnum,(unsigned long) line.len - 2)] = 0;
> if (!stralloc_cats(&aftermessage,strnum)) nomem();
> if (!stralloc_cats(&aftermessage,":")) nomem();
> if (!stralloc_catb(&aftermessage,line.s + 1,line.len - 2)) nomem();
> if (!stralloc_cats(&aftermessage,",")) nomem();
> }
> }
>
> void doit(server)
> char *server;
> {
> struct ip_address ip;
> char ch;
>
> if (!ip_scan(server,&ip)) return;
>
> qmqpfd = socket(AF_INET,SOCK_STREAM,0);
> if (qmqpfd == -1) die_socket();
>
> if (timeoutconn(qmqpfd,&ip,PORT_QMQP,10) != 0) {
> lasterror = 73;
> if (errno == error_timeout) lasterror = 72;
> close(qmqpfd);
> return;
> }
>
> strnum[fmt_ulong(strnum,(unsigned long) (beforemessage.len + message.len
+
> aftermessage.len))] = 0;
> substdio_puts(&to,strnum);
> substdio_puts(&to,":");
> substdio_put(&to,beforemessage.s,beforemessage.len);
> substdio_put(&to,message.s,message.len);
> substdio_put(&to,aftermessage.s,aftermessage.len);
> substdio_puts(&to,",");
> substdio_flush(&to);
>
> for (;;) {
> substdio_get(&from,&ch,1);
> if (ch == 'K') die_success();
> if (ch == 'Z') die_temp();
> if (ch == 'D') die_perm();
> }
> }
>
> stralloc servers = {0};
>
> main()
> {
> int i;
> int j;
> int randj;
> int randarr[256];
> struct timeb tp;
> struct sindex serverindex;
>
> sig_pipeignore();
>
> if (chdir(auto_qmail) == -1) die_home();
> if (control_init() == -1) die_control();
> if (control_readfile(&servers,"control/qmqpservers",0) != 1)
> die_control();
>
> getmess();
> serverindex.len = 1;
> serverindex.pos[0]=0;
> for (j = 0; j < servers.len; j++)
> {
> if (servers.s[j] == NULL) {
> serverindex.pos[serverindex.len] = j+1;
> serverindex.len++;
> }
> }
> serverindex.len--;
> ftime(&tp);
> srand(tp.millitm);
> randj = (serverindex.len*1.0)*rand()/(RAND_MAX+1.0);
>
> memcpy(randarr, serverindex.pos + randj, 4 * (serverindex.len - randj));
> memcpy(randarr + (serverindex.len-randj), serverindex.pos, (randj) * 4);
>
> for (j=0; j < serverindex.len; j++)
> {
> doit(servers.s + randarr[j]);
> }
>
>
> _exit(lasterror);
> }
>
"Austad, Jay" <[EMAIL PROTECTED]> writes:
> From: JuanE [mailto:[EMAIL PROTECTED]]
>> Assume you have 4 servers A, B, C, D, and that server C is down. When your
>> random seed hits server A, B or D (with probability 1/4, respectively) the
>> message will go through fine. When your random seeds hits server C (again
>> with p=1/4), you will realize that it is down and proceed to D. So in
>> effect you will hit servers A and B with probability 1/4 each, and server D
>> with probability 1/2. This is not very good load balancing, because
> You are correct. However, since qmail-qmqpc does not continually run, it is
> not possible to do a non-random round robin (as far as I know).
Choose a permutation of the server list at random. Then step through
this list until you hit a good server or exhaust the list.
1. A B C D
2. A B D C
3. A C B D
4. A C D B
....
24. D C B A
If your random number is 4, you try A, then C, then D and finally B.
If the number of servers is reasonably small, say up to 7, you could
enumerate all permutations as a static array in the code and then use
a random index into the array to determine the order. Generating a
random permutation algorithmically is not too easy. You can either
approximate by shuffling or make a direct choice using some bignum
arithmetic described in "Permutation Generation Methods", Robert
Sedgewick, Computing Surveys, Vol. 9, No. 2, June 1997.
--
Frank Cringle, [EMAIL PROTECTED]
voice: (+49 2304) 467101; fax: 943357
Im setting a mailing list system that will require
a VERY good
performance. After search for a lot of options, Ive decided to use
qmail
because I think it is the most quick and configurable MTA.
Im wondering what can I change to improve the performance
of my
mailing list, I already read the documentation and found a lot of thinks
like the number of paralell proccess and other things.
I really need a great performance in this mailing
list, so I would
like to know some tips and the best mailing list manager to use. I
would
like to know also some statistics of performance in mailing list using
qmail....
Best Regards,
--
_________________________
Fernando Costa de Almeida
ICQ - 72293951
Sorry about the subject of my last mesg, this was a copy and
paste!!!!
:-)
--
_________________________
Fernando Costa de Almeida
ICQ - 72293951
I setup qmail on a small dialup machine. All local mail is delivered normally and mail
to the internet is relayed to smtp.my.provider.com.
My smtproutes contains the line
:smtp.my.provider.com
The problem is, that the smtp server of my provider checks the From address (or the
domain part of it?). My hostname is myhost.local. Local mail is delivered as
[EMAIL PROTECTED] as it should be. But mail, which is relayed to smtp.my.provider.com
is delivered as [EMAIL PROTECTED], too. I get the following errors in syslog:
delivery 23: failure:
Connected_to_smtp.my.provider.com_but_sender_was_rejected./Remote_host_said:_501_Sorry,_<[EMAIL PROTECTED]>_not_authorized./
Is there a way, how I could change the From-address from [EMAIL PROTECTED] to
[EMAIL PROTECTED]? The From-address should only be changed for mail to the
internet. Local mail should still be delivered as [EMAIL PROTECTED]
Thanks in advance,
Moritz
_______________________________________________________________________
1.000.000 DM gewinnen - kostenlos tippen - http://millionenklick.web.de
[EMAIL PROTECTED], 8MB Speicher, Verschluesselung - http://freemail.web.de
* Moritz Jodeit <[EMAIL PROTECTED]> writes:
> Is there a way, how I could change the From-address from
> [EMAIL PROTECTED] to [EMAIL PROTECTED]? The From-address should
> only be changed for mail to the internet. Local mail should still be
> delivered as [EMAIL PROTECTED]
,----[ /var/qmail/doc/FAQ ]
| 2.4. How do I set up a separate queue for a SLIP/PPP link?
|
| Answer: Use serialmail (http://pobox.com/~djb/serialmail.html).
`----
Then read about masquerading.
--
Robin S. Socha <http://socha.net/>
Is there a RFC 2645 server and client that is compatible with qmail?
Thanks,
John
--
John Conover Tel. 408.370.2688 [EMAIL PROTECTED]
631 Lamont Ct. Cel. 408.772.7733
Campbell, CA 95008 Fax. 408.379.9602 http://www.johncon.com
Is there an easy way to just send to all users in a linux group, instead of
having to use an alias file....?
|
* Barry Smoke <[EMAIL PROTECTED]> writes:
> 1. (*) text/plain ( ) text/html
^ turn this off
> Is there an easy way to just send to all users in a linux group,
> instead of having to use an alias file....?
,----[ /var/qmail/doc/FAQ ]
| 4.2. How do I set up a mailing list? I'd like [EMAIL PROTECTED] to be
| forwarded to a bunch of people.
|
| Answer: Put a list of addresses into ~me/.qmail-sos, one per line. Then
| incoming mail for me-sos will be forwarded to each of those addresses.
| You should also touch ~me/.qmail-sos-owner so that bounces come back to
| you rather than the original sender.
|
| Alternative: ezmlm (http://pobox.com/~djb/ezmlm.html) is a modern
| mailing list manager, supporting automatic subscriptions, confirmations,
| archives, fully automatic bounce handling (including warnings to
| subscribers saying which messages they've missed), and more.
`----
--
Robin S. Socha <http://socha.net/>
I installed ezmlm-0.53 + ezmlm-idx-0.40 on my newly installed
RedHat Linux 6.1, as instructed in INSTALL and INSTALL.idx
files. But it wouldn't work.
I run "qmail-inject joe-testlist < mail.file" and the post did not reach
the subscribers in the list.
I run "ezmlm-send ~/testlist < mail.file" and it will cause segmentation
fault and core dump.
If I installed ezmlm-0.53 without ezmlm-idx-0.40, everything works fine.
Did I do anything wrong? Or ezmlm-idx-0.40 is unstable?
I really want the QMQP load-balancing support in ezmlm-idx-0.40.
On Wed, 2 Aug 2000, &6*B06 wrote:
> I run "ezmlm-send ~/testlist < mail.file" and it will cause
> segmentation fault and core dump.
ezmlm-send, I've found, will dump core if you don't set the SENDER
environment varible.
ezmlm-send does not distribute bounce messages: if the
environment variable SENDER is set, and is either empty or
#@[], ezmlm-send rejects the message.
I suppose it could pick a nicer way of rejecting the message, but a
coredump will definitely reject your message... ;-)
Later,
Paul
----------------------------------------------------------------------
J. Paul Reed [EMAIL PROTECTED] || web.sigkill.com/preed
If you put a gun to my head and said "Name ten great bands that have
come out in the last 5 years," you'd be wiping my brains off the wall.
-- Trent Reznor
I am trying to get qmail-smtpd-auth working but I do not think tcpserver is
passing the parameters to qmail-smtpd
The example given in the instructions is for inetd and im not sure if you
can just pass parameters at the end of the tcpserver line...
/usr/local/bin/tcpserver -x/etc/tcp.smtp.cdb -u1003 -g100 0 smtp
/var/qmail/bin/qmail-smtpd /bin/checkpassword /bin/true /bin/cmd5checkpw
/bin/true &
Basically I cannot get MS outlook to successfully authenticate and when I
telnet to port 25 I get the expected responses from the AUTH command.
The checkpassword command is working fine because pop uses it.
Tcpserver is the only difference to the instructions I have followed.
Any help would be much appreciated.
Thanks
Martin
Martin Searancke
CommSoft Group Ltd.
Level 8, CommSoft House
90 Symonds St
Auckland, New Zealand
[EMAIL PROTECTED]
+64 21 778592
On Sun, Jul 30, 2000 at 08:26:59PM +0200, Peter van Dijk wrote:
Hi Peter,
> > a script to move the larger mail into a seperate IP and then login
> > to that IP and get the bigger mail at night ?
> > or have you something else in mind.
> When you run 'maildirsmtp', that in turn runs maildirserial which runs
> tcpclient which runs serialsmtp.
> Changing maildirsmtp's operation to, for example, handling bigger messages
> in a separate thread, would only require patching/replacing maildirserial
> to spawn two tcpclient+serialsmtp's instead of one. Filtering at delivery
> seems useless to me because that would mean you spread your mail over 2
> Maildirs.
Fortunately or unfortunately I am not able to generate a patch like that.
If someone would like to help with a patch then I would like to test it
out, but writing it, that I could not do.
What I have done for the time being and it works me as a stop gap till
further things are developed.
Thanks for you tips, and please let me know what you come up with.
Jacob
Sri Lanka
------------------------------------------------------
/etc/ppp/ip-up.local.small
--------------------------
#!/bin/sh
# this script is running during Day time
# this will move large messages to the /var/qmail/alias/pppdir2 directory
find /var/qmail/alias/pppdir/ -size +30 -exec mv {} /var/qmail/alias/pppdir2/new/ \;
# This will send and recive mail the moment the ppp connection is up
# To close the ppp connection when there is no more activity.
# you put idle -25 in an option file called option.autoturn
PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin
export PATH
maildirsmtp ~alias/pppdir alias-ppp- 203.115.29.130 metta.lk
------------------------------------------------------------
/etc/ppp/ip-up.local.large
--------------------------
#!/bin/sh
# this script is run at Night.
# this will move large messages to the /var/qmail/alias/pppdir2 directory
mv /var/qmail/alias/pppdir2/new/* /var/qmail/alias/pppdir/new
# This will send and recive mail the moment the ppp connection is up
PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin
export PATH
maildirsmtp ~alias/pppdir alias-ppp- 203.115.29.130 metta.lk
--------------------------------------------------------------
/var/spool/cron/root
--------------------------
1 5 * * * cp -f /etc/ppp/ip-up.local.small /etc/ppp/ip-up.local
1 22 * * * cp -f /etc/ppp/ip-up.local.large /etc/ppp/ip-up.local
I have done something similar on the incoming server side.
My OS's are Redhat 6.0
--
A saying of the Buddha from http://metta.lk/
--------------------------------------------
Having slain mother (craving) and father (conceit) and two warrior kings (views based
on eternalism and nihilism), and having destroy a country (sense-avenues and
sense-objects) together with its revenue officer (attachment), ungrieving goes the
Brahmana (Arahant).
Random Dhammapada Verse 294
真诚的感谢您的回答,有时间到黄山来,一定三陪:吃,喝,玩.近日若有时间,能否亲自到合肥来一趟,费用一切有我们包,黄山在内.能否把编译好的qmail+mysql或改动好的qmail+mysql的原程序发给我们!
再次邀请您的光临.
|
Hi all
Our institutes mailserver was made a qmqpserver yesterday. As I
changed my workstaion to use qmqpc to queue the outgoing mails on
the mailserver I produced a mailloop. Due to the mailaddresses I
collected over time I forward all to our universities central mail
server and use fetchmail to get them to my workstation. Maildrop
sorts the mail and uses qmail as local delivery agent. At this
point it queues the mail again to the institutes mailserver and
completes the loop:
institutes server --(forward)--> central server --(fetchmail)-->
workstation --(maildrop,qmail)--> institutes server ...
How can I break that loop? My workstations FQDN is in the
control/locals.
Thanks for your help,
--
Oliver Koch Registered Linux User 163952
"Virtual" means never knowing where your next byte is coming from.
Hi,
Please can someone drop me a hint as to the method of protecting myself from
spam using the rblsmtpd?
Thanks
Slider