Commit Graph

401 Commits

Author SHA1 Message Date
Matt Sergeant
c1aa3ddb8a Override log function to use fileno(client) as pid will always be the same
Don't use exit() in response to bad LF end of DATA


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@195 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-19 23:01:43 +00:00
Matt Sergeant
b55eae7e36 unset indata{} after DATA is finished.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@192 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-06 15:41:03 +00:00
Matt Sergeant
c2fb24c4e4 Split received header so it doesn't exceed 78 chars
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@191 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-04 22:52:49 +00:00
Matt Sergeant
eff5e69d39 Oops, got the wrong end of the socket for the IP address!
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@190 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-03 08:22:24 +00:00
Matt Sergeant
ba12debf5f Less log rubbish
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@189 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 19:00:17 +00:00
Matt Sergeant
ad5e1b6fff Support SIGTERM
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@188 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 17:36:36 +00:00
Matt Sergeant
199179eddc Cleanup logging
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@187 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 17:34:33 +00:00
Matt Sergeant
66c5c78a38 Looks like we can't delete the _qp after all. <sigh>
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@185 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 11:35:15 +00:00
Matt Sergeant
981f6de7ab A non-tcpserver qpsmtpd server
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@182 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 11:15:40 +00:00
Matt Sergeant
03b8cda2b5 Don't keep the _qp around - just pass it in to each hook.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@179 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-02 11:13:08 +00:00
Matt Sergeant
b442d002f1 Don't unfold header lines.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@178 958fd67b-6ff1-0310-b445-bb7760255be9
2003-11-01 10:05:23 +00:00
Ask Bjørn Hansen
2a76892570 don't use Data::Dumper
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@172 958fd67b-6ff1-0310-b445-bb7760255be9
2003-09-15 10:50:27 +00:00
Ask Bjørn Hansen
891778b175 Say Received: ... via ESMTP instead of via SMTP when the client
speaks ESMTP.  (Hoping this can be a useful SpamAssassin rule).

Take out the X-SMTPD header.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@171 958fd67b-6ff1-0310-b445-bb7760255be9
2003-09-05 05:10:40 +00:00
Matt Sergeant
f7790c75fd Removed DISCARD
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@165 958fd67b-6ff1-0310-b445-bb7760255be9
2003-07-24 12:43:02 +00:00
Ask Bjørn Hansen
d71ddbbd04 minor doc patch
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@159 958fd67b-6ff1-0310-b445-bb7760255be9
2003-06-24 16:04:55 +00:00
Matt Sergeant
1e86299bf8 Added DISCARD option to DATA (body) checks
Added documentation to Constants.pm


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@158 958fd67b-6ff1-0310-b445-bb7760255be9
2003-06-24 07:42:38 +00:00
Ask Bjørn Hansen
8c52b83ab2 nuke the unused and incorrect add_header_line method
clarify when notes gets reset


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@152 958fd67b-6ff1-0310-b445-bb7760255be9
2003-06-10 10:15:42 +00:00
Matt Sergeant
2999d7cccd Added docs
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@147 958fd67b-6ff1-0310-b445-bb7760255be9
2003-06-09 13:45:29 +00:00
Ask Bjørn Hansen
c2b8e8aa19 Add not even halfbaked saslauth plugin. Hopefully it'll give us
SMTP AUTH some day.  :-)

  If a plugin running the ehlo hook add something to the ARRAY
  reference $self->transaction->notes('capabilities') then it will be
  added to the EHLO response.

  Add command_counter method to the SMTP object.  Plugins can use this
  to catch (or not) consecutive commands.  In particular useful with
  the unrecognized_command hook.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@144 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-21 09:42:01 +00:00
Ask Bjørn Hansen
1223c26ccf Filter out all uncommon characters from the remote_host
setting. (thanks to Frank Denis / Jedi/Sector One for the hint).


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@142 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-21 08:28:12 +00:00
Ask Bjørn Hansen
c68e306d17 Don't break under taint mode on OpenBSD. (thanks to Frank Denis /
Jedi/Sector One)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@141 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-21 08:23:35 +00:00
Ask Bjørn Hansen
4c4360d038 Set the process name to "qpsmtpd [1.2.3.4 : host.name.tld]"
is it possible to embed ANSI escape codes in a hostname? Hmn, probably not.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@139 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-16 16:35:14 +00:00
Ask Bjørn Hansen
933d76ecf9 Fixed timeout bug when the client sent DATA and then stopped before
sending the next line. (Gergely Risko <risko@risko.hu>)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@138 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-15 18:10:44 +00:00
Ask Bjørn Hansen
f27b77ae61 unrecognized_command hook and a count_unrecognized_commands
plugin. (Rasjid Wilcox)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@134 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-15 17:39:03 +00:00
Ask Bjørn Hansen
22ca786bac check_earlytalker plugin. Deny the connection if the client talks
before we show our SMTP banner.  (From Devin Carraway)

  Patch Qpsmtpd::SMTP to allow connect plugins to give DENY and
  DENYSOFT return codes.  Based on patch from Devin Carraway.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@133 958fd67b-6ff1-0310-b445-bb7760255be9
2003-04-15 17:01:43 +00:00
Ask Bjørn Hansen
5d34bad178 Date: Thu, 13 Mar 2003 00:57:39 -0800
From: Devin Carraway <qpsmtpd-list@devin.com>
To: qpsmtpd@perl.org
Subject: HELO hook and check plugin

