summaryrefslogtreecommitdiff
path: root/usr.sbin/smtpd/enqueue.c
AgeCommit message (Collapse)Author
2015-01-15when enqueueing offline mails from within the daemon session, we should notGilles Chehade
rely on getlogin() otherwise mail will end up enqueued as coming from user who started smtpd. bug spotted by deraadt@, diff ok todd@
2014-11-12truncate dead.letterGilles Chehade
2014-11-06since domain appending is handled at the daemon level, don't try to do itGilles Chehade
in the enqueuer itself, it leads to broken headers
2014-10-26when using the local enqueuer, if the internal SMTP session fails, copy theGilles Chehade
original message to ~/dead.letter so it's not lost
2014-10-08obvious reallocarray() useTheo de Raadt
2014-10-04Use getlogin() to determine real user name where possible.Todd C. Miller
OK guenther@ deraadt@
2014-07-28Last (known) msgbuf_write() vs EOF fix.Kenneth R Westerback
ok gilles@ deraadt@
2014-07-20Make sure the correct errno is reported by warn* or err* and notPhilip Guenther
the errno of an intervening cleanup operation like close/unlink/etc. Diff from Doug Hogan (doug (at) acyclic.org)
2014-06-06when relying on the local enqueuer, fix an issue with long To and Cc linesGilles Chehade
that can lead to broken headers and confuse some MUA issue spotted by tedu@
2014-04-05fix writing of multiline To and Cc headersGilles Chehade
issue spotted, fix tested and okayed krw@
2014-04-04fix header parsing issue in enqueuer leading to From: header being strippedGilles Chehade
in some cases ok eric@
2014-04-04Merge the mda, mta and smtp processes into a single unprivilegedEric Faurot
process managing message reception, delivery and transfer. Mostly mechanical, but very intrusive as it required to rewamp all IMSG to fix ambiguities. with and ok gilles@
2014-03-25when locally enqueuing messages without specifying a domain for sender orGilles Chehade
recipient, the local domain is assumed. this was correctly handled at the smtp level, but headers were not updated to reflect that. issue experienced by several people, fix tested by ajacoutot@ and I ok eric@
2014-03-13The enqueue utility should not add a User-Agent header to emails.Chris Cappuccio
ok gilles jcs
2014-02-04Add support for DSN and Enhanced Status CodeEric Faurot
2013-12-26bcopy -> memmoveEric Faurot
bzero -> memset
2013-12-06now at 5.4.1Eric Faurot
2013-11-28unsigned char casts for ctypeEric Faurot
ok gilles@
2013-11-26need errno, thx sthenHenning Brauer
2013-11-26deal with msgbuf_write EAGAIN, ok gilles bennoHenning Brauer
2013-10-25local enqueuer improvements:Eric Faurot
- parse the whole input before trying to establish the connection to the local socket: fixes timeout problems when reading the output of a long running program. - use sendmail(8)-like exit status.
2013-05-24sync with OpenSMTPD 5.3.2Eric Faurot
ok gilles@
2013-01-31assorted fixes spotted by Coverity.Eric Faurot
some log message updates. ok gilles@
2013-01-26Sync with our smtpd repo:Gilles Chehade
* first bricks of ldap and sqlite support (not finished but both working) * new table API to replace map API, all lookups are done through tables * improved handling of temporary errors throughout the daemon * improved scheduler and mta logic: connection reuse, optimizes batches * improved queue: more tolerant to admin errors, new layout, less disk-IO * improved memory usage under high load * SSL certs/keys isolated to lookup process to avoid facing network * VIRTUAL support improved, fully virtual setups possible now * runtime tracing of processes through smtpctl trace * ssl_privsep.c sync-ed with relayd * ssl.c no longer contains smtpd specific interfaces * smtpd-specific ssl bits moved to ssl_smtpd.c * update mail address in copyright FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. smtpd.conf(5) simplified, it will require adaptations ok eric@
2012-11-23knfEric Faurot
ok gilles@
2012-11-12Cleanups and improvements:Eric Faurot
* Log more events (especially client session) and use a better scheme for that: each messages is prefixed with a token to easily identify its class: - info/warn/debug: general server messages - smtp-in: smtp client connections - relay: status update for relayed messages - delivery: status update for local deliveries * Implement "smtpctl monitor" to display updates of selected internal counters. * When reloading the on-disk queue at startup do not commit a message if no envelope was submitted for that message. * Remove unused stuff in the config parser. ok gilles@
2012-09-27use xstrdup() helperCharles Longeau
ok eric@ gilles@
2012-09-27simplify malloc() + strlcpy() dance with xstrdup()Charles Longeau
ok gilles@ eric@
2012-08-23enhance -v mode of 'sendmail' binaryTodd T. Fries
ok chl@
2012-08-23fix multiple recipient support, from sunil on ircTodd T. Fries
tested by me, ok gilles@
2012-08-23add -R to sendmail compat flags that do nothing (for now)Todd T. Fries
ok gilles@
2012-08-23add -N for sendmail compat DSN support; unlimited for nowTodd T. Fries
ok gilles@
2012-08-19coding style: replace all occurences of u_int* with uint*Charles Longeau
ok eric@
2012-03-17llu -> PRIu64 in enqueue() to avoid warning in portableGilles Chehade
diff from Guillaume Leconte <guillaume.leconte@scality.com>
2012-02-02Only use mime/line-split if the input message actually contains a veryEric Faurot
long line. ok gilles@ chl@
2012-01-30do not encode headers, it breaks the resulting messageGilles Chehade
reported by eric@ and miod@ ok chl@
2012-01-29fix warningEric Faurot
ok gilles@
2012-01-28ok, since we're already encoding =, let's just do full quoted printableGilles Chehade
encoding, it's just a few additional lines ...
2012-01-28when enqueuing, check if a MUA did some MIME transfer encoding, otherwiseGilles Chehade
do quoted-printable transfer encoding so that OpenSMTPD doesn't refuse to enqueue mails with long lines ok eric@
2011-12-15all leading dots must be duplicated.Eric Faurot
ok gilles@
2011-11-14make sure that the offline directory has the right owner/permsEric Faurot
before enqueueing offline mail. ok gilles@
2011-11-02simpler implementation of smtpctl local enqueuer that does not need libevent.Eric Faurot
ok gilles@
2011-08-29cast all printed time_t to long long int, and change format string accordingly.Charles Longeau
ok gilles@
2011-08-29add missing header needed by signal()Charles Longeau
ok gilles@
2011-08-26add missing header needed by time()Charles Longeau
ok gilles@
2011-06-09spacingTheo de Raadt
2011-04-17cleanups, cosmethic changes, functions that should be static are now staticGilles Chehade
no functionnal change
2011-03-26have the client API receive a stdio stream rather than a fd to the messageGilles Chehade
fd. this shifts responsibility for the fclose to the caller, prevents a memory leak and makes everyone happy. diff by Jared Yanovich, thanks !
2010-11-28remove all unused headersGilles Chehade
2010-11-28a bit of .h cleanups, no functionnal changeGilles Chehade