Hello community, here is the log from the commit of package yast2-mail checked in at Mon Dec 31 22:43:25 CET 2007. -------- --- yast2-mail/yast2-mail.changes 2007-09-25 10:26:53.000000000 +0200 +++ /mounts/work_src_done/STABLE/yast2-mail/yast2-mail.changes 2007-12-30 19:59:48.540883000 +0100 @@ -1,0 +2,14 @@ +Sun Dec 30 19:29:49 CET 2007 - pv@suse.de + +- #278535 - YaST2 mail dialog does not offer help on the "No connection" setting +- bugfix: it was not possible to connect to an existen LDAP-server during + the configuration +- bugfix: check if bind-utils is installed. We need the dnsZone.schema + file +- #337398 - Long time bug in yast mail transfer agent module regarding + relayhost port setting +- #335524 Advanced Mail Transfer Agent cannot access LDAP server +- fixing the return values of wizard elements +- 2.15.24 + +------------------------------------------------------------------- Old: ---- yast2-mail-2.15.23.tar.bz2 New: ---- yast2-mail-2.15.24.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-mail.spec ++++++ --- /var/tmp/diff_new_pack.y28864/_old 2007-12-31 22:42:58.000000000 +0100 +++ /var/tmp/diff_new_pack.y28864/_new 2007-12-31 22:42:58.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package yast2-mail (Version 2.15.23) +# spec file for package yast2-mail (Version 2.15.24) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -11,14 +11,14 @@ # norootforbuild Name: yast2-mail -Version: 2.15.23 +Version: 2.15.24 Release: 1 License: GPL v2 or later Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: yast2-mail-2.15.23.tar.bz2 +Source0: yast2-mail-2.15.24.tar.bz2 Prefix: /usr -BuildRequires: perl-XML-Writer update-desktop-files yast2 yast2-devtools yast2-testsuite +BuildRequires: perl-XML-Writer update-desktop-files yast2-devtools yast2-testsuite BuildRequires: yast2-ldap-server yast2-network yast2-perl-bindings yast2-users PreReq: %fillup_prereq # new firewall interface @@ -66,7 +66,7 @@ Peter Varkoly <varkoly@novell.com> %prep -%setup -n yast2-mail-2.15.23 +%setup -n yast2-mail-2.15.24 %build %{prefix}/bin/y2tool y2autoconf @@ -159,6 +159,17 @@ %dir /usr/share/YaST2/clients /usr/share/YaST2/clients/users* %changelog +* Sun Dec 30 2007 - pv@suse.de +- #278535 - YaST2 mail dialog does not offer help on the "No connection" setting +- bugfix: it was not possible to connect to an existen LDAP-server during + the configuration +- bugfix: check if bind-utils is installed. We need the dnsZone.schema + file +- #337398 - Long time bug in yast mail transfer agent module regarding + relayhost port setting +- #335524 Advanced Mail Transfer Agent cannot access LDAP server +- fixing the return values of wizard elements +- 2.15.24 * Mon Sep 24 2007 - pv@suse.de - #327550 - yast2-mail fetchmail error - 2.15.23 ++++++ yast2-mail-2.15.23.tar.bz2 -> yast2-mail-2.15.24.tar.bz2 ++++++ ++++ 8884 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/agents/CyrusConfParser.pm new/yast2-mail-2.15.24/agents/CyrusConfParser.pm --- old/yast2-mail-2.15.23/agents/CyrusConfParser.pm 2007-05-24 11:58:17.000000000 +0200 +++ new/yast2-mail-2.15.24/agents/CyrusConfParser.pm 2007-11-22 10:44:05.000000000 +0100 @@ -1,3 +1,4 @@ +#!/usr/bin/perl # # $Id: CyrusConfParser.pm 23262 2005-05-03 11:30:49Z choeger $ # diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/agents/MasterCFParser.pm new/yast2-mail-2.15.24/agents/MasterCFParser.pm --- old/yast2-mail-2.15.23/agents/MasterCFParser.pm 2007-05-24 11:58:17.000000000 +0200 +++ new/yast2-mail-2.15.24/agents/MasterCFParser.pm 2007-11-22 10:43:46.000000000 +0100 @@ -1,3 +1,4 @@ +#!/usr/bin/perl # # $Id: MasterCFParser.pm 30394 2006-04-24 10:12:22Z varkoly $ # diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/agents/sysconfig.mail new/yast2-mail-2.15.24/agents/sysconfig.mail --- old/yast2-mail-2.15.23/agents/sysconfig.mail 2007-07-18 15:39:06.000000000 +0200 +++ new/yast2-mail-2.15.24/agents/sysconfig.mail 2007-10-30 16:10:53.000000000 +0100 @@ -46,4 +46,4 @@ # # This variable contains the type of the mail server configuration. # -CONF_TYPE="undef" +CONFIG_TYPE="undef" diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/configure.in new/yast2-mail-2.15.24/configure.in --- old/yast2-mail-2.15.23/configure.in 2007-08-12 12:02:36.000000000 +0200 +++ new/yast2-mail-2.15.24/configure.in 2007-11-22 10:47:28.000000000 +0100 @@ -1,9 +1,9 @@ dnl configure.in for yast2-mail dnl -dnl -- This file is generated by y2autoconf 2.13.29 - DO NOT EDIT! -- +dnl -- This file is generated by y2autoconf 2.15.9 - DO NOT EDIT! -- dnl (edit configure.in.in instead) -AC_INIT(yast2-mail, 2.15.9, http://bugs.opensuse.org/, yast2-mail) +AC_INIT(yast2-mail, 2.15.23, http://bugs.opensuse.org/, yast2-mail) dnl Check for presence of file 'RPMNAME' AC_CONFIG_SRCDIR([RPMNAME]) @@ -17,7 +17,7 @@ AM_INIT_AUTOMAKE(tar-ustar) dnl searches for some needed programs dnl Important YaST2 variables -VERSION="2.15.9" +VERSION="2.15.23" RPMNAME="yast2-mail" MAINTAINER="Peter Varkoly <varkoly@novell.com>" diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/Makefile.am new/yast2-mail-2.15.24/Makefile.am --- old/yast2-mail-2.15.23/Makefile.am 2007-08-12 12:02:36.000000000 +0200 +++ new/yast2-mail-2.15.24/Makefile.am 2007-11-22 10:47:28.000000000 +0100 @@ -30,7 +30,7 @@ extra_COPYRIGHT_files = $(if $(HAS_YAST_LICENSE), $(COPYRIGHT_files_yast), $(COPYRIGHT_files_gpl)) -AUTOMAKE_OPTIONS = foreign dist-bzip2 +AUTOMAKE_OPTIONS = foreign dist-bzip2 no-dist-gzip # where devtools instal m4 snippets # argh, executed literally #ACLOCAL_AMFLAGS = -I $(Y2DEVTOOLS_PREFIX)/share/aclocal @@ -210,8 +210,7 @@ # For po/ modules checkpo: - test ! -d $(srcdir)/po || $(MAKE) -C po checkpo -# test ! -d $(srcdir)/po \ -# || { $(MAKE) -C po checkpo && $(MAKE) -C po make-pox; } + test ! -f $(srcdir)/po/Makefile || $(MAKE) -C po checkpo +# test ! -f $(srcdir)/po/Makefile || $(MAKE) -C po checkpo make-pox # Contents of ./SUBDIRS SUBDIRS = agents doc permissions src users-plugin diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/missing new/yast2-mail-2.15.24/missing --- old/yast2-mail-2.15.23/missing 2007-08-12 12:02:40.000000000 +0200 +++ new/yast2-mail-2.15.24/missing 2007-11-22 10:47:34.000000000 +0100 @@ -1,9 +1,9 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2005-06-08.21 +scriptversion=2006-05-10.23 -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. @@ -33,6 +33,8 @@ fi run=: +sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' +sed_minuso='s/.* -o \([^ ]*\).*/\1/p' # In the cases where this matters, `missing' is being run in the # srcdir already. @@ -44,7 +46,7 @@ msg="missing on your system" -case "$1" in +case $1 in --run) # Try to run requested program, and just exit if it succeeds. run= @@ -77,6 +79,7 @@ aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' + autom4te touch the output file, or create a stub one automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c @@ -106,7 +109,7 @@ # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). -case "$1" in +case $1 in lex|yacc) # Not GNU programs, they don't have --version. ;; @@ -135,7 +138,7 @@ # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. -case "$1" in +case $1 in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if @@ -164,7 +167,7 @@ test -z "$files" && files="config.h" touch_files= for f in $files; do - case "$f" in + case $f in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; @@ -192,8 +195,8 @@ You can get \`$1' as part of \`Autoconf' from any GNU archive site." - file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` - test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else @@ -214,25 +217,25 @@ in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h - if [ $# -ne 1 ]; then + if test $# -ne 1; then eval LASTARG="\${$#}" - case "$LASTARG" in + case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.h fi ;; esac fi - if [ ! -f y.tab.h ]; then + if test ! -f y.tab.h; then echo >y.tab.h fi - if [ ! -f y.tab.c ]; then + if test ! -f y.tab.c; then echo 'main() { return 0; }' >y.tab.c fi ;; @@ -244,18 +247,18 @@ in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c - if [ $# -ne 1 ]; then + if test $# -ne 1; then eval LASTARG="\${$#}" - case "$LASTARG" in + case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" lex.yy.c fi ;; esac fi - if [ ! -f lex.yy.c ]; then + if test ! -f lex.yy.c; then echo 'main() { return 0; }' >lex.yy.c fi ;; @@ -267,11 +270,9 @@ \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` - fi - if [ -f "$file" ]; then + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` + if test -f "$file"; then touch $file else test -z "$file" || exec >$file @@ -289,11 +290,17 @@ DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` + file=`sed -n ' + /^@setfilename/{ + s/.* \([^ ]*\) *$/\1/ + p + q + }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi @@ -317,13 +324,13 @@ fi firstarg="$1" if shift; then - case "$firstarg" in + case $firstarg in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac - case "$firstarg" in + case $firstarg in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/helps.ycp new/yast2-mail-2.15.24/src/helps.ycp --- old/yast2-mail-2.15.23/src/helps.ycp 2007-05-24 11:58:17.000000000 +0200 +++ new/yast2-mail-2.15.24/src/helps.ycp 2007-12-30 19:28:51.000000000 +0100 @@ -11,7 +11,7 @@ * Authors: * Martin Vidner <mvidner@suse.cz> * - * $Id: helps.ycp 15188 2004-03-02 13:48:13Z lslezak $ + * $Id: helps.ycp 43241 2007-12-30 18:28:50Z varkoly $ * * The help texts. * @@ -79,7 +79,9 @@ <p>How are you connected to the Internet? With a dial-up connection, mails will not be sent immediately but rather after invoking <b>sendmail -q</b>.</p> -"); +") + +_("<p>Choosing <b>No connection</b> the mail server will be started +but only local mail transport is possible. The MTA listens on localhost.</p>"); return s; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail-advanced.ycp new/yast2-mail-2.15.24/src/mail-advanced.ycp --- old/yast2-mail-2.15.23/src/mail-advanced.ycp 2007-09-11 14:41:03.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail-advanced.ycp 2007-10-24 13:29:57.000000000 +0200 @@ -36,13 +36,14 @@ * @param options map of options from command line * @return boolean true on success */ -boolean SetupMailServer(map<string,string> options) +boolean SetupMailServer() { any ret = SetupSequence(); return true; } -map cmdline_description = $[ +map cmdline_description = +$[ "id" : "mail-server", /* Command line help text for the mail-server module */ "help" : _("Configuration of mail server"), @@ -85,6 +86,10 @@ { ret = MailServerAutoSequence(); } +else if(setup) +{ + ret = SetupSequence(); +} else { ret = CommandLine::Run(cmdline_description); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail-server_complex.ycp new/yast2-mail-2.15.24/src/mail-server_complex.ycp --- old/yast2-mail-2.15.23/src/mail-server_complex.ycp 2007-09-11 14:43:14.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail-server_complex.ycp 2007-10-30 16:03:39.000000000 +0100 @@ -37,7 +37,7 @@ * Read settings dialog * @return `abort if aborted and `next otherwise */ -boolean SetupDialog() { +symbol SetupDialog() { Wizard::RestoreHelp(HELPS["setup"]:""); string caption = _("Setup the Mail Server"); integer steps = 3; @@ -74,17 +74,17 @@ Progress::NextStage(); if( ! MailServer::CheckPackages() ) { - return false; + return `abort; } sleep(sl); // read packages Progress::NextStage(); if( CheckLDAPDialog() != `ok ) { - return false; + return `abort; } sleep(sl); - return true; + return `next; } /** diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail-server_dialogs.ycp new/yast2-mail-2.15.24/src/mail-server_dialogs.ycp --- old/yast2-mail-2.15.23/src/mail-server_dialogs.ycp 2007-09-12 16:00:26.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail-server_dialogs.ycp 2007-12-12 12:49:28.000000000 +0100 @@ -32,6 +32,7 @@ */ define any CheckLDAPDialog () { + y2milestone("--Start CheckLDAPDialog ---"); boolean ca_mgm = false; boolean conf_ldap_server = false; boolean setup_ldap_server = false; @@ -40,10 +41,12 @@ Ldap::LDAPInit(); map<string, any> LDAPSettings = (map <string, any>) Ldap::Export(); list args = []; - if(LDAPSettings["ldap_domain"]:"" == "" ) + y2milestone(" LDAPSettings %1", LDAPSettings); + if( ! LDAPSettings["start_ldap"]:false ) { //No LDAP-Client configuration setup_ldap_server = true; ca_mgm = true; + conf_ldap_server = true; comment = _("Your computer is not configured as LDAP-client.") + "<br>" + _("We suggest to setup a local LDAP-server for the mail server.") + "<br>" + _("To secure your system we suggest to create certificates for the LDAP and Mail Server.") + "<br>"; @@ -52,14 +55,14 @@ { //The computer is configured as LDAP-Client if( LDAPSettings["ldap_server"]:"" == "127.0.0.1" ) { // The LDAP-Server is local - comment = _("Your computer is configured as LDAP-client and the LDAP-Server is local.") + "<br>" + + comment = _("Your computer is configured as LDAP-client and the LDAP-Server is local.") + "<br>" + _("We suggest to adapt the LDAP-server configuration for the mail server.") + "<br>" + _("For this reason you have to know the password of the LDAP-administrator account:") + "<br>" + "<B>" + LDAPSettings["bind_dn"]:"" + ".</B><BR>"; } else { // The LDAP-Server is not local - comment = _("Your computer is configured as LDAP-client and the LDAP-Server is not local.") + "<br>" + + comment = _("Your computer is configured as LDAP-client and the LDAP-Server is not local.") + "<br>" + _("We suggest to configure the LDAP-server for the mail server.") + "<br>" + _("For this reason you have to know the password of the LDAP-administrator account:") + "<br>" + "<B>" + LDAPSettings["bind_dn"]:"" + ".</B><BR>" + @@ -100,20 +103,43 @@ { // Now we setup the ca managemant args = add(args, "ca_mgm"); } + Progress::NextStage(); if( setup_ldap_server ) { // Now we setup the LDAP Server args = add(args, "setup"); + } + if( setup_ldap_server || ca_mgm || conf_ldap_server ) + { WFM::CallFunction("mail-server_ldap-setup",args); Ldap::Read(); Ldap::LDAPInit(); - LDAPSettings = (map <string, any>) Ldap::Export(); } - string adminpw = Ldap::LDAPAskAndBind(false); - if( adminpw != nil ) + Progress::NextStage(); + MailServer::AdminPassword = Ldap::LDAPAskAndBind(false); + if( MailServer::AdminPassword != nil ) { - YaPI::MailServer::ResetMailServer(adminpw,LDAPSettings); + block<boolean> abort = ``{ + if (UI::PollInput () == `abort && + // popup text + Popup::YesNo (_("Really abort the writing process?"))) + return true; + return false; + }; + + //tell Ldap module to create the default objects: + LDAPSettings [ "create_ldap" ] = true; + Ldap::Import(LDAPSettings); +y2milestone("after LDAPSettings %1", LDAPSettings); + //write the settings: + Ldap::Write(abort); + //create default mail-server configuration + YaPI::MailServer::ResetMailServer(MailServer::AdminPassword,LDAPSettings); + return `ok; + } + else + { + return `abort; } - return `ok; } /** @@ -124,6 +150,7 @@ define any AuthorizingDialog () { + y2milestone("--Start AuthorizingDialog ---"); Ldap::Read(); map LDAPSettings = Ldap::Export(); if(LDAPSettings["bind_dn"]:"" == "" ) @@ -140,6 +167,7 @@ } Ldap::Read(); } + Ldap::LDAPInit(); integer size1 = (integer)SCR::Read(.target.size, "/etc/ssl/servercerts/servercert.pem"); integer size2 = (integer)SCR::Read(.target.size, "/etc/ssl/servercerts/serverkey.pem"); @@ -152,11 +180,16 @@ MailServer::CertExist = true; } - return Ldap::LDAPAskAndBind(false); - + MailServer::AdminPassword = Ldap::LDAPAskAndBind(false); + if( MailServer::AdminPassword == nil ) + { + return `abort; + } + return `next; } -list<map> GenerateTree(list<map> Tree, string parent, list<list> input) { +list<map> GenerateTree(list<map> Tree, string parent, list<list> input) +{ foreach(list i, input, ``{ string title = i[0]:""; @@ -170,7 +203,9 @@ return Tree; } -term GlobalSettingsDialog() { +term GlobalSettingsDialog() +{ + y2milestone("--Start GlobalSettingsDialog ---"); boolean limit = ((string)MailServer::GlobalSettings["MaximumMailSize"]:"0" != "0"); boolean is_DNS = ((string)MailServer::GlobalSettings["SendingMail","Type"]:"" == "DNS"); boolean is_NONE = ((string)MailServer::GlobalSettings["SendingMail","Type"]:"" == "NONE"); @@ -302,7 +337,8 @@ return content; } -list<term> MakeSelectedList(list<string> items, string value ) { +list<term> MakeSelectedList(list<string> items, string value ) +{ list<term> SelectedList = []; foreach(string i, items, ``{ if( i == value ) { @@ -314,7 +350,9 @@ return SelectedList; } -void ShowMailTransport(string CID, string ACTION) { +void ShowMailTransport(string CID, string ACTION) +{ + y2milestone("--Start ShowMailTransport ---"); list<map<string,string> > Transports = (list<map<string,string> >) MailServer::MailTransports["Transports"]:[]; map<string,string> TLSSites = (map<string,string>) MailServer::MailTransports["TLSSites"]:$[]; map<string,list> SASLAccounts = (map<string,list>) MailServer::MailTransports["SASLAccounts"]:$[]; @@ -549,7 +587,9 @@ return; } -term MailTransportsDialog() { +term MailTransportsDialog() +{ + y2milestone("--Start MailTransportsDialog ---"); list<map<string,string> > Transports = (list<map<string,string> >) MailServer::MailTransports["Transports"]:[]; map<string,string> TLSSites = (map<string,string>) MailServer::MailTransports["TLSSites"]:$[]; list Transport_items = []; @@ -595,7 +635,9 @@ return content; } -term MailPreventionDialog(string CID, string CIDRBL) { +term MailPreventionDialog(string CID, string CIDRBL) +{ + y2milestone("--Start MailTransportsDialog ---"); list<term> AccessItems= []; list<term> RBLItems = []; string BasicProtection = (string)MailServer::MailPrevention["BasicProtection"]:""; @@ -627,6 +669,8 @@ }); term content = `VBox ( + `Left(`CheckBox (`id(`VirusScanning), `opt(`notify), _("Start Virus Scanner AMAVIS"), VirusScanning)), + `VSpacing (1), `Frame(_("SPAM Prevention"), `HBox( `HWeight(7, @@ -672,13 +716,13 @@ ) ) ) - ), - `Left(`CheckBox (`id(`VirusScanning), `opt(`notify), _("Start Virus Scanner AMAVIS"), VirusScanning)) + ) ); return content; } -string RBLAdd () { +string RBLAdd () +{ UI::OpenDialog(`opt(`decorated ), `Frame(_("Add New RBL Server"), `VBox( `TextEntry(`id(`server), "", ""), @@ -703,7 +747,8 @@ return server; } -map AccessAdd () { +map AccessAdd () +{ UI::OpenDialog(`opt(`decorated ), `Frame(_("Add New Sender Restriction"), `VBox( `TextEntry(`id(`NewSender), _("Sender Address"), ""), @@ -737,7 +782,9 @@ return SenderRestriction; } -term MailRelayingDialog() { +term MailRelayingDialog() +{ + y2milestone("--Start MailRelayingDialog ---"); // boolean UserRestriction = ((string)MailServer::MailRelaying["UserRestriction"]:"0" == "1"); boolean RequireSASL = ((string)MailServer::MailRelaying["RequireSASL"]:"0" == "1"); boolean SMTPDTLSnone = ((string)MailServer::MailRelaying["SMTPDTLSMode"]:"none" == "none"); @@ -795,7 +842,9 @@ return content; } -term MailLocalDeliveryDialog() { +term MailLocalDeliveryDialog() +{ + y2milestone("--Start MailLocalDeliveryDialog ---"); boolean TypeCYRUS = ((string)MailServer::MailLocalDelivery["Type"]:"" == "cyrus"); boolean TypePROCMAIL = ((string)MailServer::MailLocalDelivery["Type"]:"" == "procmail"); boolean TypeLOCAL = ((string)MailServer::MailLocalDelivery["Type"]:"" == "local"); @@ -933,7 +982,9 @@ return content; } -term FetchingMailDialog() { +term FetchingMailDialog() +{ + y2milestone("--Start FetchingMailDialog ---"); list<term> table_items = []; integer IID = 0; list<map<string,string> > entries = (list<map<string,string> >) MailServer::FetchingMail["Items"]:[]; @@ -1017,7 +1068,9 @@ return content; } -map FetchmailAddItem(){ +map FetchmailAddItem() +{ + y2milestone("--Start FetchmailAddItem ---"); UI::OpenDialog(`opt(`decorated ), `Frame(_("Add New Fetchmail Job"), `VBox( `TextEntry(`id(`server), _("Server Address"), ""), @@ -1070,7 +1123,9 @@ } -term MailLocalDomainsDialog(string CID) { +term MailLocalDomainsDialog(string CID) +{ + y2milestone("--Start MailLocalDomainsDialog ---"); list<term> Domains = []; boolean NoLocalDelivery = ((string)MailServer::MailLocalDelivery["Type"]:"" == "none"); if(NoLocalDelivery) { @@ -1122,8 +1177,9 @@ return content; } -void ShowMailLocalDomain(string CID, string ACTION) { - +void ShowMailLocalDomain(string CID, string ACTION) +{ + y2milestone("--Start ShowMailLocalDomain ---"); string Name = ""; string Type = "local"; boolean Masquerading = true; @@ -1198,6 +1254,7 @@ boolean CheckMainDomain() { + y2milestone("--Start CheckMainDomain ---"); integer maindomain = 0; integer domains = 0; @@ -1226,7 +1283,7 @@ any ComplexDialog() { - + y2milestone("--Start ComplexDialog ---"); Wizard::CreateTreeDialog(); list<map> Tree = GenerateTree([], "", MailServer::ModulesTreeContent) ; Wizard::CreateTree(Tree, _("Mail Server Configuration")); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/MailServerLDAP.pm new/yast2-mail-2.15.24/src/MailServerLDAP.pm --- old/yast2-mail-2.15.23/src/MailServerLDAP.pm 2007-08-12 14:56:27.000000000 +0200 +++ new/yast2-mail-2.15.24/src/MailServerLDAP.pm 2007-12-13 13:17:30.000000000 +0100 @@ -34,7 +34,7 @@ YaST::YCP::Import ("YaPI::LdapServer"); YaST::YCP::Import ("Service"); -BEGIN {$TYPEINFO{ConfigureLDAPServer} = ["function", "any", [ "map","string","any"]];} +BEGIN {$TYPEINFO{ConfigureLDAPServer} = ["function", "any"];} sub ConfigureLDAPServer() { # don't configure if using eDirectory server @@ -87,7 +87,7 @@ "param" => "eq" } ); } - if(!$SuSEMailClient) + if(!$suseTLSPerSitePeer) { YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, { "attr" => "suseTLSPerSitePeer,SuSEMailTransportDestination", diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail-server_ldap-setup.ycp new/yast2-mail-2.15.24/src/mail-server_ldap-setup.ycp --- old/yast2-mail-2.15.23/src/mail-server_ldap-setup.ycp 2007-09-12 16:09:15.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail-server_ldap-setup.ycp 2007-12-12 12:45:28.000000000 +0100 @@ -33,11 +33,16 @@ y2milestone("--- mail-server-ldap-setup ---"); // First we check if all requested modules are installed - if( !Package::Installed ( "ldap-server" ) ) + if( contains(args,"setup") && !Package::Installed ( "yast2-ldap-server" ) ) { l_to_install = add( l_to_install, "yast2-ldap-server" ); to_install = to_install + "yast2-ldap-server\n"; } + if( contains(args,"setup") && !Package::Installed ( "bind-utils" ) ) + { + l_to_install = add( l_to_install, "bind-utils" ); + to_install = to_install + "bind-utils\n"; + } if(contains(args,"ca_mgm") ) { if( !Package::Installed ( "yast2-ca-management" ) ) @@ -70,23 +75,11 @@ if(contains(args,"setup") ) { WFM::CallFunction("ldap-server",[]); + MailServerLDAP::ConfigureLDAPServer(); } if(contains(args,"setup") ) { WFM::CallFunction("ldap",[]); } - Ldap::Read(); - Ldap::LDAPInit(); - map<string, any> LDAPSettings = (map<string, any>)Ldap::Export(); - string adminpw = Ldap::LDAPAskAndBind(false); - MailServerLDAP::ConfigureLDAPServer(LDAPSettings); - if( adminpw != nil ) - { - YaPI::MailServer::ResetMailServer(adminpw,LDAPSettings); - } - else - { - return false; - } return true; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail-server_wizards.ycp new/yast2-mail-2.15.24/src/mail-server_wizards.ycp --- old/yast2-mail-2.15.23/src/mail-server_wizards.ycp 2007-07-18 15:40:28.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail-server_wizards.ycp 2007-10-30 15:54:06.000000000 +0100 @@ -109,6 +109,10 @@ `abort : `abort, `next : "main" ], + "main" : $[ + `abort : `abort, + `next : `next + ] ]; Wizard::CreateDialog(); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/MailServer.ycp new/yast2-mail-2.15.24/src/MailServer.ycp --- old/yast2-mail-2.15.23/src/MailServer.ycp 2007-09-11 14:36:19.000000000 +0200 +++ new/yast2-mail-2.15.24/src/MailServer.ycp 2007-11-27 15:08:16.000000000 +0100 @@ -159,6 +159,8 @@ return Package::Installed (package); } +global boolean pam_ldap_installed = false; +global boolean nss_ldap_installed = false; global boolean procmail_installed = false; global boolean amavis_installed = false; global boolean ldap_installed = false; @@ -216,7 +218,7 @@ if(! is_main_domain ) { y2milestone("no main mail domain"); - LDAPSettings["bind_pw"] = MailServer::AdminPassword; + LDAPSettings["bind_pw"] = AdminPassword; SCR::Execute (.ldap.bind,LDAPSettings); integer counter = 0; map lastDomain = $[]; @@ -258,6 +260,8 @@ */ global boolean CheckPackages() { + pam_ldap_installed = Installed("pam_ldap"); + nss_ldap_installed = Installed("nss_ldap"); procmail_installed = Installed("procmail"); cyrus_installed = Installed("cyrus-imapd"); postfix_installed = Installed("postfix"); @@ -269,16 +273,26 @@ string to_install = ""; list<string> l_to_install = []; - if (!ldap_installed) + if (!pam_ldap_installed) { - l_to_install = add( l_to_install, "yast2-ldap-client" ); - to_install = to_install + "yast2-ldap-client\n"; + l_to_install = add( l_to_install, "pam_ldap" ); + to_install = to_install + "pam_ldap\n"; + } + if (!nss_ldap_installed) + { + l_to_install = add( l_to_install, "nss_ldap" ); + to_install = to_install + "nss_ldap\n"; } if (!postfix_installed) { l_to_install = add( l_to_install, "postfix" ); to_install = to_install + "postfix\n"; } + if (!ldap_installed) + { + l_to_install = add( l_to_install, "yast2-ldap-client" ); + to_install = to_install + "yast2-ldap-client\n"; + } if(!sasl_installed) { l_to_install = add( l_to_install, "cyrus-sasl-plain" ); @@ -546,8 +560,9 @@ `focus_yes)) { Package::DoInstall(["clamav","amavisd-new"]); - Service::Start("amavis"); Service::Start("clamd"); + Service::Start("freshclam"); + Service::Start("amavis"); y2milestone("Installing amavis"); } else @@ -557,6 +572,7 @@ } Service::Enable("amavis"); Service::Enable("clamd"); + Service::Enable("freshclam"); } if( (boolean)MailPrevention["Changed"]:false ) { if( ! YaPI::MailServer::WriteMailPrevention(MailPrevention,AdminPassword) ) { @@ -564,6 +580,7 @@ } if((boolean)MailPrevention["VirusScanning"]:false) { Service::Restart("clamd"); + Service::Restart("freshclam"); Service::Restart("amavis"); } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/mail.ycp new/yast2-mail-2.15.24/src/mail.ycp --- old/yast2-mail-2.15.23/src/mail.ycp 2007-09-12 15:25:57.000000000 +0200 +++ new/yast2-mail-2.15.24/src/mail.ycp 2007-10-31 12:31:51.000000000 +0100 @@ -12,7 +12,7 @@ * Martin Vidner <mvidner@suse.cz> * Peter Varkoly <varkoly@novell.com> * - * $Id: mail.ycp 40877 2007-09-12 13:21:52Z varkoly $ + * $Id: mail.ycp 41667 2007-10-31 11:29:56Z varkoly $ * * Main file for mail configuration. Uses all other files. * @@ -139,7 +139,6 @@ Popup::Error(_("You have to select a configuration type")); continue; } - SCR::Write (.sysconfig.mail.CONFIG_TYPE, sret); y2milestone ("Mail configuration type %1", sret); break; } @@ -205,7 +204,12 @@ { ret = WFM::CallFunction("mail-standard",args); } + y2milestone ("Mail module %1 returned %2", conf_type, ret); + if( ret != nil && ret != `cancel && ret != `abort ) + { + SCR::Write (.sysconfig.mail.CONFIG_TYPE, conf_type); + } } define boolean Setup (map<string, string> options) ``{ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/widgets.ycp new/yast2-mail-2.15.24/src/widgets.ycp --- old/yast2-mail-2.15.23/src/widgets.ycp 2007-05-24 11:58:17.000000000 +0200 +++ new/yast2-mail-2.15.24/src/widgets.ycp 2007-11-07 15:24:09.000000000 +0100 @@ -11,7 +11,7 @@ * Authors: * Martin Vidner <mvidner@suse.cz> * - * $Id: widgets.ycp 34093 2006-11-06 14:27:26Z mvidner $ + * $Id: widgets.ycp 41854 2007-11-07 14:21:37Z varkoly $ */ { @@ -221,8 +221,16 @@ // when validating: may be enclosed in brackets (prevents mx lookups) string oms = (string) UI::QueryWidget (`id (id), `Value); // watch this: "[", no brackets, "]" - string oms_no_brackets = regexpmatch (oms, "[[][^][]*[]]") ? - regexpsub (oms, ".(.*).", "\\1") : oms; + string oms_no_brackets = regexpmatch (oms, "[[][^][]*[]]:.*") ? regexpsub (oms, ".(.*).:.*", "\\1") : oms; + + if( oms_no_brackets == oms ) + { + oms_no_brackets = regexpmatch (oms, "[[][^][]*[]]") ? regexpsub (oms, ".(.*).", "\\1") : oms; + } + if( oms_no_brackets == oms ) + { + oms_no_brackets = regexpmatch (oms, ".*:.*") ? regexpsub (oms, "(.*):.*", "\\1") : oms; + } if (oms_no_brackets != "" && ! Address::Check (oms_no_brackets) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/src/YaPI/MailServer.pm new/yast2-mail-2.15.24/src/YaPI/MailServer.pm --- old/yast2-mail-2.15.23/src/YaPI/MailServer.pm 2007-08-12 14:23:42.000000000 +0200 +++ new/yast2-mail-2.15.24/src/YaPI/MailServer.pm 2007-11-27 15:17:10.000000000 +0100 @@ -2669,6 +2669,8 @@ write_attribute($MainCf,'virtual_alias_maps', 'ldap:/etc/postfix/ldaplocal_recipient_maps.cf'); write_attribute($MainCf,'virtual_alias_domains','ldap:/etc/postfix/ldapvirtual_alias_maps.cf'); write_attribute($MainCf,'alias_maps','hash:/etc/aliases, ldap:/etc/postfix/ldapalias_maps.cf, ldap:/etc/postfix/ldapalias_maps_member.cf'); + check_ldap_configuration('transport_maps',$ldapMap); + check_ldap_configuration('smtp_tls_per_site',$ldapMap); check_ldap_configuration('masquerade_domains',$ldapMap); check_ldap_configuration('mydestination',$ldapMap); check_ldap_configuration('local_recipient_maps',$ldapMap); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-mail-2.15.23/VERSION new/yast2-mail-2.15.24/VERSION --- old/yast2-mail-2.15.23/VERSION 2007-09-24 16:55:33.000000000 +0200 +++ new/yast2-mail-2.15.24/VERSION 2007-11-27 11:54:49.000000000 +0100 @@ -1 +1 @@ -2.15.23 +2.15.24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de