Hello community, here is the log from the commit of package yast2-mail checked in at Thu May 31 21:18:32 CEST 2007. -------- --- yast2-mail/yast2-mail.changes 2007-05-08 17:48:31.000000000 +0200 +++ /mounts/work_src_done/STABLE/yast2-mail/yast2-mail.changes 2007-05-30 21:02:06.000000000 +0200 @@ -1,0 +2,12 @@ +Wed May 30 21:00:17 CEST 2007 - varkoly@suse.de + +- move sysconfig.mail from aaa_base +- include first version of the wizard to decide wich kind of + mail configuration will be done + +------------------------------------------------------------------- +Fri May 25 13:30:04 CEST 2007 - jsrain@suse.cz + +- removed outdated translations from .desktop-files (#271209) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-mail.spec ++++++ --- /var/tmp/diff_new_pack.v12496/_old 2007-05-31 21:18:24.000000000 +0200 +++ /var/tmp/diff_new_pack.v12496/_new 2007-05-31 21:18:24.000000000 +0200 @@ -12,7 +12,7 @@ Name: yast2-mail Version: 2.15.9 -Release: 1 +Release: 12 License: GNU General Public License (GPL) Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -20,6 +20,7 @@ prefix: /usr BuildRequires: perl-XML-Writer update-desktop-files yast2 yast2-devtools yast2-testsuite BuildRequires: yast2-ldap-server yast2-network yast2-perl-bindings yast2-users +PreReq: %fillup_prereq # new firewall interface Requires: yast2 >= 2.11.11 Requires: yast2-users @@ -89,6 +90,9 @@ %clean rm -rf "$RPM_BUILD_ROOT" +%post +%{fillup_only -n mail} + %files %defattr(-,root,root) %dir /usr/share/YaST2/include/mail @@ -99,6 +103,7 @@ /usr/share/YaST2/modules/Mail.ybc /usr/share/YaST2/modules/MailServer.ybc /usr/share/YaST2/modules/MailServer.ycp +/usr/share/YaST2/modules/MailServerLDAP.pm /usr/share/YaST2/modules/Mail.ycp %dir /usr/share/YaST2/modules/YaPI /usr/share/YaST2/modules/YaPI/Mail* @@ -146,6 +151,7 @@ %dir /usr/lib/YaST2/servers_non_y2 /usr/lib/YaST2/servers_non_y2/ag_fetchmailrc /usr/lib/YaST2/servers_non_y2/ag_mailtable +/var/adm/fillup-templates/sysconfig.mail %files plugins %defattr(-,root,root) @@ -155,6 +161,12 @@ /usr/share/YaST2/clients/users* %changelog +* Wed May 30 2007 - varkoly@suse.de +- move sysconfig.mail from aaa_base +- include first version of the wizard to decide wich kind of + mail configuration will be done +* Fri May 25 2007 - jsrain@suse.cz +- removed outdated translations from .desktop-files (#271209) * Tue May 08 2007 - varkoly@suse.de - Move MailTableInclude.pm MailTable.pm to yast2. - 2.15.9 ++++++ yast2-mail-2.15.9.tar.bz2 ++++++ ++++ 9665 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.9/agents/Makefile.am new/yast2-mail-2.15.9/agents/Makefile.am --- old/yast2-mail-2.15.9/agents/Makefile.am 2007-04-12 15:16:27.000000000 +0200 +++ new/yast2-mail-2.15.9/agents/Makefile.am 2007-05-30 20:17:31.000000000 +0200 @@ -1,7 +1,7 @@ # # Makefile.am for y2c_mail/agents # -# $Id: Makefile.am 13709 2004-01-30 16:08:25Z mvidner $ +# $Id: Makefile.am 37610 2007-04-19 15:22:10Z varkoly $ # agent_SCRIPTS = ag_fetchmailrc \ @@ -37,6 +37,7 @@ mail_cyrusconf.scr \ cfg_fetchmail.scr +fillup_DATA = sysconfig.mail # ag_fetchmailrc is tested in testsuite dir TESTS = test-mailtable @@ -49,4 +50,4 @@ test-mailtable-4.in test-mailtable-4.out \ test-mailtable-18487.in test-mailtable-18487.out -EXTRA_DIST = $(agent_SCRIPTS) $(scrconf_DATA) $(TESTS) $(testdata) +EXTRA_DIST = $(agent_SCRIPTS) $(scrconf_DATA) $(TESTS) $(testdata) $(fillup_DATA) 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.9/agents/sysconfig.mail new/yast2-mail-2.15.9/agents/sysconfig.mail --- old/yast2-mail-2.15.9/agents/sysconfig.mail 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-mail-2.15.9/agents/sysconfig.mail 2007-05-30 19:56:25.000000000 +0200 @@ -0,0 +1,49 @@ +## Path: Network/Mail/General +## Description: +## Type: string +## Default: "" +## Config: postfix +## ServiceReload: sendmail,postfix +# +# From:-Line in email and News postings +# (otherwise the FQDN is used) +# +FROM_HEADER="" + +## Path: Network/Mail/General +## Description: Basic general MTA configuration +## Type: yesno +## Default: yes +## Config: postfix,sendmail +# +# If you don't want to let SuSEconfig generate your +# configuration file, set this to no +# +MAIL_CREATE_CONFIG="yes" + +## Type: yesno +## Default: no +## Config: postfix +# +# Set this to "yes" if mail from remote should be accepted +# this is necessary for any mail server. +# If set to "no" or empty then only mail from localhost +# will be accepted. +# +SMTPD_LISTEN_REMOTE="yes" + +## Type: yesno +## Default: no +# +# Set this to "yes" if the yast2 mail module must not +# start with the with the vizard for asking the +# configuration type of the mail server. +# +MAIL_SKIP_ASK="no" + +## Type: string(standard,advanced,undef) +## Default: undef +# +# This variable contains the type of the mail server configuration. +# +MAIL_CONF_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.9/autodocs-ycp.ami new/yast2-mail-2.15.9/autodocs-ycp.ami --- old/yast2-mail-2.15.9/autodocs-ycp.ami 2007-05-03 14:59:06.000000000 +0200 +++ new/yast2-mail-2.15.9/autodocs-ycp.ami 2007-05-30 20:20:59.000000000 +0200 @@ -1,18 +1,27 @@ # -*- makefile -*- Automake include file -# $Id: autodocs-ycp.ami 23438 2005-05-17 16:31:21Z mvidner $ +# $Id: autodocs-ycp.ami 33394 2006-10-13 11:51:40Z mvidner $ # Builds source documentation for YCP sources # Uses ycpdoc # PARAMETERS: # AUTODOCS_YCP: Files that the ycp autodocs is built from # Optional - the default is $(srcdir)/../../src/*.ycp +# AUTODOCS_PM: Files that the perl autodocs is built from +# Optional - the default is $(srcdir)/../../src/*.pm htmldir = $(docdir)/autodocs html_DATA = index.html $(wildcard *.html) -CLEANFILES = $(html_DATA) +CLEANFILES = $(html_DATA) pod2htm*.tmp -AUTODOCS_YCP ?= $(srcdir)/../../src/*.ycp -index.html: $(AUTODOCS_YCP) - ${YCPDOC} -d. $^ +AUTODOCS_YCP ?= $(wildcard $(srcdir)/../../src/*.ycp) +AUTODOCS_PM ?= $(wildcard $(srcdir)/../../src/*.pm) +index.html: $(AUTODOCS_YCP) $(AUTODOCS_PM) +#including *.pm, for the index + ${YCPDOC} -d. $^ + for i in $(AUTODOCS_PM); do \ + b=`basename $$i`; b=$${b%.pm}; \ + pod2html --title=$$b --infile=$$i --outfile=$$b.html; \ + echo "<a href='$$b.html'>$$b</a>" > $$b.mod.html; \ + done 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.9/configure.in new/yast2-mail-2.15.9/configure.in --- old/yast2-mail-2.15.9/configure.in 2007-05-03 14:59:06.000000000 +0200 +++ new/yast2-mail-2.15.9/configure.in 2007-05-30 20:20:59.000000000 +0200 @@ -1,9 +1,9 @@ dnl configure.in for yast2-mail dnl -dnl -- This file is generated by y2autoconf 2.13.18 - DO NOT EDIT! -- +dnl -- This file is generated by y2autoconf 2.15.0 - DO NOT EDIT! -- dnl (edit configure.in.in instead) -AC_INIT(yast2-mail, 2.15.7, http://bugs.opensuse.org/, yast2-mail) +AC_INIT(yast2-mail, 2.15.9, 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.7" +VERSION="2.15.9" RPMNAME="yast2-mail" MAINTAINER="Peter Varkoly <varkoly@novell.com>" @@ -110,6 +110,8 @@ AC_MSG_ERROR(xgettext is missing; please install gettext-devel.) fi +Y2DEVTOOLS_PREFIX=`pkg-config --print-errors --variable=prefix yast2-devtools` +AC_SUBST(Y2DEVTOOLS_PREFIX) devtools_ybindir=`pkg-config --print-errors --variable=ybindir yast2-devtools` devtools_yast2dir=`pkg-config --print-errors --variable=yast2dir yast2-devtools` @@ -142,6 +144,9 @@ if test "$YCPC" = "false"; then AC_MSG_ERROR([ycpc is not installed]) fi +AC_CHECK_FILE($devtools_yast2dir/data/testsuite/Makefile.testsuite, [], [ + AC_MSG_WARN([yast2-testsuite.rpm is not installed]) +]) dnl Check packages expect and dejagnu AC_PATH_PROG(MYEXPECT, expect, false) 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.9/Makefile.am new/yast2-mail-2.15.9/Makefile.am --- old/yast2-mail-2.15.9/Makefile.am 2007-05-03 14:59:06.000000000 +0200 +++ new/yast2-mail-2.15.9/Makefile.am 2007-05-30 20:20:59.000000000 +0200 @@ -7,8 +7,7 @@ # #where devtools are -PREFIX := $(shell pkg-config --print-errors --variable=prefix yast2-devtools) -Y2TOOL = $(PREFIX)/bin/y2tool +Y2TOOL = $(Y2DEVTOOLS_PREFIX)/bin/y2tool VERSION = $(shell cat $(srcdir)/VERSION) RPMNAME = $(shell cat $(srcdir)/RPMNAME) @@ -20,7 +19,7 @@ # do we do Makefile.am for devtools? It is a little special... IS_DEVTOOLS = $(findstring yast2-devtools,$(RPMNAME)) -DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(PREFIX)/share/YaST2/data/devtools) +DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools) ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl) @@ -34,7 +33,7 @@ AUTOMAKE_OPTIONS = foreign dist-bzip2 # where devtools instal m4 snippets # argh, executed literally -#ACLOCAL_AMFLAGS = -I $(PREFIX)/share/aclocal +#ACLOCAL_AMFLAGS = -I $(Y2DEVTOOLS_PREFIX)/share/aclocal ACLOCAL_AMFLAGS = -I `if test -d ./devtools/admin; then echo ./devtools/admin; else pkg-config --print-errors --variable=datadir yast2-devtools; fi`/aclocal Makefile.am.common: $(DEVTOOLS_DIR)/admin/Makefile.am.common @@ -67,7 +66,7 @@ # because the prerequisite is made here (not anymore!) # and we don't want any paths in y2autoconf # info '(autoconf)config.status Invocation' -$(RPMNAME).pc: $(RPMNAME).pc.in +$(RPMNAME).pc: $(RPMNAME).pc.in config.status ./config.status --file=$@:$< if CREATE_PKGCONFIG_NOARCH 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.9/Makefile.am.common new/yast2-mail-2.15.9/Makefile.am.common --- old/yast2-mail-2.15.9/Makefile.am.common 2007-05-03 14:59:06.000000000 +0200 +++ new/yast2-mail-2.15.9/Makefile.am.common 2007-05-30 20:20:59.000000000 +0200 @@ -29,7 +29,19 @@ dist-hook: check-syntax +CHECK_SYNTAX = true check-syntax: $(client_DATA) $(ycpchook) - if test "$(client_DATA)"; then $(bindir)/ycpc -qE -M. -I. $(YCPCFLAGS) $(filter %.ycp,$^) || exit 1; fi + @if test "$(client_DATA)"; then \ + if $(CHECK_SYNTAX); then \ + TO_CHECK="$(filter %.ycp,$^)"; \ + echo "Checking syntax of $${TO_CHECK}"; \ + if ! $(YCPC) -qE -M. -I. $(YCPCFLAGS) $${TO_CHECK}; then \ + echo "Failed. Disable by 'make ... CHECK_SYNTAX=false' at your own risk"; \ + exit 1; \ + fi; \ + else \ + echo "Syntax check disabled"; \ + fi; \ + fi -include .dep 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.9/missing new/yast2-mail-2.15.9/missing --- old/yast2-mail-2.15.9/missing 2007-05-03 14:59:10.000000000 +0200 +++ new/yast2-mail-2.15.9/missing 2007-05-30 20:26:13.000000000 +0200 @@ -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.9/src/mail-advanced.ycp new/yast2-mail-2.15.9/src/mail-advanced.ycp --- old/yast2-mail-2.15.9/src/mail-advanced.ycp 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-mail-2.15.9/src/mail-advanced.ycp 2007-05-30 19:54:14.000000000 +0200 @@ -0,0 +1,106 @@ +/** + * File: clients/mail-server.ycp + * Package: Configuration of mail-server + * Summary: Main file + * Authors: Peter Varkoly <varkoly@suse.de> + * + * $Id: mail-server.ycp 19955 2004-10-26 12:28:16Z varkoly $ + * + * Main file for mail-server configuration. Uses all other files. + */ + +{ + +/*** + * <h3>Configuration of mail-server</h3> + */ + +textdomain "MailServer"; + +/* The main () */ +y2milestone ("----------------------------------------"); +y2milestone ("MailServer module started"); + +import "Progress"; +import "Report"; +import "Summary"; +import "Popup"; +import "Label"; + +import "CommandLine"; +include "mail/mail-server_wizards.ycp"; + +map cmdline_description = $[ + "id" : "mail-server", + /* Command line help text for the mail-server module */ + "help" : _("Configuration of mail server"), + "guihandler" : MailServerSequence, + "initialize" : MailServer::Read, + "finish" : MailServer::Write, + "actions" : $[ + "setup" : $[ + "handler" : MailServerSequence, + "help" : _("Advanced Mail Server setup with LDAP backend"), + ], + ], + "options" : $[ + // FIXME TODO: fill the option descriptions here + ], + "mapping" : $[ + // FIXME TODO: fill the mappings of actions and options here + ] +]; + +/* analyze command line */ +boolean propose = false; +boolean setup = false; +list args = WFM::Args(); +if(size(args) > 0) { + if(is(WFM::Args(0), path) && WFM::Args(0) == .propose) { + y2milestone("Using PROPOSE mode"); + propose = true; + } + if(contains(args,"setup")) { + y2milestone("Using setup mode"); + setup = true; + } +} + +/* + after merging yast2-mail and yast2-mail-server we have to be + carefull not to corrupt the configuration of the other modul +*/ +if( !setup && SCR::Read (.sysconfig.mail.MAIL_CREATE_CONFIG)== "yes" ) +{ + if( + ! Popup::AnyQuestionRichText( + Label::WarningMsg(), + _("You have configured your MTA without LDAP support.<br>") + + _("This modul will configure your MTA with LDAP support.<br>") + + _("This will corrupt your actuall configuration."), + 80, 10, + Label::ContinueButton(), + Label::CancelButton(), + `focus_no + ) + ) + { + return nil; + } +} + +/* main ui function */ +any ret = nil; + +if(propose) ret = MailServerAutoSequence(); +else ret = CommandLine::Run(cmdline_description); +y2debug("ret=%1", ret); + +/* Finish */ +y2milestone("MailServer module finished"); +y2milestone("----------------------------------------"); + +return ret; + +/* EOF */ +} 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.9/src/mail.desktop new/yast2-mail-2.15.9/src/mail.desktop --- old/yast2-mail-2.15.9/src/mail.desktop 2007-03-21 12:03:10.000000000 +0100 +++ new/yast2-mail-2.15.9/src/mail.desktop 2007-05-30 18:21:23.000000000 +0200 @@ -22,33 +22,4 @@ Name=Mail Transfer Agent GenericName=Configure mail -Name[cs]=Agent přenosu pošty (MTA) -GenericName[cs]=Konfigurovat poštu -GenericName[de]=Mailkonfiguration -Name[es]=Agente de transferencia de mensajes (MTA) -GenericName[es]=Configurar correo -Name[hu]=Levéltovábbító szerver (Mail Transfer Agent, MTA) -GenericName[hu]=Levelezés beállítása -GenericName[it]=Configurazione posta -Name[ko]=메일 전송 에이전트 -GenericName[ko]=메일 설정 -GenericName[nl]=Configureer mail -Name[pt]=Servidor de Correio - MTA -GenericName[pt]=Configurar correio -GenericName[sk]=Konfigurovať poštu -Name[sv]=Överföringsagent för e-post (MTA) -GenericName[sv]=Ställ in e-post -GenericName[da]=Indstil e-post -Name[el]=Πράκτορας Μεταφοράς Αλληλογραφίας -GenericName[el]=Ρύθμιση αλληλογραφίας -Name[fr]=Agent de transfert de mail -GenericName[fr]=Configurer le courrier -Name[ja]=メッセージ転送機能体 -GenericName[ja]=電子メールを設定する -Name[lt]=Pašto gabenimo agentas -GenericName[lt]=Konfigūruoti paštą -Name[sl]=Posrednik za prenos pošte -GenericName[sl]=Konfiguriraj pošto -Name[tr]=Posta transfer yöneticisi -GenericName[tr]=Posta yapılandırması düzenleyin X-KDE-SubstituteUID=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.9/src/mail-server_dialogs.ycp new/yast2-mail-2.15.9/src/mail-server_dialogs.ycp --- old/yast2-mail-2.15.9/src/mail-server_dialogs.ycp 2007-04-19 17:13:24.000000000 +0200 +++ new/yast2-mail-2.15.9/src/mail-server_dialogs.ycp 2007-05-30 19:54:42.000000000 +0200 @@ -18,7 +18,6 @@ import "Service"; import "Users"; import "YaPI::MailServer"; -import "YaPI::LdapServer"; include "mail/helps.ycp"; @@ -29,11 +28,24 @@ */ define any AuthorizingDialog () { - string ERROR = ""; + string ERROR = _("You must configure LDAP to use the mail server."); Ldap::Read(); map LDAPSettings = Ldap::Export(); - if(LDAPSettings["base_config_dn"]:"" == "" ) { - ERROR = _("You must configure LDAP to use the mail server."); + if(LDAPSettings["ldap_server"]:"" == "" ) + { + ERROR = ERROR + "\n" + _("Now we will start the LDAP-Server setup vizard."); + if(Popup::YesNo(ERROR)) + { + return `ldapsetup; + } + else + { + return `abort; + } + Ldap::Read(); + } + if(LDAPSettings["base_config_dn"]:"" == "" ) + { ERROR = ERROR + "\n"; } Ldap::LDAPInit(); @@ -70,46 +82,7 @@ MailServer::CertExist = true; } - - string caption = _("Mail Server Administrator Authorization"); - term contents = `HBox( - `HStretch(), - `Password(`id(`password), _("&Enter the Password for LDAP Server:"), ""), - `HStretch() - ); - - Wizard::SetContentsButtons(caption, contents, HELPS["AuthorizingDialog"]:"", - Label::BackButton(), Label::NextButton()); - Wizard::SetDesktopIcon("mailserver"); - UI::WizardCommand(`SetBackButtonLabel( "" ) ); - UI::SetFocus (`id (`password)); - - any ret = nil; - while(true) { - - ret = UI::UserInput(); - - MailServer::AdminPassword = (string) UI::QueryWidget(`id(`password), `Value); - - /* abort? */ - if(ret == `abort || ret == `cancel) { - if(ReallyAbort()) break; - else continue; - } else if(ret == `next) { - MailServer::LDAPDefaults = (map<string,any>) YaPI::MailServer::ReadLDAPDefaults( - MailServer::AdminPassword); - if (MailServer::LDAPDefaults == nil) { - Popup::Error(_("Unable to Authorize the Administrator User")); - continue; - } - return ret; - } else { - y2error("unexpected retcode: %1", ret); - continue; - } - } - - return ret; + return Ldap::LDAPAskAndBind(false); } 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.9/src/MailServerLDAP.pm new/yast2-mail-2.15.9/src/MailServerLDAP.pm --- old/yast2-mail-2.15.9/src/MailServerLDAP.pm 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-mail-2.15.9/src/MailServerLDAP.pm 2007-05-30 19:54:54.000000000 +0200 @@ -0,0 +1,97 @@ +=head1 NAME + +MailServerLDAP + +=head1 PREFACE + +This package is a part of the YaST2 mail modul. + +=head1 SYNOPSIS + +use MailServerLDAP + + +=head1 DESCRIPTION + +B<MailServerLDAP> provides a function ConfigureLDAPServer that makes the local +LDAP server able to store the tables of the mail server. + +=over 2 + +=cut + +package MailServerLDAP; + +use strict; + +use YaST::YCP; + +textdomain("MailServer"); + +our %TYPEINFO; + +YaST::YCP::Import ("Ldap"); +YaST::YCP::Import ("YaPI::LdapServer"); + + +sub ConfigureLDAPServer() +{ + # don't configure if using eDirectory server + Ldap->CheckNDS (); + if (! Ldap->nds()) + { + # Now we configure the LDAP-Server to be able store the mail server configuration + my $schemas = YaPI::LdapServer->ReadSchemaIncludeList(); + my $SCHEMA = join "",@{$schemas}; + if( $SCHEMA !~ /dnszone.schema/ ) + { + push @{$schemas},'/etc/openldap/schema/dnszone.schema'; + } + if( $SCHEMA !~ /suse-mailserver.schema/ ) + { + push @{$schemas},'/etc/openldap/schema/suse-mailserver.schema'; + YaPI::LdapServer->WriteSchemaIncludeList($schemas); + my $indices = YaPI::LdapServer->ReadIndex($ldapMap->{ldap_domain}); + my $SuSEMailClient = 0; + my $SuSEMailDomainMasquerading = 0; + my $suseTLSPerSitePeer= 0; + foreach my $index (@{$indices}) + { + if( $index->{attr} eq "SuSEMailClient,SUSEMailAcceptAddress,zoneName") + { + $SuSEMailClient = 1; + } + if( $index->{attr} eq "SuSEMailDomainMasquerading,relativeDomainName,suseMailDomainType") + { + $SuSEMailDomainMasquerading = 1; + } + if( $index->{attr} eq "suseTLSPerSitePeer,SuSEMailTransportDestination") + { + $suseTLSPerSitePeer = 1; + } + } + if(!$SuSEMailClient) + { + YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, + { "attr" => "SuSEMailClient,SUSEMailAcceptAddress,zoneName", + "param" => "eq" } + ); + } + if(!$SuSEMailDomainMasquerading) + { + YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, + { "attr" => "SuSEMailDomainMasquerading,relativeDomainName,suseMailDomainType", + "param" => "eq" } + ); + } + if(!$SuSEMailClient) + { + YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, + { "attr" => "suseTLSPerSitePeer,SuSEMailTransportDestination", + "param" => "eq" } + ); + } + YaPI::LdapServer->RecreateIndex($ldapMap->{ldap_domain}); + } + } +} 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.9/src/mail-server_wizards.ycp new/yast2-mail-2.15.9/src/mail-server_wizards.ycp --- old/yast2-mail-2.15.9/src/mail-server_wizards.ycp 2007-04-19 17:12:29.000000000 +0200 +++ new/yast2-mail-2.15.9/src/mail-server_wizards.ycp 2007-05-30 19:55:17.000000000 +0200 @@ -19,6 +19,31 @@ /** + * Workflow of the LDAP Server/Client setup + * @return sequence result + */ +any LdapSetupSequence() { + + /* FIXME: adapt to your needs */ + map aliases = $[ + "complex" : ``( ComplexDialog() ) + ]; + + /* FIXME: adapt to your needs */ + map sequence = $[ + "ws_start" : "complex", + "complex" : $[ + `abort : `abort, + `next : `next + ] + ]; + + any ret = Sequencer::Run(aliases, sequence); + + return ret; +} + +/** * Main workflow of the mail-server configuration * @return sequence result */ @@ -50,10 +75,11 @@ any MailServerSequence() { map aliases = $[ - "read" : [ ``( ReadDialog() ), true ], - "auth" : [ ``( AuthorizingDialog() ), true ], - "main" : ``( MainSequence() ), - "write" : [ ``( WriteDialog() ), true ] + "read" : [ ``( ReadDialog() ), true ], + "auth" : [ ``( AuthorizingDialog() ), true ], + "main" : ``( MainSequence() ), + "ldapsetup" : ``( LdapSetupSequence() ), + "write" : [ ``( WriteDialog() ), true ] ]; map sequence = $[ 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.9/src/mail-server.ycp new/yast2-mail-2.15.9/src/mail-server.ycp --- old/yast2-mail-2.15.9/src/mail-server.ycp 2007-04-20 21:56:40.000000000 +0200 +++ new/yast2-mail-2.15.9/src/mail-server.ycp 1970-01-01 01:00:00.000000000 +0100 @@ -1,98 +0,0 @@ -/** - * File: clients/mail-server.ycp - * Package: Configuration of mail-server - * Summary: Main file - * Authors: Peter Varkoly <varkoly@suse.de> - * - * $Id: mail-server.ycp 19955 2004-10-26 12:28:16Z varkoly $ - * - * Main file for mail-server configuration. Uses all other files. - */ - -{ - -/*** - * <h3>Configuration of mail-server</h3> - */ - -textdomain "MailServer"; - -/* The main () */ -y2milestone ("----------------------------------------"); -y2milestone ("MailServer module started"); - -import "Progress"; -import "Report"; -import "Summary"; -import "Popup"; -import "Label"; - -import "CommandLine"; -include "mail/mail-server_wizards.ycp"; - -map cmdline_description = $[ - "id" : "mail-server", - /* Command line help text for the mail-server module */ - "help" : _("Configuration of mail server"), - "guihandler" : MailServerSequence, - "initialize" : MailServer::Read, - "finish" : MailServer::Write, - "actions" : $[ - // FIXME TODO: fill the functionality description here - ], - "options" : $[ - // FIXME TODO: fill the option descriptions here - ], - "mapping" : $[ - // FIXME TODO: fill the mappings of actions and options here - ] -]; - -/* - after merging yast2-mail and yast2-mail-server we have to be - carefull not to corrupt the configuration of the other modul -*/ -if( SCR::Read (.sysconfig.mail.MAIL_CREATE_CONFIG)== "yes" ) -{ - if( - ! Popup::AnyQuestionRichText( - Label::WarningMsg(), - _("You have configured your MTA without LDAP support.<br>") + - _("This modul will configure your MTA with LDAP support.<br>") + - _("This will corrupt your actuall configuration."), - 80, 10, - Label::ContinueButton(), - Label::CancelButton(), - `focus_no - ) - ) - { - return nil; - } -} - -/* is this proposal or not? */ -boolean propose = false; -list args = WFM::Args(); -if(size(args) > 0) { - if(is(WFM::Args(0), path) && WFM::Args(0) == .propose) { - y2milestone("Using PROPOSE mode"); - propose = true; - } -} - -/* main ui function */ -any ret = nil; - -if(propose) ret = MailServerAutoSequence(); -else ret = CommandLine::Run(cmdline_description); -y2debug("ret=%1", ret); - -/* Finish */ -y2milestone("MailServer module finished"); -y2milestone("----------------------------------------"); - -return ret; - -/* EOF */ -} 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.9/src/MailServer.ycp new/yast2-mail-2.15.9/src/MailServer.ycp --- old/yast2-mail-2.15.9/src/MailServer.ycp 2007-05-04 08:53:11.000000000 +0200 +++ new/yast2-mail-2.15.9/src/MailServer.ycp 2007-05-30 19:55:52.000000000 +0200 @@ -366,9 +366,6 @@ return false; } } - if( SCR::Read(.target.size, "/var/adm/yast2-mail-server-used") < 0) { - YaPI::MailServer::ResetMailServer(MailServer::AdminPassword,MailServer::LDAPDefaults); - } NetworkDevices::Read(); map<string,map> TMP = NetworkDevices::Export("modem"); 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.9/src/mail-standard.ycp new/yast2-mail-2.15.9/src/mail-standard.ycp --- old/yast2-mail-2.15.9/src/mail-standard.ycp 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-mail-2.15.9/src/mail-standard.ycp 2007-05-30 19:56:04.000000000 +0200 @@ -0,0 +1,110 @@ +/** + * File: + * clients/mail.ycp + * + * Package: + * Configuration of mail + * + * Summary: + * Main file + * + * Authors: + * Martin Vidner <mvidner@suse.cz> + * Peter Varkoly <varkoly@novell.com> + * + * $Id: mail.ycp 37642 2007-04-20 19:06:52Z varkoly $ + * + * Main file for mail configuration. Uses all other files. + * + */ + +/** + * @param flag "<b>permanent</b>", "<b>dialup</b>", or "<b>screenshots</b>"<br> + * <dl> + * <dt>permanent<dd>preselects permanent connnection + * <dt>dialup<dd>preselects dial-up connnection + * <dt>screenshots + * <dd>uses faked data (see Mail::Fake), enables running the module + * as non-root. (Uses Mode::screen_shot().) + * </dl> + */ +{ + /*** + * <h3>Configuration of the mail</h3> + */ + + textdomain "mail"; + + import "CommandLine"; + import "Mail"; + import "RichText"; + include "mail/ui.ycp"; + + /* The main () */ + y2milestone ("Mail standard module started"); + y2milestone ("----------------------------------------"); + + /* parse arguments */ + list args = WFM::Args (); + string first_arg = args[0]:""; + if (first_arg == "permanent") + { + preselect_connection_type = `permanent; + } + else if (first_arg == "dialup") + { + preselect_connection_type = `dialup; + } + + /** + * CLI action handler. + * Print summary in command line + * @param options command options + * @return false so that Write is not called in non-interactive mode + */ + define boolean MailSummaryHandler (map options) { + + CommandLine::Print (RichText::Rich2Plain (Mail::Summary ())); + return false; + } + + /** + * CLI initializer. + * @return whether successful + */ + define boolean MailRead () { + + block<boolean> callback = ``{ + return false; + }; + return Mail::Read (callback); + } + + + map cmdline_description = $[ + "id" : "mail", + /* Command line help text for the mail module */ + "help" : _("Configuration of mail"), + "guihandler" : MailSequence, + "initialize" : MailRead, + "finish" : Mail::Write, + "actions" : $[ + "summary" : $[ + "handler" : MailSummaryHandler, + // command line action help + "help" : _("Mail configuration summary"), + ], + ], + "mappings" : $[ + "summary" : [], + ] + ]; + /* main ui function */ + any ret = (preselect_connection_type == nil) ? + CommandLine::Run (cmdline_description) : MailSequence (); + y2debug ("ret == %1", ret); + + /* Finish */ + y2milestone ("Mail standard module finished"); + return ret; +} 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.9/src/mail.ycp new/yast2-mail-2.15.9/src/mail.ycp --- old/yast2-mail-2.15.9/src/mail.ycp 2007-04-20 21:56:40.000000000 +0200 +++ new/yast2-mail-2.15.9/src/mail.ycp 2007-05-30 20:07:47.000000000 +0200 @@ -10,8 +10,9 @@ * * Authors: * Martin Vidner <mvidner@suse.cz> + * Peter Varkoly <varkoly@novell.com> * - * $Id: mail.ycp 37642 2007-04-20 19:06:52Z varkoly $ + * $Id: mail.ycp 38213 2007-05-30 18:07:53Z varkoly $ * * Main file for mail configuration. Uses all other files. * @@ -34,102 +35,167 @@ textdomain "mail"; - import "CommandLine"; - import "Mail"; - import "RichText"; + import "Wizard"; import "Popup"; import "Label"; - include "mail/ui.ycp"; /* The main () */ y2milestone ("Mail module started"); y2milestone ("----------------------------------------"); - /* parse arguments */ - list args = WFM::Args (); - string first_arg = args[0]:""; - if (first_arg == "permanent") + /* The maske to select the type of the configuration */ +define string StartDialogHelp () ``{ + return + // Translators: start dialog help, part 1 of 4 + _("<P><B>Email Server Configuration</B><BR>") + + // Translators: start dialog help, part 2 of 4 + _("<P>This module will configure and start Postfix and if necessary the Cyrus IMAP Server.</P>")+ + // Translators: start dialog help, part 3 of 4 + _("<P>Be aware:\nMost home users can use the build-in +features of their email application to send and +get email. They do not need this module.</P>")+ + // Translators: start dialog help, part 4 of 4 + _("<P>You will need Postfix only if you want to store +the email on your local system, or in some other special cases.</P>"); +} + +define string StartDialog (string type) ``{ + + y2milestone ("Mail configuration type %1", type); + + Wizard::SetScreenShotName ("mail-0-start"); + string caption = _("Email Server Configuration"); + term tskip_ask = `Left(`CheckBox(`id(`skip_ask), _("Skip this page in the future"))); + string status = _("Mail Server is not configured. +Select configuration type according your personal needs"); + if( type == "standard" ) { - preselect_connection_type = `permanent; + status = _("The running Mail Server configuration is based on type “Standard”. +It's possible to change to “Advanced”, but this will overwrite all existing settings."); } - else if (first_arg == "dialup") + else if( type == "advanced" ) { - preselect_connection_type = `dialup; + status = _("The running Mail Server configuration is based on type “Advanced”. +It's possible to change to “Standard”, but this will overwrite all existing settings."); } - - /** - * CLI action handler. - * Print summary in command line - * @param options command options - * @return false so that Write is not called in non-interactive mode - */ - define boolean MailSummaryHandler (map options) { - - CommandLine::Print (RichText::Rich2Plain (Mail::Summary ())); - return false; + if( type != "standard" && type != "advanced" ) + { + tskip_ask = `VSpacing(1); + } + term contents = + `Frame( + "", + `VBox( + `Left(`Label(status)), + `RadioButtonGroup( `id( `conf_type ), + `VBox( + `VSpacing(1), + `Left(`RadioButton(`id("standard"),_("Standard"), type == "standard" )), + `VSpacing(1), + `Left(`RadioButton(`id("advanced"),_("Advanced"), type == "advanced" )), + `VSpacing(1) + ) + ), + tskip_ask, + `VSpacing(1) + ) + ); + Wizard::CreateDialog(); + Wizard::SetContentsButtons (caption, contents, StartDialogHelp (), Label::BackButton (), Label::NextButton ()); + + any ret = nil; + string sret = nil; + while (true) + { + ret = UI::UserInput (); + if (ret == `cancel) + { + ret = `abort; + } + + if (ret == `back || (ret == `abort )) + { + break; + } + + if (ret == `next ) + { + if( (boolean) UI::QueryWidget (`id (`skip_ask), `Value) ) + { + SCR::Write (.sysconfig.mail.SKIP_ASK, "yes"); + } + else + { + SCR::Write (.sysconfig.mail.SKIP_ASK, "no"); + } + sret = (string) UI::QueryWidget (`id (`conf_type), `CurrentButton); + if( sret == nil ) + { + Popup::Error(_("You have to select a configuration type")); + continue; + } + SCR::Write (.sysconfig.mail.CONFIG_TYPE, sret); + y2milestone ("Mail configuration type %1", sret); + break; + } } + UI::CloseDialog(); + return sret; - /** - * CLI initializer. - * @return whether successful - */ - define boolean MailRead () { +} + + /* parse arguments */ + list args = WFM::Args (); - block<boolean> callback = ``{ - return false; - }; - return Mail::Read (callback); - } - - map cmdline_description = $[ - "id" : "mail", - /* Command line help text for the mail module */ - "help" : _("Configuration of mail"), - "guihandler" : MailSequence, - "initialize" : MailRead, - "finish" : Mail::Write, - "actions" : $[ - "summary" : $[ - "handler" : MailSummaryHandler, - // command line action help - "help" : _("Mail configuration summary"), - ], - ], - "mappings" : $[ - "summary" : [], - ] - ]; - - /* - after merging yast2-mail and yast2-mail-server we have to be - carefull not to corrupt the configuration of the other modul - */ + /* we collect some informations from the system */ + any ret = nil; + string skip_ask = "no"; + string conf_type = "undef"; + skip_ask = (string) SCR::Read (.sysconfig.mail.SKIP_ASK); + conf_type = (string) SCR::Read (.sysconfig.mail.CONFIG_TYPE); + boolean first_start = false; map local_recipient_maps = (map) SCR::Read (.mail.ldaptable, "local_recipient_maps"); -y2milestone("local_recipient_maps: %1",local_recipient_maps); - if( local_recipient_maps != nil ) + + if( conf_type != "advanced" && conf_type != "standard" ) + { // First start of mail modul or update from < 10.3 + y2milestone ("Warum bin i here Mail configuration type %1", conf_type); + if( local_recipient_maps != nil ) + { // Postfix configured using LDAP + conf_type = "advanced"; + } + else + { + conf_type = "standard"; + } + first_start = true; + } + if( skip_ask == "no" || skip_ask == nil ) { - if( - ! Popup::AnyQuestionRichText( - Label::WarningMsg(), - _("You have configured your MTA with LDAP support.<br>") + - _("This modul will configure your MTA without LDAP support.<br>") + - _("This will corrupt your actuall configuration."), - 80, 10, - Label::ContinueButton(), - Label::CancelButton(), - `focus_no - ) - ) - { - return nil; - } - } - - /* main ui function */ - any ret = (preselect_connection_type == nil) ? - CommandLine::Run (cmdline_description) : MailSequence (); + string old_conf = conf_type; + conf_type = StartDialog(conf_type); + if( conf_type == nil ) + { + y2milestone("no mail server configuration type"); + return ret; + } + if( old_conf != conf_type ) + { + first_start = true; + } + } - y2debug ("ret == %1", ret); + if( conf_type == "advanced" ) + { + if( first_start ) + { + args[size(args)] = "setup"; + } + ret = WFM::CallFunction("mail-advanced",args); + } + else + { + ret = WFM::CallFunction("mail-standard",args); + } /* Finish */ y2milestone ("Mail module finished"); 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.9/src/Makefile.am new/yast2-mail-2.15.9/src/Makefile.am --- old/yast2-mail-2.15.9/src/Makefile.am 2007-05-04 14:25:23.000000000 +0200 +++ new/yast2-mail-2.15.9/src/Makefile.am 2007-05-30 20:16:43.000000000 +0200 @@ -1,7 +1,7 @@ # # Makefile.am for y2c_mail/src # -# $Id: Makefile.am 37835 2007-05-04 12:25:20Z varkoly $ +# $Id: Makefile.am 38213 2007-05-30 18:07:53Z varkoly $ # SUBDIRS = YaPI @@ -12,8 +12,8 @@ client_DATA = \ mail.ycp \ mail_auto.ycp \ - \ - mail-server.ycp \ + mail-standard.ycp \ + mail-advanced.ycp \ mail-server_auto.ycp \ mail-server_proposal.ycp @@ -34,7 +34,8 @@ module_DATA = \ Mail.ycp \ - MailServer.ycp + MailServer.ycp \ + MailServerLDAP.pm ldapschema_DATA = suse-mailserver.schema 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.9/src/YaPI/MailServer.pm new/yast2-mail-2.15.9/src/YaPI/MailServer.pm --- old/yast2-mail-2.15.9/src/YaPI/MailServer.pm 2007-04-19 16:39:13.000000000 +0200 +++ new/yast2-mail-2.15.9/src/YaPI/MailServer.pm 2007-05-30 19:56:38.000000000 +0200 @@ -43,13 +43,12 @@ our @CAPABILITIES = ( 'SLES10' ); -our $VERSION="1.1.0"; +our $VERSION="2.2.0"; YaST::YCP::Import ("SCR"); YaST::YCP::Import ("Service"); YaST::YCP::Import ("Ldap"); YaST::YCP::Import ("NetworkDevices"); -YaST::YCP::Import ("YaPI::LdapServer"); ## # @@ -2184,7 +2183,7 @@ The LDAP Base for the DNS Configuration The LDAP Base for the MAIL Configuration The LDAP Template for the MAIL Configuration -If the last two does not exist this will be created. +If the last there does not exist this will be created. The result is an hash of following structur: @@ -2575,65 +2574,6 @@ SCR->Write(".sysconfig.mail.MAIL_CREATE_CONFIG","no"); SCR->Write(".sysconfig.mail",undef); - # don't configure if using eDirectory server - Ldap->CheckNDS (); - if (! Ldap->nds()) - { - # Now we configure the LDAP-Server to be able store the mail server configuration - my $schemas = YaPI::LdapServer->ReadSchemaIncludeList(); - my $SCHEMA = join "",@{$schemas}; - if( $SCHEMA !~ /dnszone.schema/ ) - { - push @{$schemas},'/etc/openldap/schema/dnszone.schema'; - } - if( $SCHEMA !~ /suse-mailserver.schema/ ) - { - push @{$schemas},'/etc/openldap/schema/suse-mailserver.schema'; - YaPI::LdapServer->WriteSchemaIncludeList($schemas); - my $indices = YaPI::LdapServer->ReadIndex($ldapMap->{ldap_domain}); - my $SuSEMailClient = 0; - my $SuSEMailDomainMasquerading = 0; - my $suseTLSPerSitePeer= 0; - foreach my $index (@{$indices}) - { - if( $index->{attr} eq "SuSEMailClient,SUSEMailAcceptAddress,zoneName") - { - $SuSEMailClient = 1; - } - if( $index->{attr} eq "SuSEMailDomainMasquerading,relativeDomainName,suseMailDomainType") - { - $SuSEMailDomainMasquerading = 1; - } - if( $index->{attr} eq "suseTLSPerSitePeer,SuSEMailTransportDestination") - { - $suseTLSPerSitePeer = 1; - } - } - if(!$SuSEMailClient) - { - YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, - { "attr" => "SuSEMailClient,SUSEMailAcceptAddress,zoneName", - "param" => "eq" } - ); - } - if(!$SuSEMailDomainMasquerading) - { - YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, - { "attr" => "SuSEMailDomainMasquerading,relativeDomainName,suseMailDomainType", - "param" => "eq" } - ); - } - if(!$SuSEMailClient) - { - YaPI::LdapServer->AddIndex($ldapMap->{ldap_domain}, - { "attr" => "suseTLSPerSitePeer,SuSEMailTransportDestination", - "param" => "eq" } - ); - } - YaPI::LdapServer->RecreateIndex($ldapMap->{ldap_domain}); - } - } - #Put user postfix into the group mail system($check_postfix); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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