Matt Sergeant wrote:
Argh. I have a rather large patch that refactors logging (all log levels
become constants and you can set config/loglevel) and plugin compilation,
Oooh, oooh, I want that patch! Maybe then I will finish my log postprocess
script, so I can keep selected summary information us
Ask bjørn hansen wrote:
Also, CVS is now what I'll release as 0.27 unless something Really Bad
comes up in the next few days. Testing would be most appreciated. I am
planning to put it on my production servers thursday.
Are you interested in my SpamAssassin patch (you are missing the Unix sock
Robert Spier wrote:
I'd like those patches :) (Well, at least the SA one)
I sent them to Ask already, so he can integrate them into the 0.27 official
release. I'd rather let him do that so the number of divergent versions was
minimized (I'll probably throw out my personal version when I see
Show of hands: how many people are using PPerl with qpsmtpd?
I recently has some arguments with my server when I updated one of the core lib/
files and couldn't get the stupid thing to use the new file. It turns out I
forgot to restart the PPerl session (`svc -t .' wasn't sufficient). It was
Matt Sergeant wrote:
I pay [*] for a business DSL line (static IP, 20:1 contention, etc). I've
faxed my provider 3 times to try and get them to delegate rDNS to me and
they've done nothing. I've now given up. SPF is a more complete solution
to the problem that rDNS based blocking is trying to solv
David Nicol wrote:
another legend: when IIS expoloits were still simple, someone published
a web server configuration that would recognize a common exploit and
respond by re-exploiting the implied vulnerability on the infected
machine to shut it down.
I have seen some suggested Apache configurati
Bryan Scott wrote:
On another note, with all these worms and trojans going around, I've
seriously considered blocking outbound SMTP on our network and
And that's just the thing. We're both. Most of our residential users
are power-user types that like to run servers and stuff at home, or VPN
Tim Meadowcroft wrote:
Erm, I'd tell my cable provider precisely where to stick it they did that and
yeah, I wouldn't complain too much, I'd just switch to someone else.
Don't worry! I'm not worried that cable providers as a whole will clean up
their act any time soon! ;~0
Oh, look, it appea
[EMAIL PROTECTED] wrote:
if ( ($self->{_args}->{spamd_socket}) && ($self->{_args}->{spamd_socket} =~
/^([\w\/.]+)$/) ) { # connect to Unix Domain Socket
which seems to have worked.
Just wondering if this was useful to anyone else, I would contact the maintainer
of the plugin, but there is no hint
electively exempted
at other stages by plugins testing for a 'whitelisthost' connection note.
=head1 AUTHOR
Based on the 'whitelist_soft' plugin by Gavin Carr <[EMAIL PROTECTED]>,
based on the 'whitelist' plugin by Devin Carraway <[EMAIL PROTECTED]>.
John Peac
I've decided I need to get SMTP AUTH working, so I am going to take a stab at
it. I've looked at what has been posted already and I think I am going to take
a slightly different tack to implementing it.
Since SMTP AUTH is an extension to the SMTP protocol itself, and qpsmtpd
specifically claim
Mark Powell wrote:
I presume it's not going to be too awkward to change the authentication
method when you've finished? We use LDAP for authenication here as do more
and more sites.
My initial goal is to embed the AUTH transaction itself in the core qpsmtpd
modules and then provide only a couple o
Matt Sergeant wrote:
Is SMTP AUTH an ESMTP extension? If so it might be nice to be able to
make these things plugable.
Unless I am very much mistaken, I can add the protocol handling code to the
core, but not deploy it unless someone enables a saslauth module (i.e. qpsmtpd
won't advertise the ca
Can I get a show of hands for how people are running qpsmtpd? Specifically:
1) tcpserver running
a) ./qpsmtpd directly
b) qpsmtpd-server
2) [x]inetd
3) qpsmtpd-forkserver
4) Any of the above using of pperl or SpeedyCGI?
5) Version 0.27.1? Anyone running CVS HEAD in production?
6) What is yo
Nick Leverton wrote:
I'm running it on pperl with tcpserver, and I wouldn't recommend pperl.
That's odd, since I am running the same way, yet I don't have problems
(usually). Can you tell if the service is restarting? Are you being very
generous with RAM through softlimit?
Here's my modified r
Henry Baragar wrote:
Have you considered Binc IMAP (http://www.bincimap.org/)?
I'm pretty far along in the process (I hadn't heard of bincimap before). I
haven't really had a problem with courier/vpopmail in the testing I've done with
another domain (my synagogue), so I don't have strong reaso
John Peacock wrote:
Can I get a show of hands for how people are running qpsmtpd?
Specifically:
I suppose I should answer my own question... ;)
1) tcpserver running
a) ./qpsmtpd directly
qpsmtpd with pperl (on a Cobalt RaQ3!).
b) qpsmtpd-server
2) [x]inetd
3) qpsmtpd-forkserver
4) Any of
James Craig Burley wrote:
(At least, I wouldn't describe DNS as "decentralized"; it's more like
a distributed data base with some degree of local control over
portions of the data base that provide local information to all users
of the data base.)
Except that DNS _is_ decentralized in the very real
James Craig Burley wrote:
Do the local caches depend on locality of reference to achieve high
hit rates?
If so, can you be *sure* that all SPF lookups for incoming emails will
exhibit sufficient locality of reference to ensure those hit rates
remain high?
You are looking at DNS from the "consumer"
James Craig Burley wrote:
So, SPF queries involve only second-level (or higher) domain names??
Yes, but not for the reason you are thinking of. I'm just saying that
*all* [non-reverse] DNS queries should terminate after typically 3
queries, which corresponds to second level domains:
ROO
James Craig Burley wrote:
Going back to my earlier questions, which I'll rephrase and ask you:
Does DNS rely on local caching to avoid latencies related to network
topology and potential problems with overloaded or unreachable Root
servers?
Your question is based on a false premise. You seem
Eric Smoker wrote:
Does anyone have a plugin that will deny by IP Address or block of
addresses?
I use dnsbl with a private blacklist.
HTH
John
Jens Benecke wrote:
Speaking about that, what about SMTP AUTH?
I absolutely need SMTP AUTH with authentication via vpopmail/vchkpw.
I'm actually trying to make some time this week to work on it. There were a
couple of initial patches posted to the list a while ago (use the newsgroup
interface t
All -
I've had some time to play with this and I am making some progress.
I've made some preliminary design decisions, which I thought I would
post to the list so I'm not wandering in the desert by myself.
1) the AUTH command is only permitted if someone registers at least one
AUTH hook (and th
OK, here's a first [mostly working] pass at the architecture changes to
enable AUTH processing. I tried to make it as simple as possible to
write the plugins, with the meat in lib/Qpsmtpd/Auth.pm and the enabling
features in lib/Qpsmtpd/SMTP.pm, specifically in ehlo().
A few unordered comments
pmail includes a table to log access,
+lastauth, which could conceivably be updated upon sucessful authentication.
+The addition of this feature is left as an exercise for someone who cares. ;)
+
+=head1 AUTHOR
+
+John Peacock <[EMAIL PROTECTED]>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyrig
Robert Spier wrote:
Here is a complete implementation of SMTP AUTH
Could you s/\t//g; and resend?
Tabs don't work well in open environments.
Eww. 4 spaces per tab please!
M-x untabify
I'll just supply a patch to the Qpsmtpd Project Style Guidelines, then, shall I?
Or should I just run p
upon sucessful authentication.
+The addition of this feature is left as an exercise for someone who cares. ;)
+
+=head1 AUTHOR
+
+John Peacock <[EMAIL PROTECTED]>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (c) 2004 John Peacock
+
+This plugin is licensed under the same terms as the qpsmtpd pac
Matt Sergeant wrote:
Committed to CVS with a minor modification:
- instead of requiring Qpsmtpd::Auth I just "use" it - this makes us
use more shared memory in qpsmtpd-forkserver
require is more correct, since it shouldn't be loaded at all if someone
hasn't registered any auth plugin. But whate
George Chrisbacher wrote:
Interestingly, if I remove the "(qpsmtpd/0.28)", SA again has no
problem.
That certainly suggests that SA needs to be updated to recognize the
"(qpsmtpd/0.28)" as part of the MTA signatures it already knows. Have
you raised this issue on the SA list?
John
Skaag Argonius wrote:
Thanks for all the information but can I get some clarification about how I
actually use this stuff to authenticate users on my vpopmail mysql database?
You should get qpsmtpd from CVS (instructions on the web site). Then
edit the "plugins/auth/auth_vpopmail_sql" file and ch
The current version of Net::SMTP doesn't make any attempt to determine
the hostname of the current computer (not that I blame Graham for that),
so that all e-mails are sent out as from "localhost.localdomain" unless
an explicit Hello string is provided.
This trivial patch is probably wrapped...
The AV scanner plugin I am currently using (uvscan) requires the
attached patch so that it can scan the existing temp file, rather than
making a copy just for the scan.
John
Index: lib/Qpsmtpd/Transaction.pm
===
--- lib/Qpsmtpd/Tran
This adds hooks to dnsbl to support the dns_whitelist_soft plugin (to
follow), which is a DNS-based whitelist of hosts (centrally managed).
John
p.s. Can you tell yet I am moving all of my servers to 0.28 and trying
to get everything standardized?
Index: plugins/dnsbl
=
John Peacock wrote:
+ my $whitelist = $self->qp->connection->notes('whitelist');
Oops, make that
+ my $whitelist = $self->qp->connection->notes('whitelisthost');
to be consistent with the original whitelist_soft plugin.
John
Latest version of McAfee virus scanner plugin (mostly changes due to
LOGLEVEL constants for 0.28+).
John
uvscan
Description: Binary data
Ed Weinberg wrote:
I don't understand from the docs where to put the configuration files or
how to tell qpsmtpd where to look for them.
The plugins generally include [sparse] POD describing the contents of
their configuration files. All of them assume the configuration files
themselves are in th
Brian Grossman wrote:
RFC2821 allows for parameters following a MAIL FROM or RCPT TO command.
Qpsmtpd doesn't seem to support them.
Which other SMTP Service Extensions would you expect to ultimately be
supported? I see the following standard extensions:
SMTP-SIZE SMTP Service Extension for Mes
Peter Eisch wrote:
At some point I'll write a cogent, one per email summary log plugin, but in
the mean time I'd like to run with little logging but still be able to debug
the who/what/when/why and sometimes where issues:
Yeah, I was just noticing how odd it was that FROM was always logged but
TO
Brian Grossman wrote:
Also, there would have to be a mechanism for plugins to add to the EHLO
response, to advertise the capability.
The recent code that I added to enable AUTH support does this. Check
out Qpsmtpd/SMTP.pm about line 171. In general, the idea is to grab
$self->transaction->notes
Ed Weinberg wrote:
1066 XX: Insecure dependency in require while running with -T switch at
/usr/lib/perl5/5.8.0/utf8_heavy.pl line 156, line 19.
Well, yes, if the supporting module is not taint-safe, Qpsmtpd won't
work. I have no idea why this particular line should be throw a taint
error (in
Matt Sergeant wrote:
I've seen this before - it might depend on loaded modules (e.g. a module
might call srand in the parent). I've applied the patch anyway as it's
sensible.
Except that the salt chosen is a constant value (vs time at least):
$ perl -le '$port = 23543; $iaddr = "\cL&\cV\cF"; for
There is a new variant of W32/Bagel which is currently on the loose.
McAfee hasn't got a new signature file for it (so a few have been
getting through), but there are also a lot of busted (no-payload)
versions flooding in too.
I'm throwing the exe_filter into the mix to try and block anything t
John Peacock wrote:
There is a new variant of W32/Bagle which is currently on the loose.
McAfee hasn't got a new signature file for it
FWIW, McAfee had an extra.dat to me by 3pm EDT and it was part of the
daily_dat shortly thereafter.
John
Robin Bowes wrote:
Sounds like it it might be useful to modify qpsmtpd so it can treat the return codes from the plugins optiionally and decide what to do further down the line.
It would be a significant architectural change; currently, plugins can
reject a message at almost any time in the negoti
Spaze wrote:
my $filename = $transaction->body_filename;
[...]
unlink($filename);
Is it a leftover from the clamav plugin (which is presented as an
inspiration) or is it intended (and "clear")? Will the functionality of
qpsmtpd not be affected?
You're right that the unlink() probably shouldn't be t
Brian Grossman wrote:
foreach my $rip (@rip) {
next if !defined $rip;
++$num_conn if (defined $rip && $rip eq $iaddr) {
^
}
Yeah, but the existing CVS code doesn't run at all because that brace ne
Robert Spier wrote:
It would be cool to integrate mailgraph (or something like it) into
qpsmtpd.
http://www.onlamp.com/pub/a/onlamp/2004/08/12/mailgraph.html
Interesting! My boss just last week suggested we need to do some internal
promoting and maintain some uptime graphs of the various systems.
Robert Spier wrote:
I don't really like the idea of parsing qpsmtpd's log files, because
in high debug modes (like we run) there's a ton of "garbage" in
there.
Funny, I thought that was what regexes were for... ;)
- We teach plugins to record things.. so spamassassin could do
something
Mark Powell wrote:
It seems that cram-md5 requires that the client has a plaintext copy of
the real password. Am I correct? If so then authldap could never provide
cram-md5 support?
Yup! It's not a great design, but to be generous, cram-md5 was not
intended to be used with a distributed authent
I have the following lines in my config/plugins file:
# first attempt to directly forward the mail
queue/smtp-forward 12.38.22.129
# else queue the mail with qmail-queue
queue/qmail-queue
and I'd like to do this instead:
# first attempt to directly forward the mail
queue/smtp-forward 12.38.22.129
#
Spaze wrote:
I'm running pperl as I'm little concerned about the pure perl server
performance and haven't tried forkserver as there's no word about it
anywhere ;)
The only issue I ever had with pperl was forgetting that it kept things loaded
(and hence I couldn't always tweak plugins on the fly).
Spaze wrote:
do you use forkserver in a production environment? what's the number of smtp
transactions/day?
In production for just over a month, at about 5k/day. I'm pretty sure that
perl.org is using forkserver in production for longer than that, and they
probably average 5k/hour or something
Matt Sergeant wrote:
It goes like this:
with more detail...
- tcpserver - stablest, slowest.
Each SMTP session spawns a new instance of qpsmtpd (meaning Perl has to start up
_every_ time).
- forkserver - stable, fast.
Each SMTP session is handled by a forked copy of qpsmtpd (meaning that Perl i
Hans Sandsdalen wrote:
I want to be able to deny a connection if there are attachments that are
executable. If I want to use something like reformime to check which
attachments are in a mail, how do I do that?
You can use the exe_filter found here:
http://www.openfusion.com.au/labs/qpsmtpd/
Hans Sandsdalen wrote:
I'm not shure if I understand. Will it block only *.exe files, or all
executables??
All Win32 executables begin with a small number of possible binary
sequences (the executable header). The exe_filter plugin, like Russ
Nelson's viruscan patch for qmail, takes advantage of
Mark Powell wrote:
The only differences I can see with your plugin are you start it with a
"#!/usr/bin/perl -Tw" which seems unusual for a plugin? Does that mean it
specifically runs under perl?
No, that only means that if the plugin were run independently, it would
use that Perl. In any module
Hans Sandsdalen wrote:
Why do I get this error:
clamav plugin: clamscan results:
/home/smtpd/clamscan-tmp/qpsmtpd.clamav.26519.a1K8V9: Can't access the
file ERROR
Does that directory exist? Is it writable by the use that qpsmtpd is
running as?
John
Mark Powell wrote:
So that only leaves a bug/feature of SpeedyCGI as the only possible
explanation?
The presence or absence of 'use Qpsmtpd::Constants' has no bearing on
whether a plugin correctly registers a hook. Throw something like this
into the end of Qpsmtpd::Plugin::register_hook():
$plu
Michael Holzt wrote:
The error seems to be fully on side of Vivian Mail here, but i suggest
making qpsmtpd more robust in this. I can't see any technical reason why we
should deny SMTP AUTH only because the client used HELO instead of EHLO. Is
there any?
Yes! RFC's 2821, 1425, and 1123 all support
Michael Holzt wrote:
So in my opinion you are wrong. Adding SMTP AUTH after HELO is not in
violation of any RFC. It is just not mandatory.
RFC-1425, SMTP Service Extensions, describes the standard way to extend
the SMTP protocol. The client signals that it might want to use
extensions by initiat
Michael Holzt wrote:
I just wanted to show the code lines in question. However the original code
is wrong anyways, because there is no need to disable the SMTP AUTH at two
positions: First SMTP.pm disables the AUTH-Command for Clients which used
HELO, but second the Auth.pm also check for HELO/EHLO
Michael Holzt wrote:
In my opinion the current practice of dynamically adding the "AUTH" keyword
to the list of understood commands in the ehlo-Subroutine of SMTP.pm is bad
design. Why? Because the current design requires changes in SMTP.pm for
every new SMTP extension and every new command.
It's
Michael Holzt wrote:
qpsmtpd does all sorts of logging but what i was missing was a complete log
entry showing the details of a mail after accepting it. Therefore i
programmed this new plugin.
I don't understand why this is especially useful (and it indeed seems to be a
duplication of existing lo
Michael Holzt wrote:
Why is the relaying flag on transaction level anyway?
I suspect because the only time the code cares about whether this transaction is
permitted to relay is at FROM. Once you receive the FROM line, you have all of
the information needed to decide whether this e-mail should
Robert Spier wrote:
(Side note, John, your newsreader is not doing nice things to the mail
headers.)
(Sorry, Mozilla mail, you know. :o Care to be specific and I'll open a ticket
with them?)
There's a namespace issue, because there are potentially multiple
results from multiple callbacks.
Oh, di
Michael Holzt wrote:
Here is my patch for Auth.pm, which stores the authenticated user in the
Session Notes, which can be later used by plugins like my 'maillog'. I would
be thankful if this would be included into the upstream Auth.pm.
If the user information is useful (and I agree that it is), it
Robert Spier wrote:
(It loses the (To|Cc): qpsmtpd at perl.org, so it's really annoying to
reply to.)
That's a carbon-based error (i.e. /I/ am deleting it). Since I am using a
newsreader (and I'm not on the list), if I leave that header in, I get a warning
message from the listserve software. I
Robert Spier wrote:
Fire! Fire!
Yeah, Friday was like that! Tweaking configurations for 200 desktops to work
with the new mail server, the president decides to work from home (and he lost
his WiFi card so he's using dialup, and he's never consciously deleted any
message from his Inbox), and th
Matt Sergeant wrote:
I think that may be my fault, by moving the global hooks hash into the
qpsmtpd object. But I think we definitely want to keep that change, so
we'll fix it if its broken instead of backing it out.
Yeah, those are the changes I backed out and it started working again. You are
Michael Holzt wrote:
BTW, is trunk working again, then?
Excuse my ignorance, but: What is trunk? I might have missed something.
The trunk (also called HEAD) is the main development line in the repository (in
this case CVS). Some projects have automatic scripts which build the trunk
files on eve
All -
One of my users made some poor choices in friends and now has an obnoxious
individual sending mail which could be considered harassing. Said individual
seems to have a very high regard for himself, so approaching his ISP about
enforcing their AUP is more likely to make things worse than b
Ask Bjørn Hansen wrote:
How about doing that, but accepting and dropping the message instead of
bouncing it?
Because dropping the message means he still thinks the messages are
getting through (and he is being ignored). On the other hand, with my
method, he knows the messages are not getting th
I've finished moving our email out of a Win32-based system (Rockliffe's
Mailsite) to qmail/vpopmail and are very happy with it. We are also
running dspam on all inbound e-mail, but I am not happy with the
requirement that it be used to replace the LDA.
I am thinking of writing a Perl XS module
David Nicol wrote:
sounds like a job for Inline::C have you tried it that way? instant
wrapepd libraries
I was actually hoping that h2xs would do most of the heavy lifting for me; then
I could focus on the Perlish interface to the underlying library functions. I
am very slightly more experienced
I have been working on a way for specific remote MX boxes to validate
all e-mail addresses with the vpopmail database on the central server.
Initially, I attempted to do this via a replacement VRFY command, and
then I realized I don't need to do anything that complicated, so I wrote
my own fing
Michael Holzt wrote:
Have you also changed it to run as a connect plugin instead
of rcpt plugin and set $ENV{RELAYCLIENT} for a IP which may
relay (until we finally get session->{_relaying})?
No, I didn't see a reason to make it a connect plugin, perhaps you can argue
that point. I was planning o
Michael Holzt wrote:
Another thing to consider if we are changing some of this anyway would
be renaming relaying to something else. ("relaying_allowed"?) Or am I
the only one who finds "relaying" alone really backwards?
Agreed. I would vote for the classic 'relayclient' :-)
+1. I have somethi
John Peacock wrote:
+1. I have something in testing, but since I cannot seem to get the
connection object from within the transaction, it is going to mean
deprecating the $transaction->relaying() piece altogether and just leap
for the jugular. All custom plugins which relying on
$transact
Michael Holzt wrote:
Currently we call a function to set relaying ($transaction->relaying(1)),
and directly check $transaction->{_relaying} to see if this is a relaying
user.
That may be what /you/ are doing, but there is no reason to do it that way. The
relaying() method has always been a set/g
Gavin Carr wrote:
This looks great to me, but I'd like to quibble about the plugin names. To
me a check plugin does a check takes some action, if appropriate, which
usually means returning an OK or DENY (or DECLINED, of course). Your
check_finger is a good example. So I'd prefer your #4 to be cal
Matt Sergeant wrote:
Maybe we'll have to look into re-writing qmail-remote in perl :-)
Sorry, can't help you there; I am mostly the way towards rewriting the
Linux kernel in Perl (I'm having some problems with the bootstrapping
code ;)...
John
Andrew Pam wrote:
This looks like a great idea for a qpsmtpd plugin:
Run p0f (http://lcamtuf.coredump.cx/p0f.shtml) on the incoming connection,
then apply some kind of rate-limiting if it seems to be running Windows.
The only question is how best to do the rate-limiting.
Robert Spier already starte
I just committed my changes to move the $transaction->relaying() flag to
$connection->relay_client, as well as the split check_relay/rcpt_ok
plugins. I decided to leave the plugins named as I originally discussed.
Thinking it over, I'd actually prefer to just go ahead and deprecate the
$transa
Matt Sergeant wrote:
I'm +1 on removing $transaction->relaying.
Michael Holzt wrote:
My 2 ct (EUR of course): Ditch transaction->relaying.
Going, going, gone!
John
I have recently been noticing a couple of odd messages coming into our
system with headers and no body:
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 708 invoked from network); 24 Sep 2004 05:52:18 -0400
Received: from a.ns.rlpgbooks.com (HELO a.mx.rlpgbooks.co
John Peacock wrote:
I wonder if it would be more appropriate to add this to Qpsmtpd/SMTP.pm instead...
like this:
=== lib/Qpsmtpd/SMTP.pm
==
--- lib/Qpsmtpd/SMTP.pm (revision 420)
+++ lib/Qpsmtpd/SMTP.pm (local)
@@ -480,6 +480,11
Michael Holzt wrote:
I believe there is a bug in the 'spamassassin' plugin. It seems to leave
older 'X-Spam-Status' Header lines added by another System intact, and add
his own 'X-Spam-Status' Line, leaving the mail with two different
X-Spam-Status.
This should fix it:
Committed. Thanks
John
Michael Holzt wrote:
In response to Matts suggestion of doing the logging in a deny hook, i just
created a 'denylog' plugin, which can be configured for which plugins a deny
should be logged and with which loglevel.
I like this in theory, but in practice I'd like to see something more
general (an
Robert Spier wrote:
I'm pretty sure that an empty body is valid RFC2821.
Server SMTP systems SHOULD NOT reject messages based on perceived
defects in the RFC 822 or MIME [12] message header or message body.
(Although that's probably not the best excerpt.)
Except it's not an empty MIME body; it is n
Michael Holzt wrote:
Server SMTP systems SHOULD NOT reject messages based on perceived
^^
Failure of 2822 (which is the son of 822) is specifically NOT an reason
for rejection as stated in 2821 (and quoted above).
That's SHOULD NOT and not MUST NOT. We are completely
Andrew Pam wrote:
On Fri, Sep 24, 2004 at 09:05:46AM -0700, Robert Spier wrote:
I'm not sure this is correct. Sometimes we do care what other SA
instances thought. Like when we're comparing two servers. Or just in
general.
I agree that loss of information is normally bad, but when it is
untrust
Jim Winstead wrote:
Consequently, the test should be expanded to refuse any message which
does not include either FROM:/SENDER: and DATE:. Of course, this is a
problem because dspam doesn't add a DATE: field when sending template
messages (like quarantine full), so I'll have to fix that before
Michael Holzt wrote:
It is general consensus that "SHOULD NOT" has to be interpreted as "You
must be nuts to do that, think not only twice but at least ten times
about it, and be sure that you know all bad outcomes out of this. Please
do not do it."
Empty messages (no data at all) are irretrievabl
Michael Holzt wrote:
And here we are (warning: untested).
Arrgl. Missed to change the last two replace by add. See
attached for the correct diff.
I reverted the earlier change, but I am not applying this change yet
(pending further discussion). I think the default behavior should be to
remain c
Robert Spier wrote:
I think what we want is this:
my $subdomain = '(?:[a-zA-Z0-9](?:[-a-zA-Z0-9]*[a-zA-Z0-9])?)';
I tested this with
use re 'debug';
and it did seem to correctly match the pattern we are looking for. I've
put it into production here (after testing it); shall I commit t
Michael Holzt wrote:
I'm still trying to decode that regexp (will have a look in the camel book
later)
Does this help?
$ perl -Mre=debug -e "qr'(?:[a-zA-Z0-9](?:[-a-zA-Z0-9]*[a-zA-Z0-9])?)';"
Freeing REx: `","'
Compiling REx `(?:[a-zA-Z0-9](?:[-a-zA-Z0-9]*[a-zA-Z0-9])?)'
size 39 Got 316 byt
John Peacock wrote:
Sorry, this is better (I think):
my $subdomain = qr'
(?: # group but no backreferences
[a-zA-Z0-9]+? # match one or more ALPHA / DIGIT
(?: # group but no backreferences
-(?=[a-zA-Z0-9]+) # match HYPHEN
Matt Sergeant wrote:
I'd like to hear a valid reason you actually want these messages. And a
serious example of when you might, not just quoting RFCs again.
While I agree with you completely, Matt, and I believe that we are within the
bounds of the RFC's to refuse zero-byte messages, I have decid
Michael Holzt wrote:
One problem remains even after having done that: I still believe
that a conf plugin called by an rcpt hook will not be able to
get the recipient in question through the transaction-object
because it is not already in it, or is it?
This I can confirm at any rate. All rcpt plu
1 - 100 of 842 matches
Mail list logo