Speaking of direct-to-MX spam, both AOL and Yahoo are large companies
with whole walls-full of servers devoted to mail delivery.  None of them
announce themselves with "HELO yahoo.com" or "HELO aol.com."  Spammers
certainly do, though.

Here's a patch to SMTP.pm to add hooks for HELO and EHLO, and a plugin
to use them.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@119 958fd67b-6ff1-0310-b445-bb7760255be9
2003-03-18 09:43:22 +00:00
Ask Bjørn Hansen
883b184a80 Use the proper RFC2822 date format in the Received headers. (Somehow
I had convinced myself that ISO8601 dates were okay). Thanks to
Kee Hinckley <nazgul@somewhere.com>.

Print the date in the local timezone instead of in -0000. (Not
entirely convinced this is a good idea)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@116 958fd67b-6ff1-0310-b445-bb7760255be9
2003-02-06 05:17:28 +00:00
Ask Bjørn Hansen
efeb19129f Fix the "too many dots in the beginning of the line" bug.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@105 958fd67b-6ff1-0310-b445-bb7760255be9
2002-12-09 09:08:09 +00:00
Ask Bjørn Hansen
2001523033 don't log the max size stuff at trace level 6
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@94 958fd67b-6ff1-0310-b445-bb7760255be9
2002-11-06 06:39:32 +00:00
Ask Bjørn Hansen
b556af398e Default DENYSOFT for the rcpt hook gave 550 code
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@92 958fd67b-6ff1-0310-b445-bb7760255be9
2002-10-25 00:24:54 +00:00
Ask Bjørn Hansen
208a0cd54c fix NOOP
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@88 958fd67b-6ff1-0310-b445-bb7760255be9
2002-10-14 05:47:25 +00:00
Ask Bjørn Hansen
97610b6840 Better installation instructions and error message when no plugin
allowed or denied relaying (thanks to Lars Rander
<lrNOSPAM@rander.dk>).


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@87 958fd67b-6ff1-0310-b445-bb7760255be9
2002-10-14 01:59:04 +00:00
Ask Bjørn Hansen
253eeee879 move the queue code to a plugin; document the queue plugin hook.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@80 958fd67b-6ff1-0310-b445-bb7760255be9
2002-10-10 01:49:34 +00:00
Ask Bjørn Hansen
9c38313d06 add thhe Utils.pm module
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@79 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-24 18:53:45 +00:00
Ask Bjørn Hansen
806fcf25e8 Reorganize most of Qpsmtpd.pm into Qpsmtpd/SMTP.pm.
Add spool_dir option (thanks to Ross Mueller <ross@visual.com>)

  Add plugin name to the "hooks" data structure, so we can log plugin
  module had an error when we run a hook.


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@78 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-24 10:56:35 +00:00
Ask Bjørn Hansen
8aa2bac088 work with perl 5.5.3
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@75 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-20 18:55:20 +00:00
Ask Bjørn Hansen
eed27e5fb1 Fixed "could not print ..." log warning.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@74 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-12 07:31:56 +00:00
Ask Bjørn Hansen
1cea2f9449 add notes method to the Connection object. (used in the dnsbl plugin)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@68 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-10 13:42:44 +00:00
Ask Bjørn Hansen
a1d52491bf blocked() is no longer supported in Qpsmtpd.pm; we can put it back
when qpsmtpd supports plugins accessing the message line by line as we
receive the data.


git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@51 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-08 10:05:36 +00:00
Ask Bjørn Hansen
931c3dbdfa use new plugin_name function when the plugins log()
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@49 958fd67b-6ff1-0310-b445-bb7760255be9
2002-09-08 10:00:02 +00:00
Ask Bjørn Hansen
be25aa03e6 delete the spool file when we are done with it
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@44 958fd67b-6ff1-0310-b445-bb7760255be9
2002-08-06 13:04:51 +00:00
Ask Bjørn Hansen
2ee95fc3fc only send messages smaller than 500000 bytes to spamd
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@42 958fd67b-6ff1-0310-b445-bb7760255be9
2002-08-06 12:57:59 +00:00
Ask Bjørn Hansen
75e0f9e568 check that we are being started under tcpserver
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@40 958fd67b-6ff1-0310-b445-bb7760255be9
2002-08-06 12:34:03 +00:00
Ask Bjørn Hansen
8ce8427bf9 data_post hook
spamassassin plugin


git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@38 958fd67b-6ff1-0310-b445-bb7760255be9
2002-08-06 12:01:22 +00:00
Ask Bjørn Hansen
d9d509019d add "disconnect" hook
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@35 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-15 11:49:49 +00:00
Ask Bjørn Hansen
2fe35f1b8d yay, plugin support works! :-D
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@34 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-08 02:30:11 +00:00
Ask Bjørn Hansen
ae8adc41a2 plugin base class
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@32 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-06 07:18:48 +00:00
Ask Bjørn Hansen
e0d93d10ef semi working plugin stuff
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@30 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-06 07:16:23 +00:00
Ask Bjørn Hansen
3e5de3a0b3 separate queue method called from data.
store the header in a Mail::Header object for easier processing by the plugins


git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@29 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-06 02:09:01 +00:00
Ask Bjørn Hansen
bcd0d6d534 data method; we can now receive mails with this...
git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@28 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-04 01:45:19 +00:00
Ask Bjørn Hansen
6df92cd56e half baked version of the new object mail engine
(note the branch, v010)


git-svn-id: https://svn.perl.org/qpsmtpd/branches/v010@23 958fd67b-6ff1-0310-b445-bb7760255be9
2002-07-03 13:10:44 +00:00