summaryrefslogtreecommitdiff
path: root/src/scripts
AgeCommit message (Collapse)Author
2016-03-03Solaris /bin/sh does not understand 'export LC_ALL=C'Heiko Schlittermann (HS12-RIPE)
2016-02-25Release: fix release scriptHeiko Schlittermann (HS12-RIPE)
- accept minor version number - allow to skip the build-of-documentation step - allow release of "any" version from anywhere - avoid calling "old" reversion scripts, create version.sh
2016-02-18Fix CVE-2016-1531exim-4_87_RC4Heiko Schlittermann (HS12-RIPE)
Add keep_environment, add_environment. Change the working directory to "/" during the early startup phase. (cherry picked from commit 2b92b67bfc33efe05e6ff2ea3852731ac2273832) (cherry picked from commit 14b82c8b736c8ed24eda144f57703cb9feac6323) (cherry picked from commit 9ca92d0c6e9c6f161bd8111366c6952d3a9315e2) (cherry picked from commit 0020c6d9ecfd98ed7b2b337ed4f898fdc409784b) (cherry picked from commit e8f96966360ea8867ad6a8b5affda6c37fa4958c) (cherry picked from commit ef6fb807c1e1a665f444f644c60c77269f7c5209)
2016-02-05Add backward compatibility for EXIM_TMPDIRHeiko Schlittermann (HS12-RIPE)
2016-02-01DKIM: replace SHA and RSA routines from gnutls, under earlier libraryJeremy Harris
versions, using libgcrypt and libtasn1 directly. Bug 1772
2016-01-07DKIM: reinstate embedded Polarssl SHA routines under older GnuTLS. Bug 1772Jeremy Harris
We need an incremental build of the hash, and GnuTLS did not expose the required interfaces until version 2.10.0
2016-01-06DKIM: Remove embedded copy of PolarSSL and use OpenSSL/GnuTLS library.Jeremy Harris
Bug 1192
2015-12-30Consolidate base64 encode/decode routines.Jeremy Harris
The functions previously in the auth directory, which allocate exim-standard strings for output, are the main pair. The file-IO variant decode routine use by mime-handling is brought into the same new source file. The PDKIM functions are dropped.
2015-12-27Provide setenv/unsetenv for environments lacking them. Bug 1578Jeremy Harris
Currently this covers HP-UX and older Solaris.
2015-12-18Redis: move from Experimental to mainlineexim-4_87_RC2Jeremy Harris
2015-11-29Separate PolarSSL from PDKIM. Bug 1192Andreas Metzler
This is intended to be a step towards replacing the PolarSSL code with either OpenSSL of GnuTLS equivalents.
2015-06-04TLS authenticatorJeremy Harris
2015-06-04refactor build scriptJeremy Harris
2015-05-04I18N: new ${imapfolder_<sep>:<string>} expansion item. Bug 420Jeremy Harris
2015-04-12A-label transform functionsJeremy Harris
2015-03-15SOCKS: as a client, talk SMTP via a socks5 proxy. Bug 1590Jeremy Harris
2014-07-29Framework to build dane supportTodd Lyons
2014-05-02Certificate variables and field-extractor expansions. Bug 1358Jeremy Harris
2014-04-15Bail configuration on missing packagePhil Pennock
If we're configured to use pkg-config (or pcre-config) and the tool is not available or does not know about the package we ask for, that should be a fatal configuration error. We should not silently ignore the missing package, then try to compile, and have missing header warnings from the compiler. Eg, if we're told to support GSASL, we'll try to compile the client code, and without compiler flags, we'll either fail to compile (missing headers) or fail to link, which obscures the source of the errors. This change will only break people who had builds set to have Exim depend upon non-existent packages, and that _needs_ to break.
2013-11-20build: try to get dash/bash for sanityPhil Pennock
The "local" builtin is not part of POSIX. We want it. Try harder to get a vaguely sane shell, rather than just a POSIX shell. Also, safeguard to error out more gracefully if invoked from outside the build process.
2013-11-07Portability fix for Solaris without xpg4 utilitiesTony Finch
2013-10-22Bug 1400: Fix GnuTLS PKCS11 issuesTodd Lyons
Can disable PKCS11 in Makefile with AVOID_GNUTLS_PKCS11 build flag. Rename gnutls_enable_pkcs11 option to gnutls_allow_auto_pkcs11. Update Changelog
2013-10-03Setting LC_ALL with make overrode this sort checkexim-4_82_RC2Todd Lyons
2013-10-01Bugzilla 1217: Experimental Redis lookupTodd Lyons
Add want_experimental() test in the script to create the lookups Makefile to ease detection of requested Experimental features, and simplify the #ifdef guards in the redis.c.
2013-05-12Add compile-time checks for various tables being in alphabetical order.Jeremy Harris
This is gross hackery and somewhat fragile. A better method would actuallyt compile the 'C' involved and check programmatically.
2013-04-09DMARC support by opendmarc libsTodd Lyons
2012-12-07Avoid spurious rebuilds of the dynamic lookups Makefile.Tony Finch
This was noticable when re-building as a non-privileged user after installing as root; lookups/Makefile had been rebuilt by root and when it was rebuilt again by the unprivileged user `mv` demanded confirmation before overwriting the file.
2012-11-16Configure should stop on error.Phil Pennock
Set the POSIX -e option on the #! line invoking /bin/sh. If any of the sub-commands fail, the Configure as a whole should fail.
2012-05-27For DH, use standard primes from RFCsPhil Pennock
2012-05-12pcre-config support.Phil Pennock
Remove a couple of stray references to PCRE_CFLAGS too (dating from when PCRE was bundled).
2012-02-18Support pkg-config for SSL libraries.Phil Pennock
Also: update EDITME to refer to pkg-config & AUTH_HEIMDAL_GSSAPI.
2012-02-15First pass heimdal_gssapi authenticator.Phil Pennock
Not yet working, failing to set keytab. Also: support (AUTH|LOOKUP)_*_PC=foo to use `pkg-config foo` for cflags/libs.
2012-02-05Implemented gsasl driver for authentication.Phil Pennock
Missing: documentation; tests. Tested: PLAIN auth. Status: probably buggy
2011-10-05quote var for case stmt, so that old shell will see it as empty, rather than ↵Phil Pennock
syntax error
2011-10-05test for .git dir with -d not -e; more portablePhil Pennock
2011-10-05Solaris/Irix portability hacks for reversionPhil Pennock
2011-10-03source referenced version.sh file alwaysexim-4_77_RC2Phil Pennock
Tested for version.sh in cwd, but used . to source, assuming that would pull in file from cwd. True on BSD (checked after $PATH) but not part of POSIX and not true for bash when in POSIX mode.
2011-06-30Use git to automatically create version.hTony Finch
Adapted from git itself via unifdef. This does not (yet) include the equivalent automation for the doc build.
2011-06-30Another PCRE remnant.Tony Finch
2011-06-29Remove obsolete $Cambridge$ CVS revision strings.Tony Finch
I have also de-CVSed the ABOUT files and cleaned up a few introductory comments.
2011-02-23Work on IRIX by setting _XPG=1Phil Pennock
2011-01-27Use LC_ALL=C for building lookups/Makefile.Phil Pennock
2011-01-27Permit make values to be indented or in env.Phil Pennock
It appears some make(1)s are not complaining about variables defined with leading whitespace on the line. Permit that where we can, for the lookups, but it's not tenable for CFLAGS_DYNAMIC. Some people are specifying knobs on the make command-line, so we get them via the environment. Tested: indented LOOKUP_CDB and commented out LOOKUP_DNSDB, supplying it via { make LOOKUP_DNSDB=yes }. { exim -d --version } shows both are built-in, no results from { fgrep DNSDB build-*/Makefile }.
2011-01-27Fix portability of Makefiles to HP-UX and other non-extended makes.Tony Finch
2011-01-24Bug-fix the xpg4 Solaris logic.exim-4_74Phil Pennock
Should not code at 9am when still awake then. Should sanity-review such code changes before submitting (after sleep). Should s,/usr/xpg4/bin/sh,/bin/bash, as a convenient test to confirm what I suspected. But should do so pre-submit. Doh.
2011-01-24Compatibility fixes for dynlookup makefile builder.Phil Pennock
Don't abort if CFLAGS_DYNAMIC not defined. Oops! Attempt to get a POSIX environment on Solaris. Document POSIXy assumptions going forward. Problems reported by: Dennis Davis
2011-01-21Version reporting & module ABI change.Phil Pennock
Debug version display reports library info. Bumps lookup API magic constant, adds new field to module API. When invoking { exim -d -bV } we can display more version information. Show versions for many external libraries, including both compile-time and run-time information if we can. Optional for modules, may be NULL. Implemented for MySQL, SQLite & Whoson lookups. For all lookups, if dynamically loaded, report the Exim version number from the build. (Packagers will bundle stuff, but dynamic modules are no longer just available for packagers, so we need to deal with less managed environments and people forgetting to install new modules). Suggest in EDITME that users of modules not using package management consider embedding a version number in the path to the modules. Should consider removing the TLS (OpenSSL/GnuTLS) reporting from the default -bV display and moving it into the debug display. Not done. Created version.h, now support a version extension string for distributors who patch heavily. Henceforth release engineer should change the version in version.h not version.c.
2011-01-17Module loading working on FreeBSD (and unbreak).Phil Pennock
(1) Commit eec525c43adade97ff94d839810faf7cb35bd87f broke module support, because we *do* still need some exported variable definitions, as for a module to actually work, we need the per-module _INCLUDE/_LIBS settings. (2) FreeBSD's nsdispatch() will leave dlerror() returning a complaint about "_nss_cache_cycle_prevention_function"; we need to clear the error state before the dlsym() call, so that any error found afterwards must have come from that dlsym() call. Fix is just an extra call to dlerror(), which should be portable. I can now use sqlite3 from a module, in FreeBSD.
2011-01-16Bug-fix for bash and no-dynamic case.Phil Pennock
When writing the patch, originally nothing other than a cp was needed if there were no dynamic modules. That changed, but the guard at the top did not. Remove that check. bash does not like a block which consists solely of a comment. Provide a ':' invocation. Both problems spotted by Simon Arlott -- thanks.
2011-01-16Bug 139: portability fixes and documentation.Phil Pennock
Document the dynamic lookup module capability in spec.xfpt. Include a ChangeLog item. Avoid the GNU-specific "export" make(1) directive. Build the lookups Makefile using the existing framework. Build with BSD Make once more. The src/lookups/Makefile that is used at build time now has the dynamic content come from scripts/lookups-Makefile. Add CFLAGS_DYNAMIC support, which can be set in Local/Makefile. Provide defaults for Linux & FreeBSD. Ensure that build fails early if a dynamic module is requested but CFLAGS_DYNAMIC is not defined.