head 1.6; access; symbols pkgsrc-2026Q1:1.6.0.112 pkgsrc-2026Q1-base:1.6 pkgsrc-2025Q4:1.6.0.110 pkgsrc-2025Q4-base:1.6 pkgsrc-2025Q3:1.6.0.108 pkgsrc-2025Q3-base:1.6 pkgsrc-2025Q2:1.6.0.106 pkgsrc-2025Q2-base:1.6 pkgsrc-2025Q1:1.6.0.104 pkgsrc-2025Q1-base:1.6 pkgsrc-2024Q4:1.6.0.102 pkgsrc-2024Q4-base:1.6 pkgsrc-2024Q3:1.6.0.100 pkgsrc-2024Q3-base:1.6 pkgsrc-2024Q2:1.6.0.98 pkgsrc-2024Q2-base:1.6 pkgsrc-2024Q1:1.6.0.96 pkgsrc-2024Q1-base:1.6 pkgsrc-2023Q4:1.6.0.94 pkgsrc-2023Q4-base:1.6 pkgsrc-2023Q3:1.6.0.92 pkgsrc-2023Q3-base:1.6 pkgsrc-2023Q2:1.6.0.90 pkgsrc-2023Q2-base:1.6 pkgsrc-2023Q1:1.6.0.88 pkgsrc-2023Q1-base:1.6 pkgsrc-2022Q4:1.6.0.86 pkgsrc-2022Q4-base:1.6 pkgsrc-2022Q3:1.6.0.84 pkgsrc-2022Q3-base:1.6 pkgsrc-2022Q2:1.6.0.82 pkgsrc-2022Q2-base:1.6 pkgsrc-2022Q1:1.6.0.80 pkgsrc-2022Q1-base:1.6 pkgsrc-2021Q4:1.6.0.78 pkgsrc-2021Q4-base:1.6 pkgsrc-2021Q3:1.6.0.76 pkgsrc-2021Q3-base:1.6 pkgsrc-2021Q2:1.6.0.74 pkgsrc-2021Q2-base:1.6 pkgsrc-2021Q1:1.6.0.72 pkgsrc-2021Q1-base:1.6 pkgsrc-2020Q4:1.6.0.70 pkgsrc-2020Q4-base:1.6 pkgsrc-2020Q3:1.6.0.68 pkgsrc-2020Q3-base:1.6 pkgsrc-2020Q2:1.6.0.64 pkgsrc-2020Q2-base:1.6 pkgsrc-2020Q1:1.6.0.44 pkgsrc-2020Q1-base:1.6 pkgsrc-2019Q4:1.6.0.66 pkgsrc-2019Q4-base:1.6 pkgsrc-2019Q3:1.6.0.62 pkgsrc-2019Q3-base:1.6 pkgsrc-2019Q2:1.6.0.60 pkgsrc-2019Q2-base:1.6 pkgsrc-2019Q1:1.6.0.58 pkgsrc-2019Q1-base:1.6 pkgsrc-2018Q4:1.6.0.56 pkgsrc-2018Q4-base:1.6 pkgsrc-2018Q3:1.6.0.54 pkgsrc-2018Q3-base:1.6 pkgsrc-2018Q2:1.6.0.52 pkgsrc-2018Q2-base:1.6 pkgsrc-2018Q1:1.6.0.50 pkgsrc-2018Q1-base:1.6 pkgsrc-2017Q4:1.6.0.48 pkgsrc-2017Q4-base:1.6 pkgsrc-2017Q3:1.6.0.46 pkgsrc-2017Q3-base:1.6 pkgsrc-2017Q2:1.6.0.42 pkgsrc-2017Q2-base:1.6 pkgsrc-2017Q1:1.6.0.40 pkgsrc-2017Q1-base:1.6 pkgsrc-2016Q4:1.6.0.38 pkgsrc-2016Q4-base:1.6 pkgsrc-2016Q3:1.6.0.36 pkgsrc-2016Q3-base:1.6 pkgsrc-2016Q2:1.6.0.34 pkgsrc-2016Q2-base:1.6 pkgsrc-2016Q1:1.6.0.32 pkgsrc-2016Q1-base:1.6 pkgsrc-2015Q4:1.6.0.30 pkgsrc-2015Q4-base:1.6 pkgsrc-2015Q3:1.6.0.28 pkgsrc-2015Q3-base:1.6 pkgsrc-2015Q2:1.6.0.26 pkgsrc-2015Q2-base:1.6 pkgsrc-2015Q1:1.6.0.24 pkgsrc-2015Q1-base:1.6 pkgsrc-2014Q4:1.6.0.22 pkgsrc-2014Q4-base:1.6 pkgsrc-2014Q3:1.6.0.20 pkgsrc-2014Q3-base:1.6 pkgsrc-2014Q2:1.6.0.18 pkgsrc-2014Q2-base:1.6 pkgsrc-2014Q1:1.6.0.16 pkgsrc-2014Q1-base:1.6 pkgsrc-2013Q4:1.6.0.14 pkgsrc-2013Q4-base:1.6 pkgsrc-2013Q3:1.6.0.12 pkgsrc-2013Q3-base:1.6 pkgsrc-2013Q2:1.6.0.10 pkgsrc-2013Q2-base:1.6 pkgsrc-2013Q1:1.6.0.8 pkgsrc-2013Q1-base:1.6 pkgsrc-2012Q4:1.6.0.6 pkgsrc-2012Q4-base:1.6 pkgsrc-2012Q3:1.6.0.4 pkgsrc-2012Q3-base:1.6 pkgsrc-2012Q2:1.6.0.2 pkgsrc-2012Q2-base:1.6 pkgsrc-2012Q1:1.5.0.12 pkgsrc-2012Q1-base:1.5 pkgsrc-2011Q4:1.5.0.10 pkgsrc-2011Q4-base:1.5 pkgsrc-2011Q3:1.5.0.8 pkgsrc-2011Q3-base:1.5 pkgsrc-2011Q2:1.5.0.6 pkgsrc-2011Q2-base:1.5 pkgsrc-2011Q1:1.5.0.4 pkgsrc-2011Q1-base:1.5 pkgsrc-2010Q4:1.5.0.2 pkgsrc-2010Q4-base:1.5 pkgsrc-2010Q3:1.4.0.4 pkgsrc-2010Q3-base:1.4 pkgsrc-2010Q2:1.4.0.2 pkgsrc-2010Q2-base:1.4 pkgsrc-2010Q1:1.3.0.24 pkgsrc-2010Q1-base:1.3 pkgsrc-2009Q4:1.3.0.22 pkgsrc-2009Q4-base:1.3 pkgsrc-2009Q3:1.3.0.20 pkgsrc-2009Q3-base:1.3 pkgsrc-2009Q2:1.3.0.18 pkgsrc-2009Q2-base:1.3 pkgsrc-2009Q1:1.3.0.16 pkgsrc-2009Q1-base:1.3 pkgsrc-2008Q4:1.3.0.14 pkgsrc-2008Q4-base:1.3 pkgsrc-2008Q3:1.3.0.12 pkgsrc-2008Q3-base:1.3 cube-native-xorg:1.3.0.10 cube-native-xorg-base:1.3 pkgsrc-2008Q2:1.3.0.8 pkgsrc-2008Q2-base:1.3 cwrapper:1.3.0.6 pkgsrc-2008Q1:1.3.0.4 pkgsrc-2008Q1-base:1.3 pkgsrc-2007Q4:1.3.0.2 pkgsrc-2007Q4-base:1.3 pkgsrc-2007Q3:1.2.0.2 pkgsrc-2007Q3-base:1.2; locks; strict; comment @# @; 1.6 date 2012.06.09.11.45.38; author adam; state Exp; branches; next 1.5; 1.5 date 2010.11.10.10.40.16; author adam; state Exp; branches; next 1.4; 1.4 date 2010.06.15.23.01.23; author pettai; state Exp; branches; next 1.3; 1.3 date 2007.10.15.15.37.15; author jlam; state Exp; branches; next 1.2; 1.2 date 2007.09.06.04.05.40; author jlam; state Exp; branches; next 1.1; 1.1 date 2007.08.10.17.57.05; author jlam; state Exp; branches; next ; desc @@ 1.6 log @Changes 0.68.1: * rfc2045mkboundary.c was broken in 0.68 Changes 0.68: * rfc2045/rfc2045mkboundary.c (rfc2045_mk_boundary): truncate the hostname portion of the boundary to 30 chars. * courier/doc/courier.sgml: Remove descriptions of some configuration files that were moved to the courier-authlib package a while ago. They don't belong here any more. * courier/submit.C: Use the authenticated address, instead of the return address, for domain-based virtual configuration. * courier/libs/cfilename.c (config_has_vhost): Checks whether vhost.[ip] exists. * courier/module.esmtp/courieresmtpd.c (main): Only set a message's virtual host if vhost.[ip] exists. * courier/module.esmtp/esmtpclient.c (get_sourceaddr): Make sure the input buffer is null-terminated. * courier/submit.C (getrcpts): If there's no vhost setting from the sender's IP address (this includes local mail!) if vhost.domain exists, use [domain] as the virtual host. * Remove config_search(), which simply called config_localfilename(). Change all current callers to call config_localfilename(). * courier/libs/cfilename.c (config_set_local_vhost): saves a string that gets appended as a suffix, by config_localfilename(), and if that filename exists, that's returned as the filename, otherwise it's the original string without the suffix. config_get_local_vhost() returns the suffix string. to config_set_local_vhost(). * courier/libs/comsubmitclient.c (submit_fork): If config_get_local_vhost(), add a -vhost parameter to submit(). * courier/submit.C (cppmain): -vhost sets config_set_local_vhost(). * courier/submit2.C (closectl): New COMCTLFILE_VHOST parameter in the config file, taken from the vhost setting. * courier/libs/comctlfile.c (ctlfile_setvhost): If COMCTLFILE_VHOST is set, call ctlfile_setvhost(), return an indication if the vhost has changed. Absence of a COMCTLFILE_VHOST treated as a discrete "(null)" setting. * courier/module.esmtp/esmtpclient.c (esmtpchild): If ctlfile_setvhost() then disconnect the current socket, if one is open. * courier/module.esmtp/esmtpclient.c (get_sourceaddr): The IP address specified in ipout or ip6out overrides SOURCE_ADDRESS and SOURCE_ADDRESS_IPV6 environment variable. * courier/module.local/localmail.c (main): Call ctlfile_setvhost(). * courier/module.uucp/uucp.c (uux): Call ctlfile_setvhost(). * courier/module.dsn/dsn.c (main): Call ctlfile_setvhost(). * liblock/mail.c (dotlock_exists): Quell a compiler warning. * courier/courierd.dist.in SOURCE_ADDRESS: Add a note that this setting is deprecated. @ text @$NetBSD: patch-an,v 1.5 2010/11/10 10:40:16 adam Exp $ --- courier/webmlmd.C.orig Thu Jul 5 01:47:38 2007 +++ courier/webmlmd.C @@@@ -21,6 +21,7 @@@@ #include #include +#include #include #include #include @@@@ -40,6 +41,39 @@@@ #include #include +#if defined(__FreeBSD_version) && (__FreeBSD_version < 500029) +#include +namespace std { + typedef basic_string wstring; + + template<> + struct char_traits + { + typedef wchar_t char_type; + + static void assign(wchar_t &c1, const wchar_t &c2) + { + c1 = c2; + } + + static wchar_t *assign(wchar_t *s, size_t n, wchar_t c) + { + return wmemset(s, c, n); + } + + static wchar_t *copy(wchar_t *s1, const wchar_t *s2, unsigned n) + { + return wmemcpy(s1, s2, n); + } + + static wchar_t *move(wchar_t *s1, const wchar_t *s2, unsigned n) + { + return wmemmove(s1, s2, n); + } + }; +} +#endif + #include "cmlm.h" #include "cmlmcmdmisc.h" #include "webmlmd.H" @ 1.5 log @Changes 0.65.2: This is a bug-fix release. @ text @d1 1 a1 1 $NetBSD: patch-an,v 1.4 2010/06/15 23:01:23 pettai Exp $ d5 1 a5 1 @@@@ -22,6 +22,7 @@@@ d13 1 a13 1 @@@@ -41,6 +42,39 @@@@ @ 1.4 log @courier-0.65.0 et al: * gpglib/list.c: Handle GnuPG 2 --with-colons output format changes. * gpglib/mimegpgfork.c: GnuPG 2 wants --batch when specifying passphrase-fd. * tcpd/configure.in: Check if explicit linking with libgpg-error is required. * tcpd/libcouriergnutls.c (tls_connect): Fix bad call to gnutls_server_name_set(). Affects Courier compiled with GnuTLS support. * maildrop/mailbot.c (main): Set close-on-exec bit on opened files. * courier/doc/courier.sgml: Move the SPF section to a separate refsect2 to work around misformatting by the manpage stylesheet. * rfc2045/rfc2045reply.c (mkreply): Fix sender's name in the reply salutation. * html/en-us/newmsg.html: Ditto. * rfc2045/reformime.sgml: Document the -c option to reformime. * imapd.c (main): Fix typo in alert message. * Big quota patch (with some changes). (See the Changelog(s) for previous releases) Based on patch(es) from PR pkg/42989 by Brian Candler. @ text @d1 1 a1 1 $NetBSD: patch-an,v 1.3 2007/10/15 15:37:15 jlam Exp $ d16 1 a16 1 @ 1.3 log @Update mail/courier-mta to 0.57.1. Changes from version 0.56.0 include: * Major code cleanup. * "User unknown" reports complete local address, including extensions. * Only run courierfilters after all control files are closed. * "opt BOFHHEADERLIMIT" replaces hardcoded limit of 100,000 bytes of headers per message. * Reject <@@domain.com> for a recipient's address. * Tolerate newline-less responses from the filter. * Document that sysexit 100 from .courier is a permanent failure. * "courier show all" and "courier clear all" commands for managing backscatter suppression list. @ text @d1 1 a1 1 $NetBSD$ d13 1 a13 2 @@@@ -40,6 +41,39 @@@@ #include d16 1 a16 1 + d49 1 a49 1 d52 1 @ 1.2 log @Allow this code to compile with an older version of GCC and on an older version of FreeBSD. @ text @d3 1 a3 1 --- courier/webmlmd.C.orig Sat Jun 16 02:21:24 2007 d13 1 a13 2 @@@@ -39,6 +40,12 @@@@ #include d16 2 d22 26 a49 1 #include d52 1 a52 62 @@@@ -606,7 +613,10 @@@@ HANDLER("ADMINUPDATE", do_admin_update) cmdset(args_array, false); { - std::istringstream i(std::string(cgi("optheaderadd")) + "\n"); + std::string t(cgi("optheaderadd")); + t += "\n"; + + std::istringstream i(t); std::ofstream ofs(HEADERADD ".new"); @@@@ -623,7 +633,10 @@@@ HANDLER("ADMINUPDATE", do_admin_update) } { - std::istringstream i(std::string(cgi("optheaderdel")) + "\n"); + std::string t(cgi("optheaderdel")); + t += "\n"; + + std::istringstream i(t); std::ofstream ofs(HEADERDEL ".new"); @@@@ -953,10 +966,10 @@@@ static void sendsubunsub(std::string ext if (ctlmsg.start(ext, address, "ctlmsg")) { - FILE *stdin=ctlmsg.stdin(); + FILE *standard_input=ctlmsg.standard_input(); ctlmsg.mk_received_header(); - fprintf(stdin, "\nSubscription request received.\n"); + fprintf(standard_input, "\nSubscription request received.\n"); if (ctlmsg.wait()) { @@@@ -1100,10 +1113,10 @@@@ static void listrequest2(std::string lis if (confirm.start(method + "-" + token, "", "ctlmsg")) { - FILE *stdin=confirm.stdin(); + FILE *standard_input=confirm.standard_input(); confirm.mk_received_header(); - fprintf(stdin, + fprintf(standard_input, "Subject: yes -- confirmed by WebMLM\n" "\n" "Confirmed\n"); @@@@ -1117,9 +1130,9 @@@@ static void listrequest2(std::string lis char buf[1024]; bool isfirst=true; - FILE *stdout=confirm.stdout(); + FILE *standard_output=confirm.standard_output(); - while (fgets(buf, sizeof(buf), stdout)) + while (fgets(buf, sizeof(buf), standard_output)) { if (isfirst) { @ 1.1 log @Update mail/courier-mta to 0.56.0. Changes from version 0.53.2 include: + Drop the uucp module from the default option set. + Patch the webmlm sources to not use "stdin" and "stdout" as function or member names as they can be macros according to the C standards. * webadmin: Remove check that prevents multiple virtual domains to be aliased to the same account. * webmlmd: new CGI module that can manage a Courier mailing list created with couriermlm. * Rewrite and code cleanup of couriermlm. * Use domain name, not MX hostname, for looking up authenticated SMTP passwords in esmtpauthclient @ text @d3 1 a3 1 --- courier/webmlmd.C.orig 2007-06-15 22:21:24.000000000 -0400 d5 46 a50 1 @@@@ -953,10 +953,10 @@@@ static void sendsubunsub(std::string ext d63 1 a63 1 @@@@ -1100,10 +1100,10 @@@@ static void listrequest2(std::string lis d76 1 a76 1 @@@@ -1117,9 +1117,9 @@@@ static void listrequest2(std::string lis @