2e85bc7502
* 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.
52 lines
1 KiB
Text
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"
|