head 1.17; access; symbols pkgsrc-2016Q4:1.16.0.38 pkgsrc-2016Q4-base:1.16 pkgsrc-2016Q3:1.16.0.36 pkgsrc-2016Q3-base:1.16 pkgsrc-2016Q2:1.16.0.34 pkgsrc-2016Q2-base:1.16 pkgsrc-2016Q1:1.16.0.32 pkgsrc-2016Q1-base:1.16 pkgsrc-2015Q4:1.16.0.30 pkgsrc-2015Q4-base:1.16 pkgsrc-2015Q3:1.16.0.28 pkgsrc-2015Q3-base:1.16 pkgsrc-2015Q2:1.16.0.26 pkgsrc-2015Q2-base:1.16 pkgsrc-2015Q1:1.16.0.24 pkgsrc-2015Q1-base:1.16 pkgsrc-2014Q4:1.16.0.22 pkgsrc-2014Q4-base:1.16 pkgsrc-2014Q3:1.16.0.20 pkgsrc-2014Q3-base:1.16 pkgsrc-2014Q2:1.16.0.18 pkgsrc-2014Q2-base:1.16 pkgsrc-2014Q1:1.16.0.16 pkgsrc-2014Q1-base:1.16 pkgsrc-2013Q4:1.16.0.14 pkgsrc-2013Q4-base:1.16 pkgsrc-2013Q3:1.16.0.12 pkgsrc-2013Q3-base:1.16 pkgsrc-2013Q2:1.16.0.10 pkgsrc-2013Q2-base:1.16 pkgsrc-2013Q1:1.16.0.8 pkgsrc-2013Q1-base:1.16 pkgsrc-2012Q4:1.16.0.6 pkgsrc-2012Q4-base:1.16 pkgsrc-2012Q3:1.16.0.4 pkgsrc-2012Q3-base:1.16 pkgsrc-2012Q2:1.16.0.2 pkgsrc-2012Q2-base:1.16 pkgsrc-2012Q1:1.15.0.12 pkgsrc-2012Q1-base:1.15 pkgsrc-2011Q4:1.15.0.10 pkgsrc-2011Q4-base:1.15 pkgsrc-2011Q3:1.15.0.8 pkgsrc-2011Q3-base:1.15 pkgsrc-2011Q2:1.15.0.6 pkgsrc-2011Q2-base:1.15 pkgsrc-2011Q1:1.15.0.4 pkgsrc-2011Q1-base:1.15 pkgsrc-2010Q4:1.15.0.2 pkgsrc-2010Q4-base:1.15 pkgsrc-2010Q3:1.14.0.8 pkgsrc-2010Q3-base:1.14 pkgsrc-2010Q2:1.14.0.6 pkgsrc-2010Q2-base:1.14 pkgsrc-2010Q1:1.14.0.4 pkgsrc-2010Q1-base:1.14 pkgsrc-2009Q4:1.14.0.2 pkgsrc-2009Q4-base:1.14 pkgsrc-2009Q3:1.13.0.30 pkgsrc-2009Q3-base:1.13 pkgsrc-2009Q2:1.13.0.28 pkgsrc-2009Q2-base:1.13 pkgsrc-2009Q1:1.13.0.26 pkgsrc-2009Q1-base:1.13 pkgsrc-2008Q4:1.13.0.24 pkgsrc-2008Q4-base:1.13 pkgsrc-2008Q3:1.13.0.22 pkgsrc-2008Q3-base:1.13 cube-native-xorg:1.13.0.20 cube-native-xorg-base:1.13 pkgsrc-2008Q2:1.13.0.18 pkgsrc-2008Q2-base:1.13 cwrapper:1.13.0.16 pkgsrc-2008Q1:1.13.0.14 pkgsrc-2008Q1-base:1.13 pkgsrc-2007Q4:1.13.0.12 pkgsrc-2007Q4-base:1.13 pkgsrc-2007Q3:1.13.0.10 pkgsrc-2007Q3-base:1.13 pkgsrc-2007Q2:1.13.0.8 pkgsrc-2007Q2-base:1.13 pkgsrc-2007Q1:1.13.0.6 pkgsrc-2007Q1-base:1.13 pkgsrc-2006Q4:1.13.0.4 pkgsrc-2006Q4-base:1.13 pkgsrc-2006Q3:1.13.0.2 pkgsrc-2006Q3-base:1.13 pkgsrc-2006Q2:1.12.0.10 pkgsrc-2006Q2-base:1.12 pkgsrc-2006Q1:1.12.0.8 pkgsrc-2006Q1-base:1.12 pkgsrc-2005Q4:1.12.0.6 pkgsrc-2005Q4-base:1.12 pkgsrc-2005Q3:1.12.0.4 pkgsrc-2005Q3-base:1.12 pkgsrc-2005Q2:1.12.0.2 pkgsrc-2005Q2-base:1.12 pkgsrc-2005Q1:1.11.0.6 pkgsrc-2005Q1-base:1.11 pkgsrc-2004Q4:1.11.0.4 pkgsrc-2004Q4-base:1.11 pkgsrc-2004Q3:1.11.0.2 pkgsrc-2004Q3-base:1.11 pkgsrc-2004Q2:1.10.0.2 pkgsrc-2004Q2-base:1.10 pkgsrc-2004Q1:1.9.0.4 pkgsrc-2004Q1-base:1.9 pkgsrc-2003Q4:1.9.0.2 pkgsrc-2003Q4-base:1.9 netbsd-1-6-1:1.6.0.2 netbsd-1-6-1-base:1.6 netbsd-1-6:1.5.0.6 netbsd-1-6-RELEASE-base:1.5 pkgviews:1.5.0.2 pkgviews-base:1.5 buildlink2:1.4.0.2 buildlink2-base:1.5 netbsd-1-5-PATCH003:1.4 netbsd-1-5-PATCH001:1.3 netbsd-1-5-RELEASE:1.2 netbsd-1-4-PATCH003:1.2 netbsd-1-4-PATCH002:1.2 comdex-fall-1999:1.1; locks; strict; comment @# @; 1.17 date 2017.03.18.07.08.23; author adam; state dead; branches; next 1.16; commitid wn8hiY0Mb2Zl70Kz; 1.16 date 2012.06.11.11.41.25; author adam; state Exp; branches; next 1.15; 1.15 date 2010.11.08.13.59.11; author adam; state Exp; branches; next 1.14; 1.14 date 2009.11.17.06.39.32; author adam; state Exp; branches; next 1.13; 1.13 date 2006.08.08.15.24.01; author abs; state Exp; branches; next 1.12; 1.12 date 2005.05.17.17.06.12; author abs; state Exp; branches; next 1.11; 1.11 date 2004.08.27.10.46.52; author abs; state Exp; branches; next 1.10; 1.10 date 2004.05.07.17.47.32; author abs; state Exp; branches; next 1.9; 1.9 date 2003.09.02.10.33.41; author abs; state Exp; branches 1.9.4.1; next 1.8; 1.8 date 2003.08.02.17.00.10; author jmmv; state Exp; branches; next 1.7; 1.7 date 2003.03.22.12.37.25; author jmmv; state Exp; branches; next 1.6; 1.6 date 2002.10.25.12.18.16; author wiz; state Exp; branches; next 1.5; 1.5 date 2002.06.19.16.02.27; author ad; state Exp; branches; next 1.4; 1.4 date 2001.06.11.12.15.46; author ad; state Exp; branches 1.4.2.1; next 1.3; 1.3 date 2000.11.26.21.59.47; author ad; state Exp; branches; next 1.2; 1.2 date 99.12.07.20.21.48; author rh; state Exp; branches; next 1.1; 1.1 date 99.09.07.13.21.03; author ad; state Exp; branches; next ; 1.9.4.1 date 2004.05.30.09.00.06; author grant; state Exp; branches; next ; 1.4.2.1 date 2002.06.23.18.51.12; author jlam; state Exp; branches; next ; desc @@ 1.17 log @Version 4.89 ------------ 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. @ text @$NetBSD: patch-ab,v 1.16 2012/06/11 11:41:25 adam Exp $ --- OS/Makefile-Default.orig 2012-05-31 00:40:15.000000000 +0000 +++ OS/Makefile-Default @@@@ -71,7 +71,7 @@@@ PERL_COMMAND=/usr/bin/perl # CC contains the name of the C compiler to be used. -CC=gcc +# CC=gcc # CFLAGS contains flags to be passed to the compiler. Nothing is defaulted @@@@ -84,7 +84,7 @@@@ CC=gcc # here; instead each OS-dependent Makefile contains a default setting if one # is needed. -# LFLAGS= +LFLAGS=$(LDFLAGS) # PCRE_LIBS contains the library to be linked for PCRE @ 1.16 log @Changes 4.80: 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). 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"). @ text @d1 1 a1 1 $NetBSD$ @ 1.15 log @* Fix resolver on NetBSD when Exim is linked with pthreads (e.g. when using sqlite). * Pass LDFLAGS for linking (useful with different SDKs on Mac OS X). @ text @d3 1 a3 1 --- OS/Makefile-Default.orig 2009-10-16 07:30:54.000000000 +0000 d5 1 a5 1 @@@@ -73,7 +73,7 @@@@ PERL_COMMAND=/usr/bin/perl d14 1 a14 1 @@@@ -86,7 +86,7 @@@@ CC=gcc @ 1.14 log @Changes 4.70: * Added patch by Johannes Berg that expands the main option "spamd_servers" if it starts with a dollar sign. * Write list of recipients to X-Envelope-Sender header when building the mbox-format spool file for content scanning. * Added patch by Wolfgang Breyha that adds experimental DCC (http://www.dcc-servers.net/) support via dccifd. Activated by setting EXPERIMENTAL_DCC=yes in Local/Makefile. Check out experimental_spec.txt for more documentation. * Bugzilla 673: Add f-protd malware scanner support. * Bugzilla 657: Embedded PCRE removed from the exim source tree. When building exim an external PCRE library is now needed - PCRE is a system library on the majority of modern systems. See entry on PCRE_LIBS in EDITME file. * Bugzilla 646: Removed unwanted C/R in Dovecot authenticator conversation. Added nologin parameter to request. * Do not log submission mode rewrites if they do not change the address. * Bugzilla 662: Fix stack corruption before exec() in daemon.c. * Bugzilla 602: exicyclog now handles panic log, and creates empty log files in place. Contributed by Roberto Lima * Bugzilla 667: close socket used by dovecot authenticator * Bugzilla 615: When checking the local_parts router precondition after a local_part_suffix or local_part_prefix option, Exim now does not use the address's named list lookup cache, since this contains cached lookups for the whole local part. * Bugzilla 521: Integrated SPF Best Guess support contributed by Robert Millan. Documentation is in experimental-spec.txt * Bugzilla 668: Fix parallel build (make -j). * Bugzilla 437: Prevent Maildir aux files being created with mode 000 * Bugzilla 598: Improvement to Dovecot authenticator handling. * Leading white space used to be stripped from $spam_report which wrecked the formatting. Now it is preserved. * Save $spam_score, $spam_bar, and $spam_report in spool files, so that they are available at delivery time. * Fix the way ${extract is skipped in the untaken branch of a conditional. * TLS error reporting now respects the incoming_interface and incoming_port log selectors. * more... @ text @d3 1 a3 1 --- OS/Makefile-Default.orig 2009-10-16 09:30:54.000000000 +0200 d14 9 @ 1.13 log @Update exim from 4.54 to 4.62 Exim version 4.62 ----------------- TF/01 Fix the add_header change below (4.61 PH/55) which had a bug that (amongst other effects) broke the use of negated acl sub-conditions. PH/01 ${readsocket now supports Internet domain sockets (modified John Jetmore patch). PH/02 When tcp-wrappers is called from Exim, it returns only "deny" or "allow". "Deny" causes Exim to reject the incoming connection with a 554 error. Unfortunately, if there is a major crisis, such as a disk failure, tcp-wrappers gives "deny", whereas what one would like would be some kind of temporary error. A kludge has been added to help with this. Before calling hosts_ctl(), errno is set zero. If the result is "deny", a 554 error is used if errno is still zero or contains ENOENT (which occurs if either of the /etc/hosts.{allow,deny} files is missing). Otherwise, a 451 error is used. PH/03 Add -lutil to the default FreeBSD LIBS setting. PH/04 Change PH/19 for 4.61 was too wide. It should not be applied to host errors. Otherwise a message that provokes a temporary error (when other messages do not) can cause a whole host to time out. PH/05 Batch deliveries by appendfile and pipe transports did not work when the addresses were routed directly to files or pipes from a redirect router. File deliveries just didn't batch; pipe deliveries might have suffered odd errors. PH/06 A failure to get a lock for a hints database would erroneously always say "Failed to get write lock", even when it was really a read lock. PH/07 The appendfile transport was creating MBX lock files with a fixed mode of 0600. This has been changed to use the value of the lockfile_mode option (which defaults to 0600). PH/08 Applied small patch from the Sieve maintainer. PH/09 If maildir_quota_directory_regex was set to exclude (say) the .Trash folder from quota calculations, a direct delivery into this folder messed up the contents of the maildirsize file. This was because the regex was used only to exclude .Trash (or whatever) when the size of the mailbox was calculated. There was no check that a delivery was happening into an excluded directory. This bug has been fixed by ignoring all quota processing for deliveries into excluded directories. PH/10 Added the maildirfolder_create_regex option to appendfile. Exim version 4.61 ----------------- PH/01 The code for finding all the local interface addresses on a FreeBSD system running IPv6 was broken. This may well have applied to all BSD systems, as well as to others that have similar system calls. The broken code found IPv4 interfaces correctly, but gave incorrect values for the IPv6 interfaces. In particular, ::1 was not found. The effect in Exim was that it would not match correctly against @@[] and not recognize the IPv6 addresses as local. PH/02 The ipliteral router was not recognizing addresses of the form user@@ [ipv6:....] because it didn't know about the "ipv6:" prefix. PH/03 Added disable_ipv6. PH/04 Changed $reply_address to use the raw form of the headers instead of the decoded form, because it is most often used to construct To: headers lines in autoreplies, and the decoded form may well be syntactically invalid. However, $reply_address has leading white space removed, and all newlines turned into spaces so that the autoreply transport does not grumble. PH/05 If group was specified without a user on a router, and no group or user was specified on a transport, the group from the router was ignored. PH/06 Increased the number of ACL variables to 20 of each type, and arranged for visible compile-time settings that can be used to change these numbers, for those that want even more. Backwards compatibility with old spool files has been maintained. However, going back to a previous Exim release will lost any variables that are in spool files. PH/07 Two small changes when running in the test harness: increase delay when passing a TCP/IP connection to a new process, in case the original process has to generate a bounce, and remove special handling of 127.0.0.2 (sic), which is no longer necessary. PH/08 Changed debug output of dbfn_open() flags from numbers to names, so as to be the same on different OS. PH/09 Moved a debug statement in filter processing to avoid a race problem when testing. JJ/01 exipick: fixed bug where -b (brief) output option showed "Vars:" whether --show-vars was specified or not JJ/02 exipick: Added support for new ACL variable spool format introduced in 4.61-PH/06 PH/10 Fixed another bug related to PH/04 above: if an incoming message had a syntactically invalid From: or Reply-to: line, and a filter used this to generate an autoreply, and therefore failed to obtain an address for the autoreply, Exim could try to deliver to a non-existent relative file name, causing unrelated and misleading errors. What now happens is that it logs this as a hard delivery error, but does not attempt to create a bounce message. PH/11 The exinext utility has a -C option for testing purposes, but although the given file was scanned by exinext itself; it wasn't being passed on when Exim was called. PH/12 In the smtp transport, treat an explicit ECONNRESET error the same as an end-of-file indication when reading a command response. PH/13 Domain literals for IPv6 were not recognized unless IPv6 support was compiled. In many other places in Exim, IPv6 addresses are always recognized, so I have changed this. It also means that IPv4 domain literals of the form [IPV4:n.n.n.n] are now always recognized. PH/14 When a uid/gid is specified for the queryprogram router, it cannot be used if the router is not running as root, for example, when verifying at ACL time, or when using -bh. The debugging output from this situation was non-existent - all you got was a failure to exec. I have made two changes: (a) Failures to set uid/gid, the current directory, or a process leader in a subprocess such as that created by queryprogram now generate suitable debugging ouput when -d is set. (b) The queryprogram router detects when it is not running as root, outputs suitable debugging information if -d is set, and then runs the subprocess without attempting to change uid/gid. PH/15 Minor change to Makefile for building test_host (undocumented testing feature). PH/16 As discussed on the list in Nov/Dec: Exim no longer looks at the additional section of a DNS packet that returns MX or SRV records. Instead, it always explicitly searches for A/AAAA records. This avoids major problems that occur when a DNS server includes only records of one type (A or AAAA) in an MX/SRV packet. A byproduct of this change has fixed another bug: if SRV records were looked up and the corresponding address records were *not* found in the additional section, the port values from the SRV records were lost. PH/17 If a delivery to a pipe, file, or autoreply was deferred, Exim was not using the correct key (the original address) when searching the retry rules in order to find which one to use for generating the retry hint. PH/18 If quota_warn_message contains a From: header, Exim now refrains from adding the default one. Similarly, if it contains a Reply-To: header, the errors_reply_to option, if set, is not used. PH/19 When calculating a retry time, Exim used to measure the "time since failure" by looking at the "first failed" field in the retry record. Now it does not use this if it is later than than the arrival time of the message. Instead it uses the arrival time. This makes for better behaviour in cases where some deliveries succeed, thus re-setting the "first failed" field. An example is a quota failure for a huge message when small messages continue to be delivered. Without this change, the "time since failure" will always be short, possible causing more frequent delivery attempts for the huge message than are intended. [Note: This change was subsequently modified - see PH/04 for 4.62.] PH/20 Added $auth1, $auth2, $auth3 to contain authentication data (as well as $1, $2, $3) because the numerical variables can be reset during some expansion items (e.g. "match"), thereby losing the authentication data. PH/21 Make -bV show the size of off_t variables so that the test suite can decide whether to run tests for quotas > 2G. PH/22 Test the values given for quota, quota_filecount, quota_warn_threshold, mailbox_size, and mailbox_filecount in the appendfile transport. If a filecount value is greater than 2G or if a quota value is greater than 2G on a system where the size of off_t is not greater than 4, a panic error is given. PH/23 When a malformed item such as 1.2.3/24 appears in a host list, it can never match. The debug and -bh output now contains an explicit error message indicating a malformed IPv4 address or mask. PH/24 An host item such as 1.2.3.4/abc was being treated as the IP address 1.2.3.4 without a mask. Now it is not recognized as an IP address, and PH/23 above applies. PH/25 Do not write to syslog when running in the test harness. The only occasion when this arises is a failure to open the main or panic logs (for which there is an explicit test). PH/26 Added the /no_tell option to "control=freeze". PH/27 If a host name lookup failed very early in a connection, for example, if the IP address matched host_lookup and the reverse lookup yielded a name that did not have a forward lookup, an error message of the form "no IP address found for host xxx.xxx.xxx (during SMTP connection from NULL)" could be logged. Now it outputs the IP address instead of "NULL". PH/28 An enabling patch from MH: add new function child_open_exim2() which allows the sender and the authenticated sender to be set when submitting a message from within Exim. Since child_open_exim() is documented for local_scan(), the new function should be too. PH/29 In GnuTLS, a forced expansion failure for tls_privatekey was not being ignored. In both GnuTLS and OpenSSL, an expansion of tls_privatekey that results in an empty string is now treated as unset. PH/30 Fix eximon buffer overflow bug (Bugzilla #73). PH/31 Added sender_verify_fail logging option. PH/32 In November 2003, the code in Exim that added an empty Bcc: header when needed by RFC 822 but not by RFC 2822 was commented out. I have now tidied the source and removed it altogether. PH/33 When a queue run was abandoned because the load average was too high, a log line was always written; now it is written only if the queue_run log selector is set. In addition, the log line for abandonment now contains information about the queue run such as the pid. This is always present in "start" and "stop" lines but was omitted from the "abandon" line. PH/34 Omit spaces between a header name and the colon in the error message that is given when verify = headers_syntax fails (if there are lots of them, the message gets confusing). PH/35 Change the default for dns_check_names_pattern to allow slashes within names, as there are now some PTR records that contain slashes. This check is only to protect against broken name servers that fall over on strange characters, so the fact that it applies to all lookups doesn't matter. PH/36 Now that the new test suite is complete, we can remove some of the special code in Exim that was needed for the old test suite. For example, sorting DNS records because real resolvers return them in an arbitrary order. The new test suite's fake resolver always returns records in the same order. PH/37 When running in the test harness, use -odi for submitted messages (e.g. bounces) except when queue_only is set, to avoid logging races between the different processes. PH/38 Panic-die if .include specifies a non-absolute path. PH/39 A tweak to the "H" retry rule from its user. JJ/03 exipick: Removed parentheses from 'next' and 'last' calls that specified a label. They prevented compilation on older perls. JJ/04 exipick: Refactored code to prevent implicit split to @@_ which caused a warning to be raised on newish perls. JJ/05 exipick: Fixed bug where -bpc always showed a count of all messages on queue. Changes to match documented behaviour of showing count of messages matching specified criteria. PH/40 Changed the default ident timeout from 30s to 5s. PH/41 Added support for the use of login_cap features, on those BSD systems that have them, for controlling the resources used by pipe deliveries. PH/42 The content-scanning code uses fopen() to create files in which to put message data. Previously it was not paying any attention to the mode of the files. Exim runs with umask(0) because the rest of the code creates files with open(), and sets the required mode explicitly. Thus, these files were ending up world-writeable. This was not a big issue, because, being within the spool directory, they were not world-accessible. I have created a function called modefopen, which takes an additional mode argument. It sets umask(777), creates the file, chmods it to the required mode, then resets the umask. All the relevant calls to fopen() in the content scanning code have been changed to use this function. PH/43 If retry_interval_max is set greater than 24 hours, it is quietly reset to 24 hours. This avoids potential overflow problems when processing G and H retry rules. I suspect nobody ever tinkers with this value. PH/44 Added STRIP_COMMAND=/usr/bin/strip to the FreeBSD Makefile. PH/45 When the plaintext authenticator is running as a client, the server's challenges are checked to ensure they are valid base64 strings. By default, the authentication attempt is cancelled if an invalid string is received. Setting client_ignore_invalid_base64 true ignores these errors. The decoded challenge strings are now placed in $auth1, $auth2, etc. as they are received. Thus, the responses can be made to depend on the challenges. If an invalid string is ignored, an empty string is placed in the variable. PH/46 Messages that are created by the autoreply transport now contains a References: header, in accordance with RFCs 2822 and 3834. PH/47 Added authenticated_sender_force to the smtp transport. PH/48 The ${prvs expansion was broken on systems where time_t was long long. PH/49 Installed latest patch from the Sieve maintainer. PH/50 When an Exim quota was set without a file count quota, and mailbox_size was also set, the appendfile transport was unnecessarily scanning a directory of message files (e.g. for maildir delivery) to find the count of files (along with the size), even though it did not need this information. It now does the scan only if it needs to find either the size of the count of files. PH/51 Added ${time_eval: to convert Exim time strings into seconds. PH/52 Two bugs concerned with error handling when the smtp transport is used in LMTP mode: (i) Exim was not creating retry information for temporary errors given for individual recipients after the DATA command when the smtp transport was used in LMTP mode. This meant that they could be retried too frequently, and not timed out correctly. (ii) Exim was setting the flag that allows error details to be returned for LMTP errors on RCPT commands, but not for LMTP errors for individual recipients that were returned after the DATA command. PH/53 This is related to PH/52, but is more general: for any failing address, when detailed error information was permitted to be returned to the sender, but the error was temporary, then after the final timeout, only "retry timeout exceeded" was returned. Now it returns the full error as well as "retry timeout exceeded". PH/54 Added control=allow_auth_unadvertised, as it seems there are clients that do this, and (what is worse) MTAs that accept it. PH/55 Added the add_header modified to ACLs. The use of "message" with "warn" will now be deprecated. PH/56 New os.c-cygwin from the Cygwin maintainer. JJ/06 exipick: added --unsorted option to allow unsorted output in all output formats (previously only available in exim formats via -bpr, -bpru, and -bpra. Now also available in native and exiqgrep formats) JJ/07 exipick: added --freeze and --thaw options to allow faster interaction with very large, slow to parse queues JJ/08 exipick: added ! as generic prefix to negate any criteria format JJ/09 exipick: miscellaneous performance enhancements (~24% improvements) PH/57 Tidies in SMTP dialogue display in debug output: (i) It was not showing responses to authentication challenges, though it was showing the challenges; (ii) I've removed the CR characters from the debug output for SMTP output lines. PH/58 Allow for the insertion of a newline as well as a space when a string is turned into more than one encoded-word during RFC 2047 encoding. The Sieve code now uses this. PH/59 Added the following errors that can be detected in retry rules: mail_4xx, data_4xx, lost_connection, tls_required. PH/60 When a VRFY deferred or FAILED, the log message rather than the user message was being sent as an SMTP response. PH/61 Add -l and -k options to exicyclog. PH/62 When verifying, if an address was redirected to one new address, so that verification continued, and the new address failed or deferred after having set something in $address_data, the value of $address_data was not passed back to the ACL. This was different to the case when no redirection occurred. The value is now passed back in both cases. PH/63 Changed the macro HAVE_LOGIN_CAP (see PH/41 for this release above) to HAVE_SETCLASSRESOURCES because there are different APIs in use that all use login_cap.h, so on its own it isn't the distinguishing feature. The new name refers directly to the setclassresources() function. PH/65 Added configuration files for NetBSD3. PH/66 Updated OS/Makefile-HP-UX for gcc 4.1.0 with HP-UX 11. PH/67 Fixed minor infelicity in the sorting of addresses to ensure that IPv6 is preferred over IPv4. PH/68 The bounce_return_message and bounce_return_body options were not being honoured for bounces generated during the reception of non-SMTP messages. In particular, this applied to messages rejected by the ACL. This bug has been fixed. However, if bounce_return_message is true and bounce_return_ body is false, the headers that are returned for a non-SMTP message include only those that have been read before the error was detected. (In the case of an ACL rejection, they have all been read.) PH/69 The HTML version of the specification is now built in a directory called spec_html instead of spec.html, because the latter looks like a path with a MIME-type, and this confuses some software. PH/70 Catch two compiler warnings in sieve.c. PH/71 Fixed an obscure and subtle bug (thanks Alexander & Matthias). The function verify_get_ident() calls ip_connect() to connect a socket, but if the "connect()" function timed out, ip_connect() used to close the socket. However, verify_get_ident() also closes the socket later, and in between Exim writes to the log, which may get opened at this point. When the socket was closed in ip_connect(), the log could get the same file descriptor number as the socket. This naturally causes chaos. The fix is not to close the socket in ip_connect(); the socket should be closed by the function that creates it. There was only one place in the code where this was missing, in the iplookup router, which I don't think anybody now uses, but I've fixed it anyway. PH/72 Make dns_again_means_nonexist apply to lookups using gethostbyname() as well as to direct DNS lookups. Otherwise the handling of names in host lists is inconsistent and therefore confusing. Exim version 4.60 ----------------- PH/01 Two changes to the default runtime configuration: (1) Move the checks for relay_from_hosts and authenticated clients from after to before the (commented out) DNS black list checks. (2) Add control=submission to the relay_from_hosts and authenticated clients checks, on the grounds that messages accepted by these statements are most likely to be submissions. PH/02 Several tidies to the handling of ${prvs and ${prvscheck: (1) Generate an error if the third argument for the ${prvs expansion is not a single digit. (2) Treat a missing third argument of ${prvscheck as if it were an empty string. (3) Reset the variables that are obtained from the first argument of ${prvscheck and used in the second argument before leaving the code, because their memory is reclaimed, so using them afterwards may do silly things. (4) Tidy up the code for expanding the arguments of ${prvscheck one by one (it's much easier than Tom thought :-). (5) Because of (4), we can now allow for the use of $prvscheck_result inside the third argument. PH/03 For some reason, the default setting of PATH when running a command from a pipe transport was just "/usr/bin". I have changed it to "/bin:/usr/bin". PH/04 SUPPORT_TRANSLATE_IP_ADDRESS and MOVE_FROZEN_MESSAGES did not cause anything to be listed in the output from -bV. PH/05 When a filter generated an autoreply, the entire To: header line was quoted in the delivery log line, like this: => >A.N.Other ... This has been changed so that it extracts the operative address. There may be more than one such address. If so, they are comma-separated, like this: => >ano@@some.domain,ona@@other.domain ... PH/06 When a client host used a correct literal IP address in a HELO or EHLO command, (for example, EHLO [1.2.3.4]) and the client's IP address was not being looked up in the rDNS to get a host name, Exim was showing the IP address twice in Received: lines, even though the IP addresses were identical. For example: Received: from [1.2.3.4] (helo=[1.2.3.4]) However, if the real host name was known, it was omitting the HELO data if it matched the actual IP address. This has been tidied up so that it doesn't show the same IP address twice. PH/07 When both +timestamp and +memory debugging was on, the value given by $tod_xxx expansions could be wrong, because the tod_stamp() function was called by the debug printing, thereby overwriting the timestamp buffer. Debugging no longer uses the tod_stamp() function when +timestamp is set. PH/08 When the original message was included in an autoreply transport, it always said "this is a copy of the message, including all the headers", even if body_only or headers_only was set. It now gives an appropriate message. PH/09 Applied a patch from the Sieve maintainer which: o fixes some comments o adds the (disabled) notify extension core o adds some debug output for the result of if/elsif tests o points to the current vacation draft in the documentation and documents the missing references header update and most important: o fixes a bug in processing the envelope test (when testing multiple envelope elements, the last element determinted the result) PH/10 Exim was violating RFC 3834 ("Recommendations for Automatic Responses to Electronic Mail") by including: Auto-submitted: auto-generated in the messages that it generates (bounce messages and others, such as warnings). In the case of bounce messages for non-SMTP mesages, there was also a typo: it was using "Auto_submitted" (underscore instead of hyphen). Since every message generated by Exim is necessarily in response to another message, thes have all been changed to: Auto-Submitted: auto-replied in accordance with these statements in the RFC: The auto-replied keyword: - SHOULD be used on messages sent in direct response to another message by an automatic process, - MUST NOT be used on manually-generated messages, - MAY be used on Delivery Status Notifications (DSNs) and Message Disposition Notifications (MDNs), - MUST NOT be used on messages generated by automatic or periodic processes, except for messages which are automatic responses to other messages. PH/11 Added "${if def:sender_address {(envelope-from <$sender_address>)\n\t}}" to the default Received: header definition. PH/12 Added log selector acl_warn_skipped (default on). PH/13 After a successful wildlsearch lookup, discard the values of numeric variables because (a) they are in the wrong storage pool and (b) even if they were copied, it wouldn't work properly because of the caching. PH/14 Add check_rfc2047_length to disable enforcement of RFC 2047 length checking when decoding. Apparently there are clients that generate overlong encoded strings. Why am I not surprised? PH/15 If the first argument of "${if match_address" was not empty, but did not contain an "@@" character, Exim crashed. Now it writes a panic log message and treats the condition as false. PH/16 In autoreply, treat an empty string for "once" the same as unset. PH/17 A further patch from the Sieve maintainer: "Introduce the new Sieve extension "envelope-auth". The code is finished and in agreement with other implementations, but there is no documentation so far and in fact, nobody wrote the draft yet. This extension is currently #undef'ed, thus not changing the active code. Print executed "if" and "elsif" statements when debugging is used. This helps a great deal to understand what a filter does. Document more things not specified clearly in RFC3028. I had all this sorted out, when out of a sudden new issues came to my mind. Oops." PH/18 Exim was not recognizing the "net-" search type prefix in match_ip lists (Bugzilla #53). PH/19 Exim expands the IPv6 address given to -bh to its full non-abbreviated canonical form (as documented). However, after a host name lookup from the IP address, check_host() was doing a simple string comparison with addresses acquired from the DNS when checking that the found name did have the original IP as one of its addresses. Since any found IPv6 addresses are likely to be in abbreviated form, the comparison could fail. Luckily, there already exists a function for doing the comparison by converting both addresses to binary, so now that is used instead of the text comparison. PH/20 There was another similar case to PH/19, when a complete host name was given in a host list; looking up its IP address could give an abbreviated form, whereas the current host's name might or might not be abbreviated. The same fix has been applied. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.12 2005/05/17 17:06:12 abs Exp $ d3 1 a3 1 --- OS/Makefile-Default.orig 2006-04-28 11:32:21.000000000 +0100 d5 1 a5 1 @@@@ -71,7 +71,7 @@@@ PERL_COMMAND=/usr/bin/perl @ 1.12 log @Update exim from 4.44 to 4.51. The main change is the incorporation of the content scanning from the exiscan patch. (There are over 650 lines of Changes) Retire exim-exiscan Update exim-html from 4.40 to 4.50 @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.11 2004/08/27 10:46:52 abs Exp $ d3 1 a3 1 --- OS/Makefile-Default.orig 2005-05-04 12:35:39.000000000 +0100 @ 1.11 log @Update exim to 4.42 and exim-exiscan to 4.42_27: Feature changes in exim since 4.34 (bugfixes not listed): Version 4.42 ------------ 1. The "personal" filter test is brought up-to-date with recommendations from the Sieve specification: (a) The list of non-personal From: addresses now includes "listserv", "majordomo", and "*-request"; (b) If the message contains any header line starting with "List=-" it is treated as non-personal. 2. The Sieve functionality has been extended to support the "copy" and "vacation" extensions, and comparison tests. 3. There is now an overall timeout for performing a callout verification. It defaults to 4 times the callout timeout, which applies to individual SMTP commands during the callout. The overall timeout applies when there is more than one host that can be tried. The timeout is checked before trying the next host. This prevents very long delays if there are a large number of hosts and all are timing out (e.g. when the network connections are timing out). The value of the overall timeout can be changed by specifying an additional sub-option for "callout", called "maxwait". For example: verify = sender/callout=5s,maxwait=20s 4. Changes to the "personal" filter test: (1) The list of non-personal local parts in From: addresses has been extended to include "listserv", "majordomo", "*-request", and "owner-*", taken from the Sieve specification recommendations. (2) If the message contains any header line starting with "List-" it is treated as non-personal. (3) The test for "circular" in the Subject: header line has been removed because it now seems ill-conceived. 5. The autoreply transport has a new option called never_mail. This is an address list. If any run of the transport creates a message with a recipient that matches any item in the list, that recipient is quietly discarded. If all recipients are discarded, no message is created. Version 4.40 ------------ The documentation is up-to-date for the 4.40 release. What follows here is a brief list of the new features that have been added since 4.30. 1. log_incoming_interface affects more log lines. 2. New ACL modifier "control = submission". 3. CONFIGURE_OWNER can be set at build time to define an alternative owner for the configuration file, in addition to root and exim. 4. Added expansion variables $body_zerocount, $recipient_data, and $sender_data. 5. The time of last modification of the "new" subdirectory is now used as the "mailbox time last read" when there is a quota error for a maildir delivery. 6. The special item "+ignore_unknown" may now appear in host lists. 7. The special domain-matching patterns @@mx_any, @@mx_primary, and @@mx_secondary can now be followed by "/ignore=". 8. New expansion conditions: match_domain, match_address, match_local_part, lt, lti, le, lei, gt, gti, ge, and new expansion operators time_interval, eval10, and base62d. 9. New lookup type called "iplsearch". 10. New log selectors ident_timeout, tls_certificate_verified, queue_time, deliver_time, outgoing_port, return_path_on_delivery. 11. New global options smtp_active_hostname and tls_require_ciphers. 12. Exinext has -C and -D options. 13. "domainlist_cache" forces caching of an apparently variable list. 14. For compatibility with Sendmail, the command line option -prval:sval is equivalent to -oMr rval -oMs sval. 15. New callout options use_sender and use_postmaster for use when verifying recipients. 16. John Jetmore's "exipick" utility has been added to the distribution. 17. The TLS code now supports CRLs. 18. The dnslookup router and the dnsdb lookup type now support the use of SRV records. 19. The redirect router has a new option called qualify_domain. 20. exigrep's output now also includes lines that are not related to any particular message, but which do match the pattern. 21. New global option write_rejectlog. If it is set false, Exim no longer writes anything to the reject log. Changes in exim-exiscan since 4.34_22 27 - Changed algorithm of header_pos_middle to add headers before the first header which is NOT Received: or Resent-*:. exim 4.42 --------------------------------------------------- 26 - Fixed header corruption when using header_pos_top. (Thanks to Michael Deutschmann). - Fixed headers being added before any Received-SPF: header when using header_pos_middle (Thanks to Michael Deutschmann). - DrWeb malware support: Add flag to treat .eml file as plain mail (Thanks to Alex Miller). 25 - Fixed include location of libspf2 headers. - Added support for Kaspersky AV Version 5 (aveserver). - Added expansion of av_scanner global variable when it starts with a dollar sign. This is useful for implementing multiple malware scanners. - Added support for adding ACL headers at the beginning and in the "middle" of the message header block. (This is a preliminary solution, see comment in SPF section of exiscan-acl-spec). 24 - Changed documentation to reflect libspf_alt->libspf2 name change. - Upgraded included SRS patch to 0.3 (author Miles Wilton). Also added a small doc chapter for SRS. - Brightmail: put notes for users of new 6.x version in the docs (search for "BMI6.x"). BMI Version 6 should work OK, an upgraded SDK is now on Brightmail's download site. exim 4.41 ---------------------------------------------------- 23 - Added patch to support SRS in the redirect router, done by Miles Wilton. Please check http://srs.mirtol.com/ for more information. - Fixed the negation operator for SPF support. Thanks to Michael Haardt for sending a patch. - Increased buffer size for large SA reports (when using custom SA rulesets). - Increased buffer size for large BMI verdicts. Should now handle large number of recipients gracefully. @ text @d1 1 a1 1 $NetBSD$ d3 1 a3 1 --- OS/Makefile-Default.orig 2004-08-26 15:09:59.000000000 +0100 d5 1 a5 1 @@@@ -69,7 +69,7 @@@@ PERL_COMMAND=/usr/bin/perl @ 1.10 log @Update exim3 to exim-3.36nb2 - Fix buffer overflows listed at http://www.guninski.com/exim1.html Update exim to exim-4.33nb1 (from 4.22nb5) - Fix buffer overflow listed at http://www.guninski.com/exim1.html - Leave nb1 to indicate we have a local change from stock 4.33 - 1086 lines of changes - http://www.exim.org/ftp/ChangeLogs/ChangeLog-4.33 - Remove dependancy on exim-user - now looks up EXIM_{USER,GROUP} at runtime Update exim-exiscan to 4.33_20nb1 (from 4.22-12) - Fix buffer overflow listed at http://www.guninski.com/exim1.html - Leave nb1 to indicate we have a local change from stock 4.33_20 - Same exim changes - http://www.exim.org/ftp/ChangeLogs/ChangeLog-4.33 - Changes (http://duncanthrax.net/exiscan-acl/CHANGELOG) include - added option to use multiple spamd servers - many mime changes - Added Brightmail Antispam support - clamd fixes Update exim-html to 4.30 (from 4.20) - Update to latest docs Delete exim-user - No longer required - exim now looks up EXIM_{USER,GROUP} at runtime @ text @d3 1 a3 1 --- OS/Makefile-Default.orig Wed May 5 11:08:35 2004 @ 1.9 log @Update exim to 4.22. Too many changes to list since 4.10 Package changes include addition of Makefile.common (to be used by Upcoming exim-exiscan-acl package), and exim.8 @ text @d3 1 a3 1 --- OS/Makefile-Default.orig 2003-08-12 16:39:51.000000000 +0100 @ 1.9.4.1 log @Pull up revision 1.10 (requested by abs in ticket #28): Update exim to exim-4.33nb1 (from 4.22nb5) - Fix buffer overflow listed at http://www.guninski.com/exim1.html - Leave nb1 to indicate we have a local change from stock 4.33 - 1086 lines of changes - http://www.exim.org/ftp/ChangeLogs/ChangeLog-4.33 - Remove dependancy on exim-user - now looks up EXIM_{USER,GROUP} at runtime @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.9 2003/09/02 10:33:41 abs Exp $ d3 1 a3 1 --- OS/Makefile-Default.orig Wed May 5 11:08:35 2004 @ 1.8 log @Convert exim and exim-user to the bsd.pkg.install.mk framework: - Introduce EXIM_GROUP and EXIM_USER to tune the details of the group and user used by the daemon. - Honour PKG_SYSCONFDIR. - Install sample files under the examples directory. - Automatically install example files under sysconfdir using CONF_FILES. This simplifies exim's set up from admin's point of view. - Use RCD_SCRIPTS to handle the startup script. As a result, bump PKGREVISION of exim and exim-user. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.7 2003/03/22 12:37:25 jmmv Exp $ d3 3 a5 5 --- Local/Makefile.netbsd.orig 2003-07-30 20:51:26.000000000 +0200 +++ Local/Makefile.netbsd @@@@ -98,7 +98,9 @@@@ # /usr/local/sbin. The installation script will try to create this directory, # and any superior directories, if they do not exist. d7 1 a7 4 -BIN_DIRECTORY=/usr/exim/bin +HAVE_IPV6=YES + +BIN_DIRECTORY=@@PREFIX@@/sbin d9 2 a11 4 #------------------------------------------------------------------------------ @@@@ -113,7 +115,7 @@@@ BIN_DIRECTORY=/usr/exim/bin # directories if they don't exist. It will also install a default run time # configuration if this file does not exist. d13 1 a13 123 -CONFIGURE_FILE=/usr/exim/configure +CONFIGURE_FILE=@@PKG_SYSCONFDIR@@/configure #------------------------------------------------------------------------------ @@@@ -126,7 +128,8 @@@@ CONFIGURE_FILE=/usr/exim/configure # owner of a local mailbox.) Specifying these values as root is very strongly # discouraged. These values are compiled into the binary. -EXIM_USER= +EXIM_USER=@@EXIM_USER@@ +EXIM_GROUP=@@EXIM_GROUP@@ # If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must # also be a setting of EXIM_GROUP. If, on the other hand, you use a name @@@@ -207,7 +210,7 @@@@ TRANSPORT_SMTP=yes # This one is special-purpose, and commonly not required, so it is not # included by default. -# TRANSPORT_LMTP=yes +TRANSPORT_LMTP=yes #------------------------------------------------------------------------------ @@@@ -216,9 +219,9 @@@@ TRANSPORT_SMTP=yes # MBX, is included only when requested. If you do not know what this is about, # leave these settings commented out. -# SUPPORT_MAILDIR=yes -# SUPPORT_MAILSTORE=yes -# SUPPORT_MBX=yes +SUPPORT_MAILDIR=yes +SUPPORT_MAILSTORE=yes +SUPPORT_MBX=yes #------------------------------------------------------------------------------ @@@@ -281,7 +284,7 @@@@ LOOKUP_LSEARCH=yes # files are defaulted in the OS/Makefile-Default file, but can be overridden in # local OS-specific make files. -EXIM_MONITOR=eximon.bin +# EXIM_MONITOR=eximon.bin @@@@ -302,9 +305,9 @@@@ EXIM_MONITOR=eximon.bin # included in the Exim binary. You will then need to set up the run time # configuration to make use of the mechanism(s) selected. -# AUTH_CRAM_MD5=yes -# AUTH_PLAINTEXT=yes -# AUTH_SPA=yes +AUTH_CRAM_MD5=yes +AUTH_PLAINTEXT=yes +AUTH_SPA=yes #------------------------------------------------------------------------------ @@@@ -315,8 +318,9 @@@@ EXIM_MONITOR=eximon.bin # with TLS support. If you don't know what this is all about, leave these # settings commented out. -# SUPPORT_TLS=yes -# TLS_LIBS=-lssl -lcrypto +SUPPORT_TLS=yes +TLS_LIBS=-L${SSLBASE}/lib -Wl,-R${SSLBASE}/lib -lssl -lcrypto +TLS_INCLUDE=-I${SSLBASE}/include # If you are running Exim as a server, note that just building it with TLS # support is not all you need to do. You also need to set up a suitable @@@@ -371,7 +375,7 @@@@ EXIM_MONITOR=eximon.bin # %s. This will be replaced by one of the strings "main", "panic", or "reject" # to form the final file names. Some installations may want something like this: -# LOG_FILE_PATH=/var/log/exim_%slog +LOG_FILE_PATH=/var/log/exim/%slog # which results in files with names /var/log/exim_mainlog, etc. The directory # in which the log files are placed must exist; Exim does not try to create @@@@ -467,14 +471,14 @@@@ ZCAT_COMMAND=/usr/bin/zcat # this setting. See the manual section entitled "Use of tcpwrappers" in the # chapter on building and installing Exim. -# USE_TCP_WRAPPERS=yes +USE_TCP_WRAPPERS=yes # You may well also have to specify a local "include" file and an additional # library for TCP wrappers, so you probably need something like this: # USE_TCP_WRAPPERS=yes # CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap +EXTRALIBS_EXIM=-lwrap # but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM # as well. @@@@ -511,11 +515,11 @@@@ ZCAT_COMMAND=/usr/bin/zcat # haven't got Perl, Exim will still build and run; you just won't be able to # use those utilities. -# CHOWN_COMMAND=/usr/bin/chown -# CHGRP_COMMAND=/usr/bin/chgrp -# MV_COMMAND=/bin/mv -# RM_COMMAND=/bin/rm -# PERL_COMMAND=/usr/bin/perl +CHOWN_COMMAND=/usr/sbin/chown +CHGRP_COMMAND=/usr/bin/chgrp +MV_COMMAND=/bin/mv +RM_COMMAND=/bin/rm +PERL_COMMAND=@@PREFIX@@/bin/perl #------------------------------------------------------------------------------ @@@@ -695,7 +699,7 @@@@ ZCAT_COMMAND=/usr/bin/zcat # (process id) to a file so that it can easily be identified. The path of the # file can be specified here. Some installations may want something like this: -# PID_FILE_PATH=/var/lock/exim.pid +PID_FILE_PATH=/var/run/exim.pid # If PID_FILE_PATH is not defined, Exim writes a file in its spool directory # using the name "exim-daemon.pid". @ 1.7 log @Explicitly set TLS_INCLUDE to where OpenSSL headers are found. Fixes PR pkg/20609 by Mirko Thiesen. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.6 2002/10/25 12:18:16 wiz Exp $ d3 1 a3 1 --- Local/Makefile.netbsd.orig 2003-03-22 13:37:47.000000000 +0100 d21 1 a21 1 +CONFIGURE_FILE=@@PREFIX@@/etc/exim/configure d25 1 a25 1 @@@@ -126,7 +128,7 @@@@ CONFIGURE_FILE=/usr/exim/configure d30 2 a31 1 +EXIM_USER=mail d35 1 a35 1 @@@@ -207,7 +209,7 @@@@ TRANSPORT_SMTP=yes d44 1 a44 1 @@@@ -216,9 +218,9 @@@@ TRANSPORT_SMTP=yes d57 1 a57 1 @@@@ -281,7 +283,7 @@@@ LOOKUP_LSEARCH=yes d66 1 a66 1 @@@@ -302,9 +304,9 @@@@ EXIM_MONITOR=eximon.bin d79 1 a79 1 @@@@ -315,8 +317,9 @@@@ EXIM_MONITOR=eximon.bin d91 1 a91 1 @@@@ -371,7 +374,7 @@@@ EXIM_MONITOR=eximon.bin d100 1 a100 1 @@@@ -467,14 +470,14 @@@@ ZCAT_COMMAND=/usr/bin/zcat d117 1 a117 1 @@@@ -511,11 +514,11 @@@@ ZCAT_COMMAND=/usr/bin/zcat d134 1 a134 1 @@@@ -695,7 +698,7 @@@@ ZCAT_COMMAND=/usr/bin/zcat @ 1.6 log @buildlink1 -> buildlink2. @ text @d1 1 a1 1 $NetBSD$ d3 1 a3 1 --- Local/Makefile.netbsd.orig Fri Oct 25 14:04:25 2002 d78 1 a78 1 @@@@ -315,8 +317,8 @@@@ EXIM_MONITOR=eximon.bin d86 1 d90 1 a90 1 @@@@ -371,7 +373,7 @@@@ EXIM_MONITOR=eximon.bin d99 1 a99 1 @@@@ -467,14 +469,14 @@@@ ZCAT_COMMAND=/usr/bin/zcat d116 1 a116 1 @@@@ -511,11 +513,11 @@@@ ZCAT_COMMAND=/usr/bin/zcat d133 1 a133 1 @@@@ -695,7 +697,7 @@@@ ZCAT_COMMAND=/usr/bin/zcat @ 1.5 log @Update to exim-4.05. This is a major update. Details of the changes from exim 3 can be had from www.exim.org. @ text @d3 2 a4 2 --- Local/Makefile.netbsd.orig Thu Jun 13 12:43:22 2002 +++ Local/Makefile.netbsd Thu Jun 13 12:43:52 2002 d16 1 a16 1 @@@@ -113,7 +115,7 @@@@ d25 1 a25 1 @@@@ -126,7 +128,7 @@@@ d34 1 a34 1 @@@@ -207,7 +209,7 @@@@ d43 1 a43 1 @@@@ -216,9 +218,9 @@@@ d56 1 a56 1 @@@@ -281,7 +283,7 @@@@ d65 1 a65 1 @@@@ -302,9 +304,9 @@@@ d78 1 a78 1 @@@@ -315,8 +317,8 @@@@ d85 1 a85 1 +TLS_LIBS=-lssl -lcrypto d89 1 a89 1 @@@@ -371,7 +373,7 @@@@ d98 1 a98 1 @@@@ -467,14 +469,14 @@@@ d115 1 a115 1 @@@@ -511,11 +513,11 @@@@ d132 1 a132 1 @@@@ -695,7 +697,7 @@@@ @ 1.4 log @Enable LMTP. @ text @d3 5 a7 8 --- Local/Makefile.netbsd.orig Mon Jun 11 13:11:04 2001 +++ Local/Makefile.netbsd Mon Jun 11 13:11:40 2001 @@@@ -78,7 +78,7 @@@@ # CHGRP_COMMAND=/usr/bin/chgrp # MV_COMMAND=/bin/mv # RM_COMMAND=/bin/rm -# PERL_COMMAND=/usr/bin/perl +PERL_COMMAND=@@PREFIX@@/bin/perl d9 4 a13 4 # The following macro can be used to change the command for building a library @@@@ -92,8 +92,8 @@@@ # appropriate code is included in the binary. You then need to set up the # runtime configuration to make use of the mechanism(s) selected. d15 4 a18 4 -# AUTH_CRAM_MD5=yes -# AUTH_PLAINTEXT=yes +AUTH_CRAM_MD5=yes +AUTH_PLAINTEXT=yes d20 2 a22 4 # The binary directory: This variable defines where the exim binary will be @@@@ -103,7 +103,7 @@@@ # installed in this directory. There is no default for this variable built into # the source files; it must be set in one of the local configuration files. d24 13 a36 2 -BIN_DIRECTORY=/usr/exim/bin +BIN_DIRECTORY=@@PREFIX@@/sbin d38 2 a40 8 # The default distribution of Exim contains only the plain text form of the @@@@ -121,7 +121,7 @@@@ # files. Both the name of the command and the suffix that it adds to files # need to be defined here. See also the EXICYCLOG_MAX configuration. -COMPRESS_COMMAND=/opt/gnu/bin/gzip +COMPRESS_COMMAND=/usr/bin/gzip COMPRESS_SUFFIX=gz d42 17 d60 2 a61 3 @@@@ -137,7 +137,7 @@@@ # location of all other runtime files and directories can be changed in the # runtime configuration file. a62 2 -CONFIGURE_FILE=/usr/exim/configure +CONFIGURE_FILE=@@PREFIX@@/etc/exim/configure d65 3 a67 4 # In some installations there may be multiple machines sharing file systems, @@@@ -241,7 +241,7 @@@@ # are defaulted in the OS/Makefile-Default file, and can be overridden # in local OS-specific make files. d69 6 a74 2 -EXIM_MONITOR=eximon.bin +# EXIM_MONITOR=eximon.bin d77 15 a91 4 # Compiling in support for embedded Perl: If you want to be able to @@@@ -284,7 +284,7 @@@@ # "panic", or "reject" to form the final file name. For example, some # installations may want something like this: d98 31 a128 3 @@@@ -409,7 +409,7 @@@@ # the file name, allowing sites that run two separate daemons to distinguish # them. Some installations may want something like this a129 2 -# PID_FILE_PATH=/var/lock/exim%s.pid +PID_FILE_PATH=/var/run/exim%s.pid d131 4 a134 14 # If PID_FILE_PATH is not defined, Exim writes a file in its spool directory # (see SPOOL_DIRECTORY below) with the name "exim-daemon.pid" for the standard @@@@ -458,7 +458,7 @@@@ # uid and gid. # Many installations will want something like this: -# SPOOL_DIRECTORY=/var/spool/exim +SPOOL_DIRECTORY=/var/spool/exim # Others may prefer to keep all Exim things under one directory: # SPOOL_DIRECTORY=/usr/exim/spool @@@@ -565,7 +565,7 @@@@ # This one is special-purpose, and commonly not required, so do not include # it by default. d136 2 a137 2 -# TRANSPORT_LMTP=yes +TRANSPORT_LMTP=yes d139 2 a140 2 # TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment @ 1.4.2.1 log @Merge from pkgsrc-current to buildlink2 branch. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.5 2002/06/19 16:02:27 ad Exp $ d3 8 a10 5 --- Local/Makefile.netbsd.orig Thu Jun 13 12:43:22 2002 +++ Local/Makefile.netbsd Thu Jun 13 12:43:52 2002 @@@@ -98,7 +98,9 @@@@ # /usr/local/sbin. The installation script will try to create this directory, # and any superior directories, if they do not exist. a11 4 -BIN_DIRECTORY=/usr/exim/bin +HAVE_IPV6=YES + +BIN_DIRECTORY=@@PREFIX@@/sbin d13 4 d18 4 a21 4 #------------------------------------------------------------------------------ @@@@ -113,7 +115,7 @@@@ # directories if they don't exist. It will also install a default run time # configuration if this file does not exist. a22 2 -CONFIGURE_FILE=/usr/exim/configure +CONFIGURE_FILE=@@PREFIX@@/etc/exim/configure d24 4 d29 2 a30 13 #------------------------------------------------------------------------------ @@@@ -126,7 +128,7 @@@@ # owner of a local mailbox.) Specifying these values as root is very strongly # discouraged. These values are compiled into the binary. -EXIM_USER= +EXIM_USER=mail # If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must # also be a setting of EXIM_GROUP. If, on the other hand, you use a name @@@@ -207,7 +209,7 @@@@ # This one is special-purpose, and commonly not required, so it is not # included by default. a31 2 -# TRANSPORT_LMTP=yes +TRANSPORT_LMTP=yes d33 8 a41 17 #------------------------------------------------------------------------------ @@@@ -216,9 +218,9 @@@@ # MBX, is included only when requested. If you do not know what this is about, # leave these settings commented out. -# SUPPORT_MAILDIR=yes -# SUPPORT_MAILSTORE=yes -# SUPPORT_MBX=yes +SUPPORT_MAILDIR=yes +SUPPORT_MAILSTORE=yes +SUPPORT_MBX=yes #------------------------------------------------------------------------------ @@@@ -281,7 +283,7 @@@@ # files are defaulted in the OS/Makefile-Default file, but can be overridden in # local OS-specific make files. d43 3 a45 2 -EXIM_MONITOR=eximon.bin +# EXIM_MONITOR=eximon.bin d47 2 d51 4 a54 3 @@@@ -302,9 +304,9 @@@@ # included in the Exim binary. You will then need to set up the run time # configuration to make use of the mechanism(s) selected. d56 2 a57 6 -# AUTH_CRAM_MD5=yes -# AUTH_PLAINTEXT=yes -# AUTH_SPA=yes +AUTH_CRAM_MD5=yes +AUTH_PLAINTEXT=yes +AUTH_SPA=yes d60 4 a63 15 #------------------------------------------------------------------------------ @@@@ -315,8 +317,8 @@@@ # with TLS support. If you don't know what this is all about, leave these # settings commented out. -# SUPPORT_TLS=yes -# TLS_LIBS=-lssl -lcrypto +SUPPORT_TLS=yes +TLS_LIBS=-lssl -lcrypto # If you are running Exim as a server, note that just building it with TLS # support is not all you need to do. You also need to set up a suitable @@@@ -371,7 +373,7 @@@@ # %s. This will be replaced by one of the strings "main", "panic", or "reject" # to form the final file names. Some installations may want something like this: d70 3 a72 31 @@@@ -467,14 +469,14 @@@@ # this setting. See the manual section entitled "Use of tcpwrappers" in the # chapter on building and installing Exim. -# USE_TCP_WRAPPERS=yes +USE_TCP_WRAPPERS=yes # You may well also have to specify a local "include" file and an additional # library for TCP wrappers, so you probably need something like this: # USE_TCP_WRAPPERS=yes # CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap +EXTRALIBS_EXIM=-lwrap # but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM # as well. @@@@ -511,11 +513,11 @@@@ # haven't got Perl, Exim will still build and run; you just won't be able to # use those utilities. -# CHOWN_COMMAND=/usr/bin/chown -# CHGRP_COMMAND=/usr/bin/chgrp -# MV_COMMAND=/bin/mv -# RM_COMMAND=/bin/rm -# PERL_COMMAND=/usr/bin/perl +CHOWN_COMMAND=/usr/sbin/chown +CHGRP_COMMAND=/usr/bin/chgrp +MV_COMMAND=/bin/mv +RM_COMMAND=/bin/rm +PERL_COMMAND=@@PREFIX@@/bin/perl d74 2 d77 17 a93 4 #------------------------------------------------------------------------------ @@@@ -695,7 +697,7 @@@@ # (process id) to a file so that it can easily be identified. The path of the # file can be specified here. Some installations may want something like this: a94 2 -# PID_FILE_PATH=/var/lock/exim.pid +PID_FILE_PATH=/var/run/exim.pid d96 1 a96 2 # If PID_FILE_PATH is not defined, Exim writes a file in its spool directory # using the name "exim-daemon.pid". @ 1.3 log @Enable SMTP AUTH extensions. @ text @d3 2 a4 2 --- Local/Makefile.netbsd.orig Sun Nov 26 21:52:47 2000 +++ Local/Makefile.netbsd Sun Nov 26 21:54:20 2000 d70 1 a70 1 @@@@ -407,7 +407,7 @@@@ d79 1 a79 1 @@@@ -456,7 +456,7 @@@@ d88 9 @ 1.2 log @defuzz. @ text @d3 3 a5 3 --- Local/Makefile.netbsd.orig Tue Dec 7 21:19:47 1999 +++ Local/Makefile.netbsd Tue Dec 7 21:19:49 1999 @@@@ -75,7 +75,7 @@@@ d14 12 a25 1 @@@@ -100,7 +100,7 @@@@ d34 1 a34 1 @@@@ -118,7 +118,7 @@@@ d43 1 a43 1 @@@@ -134,7 +134,7 @@@@ d52 1 a52 1 @@@@ -238,7 +238,7 @@@@ d61 1 a61 1 @@@@ -281,7 +281,7 @@@@ d70 1 a70 1 @@@@ -394,7 +394,7 @@@@ d79 1 a79 1 @@@@ -443,7 +443,7 @@@@ @ 1.1 log @Exim, yet another Sendmail replacement. @ text @d3 2 a4 2 --- Local/Makefile.netbsd.orig Tue Sep 7 13:21:49 1999 +++ Local/Makefile.netbsd Tue Sep 7 14:31:08 1999 d14 1 a14 1 @@@@ -91,7 +91,7 @@@@ d23 1 a23 1 @@@@ -109,7 +109,7 @@@@ d32 1 a32 1 @@@@ -119,7 +119,7 @@@@ d41 1 a41 1 @@@@ -221,7 +221,7 @@@@ d50 3 a52 3 @@@@ -264,7 +264,7 @@@@ # "panic", "process" or "reject" to form the final file name. For example, # some installations may want something like this: d59 1 a59 1 @@@@ -364,7 +364,7 @@@@ d68 1 a68 1 @@@@ -413,7 +413,7 @@@@ @