summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-04-15Transport: fix smtp under combo of mua_wrapper and limited max_rcptJeremy Harris
2017-04-14Builtin macros: note config trigger line in debug outputJeremy Harris
2017-04-12$SOURCE_DATE_EPOCH support for build date stampPhil Pennock
If, and _only_ if, $SOURCE_DATE_EPOCH is found in environ during build, use it to set the timestamp embedded in the binary instead of using __DATE__ and __TIME__ cpp directives. This per <https://reproducible-builds.org/specs/source-date-epoch/> spec. It's sane and sensible, without removing date stamping which matters. The examples encourage packagers to use timestamps which do change when they backport patches, so that the date remains useful for distinguishing builds instead of claiming one date forever across multiple patchlevels. This change written so that the old behaviour and code is used if the environment variable is not found, to better continue to support ancient platforms with other variants of date(1). Built with and without an override, on macOS.
2017-04-11compiler quieteningJeremy Harris
2017-04-09typoJeremy Harris
2017-04-08tidyingJeremy Harris
2017-04-06tidyingJeremy Harris
2017-04-06Callout/hold: ensure TLS-proxy process is not waited for as a transport processJeremy Harris
2017-04-06Debug: show error for SMTP read responseJeremy Harris
2017-04-05Callout/hold: fix uninitialized variableJeremy Harris
2017-04-02Openssl: disable session-tickets by default and session-cache alwaysJeremy Harris
2017-04-02tidyingJeremy Harris
2017-03-22tidyingJeremy Harris
2017-03-21Callouts: a "hold" option for receipient-verify, which keeps the connection ↵Jeremy Harris
open both for further recipients and for eventual delivery.
2017-03-21Logging: make cipher info available for continued-TLS connection deliveriesJeremy Harris
2017-03-20exigrep: migrate to Getopt::Long, allow --no-pagerHeiko Schlittermann (HS12-RIPE)
This gives us long/more descriptive option names. Add an option to supress the use of a pager.
2017-03-19exigrep: use a pager if stdout is connected to a terminalHeiko Schlittermann (HS12-RIPE)
2017-03-19exigrep: add POD and -h, -mHeiko Schlittermann (HS12-RIPE)
2017-03-18Expansions: check numeric values of IPv4 address componentsJeremy Harris
2017-03-15Logging: mark continued-TLS connection deliveries with "X-*"Jeremy Harris
2017-03-12Malware: new connection type "f-prot6d" for FPSCAND protocol over TCPAndrew Colin Kissa
2017-03-11uClibc does not contain gnu/libc-version.hBernd Kuhls
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
2017-03-09Debug: Use UTF-8 linedrawing, for indent partial-markersJeremy Harris
2017-03-08Shorten long daemon-startup log linesJeremy Harris
2017-03-08Some platforms (Solaris) do not have AF_LOCAL; use AF_UNIXJeremy Harris
2017-03-07Delivery: contined-connection maintaining TLSJeremy Harris
2017-03-04Debug: Use UTF-8 linedrawing rather than ASCII lineart for grouping ↵Jeremy Harris
expansion tracing messages
2017-02-28Coverity fixesJeremy Harris
2017-02-28Memory Management: drop another variable ($callout_address) as it goes out ↵Jeremy Harris
of scope.
2017-02-28Fix child-address counting.Jeremy Harris
When a new address was created by a routing step it was possible for the parent address in the tree to be marked as having zero children, despite the new child having a pointer to the parent. When the child was then delivered, the count on the parent could go negative or, if other children had been added which correctly incremented the count, arrive at zero while some children were outstanding. Fix this to maintin the invariant. While there, make the counter unsigned.
2017-02-26Add option to control use of shutdown by ${readsocket }. Bug 400Jeremy Harris
2017-02-26DKIM: rework error logging - compiler quietening. Bug 966Jeremy Harris
2017-02-26Fix ${extract } corrupting an enclosing ${reduce } $value. Bug 2061Jeremy Harris
Broken-by: 20fcb1e7be45 - Bug 1870
2017-02-25Point at readline fix on macOSPhil Pennock
dlopen() without a qualified path searches env vars and paths stamped into the binary; Exim is usually setuid, so this becomes just the paths stamped into the binary. On some platforms (*cough* macOS) libreadline is not in the usual places. So show how to stamp the Homebrew location of libreadline into the Exim binary.
2017-02-25DKIM: rework error logging to pass strings back to caller for logging. Bug 966Jeremy Harris
2017-02-25Memory Management: new main-section config option "debug_store" to control ↵Jeremy Harris
extra internal checking (cherry picked from commit 10919584f8ad580434442c7d971083f91c315bc0) Signed-off-by: Phil Pennock <pdp@exim.org>
2017-02-25Pull in vdukhovni/ssl_dane 8270afba fixPhil Pennock
Negating an int and comparing to another int was a bug which we got lucky on.
2017-02-24tidyingJeremy Harris
2017-02-24Memory management: drop $acl_m_ variables explicitly as they go out-of-scopeJeremy Harris
between message receptions in an SMTP connection
2017-02-22Move bdat_ungetc decl to hdr ∵ receive.c uses tooPhil Pennock
2017-02-14Fix broken-in-queue messages predating CHUNKING fixPhil Pennock
util/chunking_fixqueue_finalnewlines.pl walks the queue, fixing any affected messages; see README.UPDATING. We're extremely cautious about operation failure. We do one check without locking messages, so that we can quickly skip past before trying to lock and contending with an actual delivery. Then we lock and do another fix. Note that we use flock, not fcntl, because that's what Perl makes readily available; we use an OS-guard to barf if the OS is not handled.
2017-02-14nit: document that `fout` must be open for reading tooPhil Pennock
2017-02-14Fix missing line termination on the last received BDAT chunk (Bug 1974)Heiko Schlittermann (HS12-RIPE)
2017-02-14Use enum { SEEN_LF, …} for ch_state(s)Heiko Schlittermann (HS12-RIPE)
2017-02-12Handle PKG_CONFIG_PATH in Local/MakefilePhil Pennock
Handle PKG_CONFIG_PATH, stripping whitespace expanding globs, collecting multiple sets and just build one variable, and use it in environment at configure time so that the libraries are found.
2017-02-12os_getcwd(): do not realloc if there was no malloc().Heiko Schlittermann (HS12-RIPE)
2017-02-12DKIM: fix crash with a verification when dkim disabled, under CHUNKINGJeremy Harris
2017-02-12Debug: avoid indenting line-prefixes (timestamp, pid, host-checking marker)Jeremy Harris
2017-02-12FreeBSD: only assume iconv for FreeBSD >= 10Phil Pennock
Since FreeBSD 10 is the oldest version of the OS supported by the FreeBSD Project, we shouldn't need this. But people are still using older versions. On closer examination, it's only been 6 weeks since 9.3 stopped being supported. People ignoring the status are playing with fire, getting no security updates, but let's not make that _our_ problem. Guard the "use system iconv" #define for the libiconv package with an OS version #ifdef.
2017-02-11Unbreak test_dbfn make-targetPhil Pennock
doc/dbm.discuss.txt describes how to make and use `test_dbfn` for testing DB functionality. Commit cf0812d5 adds a call to assert_no_variables into store.c which depends upon expand.c functionality and we can't link that in for test_dbfn without pulling in half of Exim. So adjust the test_dbfn target to rebuild store.o in COMPILE_UTILITY mode and link against that variant, then remove the custom-built store.o after the executable has been linked.