pkgsrc/mail/courier-mta/patches/patch-an
adam 2e85bc7502 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.
2012-06-09 11:45:38 +00:00

52 lines
1 KiB
Text

$NetBSD: patch-an,v 1.6 2012/06/09 11:45:38 adam Exp $
--- courier/webmlmd.C.orig Thu Jul 5 01:47:38 2007
+++ courier/webmlmd.C
@@ -21,6 +21,7 @@
#include <string.h>
#include <signal.h>
+#include <sys/param.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/socket.h>
@@ -40,6 +41,39 @@
#include <sstream>
#include <map>
+#if defined(__FreeBSD_version) && (__FreeBSD_version < 500029)
+#include <cwchar>
+namespace std {
+ typedef basic_string <wchar_t> wstring;
+
+ template<>
+ struct char_traits<wchar_t>
+ {
+ 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"