summaryrefslogtreecommitdiff
path: root/mail/exim
AgeCommit message (Collapse)AuthorFilesLines
2017-04-22Revbump after icu updateadam1-1/+2
2017-03-18Version 4.89adam5-24/+24
------------ 1. Allow relative config file names for ".include" 2. A main-section config option "debug_store" to control the checks on variable locations during store-reset. Normally false but can be enabled when a memory corrution issue is suspected on a production system.
2017-01-19Convert all occurrences (353 by my count) ofagc1-3/+3
MASTER_SITES= site1 \ site2 style continuation lines to be simple repeated MASTER_SITES+= site1 MASTER_SITES+= site2 lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint accordingly.
2016-12-25Update exim to 4.88wiedi3-17/+17
Security update to address CVE-2016-9963 Exim version 4.88 ----------------- JH/01 Use SIZE on MAIL FROM in a cutthrough connection, if the destination supports it and a size is available (ie. the sending peer gave us one). JH/02 The obsolete acl condition "demime" is removed (finally, after ten years of being deprecated). The replacements are the ACLs acl_smtp_mime and acl_not_smtp_mime. JH/03 Upgrade security requirements imposed for hosts_try_dane: previously a downgraded non-dane trust-anchor for the TLS connection (CA-style) or even an in-clear connection were permitted. Now, if the host lookup was dnssec and dane was requested then the host is only used if the TLSA lookup succeeds and is dnssec. Further hosts (eg. lower priority MXs) will be tried (for hosts_try_dane though not for hosts_require_dane) if one fails this test. This means that a poorly-configured remote DNS will make it incommunicado; but it protects against a DNS-interception attack on it. JH/04 Bug 1810: make continued-use of an open smtp transport connection non-noisy when a race steals the message being considered. JH/05 If main configuration option tls_certificate is unset, generate a self-signed certificate for inbound TLS connections. JH/06 Bug 165: hide more cases of password exposure - this time in expansions in rewrites and routers. JH/07 Retire gnutls_require_mac et.al. These were nonfunctional since 4.80 and logged a warning sing 4.83; now they are a configuration file error. JH/08 Bug 1836: Fix crash in VRFY handling when handed an unqualified name (lacking @domain). Apply the same qualification processing as RCPT. JH/09 Bug 1804: Avoid writing msglog files when in -bh or -bhc mode. JH/10 Support ${sha256:} applied to a string (as well as the previous certificate). JH/11 Cutthrough: avoid using the callout hints db on a verify callout when a cutthrough deliver is pending, as we always want to make a connection. This also avoids re-routing the message when later placing the cutthrough connection after a verify cache hit. Do not update it with the verify result either. JH/12 Cutthrough: disable when verify option success_on_redirect is used, and when routing results in more than one destination address. JH/13 Cutthrough: expand transport dkim_domain option when testing for dkim signing (which inhibits the cutthrough capability). Previously only the presence of an option was tested; now an expansion evaluating as empty is permissible (obviously it should depend only on data available when the cutthrough connection is made). JH/14 Fix logging of errors under PIPELINING. Previously the log line giving the relevant preceding SMTP command did not note the pipelining mode. JH/15 Fix counting of empty lines in $body_linecount and $message_linecount. Previously they were not counted. JH/16 DANE: treat a TLSA lookup response having all non-TLSA RRs, the same as one having no matching records. Previously we deferred the message that needed the lookup. JH/17 Fakereject: previously logged as a norml message arrival "<="; now distinguished as "(=". JH/18 Bug 1867: make the fail_defer_domains option on a dnslookup router work for missing MX records. Previously it only worked for missing A records. JH/19 Bug 1850: support Radius libraries that return REJECT_RC. JH/20 Bug 1872: Ensure that acl_smtp_notquit is run when the connection drops after the data-go-ahead and data-ack. Patch from Jason Betts. JH/21 Bug 1846: Send DMARC forensic reports for reject and quaratine results, even for a "none" policy. Patch from Tony Meyer. JH/22 Fix continued use of a connection for further deliveries. If a port was specified by a router, it must also match for the delivery to be compatible. JH/23 Bug 1874: fix continued use of a connection for further deliveries. When one of the recipients of a message was unsuitable for the connection (has no matching addresses), we lost track of needing to mark it deferred. As a result mail would be lost. JH/24 Bug 1832: Log EHLO response on getting conn-close response for HELO. JH/25 Decoding ACL controls is now done using a binary search; the source code takes up less space and should be simpler to maintain. Merge the ACL condition decode tables also, with similar effect. JH/26 Fix problem with one_time used on a redirect router which returned the parent address unchanged. A retry would see the parent address marked as delivered, so not attempt the (identical) child. As a result mail would be lost. JH/27 Fix a possible security hole, wherein a process operating with the Exim UID can gain a root shell. Credit to http://www.halfdog.net/ for discovery and writeup. Ubuntu bug 1580454; no bug raised against Exim itself :( JH/28 Enable {spool,log} filesystem space and inode checks as default. Main config options check_{log,spool}_{inodes,space} are now 100 inodes, 10MB unless set otherwise in the configuration. JH/29 Fix the connection_reject log selector to apply to the connect ACL. Previously it only applied to the main-section connection policy options. JH/30 Bug 1897: fix callouts connection fallback from TLS to cleartext. PP/01 Changed default Diffie-Hellman parameters to be Exim-specific, created by me. Added RFC7919 DH primes as an alternative. PP/02 Unbreak build via pkg-config with new hash support when crypto headers are not in the system include path. JH/31 Fix longstanding bug with aborted TLS server connection handling. Under GnuTLS, when a session startup failed (eg because the client disconnected) Exim did stdio operations after fclose. This was exposed by a recent change which nulled out the file handle after the fclose. JH/32 Bug 1909: Fix OCSP proof verification for cases where the proof is signed directly by the cert-signing cert, rather than an intermediate OCSP-signing cert. This is the model used by LetsEncrypt. JH/33 Bug 1914: Ensure socket is nonblocking before draining after SMTP QUIT. HS/01 Fix leak in verify callout under GnuTLS, about 3MB per recipient on an incoming connection. HS/02 Bug 1802: Do not half-close the connection after sending a request to rspamd. HS/03 Use "auto" as the default EC curve parameter. For OpenSSL < 1.0.2 fallback to "prime256v1". JH/34 SECURITY: Use proper copy of DATA command in error message. Could leak key material. Remotely explaoitable. CVE-2016-9963. ok wiz@
2016-12-04Recursive revbump from textproc/icu 58.1ryoon1-2/+2
2016-10-09Recursive bump for all users of pgsql now that the default is 95.wiz1-2/+2
2016-07-09Bump PKGREVISION for perl-5.24.0 for everything mentioning perl.wiz1-2/+2
2016-06-11since 4.87 redis lookup is no longer experimentalwiedi2-4/+4
2016-06-08Remove the stability entity, it has no meaning outside of an official context.jperkin1-1/+0
2016-06-08Change the service_bundle name to "export" to reduce diffs between thejperkin1-1/+1
original manifest.xml file and the output from "svccfg export".
2016-04-11Recursive revbump from textproc/icu 57.1ryoon1-1/+2
2016-04-09Version 4.87adam3-22/+7
1. The ACL conditions regex and mime_regex now capture substrings into numeric variables $regex1 to 9, like the "match" expansion condition. 2. New $callout_address variable records the address used for a spam=, malware= or verify= callout. 3. Transports now take a "max_parallel" option, to limit concurrency. 4. Expansion operators ${ipv6norm:<string>} and ${ipv6denorm:<string>}. The latter expands to a 8-element colon-sep set of hex digits including leading zeroes. A trailing ipv4-style dotted-decimal set is converted to hex. Pure ipv4 addresses are converted to IPv4-mapped IPv6. The former operator strips leading zeroes and collapses the longest set of 0-groups to a double-colon. 5. New "-bP config" support, to dump the effective configuration. 6. New $dkim_key_length variable. 7. New base64d and base64 expansion items (the existing str2b64 being a synonym of the latter). Add support in base64 for certificates. 8. New main configuration option "bounce_return_linesize_limit" to avoid oversize bodies in bounces. The dafault value matches RFC limits. 9. New $initial_cwd expansion variable.
2016-03-05Bump PKGREVISION for security/openssl ABI bump.jperkin1-1/+2
2016-03-02Update mail/exim and mail/exim-html to 4.86.2wiedi2-7/+7
Exim version 4.86.2 ------------------- Portability relase of 4.86.1 Exim version 4.86.1 ------------------- HS/04 Add support for keep_environment and add_environment options. This fixes CVE-2016-1531. All installations having Exim set-uid root and using 'perl_startup' are vulnerable to a local privilege escalation. Any user who can start an instance of Exim (and this is normally *any* user) can gain root privileges. If you do not use 'perl_startup' you *should* be safe. New options ----------- We had to introduce two new configuration options: keep_environment = add_environment = Both options are empty per default. That is, Exim cleans the complete environment on startup. This affects Exim itself and any subprocesses, as transports, that may call other programs via some alias mechanisms, as routers (queryprogram), lookups, and so on. This may affect used libraries (e.g. LDAP). ** THIS MAY BREAK your existing installation ** If both options are not used in the configuration, Exim issues a warning on startup. This warning disappears if at least one of these options is used (even if set to an empty value). keep_environment should contain a list of trusted environment variables. (Do you trust PATH?). This may be a list of names and REs. keep_environment = ^LDAP_ : FOO_PATH To add (or override) variables, you can use add_environment: add_environment = <; PATH=/sbin:/usr/sbin New behaviour ------------- Now Exim changes it's working directory to / right after startup, even before reading it's configuration. (Later Exim changes it's working directory to $spool_directory, as usual.) Exim only accepts an absolute configuration file path now, when using the -C option.
2016-01-10Update exim to 4.86.bsiegert3-16/+16
Exim version 4.86 ----------------- JH/01 Bug 1545: The smtp transport option "retry_include_ip_address" is now expanded. JH/02 The smtp transport option "multi_domain" is now expanded. JH/03 The smtp transport now requests PRDR by default, if the server offers it. JH/04 Certificate name checking on server certificates, when exim is a client, is now done by default. The transport option tls_verify_cert_hostnames can be used to disable this per-host. The build option EXPERIMENTAL_CERTNAMES is withdrawn. JH/05 The value of the tls_verify_certificates smtp transport and main options default to the word "system" to access the system default CA bundle. For GnuTLS, only version 3.0.20 or later. JH/06 Verification of the server certificate for a TLS connection is now tried (but not required) by default. The verification status is now logged by default, for both outbound TLS and client-certificate supplying inbound TLS connections JH/07 Changed the default rfc1413 lookup settings to disable calls. Few sites use this now. JH/08 The EXPERIMENTAL_DSN compile option is no longer needed; all Delivery Status Notification (bounce) messages are now MIME format per RFC 3464. Support for RFC 3461 DSN options NOTIFY,ENVID,RET,ORCPT can be advertised under the control of the dsn_advertise_hosts option, and routers may have a dsn_lasthop option. JH/09 A timeout of 2 minutes is now applied to all malware scanner types by default, modifiable by a malware= option. The list separator for the options can now be changed in the usual way. Bug 68. JH/10 The smtp_receive_timeout main option is now expanded before use. JH/11 The incoming_interface log option now also enables logging of the local interface on delivery outgoing connections. JH/12 The cutthrough-routing facility now supports multi-recipient mails, if the interface and destination host and port all match. JH/13 Bug 344: The verify = reverse_host_lookup ACL condition now accepts a /defer_ok option. JH/14 Bug 1573: The spam= ACL condition now additionally supports Rspamd. Patch from Andrew Lewis. JH/15 Bug 670: The spamd_address main option (for the spam= ACL condition) now supports optional time-restrictions, weighting, and priority modifiers per server. Patch originally by <rommer@active.by>. JH/16 The spamd_address main option now supports a mixed list of local and remote servers. Remote servers can be IPv6 addresses, and specify a port-range. JH/17 Bug 68: The spamd_address main option now supports an optional timeout value per server. JH/18 Bug 1581: Router and transport options headers_add/remove can now have the list separator specified. JH/19 Bug 392: spamd_address, and clamd av_scanner, now support retry option values. JH/20 Bug 1571: Ensure that $tls_in_peerdn is set, when verification fails under OpenSSL. JH/21 Support for the A6 type of dns record is withdrawn. JH/22 Bug 608: The result of a QUIT or not-QUIT toplevel ACL now matters rather than the verbs used. JH/23 Bug 1572: Increase limit on SMTP confirmation message copy size from 255 to 1024 chars. JH/24 Verification callouts now attempt to use TLS by default. HS/01 DNSSEC options (dnssec_require_domains, dnssec_request_domains) are generic router options now. The defaults didn't change. JH/25 Bug 466: Add RFC2322 support for MIME attachment filenames. Original patch from Alexander Shikoff, worked over by JH. HS/02 Bug 1575: exigrep falls back to autodetection of compressed files if ZCAT_COMMAND is not executable. JH/26 Bug 1539: Add timout/retry options on dnsdb lookups. JH/27 Bug 286: Support SOA lookup in dnsdb lookups. JH/28 Bug 1588: Do not use the A lookup following an AAAA for setting the FQDN. Normally benign, it bites when the pair was led to by a CNAME; modern usage is to not canoicalize the domain to a CNAME target (and we were inconsistent anyway for A-only vs AAAA+A). JH/29 Bug 1632: Removed the word "rejected" from line logged for ACL discards. JH/30 Check the forward DNS lookup for DNSSEC, in addition to the reverse, when evaluating $sender_host_dnssec. JH/31 Check the HELO verification lookup for DNSSEC, adding new $sender_helo_dnssec variable. JH/32 Bug 1397: Enable ECDHE on OpenSSL, just the NIST P-256 curve. JH/33 Bug 1346: Note MAIL cmd seen in -bS batch, to avoid smtp_no_mail log. JH/34 Bug 1648: Fix a memory leak seen with "mailq" and large queues. JH/35 Bug 1642: Fix support of $spam_ variables at delivery time. Was documented as working, but never had. Support all but $spam_report. JH/36 Bug 1659: Guard checking of input smtp commands again pseudo-command added for tls authenticator.
2015-11-03Add SHA512 digests for distfiles for mail categoryagc1-1/+2
Problems found locating distfiles: Package mutt: missing distfile patch-1.5.24.rr.compressed.gz Package p5-Email-Valid: missing distfile Email-Valid-1.198.tar.gz Package pine: missing distfile fancy.patch.gz Package postgrey: missing distfile targrey-0.31-postgrey-1.34.patch Package qmail: missing distfile badrcptto.patch Package qmail: missing distfile outgoingip.patch Package qmail: missing distfile qmail-1.03-realrcptto-2006.12.10.patch Package qmail: missing distfile qmail-smtpd-viruscan-1.3.patch Package thunderbird24: missing distfile enigmail-1.7.2.tar.gz Package thunderbird31: missing distfile enigmail-1.7.2.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
2015-10-10Recursive revbump from textproc/icuryoon1-2/+2
2015-06-12Recursive PKGREVISION bump for all packages mentioning 'perl',wiz1-2/+2
having a PKGNAME of p5-*, or depending such a package, for perl-5.22.0.
2015-04-06Revbump after updating textproc/icuadam1-1/+2
2015-02-14Exim version 4.85adam2-7/+6
----------------- TL/01 When running the test suite, the README says that variables such as no_msglog_check are global and can be placed anywhere in a specific test's script, however it was observed that placement needed to be near the beginning for it to behave that way. Changed the runtest perl script to read through the entire script once to detect and set these variables, reset to the beginning of the script, and then run through the script parsing/test process like normal. TL/02 The BSD's have an arc4random API. One of the functions to induce adding randomness was arc4random_stir(), but it has been removed in OpenBSD 5.5. Detect this OpenBSD version and skip calling this function when detected. JH/01 Expand the EXPERIMENTAL_TPDA feature. Several different events now cause callback expansion. TL/03 Bugzilla 1518: Clarify "condition" processing in routers; that syntax errors in an expansion can be treated as a string instead of logging or causing an error, due to the internal use of bool_lax instead of bool when processing it. JH/02 Add EXPERIMENTAL_DANE, allowing for using the DNS as trust-anchor for server certificates when making smtp deliveries. JH/03 Support secondary-separator specifier for MX, SRV, TLSA lookups. JH/04 Add ${sort {list}{condition}{extractor}} expansion item. TL/04 Bugzilla 1216: Add -M (related messages) option to exigrep. TL/05 GitHub Issue 18: Adjust logic testing for true/false in redis lookups. Merged patch from Sebastian Wiedenroth. JH/05 Fix results-pipe from transport process. Several recipients, combined with certificate use, exposed issues where response data items split over buffer boundaries were not parsed properly. This eventually resulted in duplicates being sent. This issue only became common enough to notice due to the introduction of conection certificate information, the item size being so much larger. Found and fixed by Wolfgang Breyha. JH/06 Bug 1533: Fix truncation of items in headers_remove lists. A fixed size buffer was used, resulting in syntax errors when an expansion exceeded it. JH/07 Add support for directories of certificates when compiled with a GnuTLS version 3.3.6 or later. JH/08 Rename the TPDA expermimental facility to Event Actions. The #ifdef is EXPERIMENTAL_EVENT, the main-configuration and transport options both become "event_action", the variables become $event_name, $event_data and $event_defer_errno. There is a new variable $verify_mode, usable in routers, transports and related events. The tls:cert event is now also raised for inbound connections, if the main configuration event_action option is defined. TL/06 In test suite, disable OCSP for old versions of openssl which contained early OCSP support, but no stapling (appears to be less than 1.0.0). JH/09 When compiled with OpenSSL and EXPERIMENTAL_CERTNAMES, the checks on server certificate names available under the smtp transport option "tls_verify_cert_hostname" now do not permit multi-component wildcard matches. JH/10 Time-related extraction expansions from certificates now use the main option "timezone" setting for output formatting, and are consistent between OpenSSL and GnuTLS compilations. Bug 1541. JH/11 Fix a crash in mime ACL when meeting a zero-length, quoted or RFC2047- encoded parameter in the incoming message. Bug 1558. JH/12 Bug 1527: Autogrow buffer used in reading spool files. Since they now include certificate info, eximon was claiming there were spoolfile syntax errors. JH/13 Bug 1521: Fix ldap lookup for single-attr request, multiple-attr return. JH/14 Log delivery-related information more consistently, using the sequence "H=<name> [<ip>]" wherever possible. TL/07 Bug 1547: Omit RFCs from release. Draft and RFCs have licenses which are problematic for Debian distribution, omit them from the release tarball. JH/15 Updates and fixes to the EXPERIMENTAL_DSN feature. JH/16 Fix string representation of time values on 64bit time_t anchitectures. Bug 1561. JH/17 Fix a null-indirection in certextract expansions when a nondefault output list separator was used.
2014-10-20Enable queue runs in Exim SMF Manifest just like it is with rc.dwiedi2-3/+3
2014-10-07Revbump after updating libwebp and icuadam1-1/+2
2014-08-17Changes 4.84:adam2-6/+6
TL/01 Bugzilla 1506: Re-add a 'return NULL' to silence complaints from static checkers that were complaining about end of non-void function with no return. JH/01 Bug 1513: Fix parsing of quoted parameter values in MIME headers. This was a regression intruduced in 4.83 by another bugfix. JH/02 Fix broken compilation when EXPERIMENTAL_DSN is enabled. TL/02 Bug 1509: Fix exipick for enhanced spoolfile specification used when EXPERIMENTAL_DNS is enabled.
2014-07-23Changes 4.83:adam3-16/+15
1. If built with the EXPERIMENTAL_PROXY feature enabled, Exim can be configured to expect an initial header from a proxy that will make the actual external source IP:host be used in exim instead of the IP of the proxy that is connecting to it. 2. New verify option header_names_ascii, which will check to make sure there are no non-ASCII characters in header names. Exim itself handles those non-ASCII characters, but downstream apps may not, so Exim can detect and reject if those characters are present. 3. New expansion operator ${utf8clean:string} to replace malformed UTF8 codepoints with valid ones. 4. New malware type "sock". Talks over a Unix or TCP socket, sending one command line and matching a regex against the return data for trigger and a second regex to extract malware_name. The mail spoofile name can be included in the command line. 5. The smtp transport now supports options "tls_verify_hosts" and "tls_try_verify_hosts". If either is set the certificate verification is split from the encryption operation. The default remains that a failed verification cancels the encryption. 6. New SERVERS override of default ldap server list. In the ACLs, an ldap lookup can now set a list of servers to use that is different from the default list. 7. New command-line option -C for exiqgrep to specify alternate exim.conf file when searching the queue. 8. OCSP now supports GnuTLS also, if you have version 3.1.3 or later of that. 9. Support for DNSSEC on outbound connections. 10. New variables "tls_(in,out)_(our,peer)cert" and expansion item "certextract" to extract fields from them. Hash operators md5 and sha1 work over them for generating fingerprints, and a new sha256 operator for them added. 11. PRDR is now supported dy default. 12. OCSP stapling is now supported by default. 13. If built with the EXPERIMENTAL_DSN feature enabled, Exim will output Delivery Status Notification messages in MIME format, and negociate DSN features per RFC 3461.
2014-06-14fix SMF Manifest installation by not overwriting INSTALLATION_DIRSwiedi1-2/+2
2014-05-29Bump for perl-5.20.0.wiz1-1/+2
Do it for all packages that * mention perl, or * have a directory name starting with p5-*, or * depend on a package starting with p5- like last time, for 5.18, where this didn't lead to complaints. Let me know if you have any this time.
2014-05-29Changes 4.82.1:adam2-7/+6
This is a SECURITY release, addressing a CRITICAL remote code execution flaw in Exim version 4.82 (only) when built with DMARC support (an experimental feature, not on by default). This release is identical to 4.82 except for the small change needed to plug the security hole. The next release of Exim will, eventually, be 4.83, which will include the many improvements we've made since 4.82, but which will require the normal release candidate baking process before release. You are not vulnerable unless you built Exim with EXPERIMENTAL_DMARC. This issue is known by the CVE ID of CVE-2014-2957, was reported directly to the Exim development team by a company which uses Exim for its mail server. An Exim developer constructed a small patch which altered the way the contents of the From header is parsed by converting it to use safer and better internal functions. It was applied and tested on a production server for correctness. We were notified of the vulnerability Friday night, created a patch on Saturday, applied and tested it on Sunday, notified OS packagers on Monday/Tuesday, and are releasing on the next available work day, which is Wednesday. This is why we have made the smallest feasible changes to prevent exploit: we want this chagne to be as safe as possible to expedite into production (if the packages were built with DMARC).
2014-04-30Add SMF manifest. Contributed by BroSys on GitHub.jperkin2-1/+48
2014-04-09recursive bump from icu shlib major bump.obache1-2/+2
2014-04-02Add two new options for exim:wiedi3-11/+34
- exim-lookup-redis: allow quering redis from within the exim config, needs hiredis - opendmarc: enables DMARC support Both are disabled by default.
2014-03-11Remove example rc.d scripts from PLISTs.jperkin1-2/+1
These are now handled dynamically if INIT_SYSTEM is set to "rc.d", or ignored otherwise.
2014-02-12Recursive PKGREVISION bump for OpenSSL API version bump.tron1-1/+2
2013-10-30Version 4.82adam2-7/+6
1. New command-line option -bI:sieve will list all supported sieve extensions of this Exim build on standard output, one per line. ManageSieve (RFC 5804) providers managing scripts for use by Exim should query this to establish the correct list to include in the protocol's SIEVE capability line. 2. If the -n option is combined with the -bP option, then the name of an emitted option is not output, only the value (if visible to you). For instance, "exim -n -bP pid_file_path" should just emit a pathname followed by a newline, and no other text. 3. When built with SUPPORT_TLS and USE_GNUTLS, the SMTP transport driver now has a "tls_dh_min_bits" option, to set the minimum acceptable number of bits in the Diffie-Hellman prime offered by a server (in DH ciphersuites) acceptable for security. (Option accepted but ignored if using OpenSSL). Defaults to 1024, the old value. May be lowered only to 512, or raised as far as you like. Raising this may hinder TLS interoperability with other sites and is not currently recommended. Lowering this will permit you to establish a TLS session which is not as secure as you might like. Unless you really know what you are doing, leave it alone. 4. If not built with DISABLE_DNSSEC, Exim now has the main option dns_dnssec_ok; if set to 1 then Exim will initialise the resolver library to send the DO flag to your recursive resolver. If you have a recursive resolver, which can set the Authenticated Data (AD) flag in results, Exim can now detect this. Exim does not perform validation itself, instead relying upon a trusted path to the resolver. Current status: work-in-progress; $sender_host_dnssec variable added. 5. DSCP support for outbound connections: on a transport using the smtp driver, set "dscp = ef", for instance, to cause the connections to have the relevant DSCP (IPv4 TOS or IPv6 TCLASS) value in the header. Similarly for inbound connections, there is a new control modifier, dscp, so "warn control = dscp/ef" in the connect ACL, or after authentication. Supported values depend upon system libraries. "exim -bI:dscp" to list the ones Exim knows of. You can also set a raw number 0..0x3F. 6. The -G command-line flag is no longer ignored; it is now equivalent to an ACL setting "control = suppress_local_fixups". The -L command-line flag is now accepted and forces use of syslog, with the provided tag as the process name. A few other flags used by Sendmail are now accepted and ignored. 7. New cutthrough routing feature. Requested by a "control = cutthrough_delivery" ACL modifier; works for single-recipient mails which are recieved on and deliverable via SMTP. Using the connection made for a recipient verify, if requested before the verify, or a new one made for the purpose while the inbound connection is still active. The bulk of the mail item is copied direct from the inbound socket to the outbound (as well as the spool file). When the source notifies the end of data, the data acceptance by the destination is negociated before the acceptance is sent to the source. If the destination does not accept the mail item, for example due to content-scanning, the item is not accepted from the source and therefore there is no need to generate a bounce mail. This is of benefit when providing a secondary-MX service. The downside is that delays are under the control of the ultimate destination system not your own. The Recieved-by: header on items delivered by cutthrough is generated early in reception rather than at the end; this will affect any timestamp included. The log line showing delivery is recorded before that showing reception; it uses a new ">>" tag instead of "=>". To support the feature, verify-callout connections can now use ESMTP and TLS. The usual smtp transport options are honoured, plus a (new, default everything) hosts_verify_avoid_tls. New variable families named tls_in_cipher, tls_out_cipher etc. are introduced for specific access to the information for each connection. The old names are present for now but deprecated. Not yet supported: IGNOREQUOTA, SIZE, PIPELINING. 8. New expansion operators ${listnamed:name} to get the content of a named list and ${listcount:string} to count the items in a list. 9. New global option "gnutls_allow_auto_pkcs11", defaults false. The GnuTLS rewrite in 4.80 combines with GnuTLS 2.12.0 or later, to autoload PKCS11 modules. For some situations this is desirable, but we expect admin in those situations to know they want the feature. More commonly, it means that GUI user modules get loaded and are broken by the setuid Exim being unable to access files specified in environment variables and passed through, thus breakage. So we explicitly inhibit the PKCS11 initialisation unless this new option is set. Some older OS's with earlier versions of GnuTLS might not have pkcs11 ability, so have also added a build option which can be used to build Exim with GnuTLS but without trying to use any kind of PKCS11 support. Uncomment this in the Local/Makefile: AVOID_GNUTLS_PKCS11=yes 10. The "acl = name" condition on an ACL now supports optional arguments. New expansion item "${acl {name}{arg}...}" and expansion condition "acl {{name}{arg}...}" are added. In all cases up to nine arguments can be used, appearing in $acl_arg1 to $acl_arg9 for the called ACL. Variable $acl_narg contains the number of arguments. If the ACL sets a "message =" value this becomes the result of the expansion item, or the value of $value for the expansion condition. If the ACL returns accept the expansion condition is true; if reject, false. A defer return results in a forced fail. 11. Routers and transports can now have multiple headers_add and headers_remove option lines. The concatenated list is used. 12. New ACL modifier "remove_header" can remove headers before message gets handled by routers/transports. 13. New dnsdb lookup pseudo-type "a+". A sequence of "a6" (if configured), "aaaa" and "a" lookups is done and the full set of results returned. 14. New expansion variable $headers_added with content from ACL add_header modifier (but not yet added to messsage). 15. New 8bitmime status logging option for received messages. Log field "M8S". 16. New authenticated_sender logging option, adding to log field "A". 17. New expansion variables $router_name and $transport_name. Useful particularly for debug_print as -bt commandline option does not require privilege whereas -d does. 18. If built with EXPERIMENTAL_PRDR, per-recipient data responses per a proposed extension to SMTP from Eric Hall. 19. The pipe transport has gained the force_command option, to allow decorating commands from user .forward pipe aliases with prefix wrappers, for instance. 20. Callout connections can now AUTH; the same controls as normal delivery connections apply. 21. Support for DMARC, using opendmarc libs, can be enabled. It adds new options: dmarc_forensic_sender, dmarc_history_file, and dmarc_tld_file. It adds new expansion variables $dmarc_ar_header, $dmarc_status, $dmarc_status_text, and $dmarc_used_domain. It adds a new acl modifier dmarc_status. It adds new control flags dmarc_disable_verify and dmarc_enable_forensic. 22. Add expansion variable $authenticated_fail_id, which is the username provided to the authentication method which failed. It is available for use in subsequent ACL processing (typically quit or notquit ACLs). 23. New ACL modifer "udpsend" can construct a UDP packet to send to a given UDP host and port. 24. New ${hexquote:..string..} expansion operator converts non-printable characters in the string to \xNN form. 25. Experimental TPDA (Transport Post Delivery Action) function added. Patch provided by Axel Rau. 26. Experimental Redis lookup added. Patch provided by Warren Baker.
2013-10-19Revbump after updating textproc/icuadam1-2/+2
2013-09-02Avoid use of non-portable "local" keyword in shell scripts. Fixes build onjperkin2-1/+39
SunOS >= 5.11 where /bin/sh is ksh93.
2013-07-15* .include "../../devel/readline/buildlink3.mk" with USE_GNU_READLINE=yesryoon1-2/+1
are replaced with .include "../../devel/readline/buildlink3.mk", and USE_GNU_READLINE are removed, * .include "../../devel/readline/buildlink3.mk" without USE_GNU_READLINE are replaced with .include "../../mk/readline.buildlink3.mk".
2013-07-12Bump PKGREVISION of all packages which create users, to pick up change ofjperkin1-2/+2
sysutils/user_* packages.
2013-05-31Bump all packages for perl-5.18, thatwiz1-2/+2
a) refer 'perl' in their Makefile, or b) have a directory name of p5-*, or c) have any dependency on any p5-* package Like last time, where this caused no complaints.
2013-05-09Massive revbump after updating graphics/ilmbase, graphics/openexr, textproc/icu.adam1-2/+2
2013-03-02Bump PKGREVISION for mysql default change to 55.wiz1-2/+2
2013-02-06PKGREVISION bumps for the security/openssl 1.0.1d update.jperkin1-2/+2
2013-01-26Revbump after graphics/jpeg and textproc/icuadam1-2/+2
2012-12-16recursive bump from cyrus-sasl libsasl2 shlib major bump.obache1-1/+2
2012-10-30Updated mail/exim to 4.80.1abs2-7/+6
Exim version 4.80.1 ------------------- PP/01 SECURITY: protect DKIM DNS decoding from remote exploit. CVE-2012-5671 This, or similar/improved, will also be change PP/11 of 4.81. See: https://secunia.com/advisories/51098/
2012-10-08Drop PKG_DESTDIR_SUPPORT setting, "user-destdir" is default these days.asau1-3/+1
2012-10-03Bump all packages that use perl, or depend on a p5-* package, orwiz1-1/+2
are called p5-*. I hope that's all of them.
2012-06-12Add inet6 to default suggested options. It's 2012.wiz1-2/+2
2012-06-11Changes 4.80:adam7-139/+38
1. New authenticator driver, "gsasl". Server-only (at present). This is a SASL interface, licensed under GPL, which can be found at http://www.gnu.org/software/gsasl/. This system does not provide sources of data for authentication, so careful use needs to be made of the conditions in Exim. 2. New authenticator driver, "heimdal_gssapi". Server-only. A replacement for using cyrus_sasl with Heimdal, now that $KRB5_KTNAME is no longer honoured for setuid programs by Heimdal. Use the "server_keytab" option to point to the keytab. 3. The "pkg-config" system can now be used when building Exim to reference cflags and library information for lookups and authenticators, rather than having to update "CFLAGS", "AUTH_LIBS", "LOOKUP_INCLUDE" and "LOOKUP_LIBS" directly. Similarly for handling the TLS library support without adjusting "TLS_INCLUDE" and "TLS_LIBS". In addition, setting PCRE_CONFIG=yes will query the pcre-config tool to find the headers and libraries for PCRE. 4. New expansion variable $tls_bits. 5. New lookup type, "dbmjz". Key is an Exim list, the elements of which will be joined together with ASCII NUL characters to construct the key to pass into the DBM library. Can be used with gsasl to access sasldb2 files as used by Cyrus SASL. 6. OpenSSL now supports TLS1.1 and TLS1.2 with OpenSSL 1.0.1. Avoid release 1.0.1a if you can. Note that the default value of "openssl_options" is no longer "+dont_insert_empty_fragments", as that increased susceptibility to attack. This may still have interoperability implications for very old clients (see version 4.31 change 37) but administrators can choose to make the trade-off themselves and restore compatibility at the cost of session security. 7. Use of the new expansion variable $tls_sni in the main configuration option tls_certificate will cause Exim to re-expand the option, if the client sends the TLS Server Name Indication extension, to permit choosing a different certificate; tls_privatekey will also be re-expanded. You must still set these options to expand to valid files when $tls_sni is not set. The SMTP Transport has gained the option tls_sni, which will set a hostname for outbound TLS sessions, and set $tls_sni too. A new log_selector, +tls_sni, has been added, to log received SNI values for Exim as a server. 8. The existing "accept_8bitmime" option now defaults to true. This means that Exim is deliberately not strictly RFC compliant. We're following Dan Bernstein's advice in http://cr.yp.to/smtp/8bitmime.html by default. Those who disagree, or know that they are talking to mail servers that, even today, are not 8-bit clean, need to turn off this option. 9. Exim can now be started with -bw (with an optional timeout, given as -bw<timespec>). With this, stdin at startup is a socket that is already listening for connections. This has a more modern name of "socket activation", but forcing the activated socket to fd 0. We're interested in adding more support for modern variants. 10. ${eval } now uses 64-bit values on supporting platforms. A new "G" suffix for numbers indicates multiplication by 1024^3. 11. The GnuTLS support has been revamped; the three options gnutls_require_kx, gnutls_require_mac & gnutls_require_protocols are no longer supported. tls_require_ciphers is now parsed by gnutls_priority_init(3) as a priority string, documentation for which is at: http://www.gnu.org/software/gnutls/manual/html_node/Priority-Strings.html SNI support has been added to Exim's GnuTLS integration too. For sufficiently recent GnuTLS libraries, ${randint:..} will now use gnutls_rnd(), asking for GNUTLS_RND_NONCE level randomness. 12. With OpenSSL, if built with EXPERIMENTAL_OCSP, a new option tls_ocsp_file is now available. If the contents of the file are valid, then Exim will send that back in response to a TLS status request; this is OCSP Stapling. Exim will not maintain the contents of the file in any way: administrators are responsible for ensuring that it is up-to-date. 13. ${lookup dnsdb{ }} supports now SPF record types. They are handled identically to TXT record lookups. 14. New expansion variable $tod_epoch_l for higher-precision time. 15. New global option tls_dh_max_bits, defaulting to current value of NSS hard-coded limit of DH ephemeral bits, to fix interop problems caused by GnuTLS 2.12 library recommending a bit count higher than NSS supports. 16. tls_dhparam now used by both OpenSSL and GnuTLS, can be path or identifier. Option can now be a path or an identifier for a standard prime. If unset, we use the DH prime from section 2.2 of RFC 5114, "ike23". Set to "historic" to get the old GnuTLS behaviour of auto-generated DH primes. 17. SSLv2 now disabled by default in OpenSSL. (Never supported by GnuTLS). Use "openssl_options -no_sslv2" to re-enable support, if your OpenSSL install was not built with OPENSSL_NO_SSL2 ("no-ssl2").
2012-04-27Recursive bump from icu shlib major bumped to 49.obache1-2/+2
2012-03-03Recursive bump for pcre-8.30* (shlib major change)wiz1-2/+2