Branch '2.3-stable' - postfix/postfix-2.4.0-whoson.patch postfix/postfix.patch postfix/postfix.spec

Christoph Wickert wickert at kolabsys.com
Tue May 31 23:53:06 CEST 2011


 postfix/postfix-2.4.0-whoson.patch |  363 -------------------------------------
 postfix/postfix.patch              |  102 ----------
 postfix/postfix.spec               |   44 +---
 3 files changed, 13 insertions(+), 496 deletions(-)

New commits:
commit b266b6f4190d11fc3ece2613f73fd2fdd789de2f
Author: Christoph Wickert <wickert at kolabsys.com>
Date:   Tue May 31 19:16:33 2011 +0200

    postfix: Update to 2.8.3

diff --git a/postfix/postfix-2.4.0-whoson.patch b/postfix/postfix-2.4.0-whoson.patch
deleted file mode 100644
index 0a71b44..0000000
--- a/postfix/postfix-2.4.0-whoson.patch
+++ /dev/null
@@ -1,363 +0,0 @@
-Index: src/util/Makefile.in
---- src/util/Makefile.in.orig	2007-03-17 18:51:33 +0100
-+++ src/util/Makefile.in	2007-03-29 11:54:06 +0200
-@@ -4,7 +4,7 @@
- 	attr_scan_plain.c auto_clnt.c base64_code.c basename.c binhash.c \
- 	chroot_uid.c cidr_match.c clean_env.c close_on_exec.c concatenate.c \
- 	ctable.c dict.c dict_alloc.c dict_cdb.c dict_cidr.c dict_db.c \
--	dict_dbm.c dict_debug.c dict_env.c dict_ht.c dict_ni.c dict_nis.c \
-+	dict_dbm.c dict_debug.c dict_env.c dict_ht.c dict_ni.c dict_nis.c dict_whoson.c \
- 	dict_nisplus.c dict_open.c dict_pcre.c dict_regexp.c dict_sdbm.c \
- 	dict_static.c dict_tcp.c dict_unix.c dir_forest.c doze.c dummy_read.c \
- 	dummy_write.c duplex_pipe.c environ.c events.c exec_command.c \
-@@ -36,7 +36,7 @@
- 	attr_scan_plain.o auto_clnt.o base64_code.o basename.o binhash.o \
- 	chroot_uid.o cidr_match.o clean_env.o close_on_exec.o concatenate.o \
- 	ctable.o dict.o dict_alloc.o dict_cdb.o dict_cidr.o dict_db.o \
--	dict_dbm.o dict_debug.o dict_env.o dict_ht.o dict_ni.o dict_nis.o \
-+	dict_dbm.o dict_debug.o dict_env.o dict_ht.o dict_ni.o dict_nis.o dict_whoson.o \
- 	dict_nisplus.o dict_open.o dict_pcre.o dict_regexp.o dict_sdbm.o \
- 	dict_static.o dict_tcp.o dict_unix.o dir_forest.o doze.o dummy_read.o \
- 	dummy_write.o duplex_pipe.o environ.o events.o exec_command.o \
-@@ -66,7 +66,7 @@
- HDRS	= argv.h attr.h attr_clnt.h auto_clnt.h base64_code.h binhash.h \
- 	chroot_uid.h cidr_match.h clean_env.h connect.h ctable.h dict.h \
- 	dict_cdb.h dict_cidr.h dict_db.h dict_dbm.h dict_env.h dict_ht.h \
--	dict_ni.h dict_nis.h dict_nisplus.h dict_pcre.h dict_regexp.h \
-+	dict_ni.h dict_nis.h dict_whoson.h dict_nisplus.h dict_pcre.h dict_regexp.h \
- 	dict_sdbm.h dict_static.h dict_tcp.h dict_unix.h dir_forest.h \
- 	events.h exec_command.h find_inet.h fsspace.h fullname.h \
- 	get_domainname.h get_hostname.h hex_code.h hex_quote.h host_port.h \
-Index: src/util/dict_open.c
---- src/util/dict_open.c.orig	2006-06-26 14:59:19 +0200
-+++ src/util/dict_open.c	2007-03-29 11:54:06 +0200
-@@ -203,6 +203,7 @@
- #include <stringops.h>
- #include <split_at.h>
- #include <htable.h>
-+#include <dict_whoson.h>
- 
-  /*
-   * lookup table for available map types.
-@@ -248,6 +249,7 @@
- #endif
-     DICT_TYPE_STATIC, dict_static_open,
-     DICT_TYPE_CIDR, dict_cidr_open,
-+    DICT_TYPE_WHOSON, dict_whoson_open,
-     0,
- };
- 
-Index: src/util/dict_whoson.c
---- /dev/null	2007-03-29 11:53:30 +0200
-+++ src/util/dict_whoson.c	2007-03-29 11:54:06 +0200
-@@ -0,0 +1,269 @@
-+/*++
-+/* NAME
-+/*	dict_whoson 3
-+/* SUMMARY
-+/*	dictionary manager interface to whoson lookup tables
-+/* SYNOPSIS
-+/*	#include <dict_whoson.h>
-+/*
-+/*	DICT	*dict_whoson_open(map, dummy, dict_flags)
-+/*	const char *map;
-+/*	int	dummy;
-+/*	int	dict_flags;
-+/* DESCRIPTION
-+/*      dict_whoson_open() make a WHOSON server accessible
-+/*      via the generic dictionary operations described in 
-+/*      dict_open(3).
-+/*	The \fIdummy\fR argument is not used. The only implemented
-+/*	operation is dictionary lookup. 
-+/*
-+/*      Map names have the form host:port in case of a TCP
-+/*      whoson server or /path/to/socket in case of a Unix domain
-+/*      server.
-+/*
-+/*      WHOSON protocol is designed to allow mail relay to
-+/*      a given IP adress on a smtpd server without requiring
-+/*      an SMTP authentication. Authentication has to be trusted
-+/*      from another source (for example, a POP server)
-+/*
-+/*      Keys have to be full IP addresses. If a value is found
-+/*      for a key, lookup reply will be the constant string "OK",
-+/*      the IP address key and the whoson server answer are logged.
-+/*
-+/* SEE ALSO
-+/*	dict(3) generic dictionary manager
-+/* DIAGNOSTICS
-+/*	Fatal errors: out of memory, unknown host or service name,
-+/*	attempt to update or iterate over map.
-+/*      Warnings: unable to connect to whoson server, connection
-+/*      close, whoson server error.
-+/* BUGS
-+/*	Only the lookup method is currently implemented.
-+/* LICENSE
-+/* .ad
-+/* .fi
-+/*	The Secure Mailer license must be distributed with this software.
-+/* AUTHOR(S)
-+/*	Wietse Venema
-+/*	IBM T.J. Watson Research
-+/*	P.O. Box 704
-+/*	Yorktown Heights, NY 10598, USA
-+/*--*/
-+
-+/* System library. */
-+
-+#include "sys_defs.h"
-+#include <unistd.h>
-+#include <string.h>
-+
-+#include "msg.h"
-+#include "mymalloc.h"
-+#include "vstring.h"
-+#include "vstream.h"
-+#include "vstring_vstream.h"
-+#include "valid_hostname.h"
-+#include "connect.h"
-+#include "stringops.h"
-+#include "dict_whoson.h"
-+#include "dict.h"
-+
-+
-+typedef struct {
-+  DICT    dict;                       /* generic members */
-+  VSTRING *input;                     /* raw I/O buffer */
-+  VSTRING *dummy;                     /* raw I/O buffer to skip empty lines */
-+  VSTREAM *fp;                        /* I/O stream */
-+} DICT_WHOSON;
-+
-+#define DICT_WHOSON_TMOUT  100
-+
-+/*
-+ * Does the server stop when the whoson server fails ?
-+ *
-+ * According the nature of the map, it should be a bad thing
-+ * exepted on a dedicaced SMTP after POP server.
-+ */
-+
-+#undef DICT_WHOSON_INSISTS
-+
-+#ifdef DICT_WHOSON_INSISTS
-+#  define DICT_WHOSON_MAXTRY 10
-+#  define DICT_WHOSON_ERROR  DICT_ERR_RETRY
-+#else
-+#  define DICT_WHOSON_MAXTRY 10
-+#  define DICT_WHOSON_ERROR  DICT_ERR_NONE
-+#endif
-+
-+
-+#define STR(x)		vstring_str(x)
-+
-+/* dict_whoson_connect - connect to whoson server */
-+
-+static int dict_whoson_connect(DICT_WHOSON *dict_whoson)
-+{
-+  int fd;
-+  if (dict_whoson->dict.name[0] == '/') { /* unix domain socket */
-+    fd = unix_connect(dict_whoson->dict.name, BLOCKING, 0);
-+  } else {
-+    fd = inet_connect(dict_whoson->dict.name, BLOCKING, 0);
-+  }
-+  if (fd < 0) {
-+    msg_warn("connect to WHOSON map %s: %m", dict_whoson->dict.name);
-+    return -1;
-+  }
-+
-+  dict_whoson->fp = vstream_fdopen(fd, O_RDWR);
-+
-+  vstream_control(dict_whoson->fp,
-+		  VSTREAM_CTL_TIMEOUT, DICT_WHOSON_TMOUT,
-+		  VSTREAM_CTL_END);
-+
-+  dict_whoson->fp = vstream_fdopen(fd, O_RDWR);
-+
-+  if (dict_whoson->input == 0) {
-+    dict_whoson->input = vstring_alloc(10);
-+    dict_whoson->dummy = vstring_alloc(10);
-+  }
-+  return 0;
-+  
-+}
-+
-+/* dict_whoson_disconnect - disconnect from whoson server */
-+
-+static void dict_whoson_disconnect(DICT_WHOSON *dict_whoson)
-+{
-+  (void) vstream_fclose(dict_whoson->fp);
-+  dict_whoson->fp = 0;
-+}
-+
-+/* dict_whoson_lookup - request whoson server */
-+
-+
-+static const char *dict_whoson_lookup(DICT *dict, const char *key)
-+{
-+  DICT_WHOSON *dict_whoson = (DICT_WHOSON *) dict;
-+  char   *myname = "dict_whoson_lookup";
-+  char   *reply;
-+  char   *end_of_reply;
-+  char   *dummy;
-+  int    tries;
-+  
-+#define RETURN(errval, result) { dict_errno = errval; return (result); }
-+
-+  if (msg_verbose)
-+    msg_info("%s: key %s", myname, key);
-+
-+  if (valid_hostaddr(key, 0) == 0) {
-+    if (msg_verbose)
-+      msg_info("%s: %s is not a host address, dont send it to whoson server",
-+	       myname, key);
-+    RETURN(DICT_ERR_NONE, 0);
-+  }
-+
-+  for (tries = 0; /* see below */ ; /* see below */ ) {
-+
-+    /*
-+     * Connect to the server, or use an existing connection.
-+     */
-+    if (dict_whoson->fp != 0 || dict_whoson_connect(dict_whoson) == 0) {
-+
-+      vstream_fprintf(dict_whoson->fp, "QUERY %s\r\n\r\n", key);
-+      if (vstring_get_nonl(dict_whoson->input, dict_whoson->fp) > 0) {
-+	
-+	reply = STR(dict_whoson->input);
-+
-+	/*
-+	 *  wait for an empty line
-+	 */
-+	while(vstring_get_nonl(dict_whoson->dummy, dict_whoson->fp)>0) {
-+	  dummy = STR(dict_whoson->dummy);
-+	  if (dummy[0] == '\r')  dummy ++;
-+	  if (dummy[0] == '\0')  break;
-+	}
-+
-+	end_of_reply=reply + strlen(reply);
-+	if (reply != end_of_reply && end_of_reply[-1] == '\r') 
-+	  end_of_reply[-1]='\0';
-+
-+	/*
-+	 *  Parse the answer
-+	 */ 
-+
-+	if (reply[0] == '+') {
-+	  /*
-+	   *  send the anwser in log file
-+	   */
-+	  msg_info("%s: user found '%.100s' for [%s] from %s", myname,
-+		   reply+1, key, dict_whoson->dict.name);
-+
-+	  RETURN(DICT_ERR_NONE, "OK");
-+
-+	} else if (reply[0] == '-') {
-+	  if (msg_verbose) {
-+	    msg_info("%s: user not found for [%s] from %s", myname,
-+		     key, dict_whoson->dict.name);
-+	  }
-+	  RETURN(DICT_ERR_NONE, 0);
-+
-+	} else if (reply[0] == '*') {
-+	  msg_warn("%s: read whoson map reply from %s: %.100s", myname,
-+		   dict_whoson->dict.name, printable(reply, '?'));
-+	  RETURN(DICT_WHOSON_ERROR, 0);
-+	} else {
-+	  msg_warn("%s: read whoson map reply from %s: bad sequence",
-+		   myname, dict_whoson->dict.name);
-+	  dict_whoson_disconnect(dict_whoson);
-+	  RETURN(DICT_WHOSON_ERROR, 0);
-+	}
-+      } else {
-+	msg_warn("%s: read whoson map reply from %s: unexpected EOF (%m)",
-+		 myname, dict_whoson->dict.name);
-+	dict_whoson_disconnect(dict_whoson);
-+      }
-+
-+    }
-+
-+      /*
-+       * Try to connect a limited number of times before giving up.
-+       */
-+      if (++tries >= DICT_WHOSON_MAXTRY)
-+	RETURN(DICT_WHOSON_ERROR, 0);
-+      
-+      /*
-+       * Sleep between attempts, instead of hammering the server.
-+       */
-+      sleep(1);
-+
-+  }
-+  
-+}
-+
-+/* dict_whoson_close - close whoson MAP */
-+
-+static void dict_whoson_close(DICT *dict) {
-+  DICT_WHOSON *dict_whoson = (DICT_WHOSON *) dict;
-+
-+  if (dict_whoson->fp)
-+    (void) vstream_fclose(dict_whoson->fp);
-+  if (dict_whoson->input)
-+    vstring_free(dict_whoson->input);
-+  if (dict_whoson->dummy)
-+    vstring_free(dict_whoson->dummy);
-+  dict_free(dict);
-+}
-+
-+/* dict_whoson_open - open whoson MAP */
-+
-+DICT    *dict_whoson_open(const char *map, int unused_flags, int dict_flags)
-+{
-+  DICT_WHOSON *dict_whoson;
-+  dict_errno = 0;
-+  dict_whoson = (DICT_WHOSON *) dict_alloc(DICT_TYPE_WHOSON, map,
-+					sizeof(*dict_whoson));
-+  dict_whoson->dict.lookup = dict_whoson_lookup;
-+  dict_whoson->input = dict_whoson->dummy = 0;
-+  dict_whoson->dict.flags = dict_flags & ~DICT_FLAG_FIXED;
-+  dict_whoson->dict.close = dict_whoson_close;
-+  dict_whoson->fp = 0;
-+  return (DICT_DEBUG(&dict_whoson->dict));
-+}
-Index: src/util/dict_whoson.h
---- /dev/null	2007-03-29 11:53:30 +0200
-+++ src/util/dict_whoson.h	2007-03-29 11:54:06 +0200
-@@ -0,0 +1,37 @@
-+#ifndef _DICT_WHOSON_H_INCLUDED_
-+#define _DICT_WHOSON_H_INCLUDED_
-+
-+/*++
-+/* NAME
-+/*	dict_whoson 3h
-+/* SUMMARY
-+/*	dictionary manager interface to whoson-based lookup tables
-+/* SYNOPSIS
-+/*	#include <dict_whoson.h>
-+/* DESCRIPTION
-+/* .nf
-+
-+ /*
-+  * Utility library.
-+  */
-+#include <dict.h>
-+
-+ /*
-+  * External interface.
-+  */
-+#define DICT_TYPE_WHOSON	"whoson"
-+
-+extern DICT *dict_whoson_open(const char *, int, int);
-+
-+/* LICENSE
-+/* .ad
-+/* .fi
-+/*	The Secure Mailer license must be distributed with this software.
-+/* AUTHOR(S)
-+/*	Wietse Venema
-+/*	IBM T.J. Watson Research
-+/*	P.O. Box 704
-+/*	Yorktown Heights, NY 10598, USA
-+/*--*/
-+
-+#endif
diff --git a/postfix/postfix.patch b/postfix/postfix.patch
deleted file mode 100644
index 0f1aa57..0000000
--- a/postfix/postfix.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-Index: makedefs
---- makedefs.orig	2007-03-24 14:30:18 +0100
-+++ makedefs	2007-12-13 18:42:19 +0100
-@@ -130,6 +130,10 @@
- 		;;
-   FreeBSD.6*)	SYSTYPE=FREEBSD6
- 		;;
-+  FreeBSD.7*)	SYSTYPE=FREEBSD7
-+		;;
-+  FreeBSD.8*)	SYSTYPE=FREEBSD8
-+		;;
-   OpenBSD.2*)	SYSTYPE=OPENBSD2
- 		;;
-   OpenBSD.3*)	SYSTYPE=OPENBSD3
-Index: src/util/file_limit.c
---- src/util/file_limit.c.orig	2003-10-22 20:48:36 +0200
-+++ src/util/file_limit.c	2007-12-13 18:41:59 +0100
-@@ -80,12 +80,21 @@
- void    set_file_limit(off_t limit)
- {
- #ifdef USE_ULIMIT
-+#ifdef USE_SOFTLIMITONLY
-+#error "USE_ULIMIT and USE_SOFTLIMITONLY are mutual exclusive"
-+#endif
-     if (ulimit(UL_SETFSIZE, limit / ULIMIT_BLOCK_SIZE) < 0)
- 	msg_fatal("ulimit: %m");
- #else
-     struct rlimit rlim;
- 
-+#ifdef USE_SOFTLIMITONLY
-+    if (getrlimit(RLIMIT_FSIZE, &rlim) < 0)
-+        rlim.rlim_max = RLIM_INFINITY;
-+    rlim.rlim_cur = limit;
-+#else
-     rlim.rlim_cur = rlim.rlim_max = limit;
-+#endif
-     if (setrlimit(RLIMIT_FSIZE, &rlim) < 0)
- 	msg_fatal("setrlimit: %m");
- #ifdef SIGXFSZ
-Index: src/util/msg_syslog.c
---- src/util/msg_syslog.c.orig	2006-06-15 20:07:16 +0200
-+++ src/util/msg_syslog.c	2007-12-13 18:41:59 +0100
-@@ -50,6 +50,11 @@
- #include <syslog.h>
- #include <string.h>
- #include <time.h>
-+#ifdef USE_SOFTLIMITONLY
-+#include <sys/time.h>
-+#include <sys/resource.h>
-+#include <signal.h>
-+#endif
- 
- /* Application-specific. */
- 
-@@ -144,6 +149,9 @@
- 
- static void msg_syslog_print(int level, const char *text)
- {
-+#ifdef USE_SOFTLIMITONLY
-+    struct rlimit save, rlim;
-+#endif
-     static int log_level[] = {
- 	LOG_INFO, LOG_WARNING, LOG_ERR, LOG_CRIT, LOG_CRIT,
-     };
-@@ -154,6 +162,15 @@
-     if (level < 0 || level >= (int) (sizeof(log_level) / sizeof(log_level[0])))
- 	msg_panic("msg_syslog_print: invalid severity level: %d", level);
- 
-+#ifdef USE_SOFTLIMITONLY
-+    if (getrlimit(RLIMIT_FSIZE, &save) < 0) {
-+        save.rlim_cur = RLIM_INFINITY;
-+        save.rlim_max = RLIM_INFINITY;
-+    }
-+    rlim.rlim_cur = save.rlim_max;
-+    rlim.rlim_max = save.rlim_max;
-+    (void)setrlimit(RLIMIT_FSIZE, &rlim);
-+#endif
-     if (level == MSG_INFO) {
- 	syslog(syslog_facility | log_level[level], "%.*s",
- 	       (int) MSG_SYSLOG_RECLEN, text);
-@@ -161,6 +178,9 @@
- 	syslog(syslog_facility | log_level[level], "%s: %.*s",
- 	       severity_name[level], (int) MSG_SYSLOG_RECLEN, text);
-     }
-+#ifdef USE_SOFTLIMITONLY
-+    (void)setrlimit(RLIMIT_FSIZE, &save);
-+#endif
- }
- 
- /* msg_syslog_init - initialize */
-Index: src/util/sys_defs.h
---- src/util/sys_defs.h.orig	2007-03-24 23:45:33 +0100
-+++ src/util/sys_defs.h	2007-12-13 18:42:42 +0100
-@@ -24,7 +24,7 @@
-   * 4.4BSD and close derivatives.
-   */
- #if defined(FREEBSD2) || defined(FREEBSD3) || defined(FREEBSD4) \
--    || defined(FREEBSD5) || defined(FREEBSD6) \
-+    || defined(FREEBSD5) || defined(FREEBSD6) || defined(FREEBSD7) || defined(FREEBSD8) \
-     || defined(BSDI2) || defined(BSDI3) || defined(BSDI4) \
-     || defined(OPENBSD2) || defined(OPENBSD3) || defined(OPENBSD4) \
-     || defined(NETBSD1) || defined(NETBSD2) || defined(NETBSD3) \
diff --git a/postfix/postfix.spec b/postfix/postfix.spec
index 8fd4117..ba4428b 100644
--- a/postfix/postfix.spec
+++ b/postfix/postfix.spec
@@ -23,7 +23,6 @@
 
 #   package versions
 %define       V_pflogsumm    1.1.1
-%define       V_whoson       2.4.0
 
 #   package information
 Name:         postfix
@@ -35,8 +34,8 @@ Distribution: OpenPKG Community
 Class:        BASE
 Group:        Mail
 License:      IPL
-Version:      2.4.6
-Release:      20080101_kolab2
+Version:      2.8.3
+Release:      20110531
 
 #   package options
 %option       with_fsl       yes
@@ -45,7 +44,6 @@ Release:      20080101_kolab2
 %option       with_mysql     no
 %option       with_pgsql     no
 %option       with_ldap      no
-%option       with_whoson    no
 %option       with_fdsetsize no
 
 #   list of sources
@@ -54,9 +52,7 @@ Source1:      http://jimsun.linxnet.com/downloads/pflogsumm-%{V_pflogsumm}.tar.g
 Source2:      postfix.txt
 Source3:      fsl.postfix
 Source4:      rc.postfix
-Patch0:       postfix.patch
 Patch1:       postfix.patch.pfls
-Patch2:       ftp://ftp.openpkg.org/sources/CPY/postfix/postfix-%{V_whoson}-whoson.patch
 
 #   build information
 Prefix:       %{l_prefix}
@@ -89,10 +85,6 @@ PreReq:       postgresql, openssl
 BuildPreReq:  openldap, openssl
 PreReq:       openldap, openssl
 %endif
-%if "%{with_whoson}" == "yes"
-BuildPreReq:  whoson
-PreReq:       whoson
-%endif
 AutoReq:      no
 AutoReqProv:  no
 Provides:     MTA
@@ -113,7 +105,6 @@ Conflicts:    exim, sendmail, ssmtp
     o Optional MySQL dictionary support      (see package options)
     o Optional PostgreSQL dictionary support (see package options)
     o Optional OpenLDAP dictionary support   (see package options)
-    o Optional WHOSON dictionary support     (see package options)
 
 %track
     prog postfix = {
@@ -126,11 +117,6 @@ Conflicts:    exim, sendmail, ssmtp
         url       = http://jimsun.linxnet.com/postfix_contrib.html
         regex     = pflogsumm-(__VER__)\.tar\.gz
     }
-    prog postfix:whoson = {
-        version   = %{V_whoson}
-        url       = ftp://ftp.openpkg.org/sources/CPY/postfix/
-        regex     = postfix-(__VER__)-whoson.patch
-    }
 
 %prep
     #   unpack distribution files
@@ -138,24 +124,14 @@ Conflicts:    exim, sendmail, ssmtp
     %setup -q -T -D -a 1
 
     #   apply OpenPKG patches
-    %patch -p0
     ( cd pflogsumm-%{V_pflogsumm} && %{l_patch} -p0 -b <%{PATCH1} ) || exit $?
 
-    #   apply vendor WHOSON patch
-%if "%{with_whoson}" == "yes"
-    %patch -p0 -P 2
-%endif
-
 %build
     #   configure Postfix (hard-core part I)
     %{l_shtool} subst \
         -e 's/var_config_dir, /var_command_dir, /' \
         src/postfix/postfix.c
     %{l_shtool} subst \
-        -e 's;config_directory/postfix-script;command_directory/postfix-script;' \
-        -e 's;config_directory/post-install;command_directory/postfix-install;' \
-        conf/postfix-script
-    %{l_shtool} subst \
         -e 's;/usr/include;%{l_prefix}/include;g' \
         makedefs
 
@@ -258,11 +234,9 @@ Conflicts:    exim, sendmail, ssmtp
         main.cf master.cf main.cf.default; do
         rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/postfix/$cfg
     done
-    mv $RPM_BUILD_ROOT%{l_prefix}/etc/postfix/postfix-script \
-       $RPM_BUILD_ROOT%{l_prefix}/sbin/postfix-script
-    rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/postfix/postfix-script*
-    mv $RPM_BUILD_ROOT%{l_prefix}/etc/postfix/post-install \
-       $RPM_BUILD_ROOT%{l_prefix}/sbin/postfix-install
+
+    #   remove duplicate config files
+    rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/postfix/{main,master}.cf
 
     #   install default configuration
     for name in `grep "^<file" %{SOURCE postfix.txt} | sed -e 's;^.*name=";;' -e 's;".*$;;'`; do
@@ -374,3 +348,11 @@ Conflicts:    exim, sendmail, ssmtp
         xargs rmdir >/dev/null 2>&1 || true
     exit 0
 
+%changelog
+* Tue May 31 2011 Christoph Wickert <wickert at kolabsys.com> - 2.8.3-20110531
+- Update to 2.8.3
+- Move postfix-script and post(fix)-install to %%{l_prefix}/libexec/postfix
+
+* Tue May 03 2011 Christoph Wickert <wickert at kolabsys.com> - 2.8-2-20110503
+- Update to 2.8.2
+- Drop whoson support, not used in Kolab





More information about the commits mailing list