YaST Commits
Threads by month
- ----- 2024 -----
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
January 2010
- 22 participants
- 425 discussions
[yast-commit] Build failed in Hudson: webyast-service-head-i586 #683
by Hudson Integration Service 27 Jan '10
by Hudson Integration Service 27 Jan '10
27 Jan '10
See <http://yast.suse.de:3334/job/webyast-service-head-i586/683/changes>
Changes:
[Ladislav Slezak] Added initial repository model
[Ladislav Slezak] added repositories controller, added tests
[Ladislav Slezak] added a comment
[Ladislav Slezak] added org.opensuse.yast.system.repositories.policy
[Ladislav Slezak] repository - use @id instead of @repository_alias
.spec - grant PackageKit rights
[Ladislav Slezak] convert data to match the DBus signature
[Ladislav Slezak] update repo properties in update call
save also the new name and URL
[Ladislav Slezak] Merge branch 'master' into repo_mgmt
[Ladislav Slezak] read missing attributes directly from *.repo file
PackageKit doesn't return all needed repository properties,
read them directly from a file
[Ladislav Slezak] resolvable.rb - make the custom signal handler argument optional
[Ladislav Slezak] repository.rb - removed dummy Resolvable.execute signal arguments
fixed *.repo file parsing regexps
[Ladislav Slezak] don't fail when adding a new repository
[Ladislav Slezak] Merge branch 'master' into repo_mgmt
[Ladislav Slezak] repositories - fixed reading keeppackages and autorefresh values
fixed syntax error in repository update
[Ladislav Slezak] Merge branch 'repo_mgmt'
[Ladislav Slezak] bump version to 0.1.1
------------------------------------------
[...truncated 3329 lines...]
+ rpm --rebuilddb
+ mkdir -p /tmp
+ mkdir -p /artifacts/webyast/rest-service/rpms
+ mkdir -p /tmp/rpmbuild
+ mkdir -p /tmp/buildroot
+ cat
+ check_exit 0
+ '[' -z 0 ']'
+ MYEXIT=0
+ '[' 0 == 0 ']'
+ echo 'exit code: 0 ... good, lets continue'
exit code: 0 ... good, lets continue
+ return
+ /usr/bin/rpmbuild -bb --define 'run_testsuite 1' webyast-time-ws.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.sFUt0o
+ umask 022
+ cd /tmp/rpmbuild
+ cd /tmp/rpmbuild
+ rm -rf www
+ /usr/bin/bzip2 -dc /src/rest-service/plugins/time/package/www.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd www
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.2pkNOF
+ umask 022
+ cd /tmp/rpmbuild
+ /bin/rm -rf /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
++ dirname /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
+ /bin/mkdir -p /usr/src/packages/BUILDROOT
+ /bin/mkdir /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
+ cd www
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.YDNVQZ
+ umask 022
+ cd /tmp/rpmbuild
+ cd www
+ mkdir -p /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/srv/www/yastws/vendor/plugins/time
+ cp -a COPYING README Rakefile app config doc init.rb install.rb tasks uninstall.rb /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/srv/www/yastws/vendor/plugins/time
+ rm -f /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/srv/www/yastws/vendor/plugins/time/COPYING
+ mkdir -p /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/usr/share/PolicyKit/policy
+ RPM_BUILD_ROOT=/usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
+ export RPM_BUILD_ROOT
+ test -x /usr/sbin/Check -a 0 = 0 -o -x /usr/sbin/Check -a '!' -z /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
+ echo 'I call /usr/sbin/Check...'
I call /usr/sbin/Check...
+ /usr/sbin/Check
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-strip-debug
+ /usr/lib/rpm/brp-check-la
+ /usr/lib/rpm/brp-symlink
+ /usr/lib/rpm/brp-desktop
WARNING: '/usr/lib/rpm/brp-desktop.data/suse-screensavers.menu' does not exist
WARNING: '/usr/lib/rpm/brp-desktop.data/preferences-gnome.menu' does not exist
WARNING: '/usr/lib/rpm/brp-desktop.data/applications-kmenuedit.menu' does not exist
+ /usr/lib/rpm/brp-rpath
+ /usr/lib/rpm/brp-pie
+ /usr/lib/rpm/brp-rootfs
+ /usr/lib/rpm/brp-tcl
+ /usr/lib/rpm/brp-check-python
+ /usr/lib/rpm/brp-check-bytecode-version
+ /usr/lib/rpm/brp-boot-scripts
+ /usr/lib/rpm/brp-hook
Processing files: webyast-time-ws-0.0.11-0.noarch
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.TvUV1Y
+ umask 022
+ cd /tmp/rpmbuild
+ cd www
+ DOCDIR=/usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/usr/share/doc/packages/webyast-time-ws
+ export DOCDIR
+ rm -rf /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/usr/share/doc/packages/webyast-time-ws
+ /bin/mkdir -p /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/usr/share/doc/packages/webyast-time-ws
+ cp -pr COPYING /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386/usr/share/doc/packages/webyast-time-ws
+ exit 0
Finding Provides: /usr/lib/rpm/find-provides webyast-time-ws
Finding Requires: /usr/lib/rpm/find-requires webyast-time-ws
Finding Supplements: /usr/lib/rpm/find-supplements webyast-time-ws
Provides: yast2-webservice-time = 0.0.11
Requires(interp): /bin/sh
Requires(rpmlib): rpmlib(VersionedDependencies) <= 3.0.3-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Requires(pre): yast2-webservice
Requires(post): /bin/sh
Requires(preun): yast2-webservice
Obsoletes: yast2-webservice-time < 0.0.11
Checking for unpackaged file(s): /usr/lib/rpm/check-files /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
Wrote: /artifacts/webyast/rest-service/rpms/noarch/webyast-time-ws-0.0.11-0.noarch.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.t2qB7e
+ umask 022
+ cd /tmp/rpmbuild
+ cd www
+ rm -rf /usr/src/packages/BUILDROOT/webyast-time-ws-0.0.11-0.i386
+ exit 0
+ check_exit 0
+ '[' -z 0 ']'
+ MYEXIT=0
+ '[' 0 == 0 ']'
+ echo 'exit code: 0 ... good, lets continue'
exit code: 0 ... good, lets continue
+ return
+ popd
/src/rest-service
+ for rpmdir in '${SUBDIR}/package' '`find ./plugins -name package | grep -v "rpam\|ruby-polkit"`'
++ dirname ./plugins/patches/package
+ pkgdir=./plugins/patches
++ basename ./plugins/patches
+ pkgname=patches
+ destination=/artifacts/webyast/rest-service/package/yast2-webservice-patches
+ mkdir -p /artifacts/webyast/rest-service/package/yast2-webservice-patches
+ rm -rf '/artifacts/webyast/rest-service/package/yast2-webservice-patches/*'
+ rm -rf ./plugins/patches/package/www
+ cp -r ./plugins/patches/package/org.opensuse.yast.system.packages.policy ./plugins/patches/package/org.opensuse.yast.system.patches.policy ./plugins/patches/package/org.opensuse.yast.system.repositories.policy ./plugins/patches/package/webyast-software-ws.changes ./plugins/patches/package/webyast-software-ws.spec ./plugins/patches/package/www.tar.bz2 /artifacts/webyast/rest-service/package/yast2-webservice-patches
+ pushd ./plugins/patches/package
/src/rest-service/plugins/patches/package /src/rest-service
+ case "${pkgdir}" in
+ build_spec
+ rpm --rebuilddb
+ mkdir -p /tmp
+ mkdir -p /artifacts/webyast/rest-service/rpms
+ mkdir -p /tmp/rpmbuild
+ mkdir -p /tmp/buildroot
+ cat
+ check_exit 0
+ '[' -z 0 ']'
+ MYEXIT=0
+ '[' 0 == 0 ']'
+ echo 'exit code: 0 ... good, lets continue'
exit code: 0 ... good, lets continue
+ return
+ /usr/bin/rpmbuild -bb --define 'run_testsuite 1' webyast-software-ws.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.JVs96p
+ umask 022
+ cd /tmp/rpmbuild
+ cd /tmp/rpmbuild
+ rm -rf www
+ /bin/tar -xf -
+ /usr/bin/bzip2 -dc /src/rest-service/plugins/patches/package/www.tar.bz2
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd www
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.I2xj8E
+ umask 022
+ cd /tmp/rpmbuild
+ /bin/rm -rf /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
++ dirname /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
+ /bin/mkdir -p /usr/src/packages/BUILDROOT
+ /bin/mkdir /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
+ cd www
+ rm -rf doc
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.PHG9LX
+ umask 022
+ cd /tmp/rpmbuild
+ cd www
+ mkdir -p /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/srv/www/yastws/vendor/plugins/patches
+ cp -a COPYING README Rakefile app config init.rb install.rb scripts tasks uninstall.rb /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/srv/www/yastws/vendor/plugins/patches
+ rm -f /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/srv/www/yastws/vendor/plugins/patches/COPYING
+ mkdir -p /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/PolicyKit/policy
+ install -m 0644 /src/rest-service/plugins/patches/package/org.opensuse.yast.system.patches.policy /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/PolicyKit/policy/
+ install -m 0644 /src/rest-service/plugins/patches/package/org.opensuse.yast.system.packages.policy /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/PolicyKit/policy/
+ install -m 0644 /src/rest-service/plugins/patches/package/org.opensuse.yast.system.repositories.policy /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/PolicyKit/policy/
+ RPM_BUILD_ROOT=/usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
+ export RPM_BUILD_ROOT
+ test -x /usr/sbin/Check -a 0 = 0 -o -x /usr/sbin/Check -a '!' -z /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
+ echo 'I call /usr/sbin/Check...'
I call /usr/sbin/Check...
+ /usr/sbin/Check
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-strip-debug
+ /usr/lib/rpm/brp-check-la
+ /usr/lib/rpm/brp-symlink
+ /usr/lib/rpm/brp-desktop
WARNING: '/usr/lib/rpm/brp-desktop.data/suse-screensavers.menu' does not exist
WARNING: '/usr/lib/rpm/brp-desktop.data/preferences-gnome.menu' does not exist
WARNING: '/usr/lib/rpm/brp-desktop.data/applications-kmenuedit.menu' does not exist
+ /usr/lib/rpm/brp-rpath
+ /usr/lib/rpm/brp-pie
+ /usr/lib/rpm/brp-rootfs
+ /usr/lib/rpm/brp-tcl
+ /usr/lib/rpm/brp-check-python
+ /usr/lib/rpm/brp-check-bytecode-version
+ /usr/lib/rpm/brp-boot-scripts
+ /usr/lib/rpm/brp-hook
Processing files: webyast-software-ws-0.1.1-0.noarch
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.7t6tFE
+ umask 022
+ cd /tmp/rpmbuild
+ cd www
+ DOCDIR=/usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/doc/packages/webyast-software-ws
+ export DOCDIR
+ rm -rf /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/doc/packages/webyast-software-ws
+ /bin/mkdir -p /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/doc/packages/webyast-software-ws
+ cp -pr COPYING /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386/usr/share/doc/packages/webyast-software-ws
+ exit 0
Finding Provides: /usr/lib/rpm/find-provides webyast-software-ws
Finding Requires: /usr/lib/rpm/find-requires webyast-software-ws
Finding Supplements: /usr/lib/rpm/find-supplements webyast-software-ws
Provides: yast2-webservice-patches = 0.1.1
Requires(interp): /bin/sh
Requires(rpmlib): rpmlib(VersionedDependencies) <= 3.0.3-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Requires(pre): yast2-webservice
Requires(post): /bin/sh
Requires(preun): yast2-webservice
Obsoletes: yast2-webservice-patches < 0.1.1
Checking for unpackaged file(s): /usr/lib/rpm/check-files /usr/src/packages/BUILDROOT/webyast-software-ws-0.1.1-0.i386
error: Installed (but unpackaged) file(s) found:
/usr/share/PolicyKit/policy/org.opensuse.yast.system.repositories.policy
RPM build errors:
Installed (but unpackaged) file(s) found:
/usr/share/PolicyKit/policy/org.opensuse.yast.system.repositories.policy
+ check_exit 1
+ '[' -z 1 ']'
+ MYEXIT=1
+ '[' 1 == 0 ']'
+ footer_and_exit 1
+ '[' -z 1 ']'
+ MYEXIT=1
+ '[' 1 == 0 ']'
+ ascii_failed
+ cat
( )
( ) (
) _ )
( \_
_(_\ \)__
(____\___))
build failed
+ echo 'stopping dbus..'
stopping dbus..
+ /etc/init.d/dbus stop
Shutting down D-Bus daemon..done
+ exit 1
... unmounting sys
... unmounting proc
... unmounting pts
[locks-and-latches] Releasing all the locks
[locks-and-latches] All the locks released
Archiving artifacts
Build wasn't successful, skipping saikuro coverage report
Publishing rails stats report...
[workspace] $ rake --silent stats
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
1
27 Jan '10
Author: kmachalkova
Date: Wed Jan 27 15:43:50 2010
New Revision: 60562
URL: http://svn.opensuse.org/viewcvs/yast?rev=60562&view=rev
Log:
Created tag stable-2_19_9 for network
Added:
tags/stable-2_19_9/network/
- copied from r60561, trunk/network/
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60561 - in /trunk/network: VERSION package/yast2-network.changes
by kmachalkova@svn.opensuse.org 27 Jan '10
by kmachalkova@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: kmachalkova
Date: Wed Jan 27 15:43:43 2010
New Revision: 60561
URL: http://svn.opensuse.org/viewcvs/yast?rev=60561&view=rev
Log:
changes + bump
Modified:
trunk/network/VERSION
trunk/network/package/yast2-network.changes
Modified: trunk/network/VERSION
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/VERSION?rev=60561&r1=605…
==============================================================================
--- trunk/network/VERSION (original)
+++ trunk/network/VERSION Wed Jan 27 15:43:43 2010
@@ -1 +1 @@
-2.19.8
+2.19.9
Modified: trunk/network/package/yast2-network.changes
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/package/yast2-network.ch…
==============================================================================
--- trunk/network/package/yast2-network.changes (original)
+++ trunk/network/package/yast2-network.changes Wed Jan 27 15:43:43 2010
@@ -1,4 +1,15 @@
-------------------------------------------------------------------
+Wed Jan 27 15:21:42 CET 2010 - kmachalkova(a)suse.cz
+
+- Evaluate modified flag of all net components (not only LanItems),
+ so that change in any of them triggers Write (bnc#439235)
+- Write DNS data along with other network settings in lan_proposal,
+ not separately in inst_hostname (related to bnc#556613)
+- Renamed "Write hostname to /etc/hosts" and updated related help
+ text (bnc#510228, bnc#469752)
+- 2.19.9
+
+-------------------------------------------------------------------
Mon Jan 18 09:56:24 CET 2010 - mzugec(a)suse.cz
- fixed remote.desktop file (Categories)
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60560 - in /trunk/storage: package/yast2-storage.changes storage/src/modules/Storage.ycp
by aschnell@svn.opensuse.org 27 Jan '10
by aschnell@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: aschnell
Date: Wed Jan 27 15:42:12 2010
New Revision: 60560
URL: http://svn.opensuse.org/viewcvs/yast?rev=60560&view=rev
Log:
- allow to set driver for IMSM without callback (bnc #574270)
Modified:
trunk/storage/package/yast2-storage.changes
trunk/storage/storage/src/modules/Storage.ycp
Modified: trunk/storage/package/yast2-storage.changes
URL: http://svn.opensuse.org/viewcvs/yast/trunk/storage/package/yast2-storage.ch…
==============================================================================
--- trunk/storage/package/yast2-storage.changes (original)
+++ trunk/storage/package/yast2-storage.changes Wed Jan 27 15:42:12 2010
@@ -1,4 +1,9 @@
-------------------------------------------------------------------
+Wed Jan 27 15:09:27 CET 2010 - aschnell(a)suse.de
+
+- allow to set driver for IMSM without callback (bnc #574270)
+
+-------------------------------------------------------------------
Thu Jan 21 17:28:48 CET 2010 - aschnell(a)suse.de
- implemented moving of newly created partitions (see bnc #541034)
Modified: trunk/storage/storage/src/modules/Storage.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/storage/storage/src/modules/Stor…
==============================================================================
--- trunk/storage/storage/src/modules/Storage.ycp (original)
+++ trunk/storage/storage/src/modules/Storage.ycp Wed Jan 27 15:42:12 2010
@@ -176,6 +176,11 @@
"right_asymmetric" : LibStorage::RIGHT_ASYMMETRIC(),
"right_symmetric" : LibStorage::RIGHT_SYMMETRIC() ];
+map<symbol, integer> conv_imsm_driver =
+ $[ `IMSM_UNDECIDED : LibStorage::IMSM_UNDECIDED(),
+ `IMSM_DMRAID : LibStorage::IMSM_DMRAID(),
+ `IMSM_MDADM : LibStorage::IMSM_MDADM() ];
+
map DiskMapVersion = $[];
map DiskMap = $[];
map type_order = $[ `CT_DISK : 0, `CT_MD : 1, `CT_MDPART : 2, `CT_DMRAID : 3,
@@ -284,6 +289,14 @@
}
+symbol imsm_driver = `IMSM_UNDECIDED;
+
+global void SetImsmDriver(symbol val)
+{
+ imsm_driver = val;
+}
+
+
list<map> getContainers();
global boolean InitLibstorage(boolean readonly)
@@ -309,6 +322,8 @@
LibStorage::StorageInterface::setEfiBoot(sint, Partitions::EfiBoot());
+ LibStorage::StorageInterface::setImsmDriver(sint, conv_imsm_driver[imsm_driver]:LibStorage::IMSM_UNDECIDED());
+
conts = getContainers();
y2milestone("InitLibstorage conts:%1", conts);
FileSystems::InitSlib(sint);
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
27 Jan '10
Author: varkoly
Date: Wed Jan 27 15:41:14 2010
New Revision: 60559
URL: http://svn.opensuse.org/viewcvs/yast?rev=60559&view=rev
Log:
Created tag branch-Code-11-SP1-2_17_3 for mail
Added:
tags/branch-Code-11-SP1-2_17_3/mail/ (props changed)
- copied from r60558, branches/SuSE-Code-11-SP1-Branch/mail/
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60558 - in /branches/SuSE-Code-11-SP1-Branch/mail: ./ agents/ package/ src/ src/YaPI/ users-plugin/
by varkoly@svn.opensuse.org 27 Jan '10
by varkoly@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: varkoly
Date: Wed Jan 27 15:40:56 2010
New Revision: 60558
URL: http://svn.opensuse.org/viewcvs/yast?rev=60558&view=rev
Log:
Merging with trunk
Modified:
branches/SuSE-Code-11-SP1-Branch/mail/agents/MasterCFParser.pm
branches/SuSE-Code-11-SP1-Branch/mail/agents/sysconfig.mail
branches/SuSE-Code-11-SP1-Branch/mail/package/yast2-mail.changes
branches/SuSE-Code-11-SP1-Branch/mail/src/Mail.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/MailServer.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/MailServerLDAP.pm
branches/SuSE-Code-11-SP1-Branch/mail/src/YaPI/MailServer.pm
branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_complex.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_dialogs.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_helps.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/suse-mailserver.schema
branches/SuSE-Code-11-SP1-Branch/mail/src/ui.ycp
branches/SuSE-Code-11-SP1-Branch/mail/src/widgets.ycp
branches/SuSE-Code-11-SP1-Branch/mail/users-plugin/users_plugin_mail_groups.ycp
branches/SuSE-Code-11-SP1-Branch/mail/yast2-mail.spec.in
Modified: branches/SuSE-Code-11-SP1-Branch/mail/agents/MasterCFParser.pm
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/agents/MasterCFParser.pm (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/agents/MasterCFParser.pm Wed Jan 27 15:40:56 2010
@@ -71,7 +71,6 @@
package MasterCFParser;
use strict;
-use Data::Dumper;
no warnings 'redefine';
######################################################################################
@@ -140,8 +139,10 @@
while( defined $CFA[$c+1] && $CFA[$c+1] =~ /^\s+/ ) {
$line .= $CFA[++$c];
}
-
- push @$cfa, line2service($line);
+ if( $line =~ /\w+/ )
+ { #avoid emty lines
+ push @$cfa, line2service($line);
+ }
}
$this->{MCF} = $cfa;
return 0;
@@ -247,7 +248,10 @@
next if defined $s->{comment};
$foundmatches = 0;
foreach my $fs ( keys %$fsrv ) {
- $foundmatches++ if $fsrv->{$fs} eq $s->{$fs};
+ if( defined $fsrv->{$fs} && defined $s->{$fs} )
+ {
+ $foundmatches++ if $fsrv->{$fs} eq $s->{$fs};
+ }
}
push @$retsrv, $s if $foundmatches == $nrkeys;
}
@@ -420,7 +424,11 @@
my $line = '';
if( defined $srv->{comment} ) {
$line = $srv->{comment};
- } else {
+ }
+ elsif( defined $srv->{service} && defined $srv->{type} && defined $srv->{private} &&
+ defined $srv->{unpriv} && defined $srv->{chroot} && defined $srv->{wakeup} &&
+ defined $srv->{maxproc} && defined $srv->{command} )
+ {
$line =
sprintf("%-8s %-5s %-6s %-7s %-7s %-8s %-7s %s",
$srv->{service},
Modified: branches/SuSE-Code-11-SP1-Branch/mail/agents/sysconfig.mail
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/agents/sysconfig.mail (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/agents/sysconfig.mail Wed Jan 27 15:40:56 2010
@@ -30,13 +30,13 @@
# If set to "no" or empty then only mail from localhost
# will be accepted.
#
-SMTPD_LISTEN_REMOTE="yes"
+SMTPD_LISTEN_REMOTE="no"
## Type: yesno
## Default: no
#
# Set this to "yes" if the yast2 mail module must not
-# start with the with the vizard for asking the
+# start with the wizard for asking the
# configuration type of the mail server.
#
SKIP_ASK="no"
Modified: branches/SuSE-Code-11-SP1-Branch/mail/package/yast2-mail.changes
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/package/yast2-mail.changes (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/package/yast2-mail.changes Wed Jan 27 15:40:56 2010
@@ -1,4 +1,35 @@
-------------------------------------------------------------------
+Wed Jan 27 15:28:16 CET 2010 - varkoly(a)suse.de
+
+- Apply jsuchomes changes from bnc#559145
+ Export and Import smtp_use_TLS: no yes may
+ Export and Import smtp_use_TLS
+- Adjusted .desktop file(s) to wrap /sbin/yast2/ calls in xdg-su
+ where root privileges are needed, removed X-KDE-SubstituteUID key
+ (bnc#540627)
+- bnc#555814 â VUL-0: SMTPD_LISTEN_REMOTE="yes" by default
+- bnc#532518 â YaST in translation (use 'YaST' instead of 'YaST2')
+- Reorganize ldap tables
+- remove redefinition of read_attribute
+- bnc#491113 - fetchmail demon is started though disabled in runlevel
+ editor when configuring email via network services
+- bnc#488677 - yast2-mail "Advanced config" overwrites mailman settings
+- alias map ldap search must be sub
+- bnc#490688 â rename mail server module from "Mail Transfer Agent" to "Mail Server"
+- If starting the virus scanner freshclam have to be started also
+- bnc#483639 - yast2 mail server's master.cf parser do not writes some lines
+- saslauthd and cyrus must be started and enabled by YaPI
+- Serial of SOA Record must not be greater then 4294967295
+- bnc#467589 - Cyrus don't create Directory for new LDAP User at first run.
+- bnc#467562 - Yast mail doesn't install needed Spamassassin Package for SPAM learning extension for Mailserver
+- bnc#466748 - yast2-mail-plugins broken
+- avoid undefined variables in the MasterCFParser
+- make progress bar by WriteDialog visable
+- bnc#463589 - YaST2 Mail Server & amavisd
+- the myhostname in /etc/amavisd.conf must be set to FQHN
+- bnc#463430 - Mail to a shared folder can couse infinit loop
+
+-------------------------------------------------------------------
Fri Dec 12 06:37:41 CET 2008 - varkoly(a)suse.de
- bnc#458553 - YaSt2 Mail module do not install cyrus-sasl-saslauthd
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/Mail.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/Mail.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/Mail.ycp Wed Jan 27 15:40:56 2010
@@ -103,7 +103,7 @@
/**
* Do the MTA use TLS for sending the email.
*/
- global boolean smtp_use_TLS = true;
+ global string smtp_use_TLS = "yes";
/**
* Mail will appear to come from this domain. Applies also for the
@@ -133,16 +133,10 @@
/**
* When should fetchmail run:
* <dl>
- * <dt> `manual <dd>
- * <dt> `ppp <dd> for a ppp conection, /etc/ppp/ip-{up,down}.d
- * <dt> `network <dd> for any network connection,
- * /etc/sysconfig/network/if-{up,down}.d
- * </dl>
- * #22903
- * Unused yet!
- * #37139, just enable rcfetchmail.
+ * <dt> "manual" <dd>
+ * <dt> "daemon" <dd>
*/
- global symbol fetchmail_mode = `manual;
+ global string fetchmail_mode = "manual";
/**
*List of maps:
@@ -333,7 +327,7 @@
* @return Whether rcfetchmail should run
*/
define boolean RunFetchmailGlobally () ``{
- return size (fetchmail) > 0;
+ return ( fetchmail_mode == "daemon" && size (fetchmail) > 0 );
}
/**
@@ -453,7 +447,7 @@
}
else if (mta == `postfix)
{
- smtp_use_TLS = ( (string) SCR::Read (.sysconfig.postfix.POSTFIX_SMTP_TLS_CLIENT) == "yes" );
+ smtp_use_TLS = (string) SCR::Read (.sysconfig.postfix.POSTFIX_SMTP_TLS_CLIENT);
outgoing_mail_server = (string)
SCR::Read (.sysconfig.postfix.POSTFIX_RELAYHOST);
}
@@ -544,9 +538,10 @@
{
return false;
}
- // read 4
- // TODO
- fetchmail_mode = `manual;
+ if( Service::Enabled ("fetchmail") )
+ {
+ fetchmail_mode = "daemon";
+ }
// if we are testing as non-root, it will fail, that's OK
map out = (map) SCR::Execute (.target.bash_output, "/usr/bin/id --user");
@@ -559,7 +554,7 @@
// %1 is a file name,
// %2 is a long file name - leave it on a separate line
Report::Error (sformat(_("Error reading file %1. The file must have
-a fixed format to be readable by YaST2. For details, see
+a fixed format to be readable by YaST. For details, see
%2"),
"/etc/fetchmailrc",
"/usr/share/doc/packages/yast2-mail/fetchmailrc.txt"));
@@ -635,6 +630,14 @@
}
/**
+ * Wrapper for global Read function, without the callback argument
+ */
+ global boolean ReadWithoutCallback () {
+ block<boolean> abort_block = ``{ return false; };
+ return Read (abort_block);
+ }
+
+ /**
* Make up data for screnshots
*/
global define void Fake () ``{
@@ -681,7 +684,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteGeneral () ``{
+ global define boolean WriteGeneral () ``{
// create_config
// if the user wanted it false, we did not proceed
SCR::Write (.sysconfig.mail.MAIL_CREATE_CONFIG, "yes");
@@ -788,14 +791,7 @@
else if (mta == `postfix)
{
SCR::Write (.sysconfig.postfix.POSTFIX_RELAYHOST, outgoing_mail_server);
- if( smtp_use_TLS )
- {
- SCR::Write (.sysconfig.postfix.POSTFIX_SMTP_TLS_CLIENT, "yes");
- }
- else
- {
- SCR::Write (.sysconfig.postfix.POSTFIX_SMTP_TLS_CLIENT, "no");
- }
+ SCR::Write (.sysconfig.postfix.POSTFIX_SMTP_TLS_CLIENT, smtp_use_TLS);
}
else
{
@@ -823,7 +819,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteMasquerading () ``{
+ global define boolean WriteMasquerading () ``{
// from_header
SCR::Write (.sysconfig.mail.FROM_HEADER, from_header);
// masquerade_other_domains
@@ -869,7 +865,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteDownloading () ``{
+ global define boolean WriteDownloading () ``{
// fetchmail
// TODO ?other settings: autofetch? at device up?
SCR::Write (.mail.fetchmail.accounts, fetchmail);
@@ -895,7 +891,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteAliasesAndVirtual () ``{
+ global define boolean WriteAliasesAndVirtual () ``{
// aliases
if (! MailAliases::WriteAliases ())
{
@@ -928,7 +924,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteSmtpAuth () ``{
+ global define boolean WriteSmtpAuth () ``{
// TODO how to remove the only entry?
// filter it out in the dialog?
if (enable_smtp_auth != nil)
@@ -962,7 +958,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteFlush () ``{
+ global define boolean WriteFlush () ``{
//flush the agents
map<string, path> paths = $[
"/etc/sysconfig/mail": .sysconfig.mail,
@@ -1020,7 +1016,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteSuSEconfig () ``{
+ global define boolean WriteSuSEconfig () ``{
//run SuSEconfig with the necessary modules
// TODO other modules using FROM_HEADER?
integer ret = 0;
@@ -1052,7 +1048,7 @@
* Part of Write.
* @return success
*/
- define boolean WriteServices () ``{
+ global define boolean WriteServices () ``{
if (amavis_service)
{
Service::Stop ("amavis");
@@ -1173,6 +1169,13 @@
return true;
}
+ /**
+ * Wrapper for global Write function, without the callback argument
+ */
+ global boolean WriteWithoutCallback () {
+ block<boolean> abort_block = ``{ return false; };
+ return Write (abort_block);
+ }
/**
* Get all mail settings from the first parameter
@@ -1230,6 +1233,7 @@
MailAliases::FilterRootAlias ();
// MailAliases::merge_aliases = settings["merge_aliases"]: false;
virtual_users = settings["virtual_users"]: [];
+ smtp_use_TLS = settings["smtp_use_TLS"]: "yes";
smtp_auth = settings["smtp_auth"]: [];
y2debug ("after %1", settings); // may contain passwords
return true;
@@ -1257,6 +1261,7 @@
// "merge_aliases": MailAliases::merge_aliases,
"virtual_users": virtual_users,
"smtp_auth": smtp_auth,
+ "smtp_use_TLS": smtp_use_TLS,
];
if (mta == `postfix)
{
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/MailServer.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/MailServer.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/MailServer.ycp Wed Jan 27 15:40:56 2010
@@ -162,7 +162,6 @@
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;
global boolean cyrus_installed = false;
global boolean postfix_installed = false;
@@ -170,6 +169,9 @@
global boolean sasl_installed = false;
global boolean saslauthd_installed = false;
global boolean plugins_installed = false;
+global boolean amavis_installed = false;
+global boolean spamassassin_installed=false;
+global boolean clamav_installed = false;
/*
* Help funktion to check the DNS Settings
@@ -268,10 +270,12 @@
postfix_installed = Installed("postfix");
fetchmail_installed = Installed("fetchmail");
ldap_installed = Installed("yast2-ldap-client");
- amavis_installed = Installed("amavisd-new");
sasl_installed = Installed("cyrus-sasl-plain");
saslauthd_installed = Installed("cyrus-sasl-saslauthd");
plugins_installed = Installed("yast2-mail-plugins");
+ amavis_installed = Installed("amavisd-new");
+ clamav_installed = Installed("clamav");
+ spamassassin_installed= Installed("spamassassin");
string to_install = "";
list<string> l_to_install = [];
@@ -310,13 +314,6 @@
l_to_install = add( l_to_install, "yast2-mail-plugins" );
to_install = to_install + "yast2-mail-plugins\n";
}
- if(!amavis_installed)
- {
- l_to_install = add( l_to_install, "amavisd-new" );
- to_install = to_install + "amavisd-new\n";
- l_to_install = add( l_to_install, "clamav" );
- to_install = to_install + "clamav\n";
- }
if(to_install != "")
{
if ( Report::AnyQuestion ("",_("You have not installed all needed packages.") +
@@ -504,13 +501,13 @@
/* Progress stage 1/7 */
_("Write mail server global settings"),
/* Progress stage 2/7 */
- _("Write mail server transports"),
+ _("Write mail server local delivery settings"),
/* Progress stage 3/7 */
- _("Write mail server prevention settings"),
+ _("Write mail server transports"),
/* Progress stage 4/7 */
- _("Write mail server relaying settings"),
+ _("Write mail server prevention settings"),
/* Progress stage 5/7 */
- _("Write mail server local delivery settings"),
+ _("Write mail server relaying settings"),
/* Progress stage 6/3 */
_("Write mail fetching jobs"),
/* Progress stage 7/7 */
@@ -519,13 +516,13 @@
/* Progress stage 1/7 */
_("Writing mail server global settings..."),
/* Progress stage 2/7 */
- _("Writing mail server transports..."),
+ _("Writing mail server local delivery settings..."),
/* Progress stage 3/7 */
- _("Writing mail server prevention settings..."),
+ _("Writing mail server transports..."),
/* Progress stage 4/7 */
- _("Writing mail server relaying settings..."),
+ _("Writing mail server prevention settings..."),
/* Progress stage 5/7 */
- _("Writing mail server local delivery settings..."),
+ _("Writing mail server relaying settings..."),
/* Progress stage 6/3 */
_("Writing mail fetching jobs..."),
/* Progress stage 7/7 */
@@ -550,66 +547,6 @@
}
sleep(sl);
- // write mail transports
- if(Abort()) return false;
- Progress::NextStep();
- if( (boolean)MailTransports["Changed"]:false ) {
- // First we have to clean up TLS Sites
- if( ! YaPI::MailServer::WriteMailTransports(MailTransports,AdminPassword) ) {
- Report::Error(_("Cannot write mail server transports."));
- }
- }
- sleep(sl);
-
- // write mail preventions
- if(Abort()) return false;
- Progress::NextStage();
- if((boolean)MailPrevention["VirusScanning"]:false) {
- if(! amavis_installed)
- {
- if ( Report::AnyQuestion ("",_("You have not installed all needed packages.") +
- "\n clamav \n amavisd-new \n",
- Label::InstallButton(),
- Label::AbortButton(),
- `focus_yes))
- {
- Package::DoInstall(["clamav","amavisd-new"]);
- Service::Start("clamd");
- Service::Start("freshclam");
- Service::Start("amavis");
- y2milestone("Installing amavis");
- }
- else
- {
- return false;
- }
- }
- Service::Enable("amavis");
- Service::Enable("clamd");
- Service::Enable("freshclam");
- }
- if( (boolean)MailPrevention["Changed"]:false ) {
- if( ! YaPI::MailServer::WriteMailPrevention(MailPrevention,AdminPassword) ) {
- Report::Error(_("Cannot write mail server preventions."));
- }
- if((boolean)MailPrevention["VirusScanning"]:false) {
- Service::Restart("clamd");
- Service::Restart("freshclam");
- Service::Restart("amavis");
- }
- }
- sleep(sl);
-
- // write mail realaying
- if(Abort()) return false;
- Progress::NextStage();
- if( (boolean)MailRelaying["Changed"]:false ) {
- if( ! YaPI::MailServer::WriteMailRelaying(MailRelaying,AdminPassword) ) {
- Report::Warning(_("Cannot write the mail server relay settings."));
- }
- }
- sleep(sl);
-
// write mail local delivery
// first we looking for if all the needed packages are installed
if(MailLocalDelivery["Type"]:"none" == "procmail"){
@@ -636,38 +573,26 @@
}
if(MailLocalDelivery["Type"]:"none" == "cyrus") {
- if(!cyrus_installed)
- {
- if ( Report::AnyQuestion ("",_("You have not installed all needed packages.") +
- "\n cyrus-imapd \n",
- Label::InstallButton(),
- Label::AbortButton(),
- `focus_yes))
- {
- Package::DoInstall(["cyrus-imapd"]);
- SCR::UnmountAgent(.etc.imapd_conf);
- }
- else
- {
- return false;
- }
- }
- string crypted = Users::CryptPassword(AdminPassword, "system", "foo");
- SCR::Write(.target.passwd.cyrus, crypted);
-
- list Values = SCR::Dir(.etc.imapd_conf);
- SCR::Write(.etc.imapd_conf.allowplaintext,"yes");
- if(!contains(Values,"unixhierarchysep")) {
- SCR::Write(.etc.imapd_conf.unixhierarchysep,"yes");
- }
- if(!contains(Values,"allowplainwithouttls")) {
- SCR::Write(.etc.imapd_conf.allowplainwithouttls,"yes");
- }
- SCR::Write(.etc.imapd_conf,nil);
- if(Service::Status("cyrus") > 0) {
- Service::Start("cyrus");
- Service::Enable("cyrus");
- }
+ if(!cyrus_installed)
+ {
+ if ( Report::AnyQuestion ("",_("You have not installed all needed packages.") +
+ "\n cyrus-imapd \n",
+ Label::InstallButton(),
+ Label::AbortButton(),
+ `focus_yes))
+ {
+ Package::DoInstall(["cyrus-imapd"]);
+ SCR::UnmountAgent(.etc.imapd_conf);
+ }
+ else
+ {
+ return false;
+ }
+ }
+ string crypted = Users::CryptPassword(AdminPassword, "system", "foo");
+ SCR::Write(.target.passwd.cyrus, crypted);
+ y2milestone("--- Enabling cyrus --");
+ Service::Enable("cyrus");
} else {
if(cyrus_installed) {
Service::Stop("cyrus");
@@ -681,7 +606,102 @@
Report::Warning(_("Cannot write the mail server local delivery settings."));
}
if(MailLocalDelivery["Type"]:"none" == "cyrus") {
- Service::Reload("cyrus");
+ y2milestone("--- Stop cyrus --");
+ Service::Stop("cyrus");
+ y2milestone("--- Start cyrus --");
+ Service::Start("cyrus");
+ sleep(10000);
+ YaPI::MailServer::CreateRootMailbox(AdminPassword);
+ }
+ }
+ sleep(sl);
+
+ // write mail transports
+ if(Abort()) return false;
+ Progress::NextStep();
+ if( (boolean)MailTransports["Changed"]:false ) {
+ // First we have to clean up TLS Sites
+ if( ! YaPI::MailServer::WriteMailTransports(MailTransports,AdminPassword) ) {
+ Report::Error(_("Cannot write mail server transports."));
+ }
+ }
+ sleep(sl);
+
+ // write mail preventions
+ if(Abort()) return false;
+ Progress::NextStage();
+ if((boolean)MailPrevention["VirusScanning"]:false)
+ {
+ string to_install = "";
+ list<string> l_to_install = [];
+ if(!amavis_installed)
+ {
+ l_to_install = add( l_to_install, "amavisd-new" );
+ to_install = to_install + "\n amavisd-new";
+ if(!clamav_installed)
+ {
+ l_to_install = add( l_to_install, "clamav" );
+ to_install = to_install + "\n clamav";
+ }
+ if(!spamassassin_installed)
+ {
+ l_to_install = add( l_to_install, "spamassassin" );
+ to_install = to_install + "\n spamassassin";
+ }
+ if(! amavis_installed || !clamav_installed || !spamassassin_installed)
+ {
+ if ( Report::AnyQuestion ("",_("You have not installed all needed packages.") +
+ to_install,
+ Label::InstallButton(),
+ Label::AbortButton(),
+ `focus_yes))
+ {
+ Package::DoInstall(l_to_install);
+ y2milestone("Installing amavis");
+ }
+ else
+ {
+ return false;
+ }
+ Service::Start("clamd");
+ Service::Start("freshclam");
+ Service::Start("amavis");
+ }
+ Service::Enable("amavis");
+ Service::Enable("clamd");
+ Service::Enable("freshclam");
+ }
+ }
+ if( (boolean)MailPrevention["Changed"]:false ) {
+ if( ! YaPI::MailServer::WriteMailPrevention(MailPrevention,AdminPassword) ) {
+ Report::Error(_("Cannot write mail server preventions."));
+ }
+ if((boolean)MailPrevention["VirusScanning"]:false) {
+ Service::Enable("amavis");
+ Service::Enable("clamd");
+ Service::Enable("freshclam");
+ Service::Restart("clamd");
+ Service::Restart("freshclam");
+ Service::Restart("amavis");
+ }
+ else
+ {
+ Service::Stop("clamd");
+ Service::Stop("freshclam");
+ Service::Stop("amavis");
+ Service::Disable("amavis");
+ Service::Disable("clamd");
+ Service::Disable("freshclam");
+ }
+ }
+ sleep(sl);
+
+ // write mail realaying
+ if(Abort()) return false;
+ Progress::NextStage();
+ if( (boolean)MailRelaying["Changed"]:false ) {
+ if( ! YaPI::MailServer::WriteMailRelaying(MailRelaying,AdminPassword) ) {
+ Report::Warning(_("Cannot write the mail server relay settings."));
}
}
sleep(sl);
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/MailServerLDAP.pm
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/MailServerLDAP.pm (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/MailServerLDAP.pm Wed Jan 27 15:40:56 2010
@@ -55,7 +55,8 @@
my $indices = YaPI::LdapServer->ReadIndex( $ldapMap->[2]->{'suffix'} );
my @attrs = ( "SuSEMailClient", "SUSEMailAcceptAddress", "zoneName",
"SuSEMailDomainMasquerading", "relativeDomainName", "suseMailDomainType",
- "suseTLSPerSitePeer", "SuSEMailTransportDestination" );
+ "suseTLSPerSitePeer", "SuSEMailTransportDestination",
+ "suseDeliveryToFolder", "suseDeliveryToMember" );
foreach my $attr (@attrs){
my $curindex;
if (! defined $indices->{$attr} ) {
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/YaPI/MailServer.pm
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/YaPI/MailServer.pm (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/YaPI/MailServer.pm Wed Jan 27 15:40:56 2010
@@ -197,9 +197,8 @@
$GlobalSettings{'MaximumMailSize'} = read_attribute($MainCf,'message_size_limit');
#
- $GlobalSettings{'Banner'} = `postconf -h smtpd_banner`;
- $GlobalSettings{'Interfaces'} = `postconf -h inet_interfaces`;
- chomp $GlobalSettings{'Banner'};
+ chomp( $GlobalSettings{'Banner'} = `postconf -h smtpd_banner`);
+ chomp($GlobalSettings{'Interfaces'} = `postconf -h inet_interfaces`);
# Determine if relay host is used
$GlobalSettings{'SendingMail'}{'RelayHost'}{'Name'} = read_attribute($MainCf,'relayhost');
@@ -348,7 +347,14 @@
'command' => 'smtp' });
if(! defined $smtpsrv )
{
- SCR->Execute('.mail.postfix.mastercf.addService', { 'service' => 'smtp', 'command' => 'smtp' });
+ SCR->Execute('.mail.postfix.mastercf.addService', { 'service' => 'smtp',
+ 'type' => 'inet',
+ 'private' => 'n',
+ 'unpriv' => '-',
+ 'chroot' => 'n',
+ 'wakeup' => '-',
+ 'maxproc' => '-',
+ 'command' => 'smtpd' });
}
}
@@ -1161,44 +1167,38 @@
}
# Now we looking for if vscan (virusscanning) is started.
- my $vscan = SCR->Execute('.mail.postfix.mastercf.findService',
+ my $vscanin = SCR->Execute('.mail.postfix.mastercf.findService',
{ 'service' => 'localhost:10025',
'command' => 'smtpd'} );
- my $smtp = SCR->Execute('.mail.postfix.mastercf.findService',
- { 'service' => 'smtp',
- 'command' => 'smtpd'});
-#print STDERR "SMTP";
-#print STDERR Dumper ($smtp);
-#print STDERR "VSCAN";
-#print STDERR Dumper ($vscan);
- if( defined $smtp->[0] && defined $smtp->[0]->{'options'} )
- {
- if( $smtp->[0]->{'options'}->{'content_filter'} eq 'smtp:[127.0.0.1]:10024' && $vscan )
- {
- $MailPrevention{'VirusScanning'} = YaST::YCP::Boolean(1);
- if( ! open(IN,$aconf) )
- {
- return "Error: $!";
- }
- my @ACONF = <IN>;
- close(IN);
- my $ismax = 0;
- foreach ( @ACONF )
- {
- s/\s+//g;
+ my $vscanout = SCR->Execute('.mail.postfix.mastercf.findService',
+ { 'service' => 'amavis',
+ 'command' => 'lmtp'} );
+ my $content_filter = read_attribute($MainCf,'content_filter');
+
+ if( $content_filter eq 'amavis:[127.0.0.1]:10024' && $vscanin && $vscanout)
+ {
+ $MailPrevention{'VirusScanning'} = YaST::YCP::Boolean(1);
+ if( ! open(IN,$aconf) )
+ {
+ return "Error: $!";
+ }
+ my @ACONF = <IN>;
+ close(IN);
+ my $ismax = 0;
+ foreach ( @ACONF )
+ {
+ s/\s+//g;
if ( /^\$max_servers=(\d+)/ )
{
- $MailPrevention{'VSCount'} = YaST::YCP::Integer($1);
+ $MailPrevention{'VSCount'} = YaST::YCP::Integer($1);
}
$ismax = 1;
- }
- if( !$ismax )
- {
- $MailPrevention{'VSCount'} = YaST::YCP::Integer(5);
- }
- }
+ }
+ if( !$ismax )
+ {
+ $MailPrevention{'VSCount'} = YaST::YCP::Integer(2);
+ }
}
-
# make IMAP connection
my $imap = new Net::IMAP($imaphost, Debug => 0);
if( $imap )
@@ -1211,6 +1211,7 @@
$MailPrevention{'SpamLearning'} = YaST::YCP::Boolean(1);
}
}
+ $imap->logout();
}
return \%MailPrevention;
@@ -1276,11 +1277,9 @@
if($MailPrevention->{'BasicProtection'} eq 'hard')
{
#Write hard settings
- write_attribute($MainCf,'smtpd_sender_restrictions','ldap:/etc/postfix/ldapaccess.cf, reject_unknown_sender_domain');
write_attribute($MainCf,'smtpd_helo_required','yes');
write_attribute($MainCf,'smtpd_helo_restrictions','permit_mynetworks, reject_invalid_hostname');
write_attribute($MainCf,'strict_rfc821_envelopes','yes');
- write_attribute($MainCf,'local_recipient_maps','$alias_maps, ldap:/etc/postfix/ldaplocal_recipient_maps.cf');
if( $clnt_restrictions ne '')
{
write_attribute($MainCf,'smtpd_client_restrictions',"permit_mynetworks, $clnt_restrictions, ldap:/etc/postfix/ldapaccess.cf, reject_unknown_client");
@@ -1293,11 +1292,9 @@
elsif($MailPrevention->{'BasicProtection'} eq 'medium')
{
#Write medium settings
- write_attribute($MainCf,'smtpd_sender_restrictions','ldap:/etc/postfix/ldapaccess.cf, reject_unknown_sender_domain');
write_attribute($MainCf,'smtpd_helo_required','yes');
write_attribute($MainCf,'smtpd_helo_restrictions','');
write_attribute($MainCf,'strict_rfc821_envelopes','no');
- write_attribute($MainCf,'local_recipient_maps','$alias_maps, ldap:/etc/postfix/ldaplocal_recipient_maps.cf');
if( $clnt_restrictions ne '')
{
write_attribute($MainCf,'smtpd_client_restrictions',"$clnt_restrictions, ldap:/etc/postfix/ldapaccess.cf");
@@ -1310,12 +1307,10 @@
elsif($MailPrevention->{'BasicProtection'} eq 'off')
{
# Write off settings
- write_attribute($MainCf,'smtpd_sender_restrictions','ldap:/etc/postfix/ldapaccess.cf');
write_attribute($MainCf,'smtpd_helo_required','no');
write_attribute($MainCf,'smtpd_helo_restrictions','');
write_attribute($MainCf,'strict_rfc821_envelopes','no');
write_attribute($MainCf,'smtpd_client_restrictions','ldap:/etc/postfix/ldapaccess.cf');
- write_attribute($MainCf,'local_recipient_maps','$alias_maps, ldap:/etc/postfix/ldaplocal_recipient_maps.cf');
}
else
{
@@ -1372,34 +1367,64 @@
code => "VIRUS_SCANNER_FAILED",
description => "activating the virus scanner failed: $err");
}
- if( SCR->Execute('.mail.postfix.mastercf.findService',
- { 'service' => 'smtp', 'command' => 'smtpd' }))
- {
- SCR->Execute('.mail.postfix.mastercf.modifyService',
- { 'service' => 'smtp',
- 'command' => 'smtpd',
- 'maxproc' => $MailPrevention->{'VSCount'},
- 'options' => { 'content_filter' => 'smtp:[127.0.0.1]:10024' } } );
- }
- else
+ # This is only for systems updated from SLES10
+ my $smtps = SCR->Execute('.mail.postfix.mastercf.findService',
+ { 'service' => 'smtps', 'command' => 'smtpd' });
+ if( ref($smtps) eq 'ARRAY' && defined $smtps->[0]->{options} )
+ {
+ my $opts = $smtps->[0]->{options};
+ if ( defined $opts->{'content_filter'} )
+ {
+ delete $opts->{'content_filter'};
+ SCR->Execute('.mail.postfix.mastercf.modifyService',
+ { 'service' => 'smtps',
+ 'command' => 'smtpd',
+ 'maxproc' => '-',
+ 'options' => $opts } );
+ }
+ }
+ my $smtp = SCR->Execute('.mail.postfix.mastercf.findService',
+ { 'service' => 'smtp', 'command' => 'smtpd' });
+ if( ref($smtp) eq 'ARRAY' && defined $smtp->[0]->{options} )
+ {
+ my $opts = $smtp->[0]->{options};
+ if ( defined $opts->{'content_filter'} )
+ {
+ delete $opts->{'content_filter'};
+ SCR->Execute('.mail.postfix.mastercf.modifyService',
+ { 'service' => 'smtp',
+ 'command' => 'smtpd',
+ 'maxproc' => '-',
+ 'options' => $opts } );
+ }
+ }
+ # End This is only for systems updated from SLES10
+ if( SCR->Execute('.mail.postfix.mastercf.findService',
+ { 'service' => 'localhost:10025', 'command' => 'smtpd' }))
{
- SCR->Execute('.mail.postfix.mastercf.addService',
- { 'service' => 'smtp',
- 'command' => 'smtpd',
+ SCR->Execute('.mail.postfix.mastercf.deleteService',
+ { 'service' => 'localhost:10025', 'command' => 'smtpd' });
+ }
+ if( SCR->Execute('.mail.postfix.mastercf.findService',
+ { 'service' => 'amavis', 'command' => 'lmtp' }))
+ {
+ SCR->Execute('.mail.postfix.mastercf.deleteService',
+ { 'service' => 'amavis', 'command' => 'lmtp' });
+ }
+ # create smtpd pocess for getting back the emails
+ SCR->Execute('.mail.postfix.mastercf.addService',
+ { 'service' => 'amavis',
+ 'command' => 'lmtp',
+ 'type' => 'unix',
+ 'private' => '-',
+ 'unpriv' => '-',
+ 'chroot' => '-',
+ 'wakeup' => '-',
'maxproc' => $MailPrevention->{'VSCount'},
- 'options' => { 'content_filter' => 'smtp:[127.0.0.1]:10024' } } );
- }
- my $smtps = SCR->Execute('.mail.postfix.mastercf.findService',
- { 'service' => 'smtps', 'command' => 'smtpd' });
- if( ref($smtps) eq 'ARRAY' && defined $smtps->[0]->{options} )
- {
- my $opts = $smtps->[0]->{options};
- $opts->{'content_filter'} = 'smtp:[127.0.0.1]:10024';
- SCR->Execute('.mail.postfix.mastercf.modifyService',
- { 'service' => 'smtps',
- 'command' => 'smtpd',
- 'options' => $opts } );
- }
+ 'options' => { lmtp_data_done_timeout => 1200,
+ lmtp_send_xforward_command => 'yes',
+ disable_dns_lookups => 'yes',
+ max_use => 20 } } );
SCR->Execute('.mail.postfix.mastercf.addService',
{ 'service' => 'localhost:10025',
'command' => 'smtpd',
@@ -1409,34 +1434,42 @@
'chroot' => 'n',
'wakeup' => '-',
'maxproc' => '-',
- 'options' => { 'content_filter' => '' } } );
+ 'options' => { content_filter => '',
+ relay_recipient_maps => '',
+ smtpd_delay_reject => 'no',
+ smtpd_restriction_classes => '',
+ smtpd_client_restrictions => '',
+ smtpd_helo_restrictions => '',
+ smtpd_sender_restrictions => '',
+ smtpd_recipient_restrictions => 'permit_mynetworks,reject',
+ smtpd_data_restrictions => 'reject_unauth_pipelining',
+ smtpd_end_of_data_restrictions => '',
+ mynetworks => '127.0.0.0/8',
+ smtpd_error_sleep_time => '0',
+ smtpd_soft_error_limit => '1001',
+ smtpd_hard_error_limit => '1000',
+ smtpd_client_connection_count_limit => '0',
+ smtpd_client_connection_rate_limit => '0',
+ receive_override_options => 'no_header_body_checks,no_unknown_recipient_checks'
+ }
+ } );
+ write_attribute($MainCf,'content_filter','amavis:[127.0.0.1]:10024');
}
else
{
- SCR->Execute('.mail.postfix.mastercf.deleteService',
- { 'service' => 'localhost:10025', 'command' => 'smtpd' });
- SCR->Execute('.mail.postfix.mastercf.modifyService',
- { 'service' => 'smtp', 'command' => 'smtpd', 'options' => {} } );
-
- my $smtps = SCR->Execute('.mail.postfix.mastercf.findService',
- { 'service' => 'smtps', 'command' => 'smtpd' });
- if( ref($smtps) eq 'ARRAY' && defined $smtps->[0]->{options} )
- {
- my $opts = $smtps->[0]->{options};
- delete $opts->{'content_filter'};
- SCR->Execute('.mail.postfix.mastercf.modifyService',
- { 'service' => 'smtps',
- 'command' => 'smtpd',
- 'options' => $opts });
- }
- Service->Stop('amavis');
- Service->Stop('clamd');
- Service->Disable('amavis');
- Service->Disable('clamd');
+ SCR->Execute('.mail.postfix.mastercf.deleteService',
+ { 'service' => 'localhost:10025', 'command' => 'smtpd' });
+ SCR->Execute('.mail.postfix.mastercf.deleteService',
+ { 'service' => 'amavis', 'command' => 'lmtp' });
+ write_attribute($MainCf,'content_filter','');
+
+ Service->Stop('amavis');
+ Service->Stop('clamd');
+ Service->Disable('amavis');
+ Service->Disable('clamd');
}
# now we looks if the ldap entries in the main.cf for the access table are OK.
- check_ldap_configuration('local_recipient_maps',$ldapMap);
check_ldap_configuration('access',$ldapMap);
SCR->Write('.mail.postfix.main.table',$MainCf);
SCR->Write('.mail.postfix.main',undef);
@@ -1468,13 +1501,13 @@
setfacl -m u:vscan:rx /var/spool/imap /var/spool/imap/{NoSpam,NewSpam}
setfacl -m m::rx /var/spool/imap /var/spool/imap/{NoSpam,NewSpam}
-su - vscan -c "/usr/bin/sa-learn --sync"
+/usr/bin/sa-learn --sync --dbpath /var/spool/amavis/.spamassassin/
(
for i in `ls /var/spool/imap/NewSpam/[0-9]* 2> /dev/null`
do
setfacl -m user:vscan:r-x $i
echo $i
- su - vscan -c "/usr/bin/sa-learn --spam $i"
+ /usr/bin/sa-learn --spam --dbpath /var/spool/amavis/.spamassassin/ $i
rm $i
done
) >> $LOG 2>&1
@@ -1485,22 +1518,26 @@
do
setfacl -m user:vscan:r-x $i
echo $i
- su - vscan -c "/usr/bin/sa-learn --ham $i"
+ /usr/bin/sa-learn --ham --dbpath /var/spool/amavis/.spamassassin/ $i
rm $i
done
) >> $LOG 2>&1
su - cyrus -c "reconstruct NoSpam" &>/dev/null
+chown -R vscan /var/spool/amavis/.spamassassin/
setfacl -b /var/spool/imap /var/spool/imap/{NoSpam,NewSpam}
';
SCR->Write(".target.string","/etc/cron.hourly/lern-spam",$lernspam);
- SCR->Write(".target.bash","chmod 755 /etc/cron.hourly/lern-spam");
+ SCR->Execute(".target.bash","chmod 755 /etc/cron.hourly/lern-spam");
}
+ $imap->logout();
}
else
{
- SCR->Write(".target.bash","test -e /etc/cron.hourly/lern-spam && rm /etc/cron.hourly/lern-spam");
- $ret = $imap->delete('NewSpam');
+ SCR->Execute(".target.bash","test -e /etc/cron.hourly/lern-spam && rm /etc/cron.hourly/lern-spam");
+ $ret = $imap->delete('NewSpam');
+ $ret = $imap->delete('NoSpam');
+ $imap->logout();
}
}
return 1;
@@ -1597,7 +1634,7 @@
my $smtpd_recipient_restrictions = read_attribute($MainCf,'smtpd_recipient_restrictions');
my $smtpd_sasl_auth_enable = read_attribute($MainCf,'smtpd_sasl_auth_enable');
my $smtpd_use_tls = read_attribute($MainCf,'smtpd_use_tls');
- my $smtpd_enforce_tls = read_attribute($MainCf,'smtpd_enforce_tls');
+ my $smtpd_enforce_tls = read_attribute($MainCf,'smtpd_enforce_tls') || 'no';
my $smtpd_tls_auth_only = read_attribute($MainCf,'smtpd_tls_auth_only');
if($smtpd_use_tls eq 'no')
{
@@ -1643,7 +1680,6 @@
}
y2milestone("-- WriteMailRelaying --");
-#print STDERR Dumper([$MailRelaying]);
# Make LDAP Connection
my $ldapMap = $self->ReadLDAPDefaults($AdminPassword);
if( !$ldapMap )
@@ -1787,7 +1823,7 @@
my %MailLocalDelivery = (
'Changed' => YaST::YCP::Boolean(0),
'Type' => '',
- 'MailboxSizeLimit'=> '',
+ 'MailboxSizeLimit'=> 0,
'FallBackMailbox' => '',
'SpoolDirectory' => '',
'QuotaLimit' => 90,
@@ -1915,13 +1951,7 @@
#print STDERR Dumper([$MailLocalDelivery]);
if( $MailLocalDelivery->{'Type'} ne 'none')
{
- write_attribute($MainCf,'mydestination','$myhostname, localhost.$mydomain, $mydomain, ldap:/etc/postfix/ldapmydestination.cf');
- 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_member.cf, ldap:/etc/postfix/ldapalias_maps.cf');
- check_ldap_configuration('alias_maps',$ldapMap);
- check_ldap_configuration('alias_maps_member',$ldapMap);
- check_ldap_configuration('virtual_alias_maps',$ldapMap);
+ write_ldap_maps($MainCf,$ldapMap);
}
if( $MailLocalDelivery->{'Type'} eq 'local')
{
@@ -1970,6 +2000,9 @@
SCR->Write('.etc.imapd_conf.quotawarn',$MailLocalDelivery->{'QuotaLimit'});
SCR->Write('.etc.imapd_conf.timeout',$MailLocalDelivery->{'ImapIdleTime'});
SCR->Write('.etc.imapd_conf.poptimeout',$MailLocalDelivery->{'PopIdleTime'});
+ SCR->Write('.etc.imapd_conf.allowplaintext','yes');
+ SCR->Write('.etc.imapd_conf.unixhierarchysep','yes');
+ SCR->Write('.etc.imapd_conf.allowplainwithouttls','yes');
if($MailLocalDelivery->{'FallBackMailbox'} ne '' )
{
SCR->Write('.etc.imapd_conf.lmtp_luser_relay',$MailLocalDelivery->{'FallBackMailbox'});
@@ -2054,6 +2087,24 @@
SCR->Execute('.mail.cyrusconf.toggleService', 'pop3s');
}
}
+ Service->Enable('saslauthd');
+ Service->Enable('cyrus');
+ if( !Service->Status('saslauthd') )
+ {
+ Service->Restart('saslauthd');
+ }
+ else
+ {
+ Service->Start('saslauthd');
+ }
+ if( !Service->Status('cyrus') )
+ {
+ Service->Restart('cyrus');
+ }
+ else
+ {
+ Service->Start('cyrus');
+ }
}
elsif( $MailLocalDelivery->{'Type'} eq 'none')
{
@@ -2075,6 +2126,31 @@
return 1;
}
+BEGIN { $TYPEINFO{CreateRootMailbox} =["function", "any", "string"]; }
+sub CreateRootMailbox {
+ my $self = shift;
+ my $AdminPassword = shift;
+
+ #Create mailbox for root
+ my $imap = new Net::IMAP($imaphost, Debug => 0);
+ if( $imap )
+ {
+ my $ret = $imap->login($imapadm, $AdminPassword);
+ if($$ret{Status} eq "ok")
+ {
+ $ret = $imap->select('usr/root');
+ if( $ret->{Status} ne 'ok' )
+ {
+ $ret = $imap->create('user/root');
+ $ret = $imap->setacl('user/root', 'cyrus', "lrswipkxtea");
+ $ret = $imap->setacl('user/root', 'root', "lrswipkxtea");
+ $ret = $imap->setacl('user/root', 'anyone', "" );
+ }
+ }
+ $imap->logout();
+ }
+}
+
BEGIN { $TYPEINFO{ReadFetchingMail} =["function", "any", "string"]; }
sub ReadFetchingMail {
my $self = shift;
@@ -2323,43 +2399,38 @@
}
else
{
- # This is a new domain, we create it.
- # We create all the DNS attributes. `hostname -f` is the NS entry.
- my $serial = POSIX::strftime("%Y%m%d%H%M",localtime);
- my $host = `hostname -f`; chomp $host;
- my $tmp = { 'Objectclass' => [ 'dNSZone','suseMailDomain' ],
- 'zoneName' => $name,
- 'suseMailDomainType' => $type,
- 'suseMailDomainMasquerading' => $masquerading,
+ # This is a new domain, we create it.
+ # We create all the DNS attributes. `hostname -f` is the NS and MX entry.
+ my $serial = POSIX::strftime("%Y%m%d%H",localtime);
+ my $host = `hostname -f`; chomp $host;
+ my $tmp = { 'Objectclass' => [ 'dNSZone','suseMailDomain' ],
+ 'zoneName' => $name,
+ 'suseMailDomainType' => $type,
+ 'suseMailDomainMasquerading' => $masquerading,
'relativeDomainName' => '@',
'dNSClass' => 'IN',
'dNSTTL' => '86400',
+ 'nSRecord' => $host.'.',
+ 'mXRecord' => '40 '.$host.'.',
'sOARecord' => $host.'. root.'.$host.'. '.$serial.' 10800 3600 302400 43200'
- };
- if(! SCR->Write('.ldap.add',{ "dn" => $DN } ,$tmp)){
- my $ldapERR = SCR->Read(".ldap.error");
- return $self->SetError(summary => "LDAP add failed",
- code => "SCR_WRITE_FAILED",
- description => $ldapERR->{'code'}." : ".$ldapERR->{'msg'});
- }
+ };
+ if(! SCR->Write('.ldap.add',{ "dn" => $DN } ,$tmp)){
+ my $ldapERR = SCR->Read(".ldap.error");
+ return $self->SetError(summary => "LDAP add failed",
+ code => "SCR_WRITE_FAILED",
+ description => $ldapERR->{'code'}." : ".$ldapERR->{'msg'});
+ }
}
}
# First we read the main.cf
my $MainCf = SCR->Read('.mail.postfix.main.table');
- write_attribute($MainCf,'masquerade_domains','ldap:/etc/postfix/ldapmasquerade_domains.cf');
write_attribute($MainCf,'masquerade_classes','envelope_sender, header_sender, header_recipient');
write_attribute($MainCf,'masquerade_exceptions','root');
- write_attribute($MainCf,'mydestination','$myhostname, localhost.$mydomain, $mydomain, ldap:/etc/postfix/ldapmydestination.cf');
- 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_ldap_maps($MainCf,$ldapMap);
SCR->Write('.mail.postfix.main.table',$MainCf);
SCR->Write('.mail.postfix.main',undef);
- check_ldap_configuration('masquerade_domains',$ldapMap);
- check_ldap_configuration('mydestination',$ldapMap);
- check_ldap_configuration('local_recipient_maps',$ldapMap);
- check_ldap_configuration('virtual_alias_maps',$ldapMap);
return 1;
}
@@ -2519,9 +2590,27 @@
code => "SCR_INIT_FAILED",
description => $ldapERR->{'code'}." : ".$ldapERR->{'msg'});
}
- if( ! SCR->Write('.ldap.add',
- { "dn" => $uBase },
- $configOBJ->{$uBase} ) )
+ if( ! SCR->Write('.ldap.add', { "dn" => $uBase }, $configOBJ->{$uBase} ) )
+ {
+ my $ldapERR = SCR->Read(".ldap.error");
+ return $self->SetError(summary => "LDAP add failed",
+ code => "SCR_INIT_FAILED",
+ description => $ldapERR->{'code'}." : ".$ldapERR->{'msg'});
+ }
+ $uBase = "ou=Aliases,ou=Mailserver,".$ldapMap->{'ldap_domain'};
+ $configOBJ->{$uBase}->{'objectClass'} = 'organizationalUnit';
+ $configOBJ->{$uBase}->{'ou'} = 'Aliases';
+ if( ! SCR->Write('.ldap.add', { "dn" => $uBase }, $configOBJ->{$uBase} ) )
+ {
+ my $ldapERR = SCR->Read(".ldap.error");
+ return $self->SetError(summary => "LDAP add failed",
+ code => "SCR_INIT_FAILED",
+ description => $ldapERR->{'code'}." : ".$ldapERR->{'msg'});
+ }
+ $uBase = "ou=Canonical,ou=Mailserver,".$ldapMap->{'ldap_domain'};
+ $configOBJ->{$uBase}->{'objectClass'} = 'organizationalUnit';
+ $configOBJ->{$uBase}->{'ou'} = 'Canonical';
+ if( ! SCR->Write('.ldap.add', { "dn" => $uBase }, $configOBJ->{$uBase} ) )
{
my $ldapERR = SCR->Read(".ldap.error");
return $self->SetError(summary => "LDAP add failed",
@@ -2845,30 +2934,10 @@
SCR->Execute('.mail.postfix.mastercf.deleteService', {'service' => 'tlsmgr','command' => 'tlsmgr'});
}
}
- #Setup the ldap tables;
- # Transport
- check_ldap_configuration('transport_maps',$ldapMap);
- write_attribute($MainCf,'transport_maps','ldap:/etc/postfix/ldaptransport_maps.cf');
- # smtp_tls_per_site
- check_ldap_configuration('smtp_tls_per_site',$ldapMap);
- write_attribute($MainCf,'smtp_tls_per_site','ldap:/etc/postfix/ldapsmtp_tls_per_site.cf');
- #
- write_attribute($MainCf,'masquerade_domains','ldap:/etc/postfix/ldapmasquerade_domains.cf');
write_attribute($MainCf,'masquerade_classes','envelope_sender, header_sender, header_recipient');
write_attribute($MainCf,'masquerade_exceptions','root');
- write_attribute($MainCf,'content_filter','');
- write_attribute($MainCf,'mydestination','$myhostname, localhost.$mydomain, $mydomain, ldap:/etc/postfix/ldapmydestination.cf');
- 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);
- check_ldap_configuration('virtual_alias_maps',$ldapMap);
- check_ldap_configuration('alias_maps',$ldapMap);
- check_ldap_configuration('alias_maps_member',$ldapMap);
+ #Setup the ldap tables;
+ write_ldap_maps($MainCf,$ldapMap);
SCR->Write('.mail.postfix.main.table',$MainCf);
SCR->Write('.mail.postfix.main',undef);
SCR->Write('.mail.postfix.mastercf',undef);
@@ -2877,22 +2946,6 @@
return 1;
}
-# some helper funktions
-sub read_attribute {
- my $config = shift;
- my $attribute = shift;
-
- foreach(@{$config})
- {
- if($_->{"key"} eq $attribute)
- {
- return $_->{"value"};
- }
- }
- return '';
-}
-
-
sub activate_virus_scanner {
my $VSCount = shift || 5;
use File::Copy;
@@ -2908,16 +2961,28 @@
my @ACONF = <IN>;
close(IN);
- my $isclam = 0;
- my $ismax = 0;
+ my $isclam = 0;
+ my $ismax = 0;
+ my $ismyhostname = 0;
+ my $myhostname = `hostname -f`; chomp $myhostname;
+ my $mydomain = `hostname -d`; chomp $mydomain;
foreach my $l ( @ACONF )
{
if ( $l =~ s/^\$max_servers = .*;/\$max_servers = $VSCount;/ )
{
- #fix bnc#450888 : remove the supplementary entries
next if $ismax;
$ismax = 1;
}
+ if ( $l =~ s/^\$myhostname = .*;/\$myhostname = '$myhostname';/ )
+ {
+ next if $ismyhostname;
+ $ismyhostname = 1;
+ }
+ if ( $l =~ s/^\$mydomain = .*;/\$mydomain = '$mydomain';/ )
+ {
+ push @CONF, $l;
+ next ;
+ }
$l =~ s/(.*)/# $1/ if $l =~ /bypass_virus_checks_acl.*=.*qw\( \./;
if( $isclam || $l =~ /Clam Antivirus-clamd/ )
{
@@ -2931,14 +2996,20 @@
}
push @CONF, $l;
}
+ pop @CONF;
if( !$ismax )
{
- push @CONF, '$max_servers = '.$VSCount;
+ push @CONF, '$max_servers = '.$VSCount.";\n";
+ }
+ if( !$ismyhostname )
+ {
+ push @CONF, '$myhostname = '."'$myhostname';\n";
}
if( ! open(OUT,">$aconf.new") )
{
return "Error: $!";
}
+ push @CONF, '1;';
print OUT @CONF;
close(OUT);
@@ -2968,8 +3039,10 @@
move("$aconf.new",$aconf);
move("$cconf.new",$cconf);
Service->Enable('amavis');
+ Service->Enable('freshclam');
Service->Enable('clamd');
Service->Start('amavis');
+ Service->Start('freshclam');
Service->Start('clamd');
return "";
}
@@ -3001,6 +3074,70 @@
return 1;
}
+sub read_attribute {
+ my $config = shift;
+ my $attribute = shift;
+ my $a = undef;
+ foreach(@{$config})
+ {
+ if($_->{"key"} eq $attribute)
+ {
+ return $_->{"value"} if defined $_->{"value"};
+ }
+ }
+ chomp( $a = `postconf -h $attribute` );
+ return $a if( defined $a );
+ return undef;
+}
+
+# Internal helper Funktion to write the ldap maps
+sub write_ldap_maps($$)
+{
+ my( $MainCf, $ldapMap ) = @_;
+
+ my $alias_maps = read_attribute($MainCf,'alias_maps');
+ if($alias_maps !~ /ldap:\/etc\/postfix\/ldapalias_maps_folder.cf/)
+ {
+ $alias_maps .= ', ldap:/etc/postfix/ldapalias_maps_folder.cf';
+ }
+ if($alias_maps !~ /ldap:\/etc\/postfix\/ldapalias_maps.cf/)
+ {
+ $alias_maps .= ', ldap:/etc/postfix/ldapalias_maps.cf';
+ }
+ write_attribute($MainCf,'alias_maps',$alias_maps);
+ my $masquerade_domains = read_attribute($MainCf,'masquerade_domains');
+ if($masquerade_domains !~ /ldap:\/etc\/postfix\/ldapmasquerade_domains.cf/)
+ {
+ $masquerade_domains .= ', ldap:/etc/postfix/ldapmasquerade_domains.cf';
+ }
+ write_attribute($MainCf,'masquerade_domains',$masquerade_domains);
+ my $mydestination = read_attribute($MainCf,'mydestination');
+ if($mydestination !~ /ldap:\/etc\/postfix\/ldapmydestination.cf/ )
+ {
+ $mydestination .= ', ldap:/etc/postfix/ldapmydestination.cf';
+ }
+ write_attribute($MainCf,'mydestination',$mydestination);
+ write_attribute($MainCf,'smtpd_sender_restrictions','ldap:/etc/postfix/ldapaccess.cf');
+ write_attribute($MainCf,'smtp_tls_per_site','ldap:/etc/postfix/ldapsmtp_tls_per_site.cf');
+ write_attribute($MainCf,'transport_maps','ldap:/etc/postfix/ldaptransport_maps.cf');
+ write_attribute($MainCf,'virtual_alias_maps', 'ldap:/etc/postfix/ldapuser_recipient_maps.cf, ldap:/etc/postfix/ldapvalias_maps_both.cf, ldap:/etc/postfix/ldapvalias_maps_member.cf, ldap:/etc/postfix/ldapvalias_maps_folder.cf, ldap:/etc/postfix/ldapvalias_maps_forward.cf');
+ write_attribute($MainCf,'virtual_alias_domains','ldap:/etc/postfix/ldapvirtual_alias_domains.cf');
+ check_ldap_configuration('access',$ldapMap);
+ check_ldap_configuration('alias_maps',$ldapMap);
+ check_ldap_configuration('alias_maps_folder',$ldapMap);
+ check_ldap_configuration('masquerade_domains',$ldapMap);
+ check_ldap_configuration('mydestination',$ldapMap);
+ check_ldap_configuration('smtp_tls_per_site',$ldapMap);
+ check_ldap_configuration('transport_maps',$ldapMap);
+ check_ldap_configuration('user_recipient_maps',$ldapMap);
+ check_ldap_configuration('valias_maps_both',$ldapMap);
+ check_ldap_configuration('valias_maps_member',$ldapMap);
+ check_ldap_configuration('valias_maps_folder',$ldapMap);
+ check_ldap_configuration('valias_maps_forward',$ldapMap);
+ check_ldap_configuration('virtual_alias_domains',$ldapMap);
+
+}
+
# Internal helper Funktion to check if a needed ldap table is correctly defined
# in the main.cf. If not so the neccesary entries will be created.
sub check_ldap_configuration {
@@ -3009,71 +3146,97 @@
my $changes = 0;
my %query_filter = (
- 'transport_maps' => '(&(objectClass=suseMailTransport)(suseMailTransportDestination=%s))',
- 'smtp_tls_per_site' => '(&(objectClass=suseMailTransport)(suseMailTransportDestination=%s))',
- 'access' => '(&(objectClass=suseMailAccess)(suseMailClient=%s))',
- 'local_recipient_maps'=> '(&(objectClass=suseMailRecipient)(|(suseMailAcceptAddress=%s)(uid=%s)))',
- 'alias_maps' => '(&(objectClass=suseMailRecipient)(cn=%s))',
- 'alias_maps_member' => '(&(objectClass=suseMailRecipient)(cn=%s)(suseDeliveryToMember=yes))',
- 'mynetworks' => '(&(objectClass=suseMailMyNetworks)(suseMailClient=%s))',
- 'masquerade_domains' => '(&(objectClass=suseMailDomain)(zoneName=%s)(suseMailDomainMasquerading=yes))',
- 'mydestination' => '(&(objectClass=suseMailDomain)(zoneName=%s)(relativeDomainName=@)(!(suseMailDomainType=virtual)))',
- 'virtual_alias_maps' => '(&(objectClass=suseMailDomain)(zoneName=%s)(relativeDomainName=@)(suseMailDomainType=virtual))',
- 'canonical_maps' => '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=both))',
- 'recipient_canonical_maps' => '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=recipient))',
- 'sender_canonical_maps' => '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=sender))'
+ 'access' => '(&(objectClass=suseMailAccess)(suseMailClient=%s))',
+ 'alias_maps' => '(&(objectClass=suseMailTable)(tableKey=%s))',
+ 'alias_maps_folder' => '(&(objectClass=suseMailRecipient)(cn=%s)(suseDeliveryToFolder=yes))',
+ 'masquerade_domains' => '(&(objectClass=suseMailDomain)(zoneName=%s)(suseMailDomainMasquerading=yes))',
+ 'mydestination' => '(&(objectClass=suseMailDomain)(zoneName=%s)(relativeDomainName=@)(!(suseMailDomainType=virtual)))',
+ 'mynetworks' => '(&(objectClass=suseMailMyNetworks)(suseMailClient=%s))',
+ 'smtp_tls_per_site' => '(&(objectClass=suseMailTransport)(suseMailTransportDestination=%s))',
+ 'transport_maps' => '(&(objectClass=suseMailTransport)(suseMailTransportDestination=%s))',
+ 'user_recipient_maps' => '(&(objectClass=suseMailRecipient)(suseMailAcceptAddress=%s))',
+ 'valias_maps_both' => '(&(objectClass=suseMailRecipient)(suseMailAcceptAddress=%s)(suseDeliveryToMember=yes)(suseDeliveryToFolder=yes))',
+ 'valias_maps_member' => '(&(objectClass=suseMailRecipient)(suseMailAcceptAddress=%s)(suseDeliveryToMember=yes)(!(suseDeliveryToFolder=yes)))',
+ 'valias_maps_folder' => '(&(objectClass=suseMailRecipient)(suseMailAcceptAddress=%s)(!(suseDeliveryToMember=yes))(suseDeliveryToFolder=yes))',
+ 'valias_maps_forward' => '(&(objectClass=suseMailRecipient)(suseMailAcceptAddress=%s)(!(suseDeliveryToMember=yes))(!(suseDeliveryToFolder=yes)))',
+ 'virtual_alias_domains' => '(&(objectClass=suseMailDomain)(zoneName=%s)(relativeDomainName=@)(suseMailDomainType=virtual))',
+ 'canonical_maps' => '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=both))',
+ 'recipient_canonical_maps'=> '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=recipient))',
+ 'sender_canonical_maps' => '(&(objectClass=suseCanonicalTable)(tableKey=%s)(valueType=sender))'
);
my %result_attribute = (
- 'transport_maps' => 'suseMailTransportNexthop',
- 'smtp_tls_per_site' => 'suseTLSPerSiteMode',
- 'access' => 'suseMailAction',
- 'local_recipient_maps'=> 'uid',
- 'alias_maps' => 'suseMailCommand,suseMailForwardAddress',
- 'alias_maps_member' => 'uid,suseMailForwardAddress',
- 'mynetworks' => 'suseMailClient',
- 'masquerade_domains' => 'zoneName',
- 'mydestination' => 'zoneName',
- 'virtual_alias_maps' => 'zoneName',
- 'canonical_maps' => 'tableValue',
- 'recipient_canonical_maps' => 'tableValue',
- 'sender_canonical_maps' => 'tableValue'
+ 'access' => 'suseMailAction',
+ 'alias_maps' => 'tableValue',
+ 'alias_maps_folder' => 'suseMailCommand',
+ 'masquerade_domains' => 'zoneName',
+ 'mydestination' => 'zoneName',
+ 'mynetworks' => 'suseMailClient',
+ 'transport_maps' => 'suseMailTransportNexthop',
+ 'valias_maps_both' => 'suseMailForwardAddress,cn,uid',
+ 'valias_maps_member' => 'suseMailForwardAddress,uid',
+ 'valias_maps_folder' => 'suseMailForwardAddress,cn',
+ 'valias_maps_forward' => 'suseMailForwardAddress',
+ 'virtual_alias_domains' => 'zoneName',
+ 'canonical_maps' => 'tableValue',
+ 'recipient_canonical_maps'=> 'tableValue',
+ 'smtp_tls_per_site' => 'suseMailTransportNexthop',
+ 'sender_canonical_maps' => 'tableValue',
+ 'user_recipient_maps' => 'uid,suseMailForwardAddress'
);
my %scope = (
- 'transport_maps' => 'one',
- 'smtp_tls_per_site' => 'one',
- 'access' => 'one',
- 'local_recipient_maps'=> 'one',
- 'alias_maps' => 'one',
- 'alias_maps_member' => 'one',
- 'mynetworks' => 'one',
- 'masquerade_domains' => 'sub',
- 'mydestination' => 'sub',
- 'virtual_alias_maps' => 'sub',
- 'canonical_maps' => 'one',
- 'recipient_canonical_maps' => 'one',
- 'sender_canonical_maps' => 'one'
+ 'access' => 'one',
+ 'alias_maps' => 'one',
+ 'alias_maps_folder' => 'one',
+ 'masquerade_domains' => 'sub',
+ 'mydestination' => 'sub',
+ 'mynetworks' => 'one',
+ 'transport_maps' => 'one',
+ 'smtp_tls_per_site' => 'one',
+ 'valias_maps_both' => 'one',
+ 'valias_maps_member' => 'one',
+ 'valias_maps_folder' => 'one',
+ 'valias_maps_forward' => 'one',
+ 'virtual_alias_domains' => 'sub',
+ 'canonical_maps' => 'one',
+ 'recipient_canonical_maps'=> 'one',
+ 'sender_canonical_maps' => 'one',
+ 'user_recipient_maps' => 'one'
);
my %base = (
- 'transport_maps' => $ldapMap->{'mail_config_dn'},
- 'smtp_tls_per_site' => $ldapMap->{'mail_config_dn'},
- 'access' => $ldapMap->{'mail_config_dn'},
- 'local_recipient_maps'=> $ldapMap->{'user_config_dn'},
- 'alias_maps' => $ldapMap->{'group_config_dn'},
- 'alias_maps_member' => $ldapMap->{'group_config_dn'},
- 'mynetworks' => $ldapMap->{'mail_config_dn'},
- 'masquerade_domains' => $ldapMap->{'dns_config_dn'},
- 'mydestination' => $ldapMap->{'dns_config_dn'},
- 'virtual_alias_maps' => $ldapMap->{'dns_config_dn'},
- 'canonical_maps' => $ldapMap->{'mail_config_dn'},
- 'recipient_canonical_maps' => $ldapMap->{'mail_config_dn'},
- 'sender_canonical_maps' => $ldapMap->{'mail_config_dn'}
+ 'access' => $ldapMap->{'mail_config_dn'},
+ 'alias_maps' => 'ou=Aliases,'.$ldapMap->{'mail_config_dn'},
+ 'alias_maps_folder' => $ldapMap->{'group_config_dn'},
+ 'masquerade_domains' => $ldapMap->{'dns_config_dn'},
+ 'mydestination' => $ldapMap->{'dns_config_dn'},
+ 'mynetworks' => $ldapMap->{'mail_config_dn'},
+ 'smtp_tls_per_site' => $ldapMap->{'mail_config_dn'},
+ 'transport_maps' => $ldapMap->{'mail_config_dn'},
+ 'valias_maps_both' => $ldapMap->{'group_config_dn'},
+ 'valias_maps_member' => $ldapMap->{'group_config_dn'},
+ 'valias_maps_folder' => $ldapMap->{'group_config_dn'},
+ 'valias_maps_forward' => $ldapMap->{'group_config_dn'},
+ 'virtual_alias_domains' => $ldapMap->{'dns_config_dn'},
+ 'canonical_maps' => 'ou=Canonical,'.$ldapMap->{'mail_config_dn'},
+ 'recipient_canonical_maps'=> 'ou=Canonical,'.$ldapMap->{'mail_config_dn'},
+ 'sender_canonical_maps' => 'ou=Canonical,'.$ldapMap->{'mail_config_dn'},
+ 'user_recipient_maps' => $ldapMap->{'user_config_dn'}
);
my %special_result_attribute = (
- 'alias_maps_member' => 'member',
+ 'valias_maps_both' => 'member',
+ 'valias_maps_member' => 'member'
);
+ my %terminal_result_attribute = (
+ 'valias_maps_both' => 'uid',
+ 'valias_maps_member' => 'uid'
+ );
+if( ! defined $result_attribute{$config} )
+{
+ print STDERR "BAJAVAN $config";
+ return;
+}
#First we read the whool main.cf configuration
my $LDAPCF = SCR->Read('.mail.ldaptable',$config);
@@ -3125,6 +3288,10 @@
{
$LDAPCF->{'special_result_attribute'} = $special_result_attribute{$config};
}
+ if(defined $terminal_result_attribute{$config})
+ {
+ $LDAPCF->{'terminal_result_attribute'} = $terminal_result_attribute{$config};
+ }
$LDAPCF->{'scope'} = $scope{$config};
SCR->Write('.mail.ldaptable',[$config,$LDAPCF]);
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_complex.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_complex.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_complex.ycp Wed Jan 27 15:40:56 2010
@@ -127,6 +127,8 @@
*/
symbol WriteDialog()
{
+ Wizard::CreateDialog ();
+ Wizard::SetDesktopIcon("mail");
Wizard::RestoreHelp(HELPS["write"]:"");
boolean ret = MailServer::Write();
return ret ? `next : `abort;
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_dialogs.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_dialogs.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_dialogs.ycp Wed Jan 27 15:40:56 2010
@@ -658,7 +658,7 @@
term MailPreventionDialog(string CID, string CIDRBL)
{
- y2milestone("--Start MailTransportsDialog ---");
+ y2milestone("--Start MailPreventionDialog ---");
list<term> AccessItems= [];
list<term> RBLItems = [];
string BasicProtection = (string)MailServer::MailPrevention["BasicProtection"]:"";
@@ -666,13 +666,12 @@
list<map<string,string> > AccessList = (list<map<string,string> >) MailServer::MailPrevention["AccessList"]:[];
boolean VirusScanning = (boolean)MailServer::MailPrevention["VirusScanning"]:false;
boolean SpamLearning = (boolean)MailServer::MailPrevention["SpamLearning"]:false;
- integer VSCount = (integer)MailServer::MailPrevention["VSCount"]:10;
+ integer VSCount = (integer)MailServer::MailPrevention["VSCount"]:5;
boolean BasicProtectionOff = false;
boolean BasicProtectionMedium = false;
boolean BasicProtectionHard = true;
-y2milestone("---- MailPrevention %1",MailServer::MailPrevention);
-y2milestone("---- VSCount %1",VSCount);
+ y2milestone("---- VSCount %1",VSCount);
if(BasicProtection == "off"){
BasicProtectionOff = true;
@@ -701,9 +700,9 @@
SpamL = `Left(`CheckBox (`id(`SpamLearning), `opt(`notify), _("Configure Spam Learning Extension"), SpamLearning));
}
term content = `VBox (
- `Left(`CheckBox (`id(`VirusScanning), `opt(`notify), _("Start Virus Scanner AMAVIS"), VirusScanning)),
+ `Left(`CheckBox (`id(`VirusScanning), `opt(`notify), _("Start Virus Scanner AMAVIS"), VirusScanning)),
`VSpacing (1),
- `Left(`IntField (`id(`VSCount), `opt(`notify), _("Count of Virsus Scanner Process"), 1,50,VSCount)),
+ `Left(`IntField (`id(`VSCount), `opt(`notify), _("Count of Virsus Scanner Process"), 1,50,VSCount)),
`VSpacing (1),
SpamL,
`VSpacing (1),
@@ -1349,6 +1348,10 @@
ret = event["ID"]:nil;
EventType = event["EventType"]:nil;
+y2milestone("event %1",event);
+y2milestone("event %1",ret);
+y2milestone("FocusedContent %1",FocusedContent);
+
if(ret == `cancel || ret == `abort ) {
if(ReallyAbort()) break;
else continue;
@@ -1427,7 +1430,7 @@
if( ret == `SpamLearning ) {
MailServer::MailPrevention["Changed"] = true;
UI::ChangeWidget(`id(`VirusScanning), `Value, true);
- UI::ChangeWidget(`id(`VSCount), `Value, 10);
+ UI::ChangeWidget(`id(`VSCount), `Value, MailServer::MailPrevention["VSCount"]:"5");
continue;
}
if(ret == `RBLAdd) {
@@ -1655,9 +1658,6 @@
focus_changed = true;
FocusedContent ="MailLocalDomains";
}
-y2milestone("event %1",event);
-y2milestone("event %1",ret);
-y2milestone("FocusedContent %1",FocusedContent);
if(ret != `cancel && ret != `abort && ret != `next ) {
Wizard::SetContents(title, content ,helptext, false, true);
Wizard::SetDesktopIcon("mail");
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_helps.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_helps.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/mail-server_helps.ycp Wed Jan 27 15:40:56 2010
@@ -18,7 +18,7 @@
/* AuthorizingDialog dialog help 1/2 */
"AuthorizingDialog" : _("<p><b><big>Administrator Authorization</big></b><br>
-To use the YaST2 mail server component, your system must use LDAP
+To use the YaST mail server component, your system must use LDAP
as a repository for the user and group accounts and for the DNS services.<br>
Some of the mail server settings will be stored in the LDAP repository, too.<br></p>
"),
@@ -145,7 +145,7 @@
<br></p>
") +
/* MailLocalDomains dialog help 2/3 */
-_("<p>Note: You can create and set up the domains with the YaST2
+_("<p>Note: You can create and set up the domains with the YaST
DNS server module. In this module, you only can set the properties
concerning the mail server.
</p>
@@ -155,7 +155,7 @@
You can define virtual and local domains. In virtual domains, only users
assigned a mail address in the domain can receive mail.
In local domains, all user can get mails. Assign virtual mail
-addresses in the YaST2 user module.
+addresses in the YaST user module.
</p>
"),
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/suse-mailserver.schema
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/suse-mailserver.schema (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/suse-mailserver.schema Wed Jan 27 15:40:56 2010
@@ -140,6 +140,12 @@
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16}
SINGLE-VALUE )
+attributetype ( MailAT:22 NAME ( 'suseDeliveryToFolder' 'deliveryToFolder' )
+ DESC 'Shows if the member of the group the mails will get'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} )
+
##
## Objectclass Section
##
@@ -147,7 +153,7 @@
DESC 'represents an entry which is able to receive mail'
MAY ( suseMailAcceptAddress $ suseMailAlias $
suseVirtualAddress $ suseMailCommand $
- suseMailForwardAddress $ suseDeliveryToMember $ suseImapQuota) )
+ suseMailForwardAddress $ suseDeliveryToMember $ suseImapQuota $ suseDeliveryToFolder ) )
objectclass ( MailOC:2 NAME ( 'suseMailDomain' 'mailDomain' ) SUP top AUXILIARY
DESC 'To configure behaviour of mail domains'
@@ -172,8 +178,8 @@
DESC 'To build TLS per side maps'
MUST ( suseTLSPerSiteMode $ suseTLSPerSitePeer ) )
-objectclass ( MailOC:7 NAME ( 'suseCanonicalTable' 'CanonicalTable' ) SUP top STRUCTURAL
- DESC 'To build canonical maps'
+objectclass ( MailOC:7 NAME ( 'suseMailTable' 'MailTable' ) SUP top STRUCTURAL
+ DESC 'To build Mail Tables'
MUST ( tableKey $ tableValue )
MAY ( valueType $ description ) )
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/ui.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/ui.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/ui.ycp Wed Jan 27 15:40:56 2010
@@ -91,7 +91,7 @@
// bb) read English
// TODO: look at exim and mention it in the popup
// Translators: error popup
- Popup::Error (_("YaST2 can only configure Postfix and Sendmail,
+ Popup::Error (_("YaST can only configure Postfix and Sendmail,
but neither of them is installed."));
}
}
@@ -342,6 +342,10 @@
define symbol OutgoingDialog () ``{
Wizard::SetScreenShotName ("mail-21-outgoing");
+ boolean TLSnone = ( Mail::smtp_use_TLS == "no" );
+ boolean TLSuse = ( Mail::smtp_use_TLS == "yes" );
+ boolean TLSmust = ( Mail::smtp_use_TLS == "must" );
+
// what buttons can be used to leave this dialog
//(except the std wizarding ones)
list<symbol> buttons = [];
@@ -357,7 +361,13 @@
`VBox (
WJ_MakeWidget (`outgoing_mail_server),
// TLS
- `CheckBox( `id(`tls), _("The server use &TLS"), Mail::smtp_use_TLS ),
+ `RadioButtonGroup(`id(`TLS), _("The server use &TLS")
+ `HBox(
+ `Left(`RadioButton(`id("no"), _("No"), TLSnone)),
+ `Left(`RadioButton(`id("yes"), _("Use"), TLSuse)),
+ `Left(`RadioButton(`id("must"), _("Enforce"),TLSmust))
+ )
+ ),
// Translators: button
// TODO ...
`PushButton (`id(`outgoing_details), _("&Masquerading")),
@@ -479,6 +489,9 @@
`HSpacing (1),
// pushbutton
`Bottom (`PushButton (`id (`downloading), `opt (`key_F7), _("&Details...")))
+ ),
+ `HBox (
+ `Left(`ComboBox (`id (`fm_start),_("Start &fetchmail"),["manual","daemon"]))
)
);
// frame label: mail downloading (fetchmail)
@@ -533,6 +546,7 @@
WJ_GetWidget (`delivery_mode);
// initialize the widget (set the current value)
CWMFirewallInterfaces::OpenFirewallInit (fw_cwm_widget, "");
+ UI::ChangeWidget(`id(`fm_start),`Value, Mail::fetchmail_mode);
// nothing entered in the dowloading items - don't save them
boolean fm_empty = true;
@@ -557,9 +571,9 @@
}
else if (ret == `next || contains (buttons, ret))
{
+ Mail::fetchmail_mode = (string) UI::QueryWidget(`id (`fm_start), `Value);
// input validation
// For consistency, all querywidgets are done here
-
if (WJ_Validate (widgets))
{
fm_empty =
Modified: branches/SuSE-Code-11-SP1-Branch/mail/src/widgets.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/src/widgets.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/src/widgets.ycp Wed Jan 27 15:40:56 2010
@@ -796,7 +796,7 @@
"label": _("&Delivery Mode"),
"choices": Choices_delivery_mode,
// help text
- "help": _("<p>The <b>delivery mode</b> is usually <b>procmail</b>, unless you do not forward root's mail or want to access the mail via IMAP.</p>"),
+ "help": _("<p>The <b>delivery mode</b> is usually <b>Directly</b>, unless you do not forward root's mail or want to access the mail via IMAP.</p>"),
"get": Get_delivery_mode,
"set": Set_delivery_mode,
"validate": Validate_delivery_mode,
Modified: branches/SuSE-Code-11-SP1-Branch/mail/users-plugin/users_plugin_mail_groups.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/users-plugin/users_plugin_mail_groups.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/users-plugin/users_plugin_mail_groups.ycp Wed Jan 27 15:40:56 2010
@@ -145,17 +145,17 @@
list<term> result = [];
integer i = 0;
- if( is(data["suseMailForwardAaddress"]:(any)"", string)
- && size (data["suseMailForwardAaddress"]:"") > 0 )
+ if( is(data["suseMailForwardAddress"]:(any)"", string)
+ && size (data["suseMailForwardAddress"]:"") > 0 )
{
result = [`item (`id (i),
- data["suseMailForwardAaddress"]:"")];
+ data["suseMailForwardAddress"]:"")];
// transforming to list
- data["suseMailForwardAaddress"] = [data["suseMailForwardAaddress"]:""];
+ data["suseMailForwardAddress"] = [data["suseMailForwardAddress"]:""];
}
- else if ( is(data["suseMailForwardAaddress"]:(any)[], list) )
+ else if ( is(data["suseMailForwardAddress"]:(any)[], list) )
{
- foreach (string element, data["suseMailForwardAaddress"]:[], ``{
+ foreach (string element, data["suseMailForwardAddress"]:[], ``{
result = add (result, `item (`id (i), element));
i = i + 1;
});
@@ -169,12 +169,11 @@
string what = config["what"]:"user";
string action = data["what"]:"";
- if( data["suseMailCommand"]:"" != "" ) {
- sharedfolder = true;
- }
if( data["suseDeliveryToMember"]:"no" == "yes" ) {
deliverytomember = true;
- sharedfolder = false;
+ }
+ if( data["suseDeliveryToFolder"]:"no" == "yes" ) {
+ sharedfolder = true;
}
map<string, any> tmp_data = $[];
@@ -334,13 +333,13 @@
{
if (check_mail_address (emailName))
{
- if (contains (data["suseMailForwardAaddress"]:[], emailName))
+ if (contains (data["suseMailForwardAddress"]:[], emailName))
{
Popup::Error(_("Entry already exists."));
}
else
{
- data["suseMailForwardAaddress"] = add (data["suseMailForwardAaddress"]:[],
+ data["suseMailForwardAddress"] = add (data["suseMailForwardAddress"]:[],
emailName);
UI::ChangeWidget(`id(`table), `Items, getEMAILList ());
UI::ChangeWidget(`id(`id_emailname), `Value, "");
@@ -355,24 +354,24 @@
if (ret == `deleteEmail)
{
integer id = (integer) UI::QueryWidget (`id (`table), `CurrentItem);
- data["suseMailForwardAaddress"] = remove (data["suseMailForwardAaddress"]:[],
+ data["suseMailForwardAddress"] = remove (data["suseMailForwardAddress"]:[],
id);
UI::ChangeWidget(`id(`table), `Items, getEMAILList ());
}
if (ret == `editEmail)
{
integer id = (integer) UI::QueryWidget (`id (`table), `CurrentItem);
- string oldEMAIL = (string)((list) data["suseMailForwardAaddress"]:[])[id]:"";
+ string oldEMAIL = (string)((list) data["suseMailForwardAddress"]:[])[id]:"";
string newEMAIL = editEMAIL (oldEMAIL);
- if (contains (data["suseMailForwardAaddress"]:[], newEMAIL))
+ if (contains (data["suseMailForwardAddress"]:[], newEMAIL))
{
Popup::Error(_("Entry already exists."));
}
else
{
- data["suseMailForwardAaddress"] = remove (data["suseMailForwardAaddress"]:[], id);
- data["suseMailForwardAaddress"] = add (data["suseMailForwardAaddress"]:[], newEMAIL);
+ data["suseMailForwardAddress"] = remove (data["suseMailForwardAddress"]:[], id);
+ data["suseMailForwardAddress"] = add (data["suseMailForwardAddress"]:[], newEMAIL);
}
UI::ChangeWidget(`id(`table), `Items, getEMAILList ());
}
@@ -385,13 +384,12 @@
}
// We put it everytime into the LDAP, and the ldap filter control if it is visible
data["suseMailCommand"] = "\"|/usr/bin/formail -I \\\"From \\\" |/usr/lib/cyrus/bin/deliver -r "+data["cn"]:""+" -a cyrus -m "+data["cn"]:""+"\"";
-// if( (boolean) UI::QueryWidget (`id (`sharedfolder), `Value)) {
-// data["suseMailCommand"] = "\"|/usr/bin/formail -I \\\"From \\\" |/usr/lib/cyrus/bin/deliver -r "+data["cn"]:""+" -a cyrus -m "+data["cn"]:""+"\"";
-// } else {
-// if( data["suseMailCommand"]:"" != "" ) {
-// data = remove (data, "suseMailCommand");
-// }
-// }
+ if( (boolean) UI::QueryWidget (`id (`sharedfolder), `Value)) {
+ data["suseDeliveryToFolder"] = "yes";
+ } else {
+ data["suseDeliveryToFolder"] = "no";
+ }
+
string err = UsersPluginMail::Check ( config, (map<string,any>) union (data, tmp_data));
if (err != "")
@@ -407,10 +405,10 @@
data["plugins"] = add (data["plugins"]:[],
"UsersPluginMail");
}
- if( size(data["suseMailForwardAaddress"]:[]) == 1 ) {
- data["suseMailForwardAaddress"] = ((list)data["suseMailForwardAaddress"]:[])[0]:"";
- } else if( size(data["suseMailForwardAaddress"]:[]) == 0 ) {
- remove(data,"suseMailForwardAaddress");
+ if( size(data["suseMailForwardAddress"]:[]) == 1 ) {
+ data["suseMailForwardAddress"] = ((list)data["suseMailForwardAddress"]:[])[0]:"";
+ } else if( size(data["suseMailForwardAddress"]:[]) == 0 ) {
+ remove(data,"suseMailForwardAddress");
}
if(data["localdeliverytype"]:"local" == "cyrus" ) {
Modified: branches/SuSE-Code-11-SP1-Branch/mail/yast2-mail.spec.in
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/mail/…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/mail/yast2-mail.spec.in (original)
+++ branches/SuSE-Code-11-SP1-Branch/mail/yast2-mail.spec.in Wed Jan 27 15:40:56 2010
@@ -1,6 +1,8 @@
@HEADER-COMMENT@
@HEADER@
+Group: System/YaST
+License: GPL v2 or later
BuildRequires: perl-XML-Writer update-desktop-files yast2-devtools yast2-testsuite
BuildRequires: yast2-perl-bindings yast2-ldap-server yast2-users yast2-network
BuildRequires: perl-NetxAP
@@ -12,7 +14,6 @@
Requires: yast2-users
Requires: yast2-ldap
Requires: perl-NetxAP
-
Provides: yast2-config-network:/usr/lib/YaST2/clients/lan_sendmail.ycp
Provides: yast2-config-sendmail yast2-config-sendmail-devel
Obsoletes: yast2-config-sendmail yast2-config-sendmail-devel
@@ -24,23 +25,22 @@
Obsoletes: yast2-trans-mail <= %{version}
Provides: yast2-mail-server = %{version}
Obsoletes: yast2-mail-server <= %{version}
-
Conflicts: aaa_base < 10.3
-
-BuildArchitectures: noarch
-
-Summary: Configuration of mail
+BuildArch: noarch
+Summary: YaST2 - Mail Configuration
%description
--
+The YaST2 component for mail configuration. It handles Postfix, Cyrus,
+Amavis and Fetchmail.
%package plugins
-Summary: Plugins for the YaST2 users modul for enterprise mail server configuration.
+Summary: YaST2 - Users/Group Plugins for the mail delivery configuration
Group: System/YaST
Requires: perl-NetxAP
%description plugins
--
+Plugins for the YaST2 users modul for enterprise mail server
+configuration.
@PREP@
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60557 - /branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc
by aschnell@svn.opensuse.org 27 Jan '10
by aschnell@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: aschnell
Date: Wed Jan 27 15:35:19 2010
New Revision: 60557
URL: http://svn.opensuse.org/viewcvs/yast?rev=60557&view=rev
Log:
- and avoid IMSM popup
Modified:
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc Wed Jan 27 15:35:19 2010
@@ -516,6 +516,8 @@
y2mil(" md raids:" + mdDevs);
if( !mdDevs.empty())
{
+ if (getImsmDriver() == IMSM_UNDECIDED)
+ {
string txt = sformat(
// popup text %1$s is replaced by disk name e.g. /dev/hda
_("You are running on the Intel(R) Matrix Storage Manager compatible platform.\n"
@@ -538,7 +540,12 @@
ret = false;
setImsmDriver(IMSM_DMRAID);
}
- }
+ }
+ else
+ {
+ ret = getImsmDriver() == IMSM_MDADM;
+ }
+ }
else
{
/* No mdDevs */
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60556 - in /trunk/network/src: installation/inst_hostname.ycp lan/complex.ycp lan/help.ycp modules/DNS.ycp modules/Lan.ycp services/dns.ycp
by kmachalkova@svn.opensuse.org 27 Jan '10
by kmachalkova@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: kmachalkova
Date: Wed Jan 27 15:21:30 2010
New Revision: 60556
URL: http://svn.opensuse.org/viewcvs/yast?rev=60556&view=rev
Log:
Fixes of bnc#439235, bnc#510228 & co.
(from SLE11 SP1)
Modified:
trunk/network/src/installation/inst_hostname.ycp
trunk/network/src/lan/complex.ycp
trunk/network/src/lan/help.ycp
trunk/network/src/modules/DNS.ycp
trunk/network/src/modules/Lan.ycp
trunk/network/src/services/dns.ycp
Modified: trunk/network/src/installation/inst_hostname.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/installation/inst_ho…
==============================================================================
--- trunk/network/src/installation/inst_hostname.ycp (original)
+++ trunk/network/src/installation/inst_hostname.ycp Wed Jan 27 15:21:30 2010
@@ -59,7 +59,10 @@
{
// do not let Lan override us, #152218
DNS::proposal_valid = true;
- DNS::Write (); // handles NetworkConfig too
+
+ // delay writing, write along with the rest of network configuration
+ // in lan_proposal
+ // DNS::Write ();
}
return ret;
Modified: trunk/network/src/lan/complex.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/lan/complex.ycp?rev=…
==============================================================================
--- trunk/network/src/lan/complex.ycp (original)
+++ trunk/network/src/lan/complex.ycp Wed Jan 27 15:21:30 2010
@@ -38,16 +38,6 @@
/**
- * Return a modification status
- * @return true if data was modified
- */
-define boolean Modified() ``{
- boolean ret = LanItems::Modified() || DNS::modified || Routing::Modified() ||
- NetworkConfig::Modified();
- return ret;
-}
-
-/**
* Commit changes to internal structures
* @return always `next
*/
@@ -60,9 +50,9 @@
* Display finished popup
* @return dialog result
*/
-define symbol FinishDialog() ``{
+/*define symbol FinishDialog() ``{
return FinishPopup(Modified(), "lan", "", "mail", ["permanent"]);
-}
+}*/
/**
* Read settings dialog
@@ -101,7 +91,7 @@
define symbol WriteDialog() ``{
ScreenName("lan-write");
- if(!Modified()) return `next;
+ if(!Lan::Modified()) return `next;
LanItems::SetModified();
Wizard::RestoreHelp(help["write"]:"");
Modified: trunk/network/src/lan/help.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/lan/help.ycp?rev=605…
==============================================================================
--- trunk/network/src/lan/help.ycp (original)
+++ trunk/network/src/lan/help.ycp Wed Jan 27 15:21:30 2010
@@ -94,12 +94,11 @@
different hostnames.</p> "),
"write_hostname":
-_("<p>Your hostname will be written to <tt>/etc/hosts</tt> and will be
-resolvable as <tt>127.0.0.2</tt> IP address. To disable this modification,
-uncheck <b>Write Hostname to /etc/hosts</b> box. In that case your
-hostname will not be resolvable without an active network.
-</p>
-"),
+_("<p><b>Assign Hostname to Loopback IP</b> associates your hostname with
+<tt>127.0.0.2</tt> (loopback) IP address in <tt>/etc/hosts</tt>. This is an
+useful option if you want to have the hostname resolvable at all times, even
+without active network. In all other cases, use it carefully, especially
+if this computer provides some network services.</p>"),
"searchlist_s":
_("<p>Enter the name servers and domain search list for resolving
Modified: trunk/network/src/modules/DNS.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/modules/DNS.ycp?rev=…
==============================================================================
--- trunk/network/src/modules/DNS.ycp (original)
+++ trunk/network/src/modules/DNS.ycp Wed Jan 27 15:21:30 2010
@@ -70,7 +70,7 @@
if (ns == "" || ns == nil)
return false;
nameservers = [ ns ];
- modified = true;
+ //modified = true;
return true;
}
@@ -85,7 +85,7 @@
return false;
hostname = hn;
domain = dn;
- modified = true;
+ //modified = true;
return true;
}
Modified: trunk/network/src/modules/Lan.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/modules/Lan.ycp?rev=…
==============================================================================
--- trunk/network/src/modules/Lan.ycp (original)
+++ trunk/network/src/modules/Lan.ycp Wed Jan 27 15:21:30 2010
@@ -89,7 +89,17 @@
/*------------------*/
/* GLOBAL FUNCTIONS */
+/*------------------*/
+/**
+ * Return a modification status
+ * @return true if data was modified
+ */
+global boolean Modified() {
+ boolean ret = LanItems::Modified() || DNS::modified || Routing::Modified() ||
+ NetworkConfig::Modified();
+ return ret;
+}
// function for use from autoinstallation (Fate #301032)
global define boolean isAnyInterfaceDown(){
@@ -344,8 +354,10 @@
y2milestone("Writing configuration");
- /* Stop the detection */
- if(!LanItems::modified) {
+ // Query modified flag in all components, not just LanItems - DNS,
+ // Routing, NetworkConfig too in order not to discard changes made
+ // outside LanItems (bnc#439235)
+ if(!Modified()) {
y2milestone("No changes to network setup -> nothing to write");
return true;
}
@@ -396,7 +408,8 @@
if(Abort()) return false;
/* Progress step 3 - multiple devices may be present, really plural*/
ProgressNextStage(_("Writing device configuration..."));
- if (!Mode::autoinst()) LanItems::WriteUdevDriverRules();
+ if (!Mode::autoinst())
+ LanItems::WriteUdevDriverRules();
NetworkInterfaces::Write("netcard");
// WriteDevices();
sleep(sl);
Modified: trunk/network/src/services/dns.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/services/dns.ycp?rev…
==============================================================================
--- trunk/network/src/services/dns.ycp (original)
+++ trunk/network/src/services/dns.ycp Wed Jan 27 15:21:30 2010
@@ -47,6 +47,11 @@
boolean resolver_modifiable = false;
/**
+ * original setup, used to determine whether data have been modified
+ */
+map settings_orig = $[];
+
+/**
* CWM buffer for both dialogs. Note that NAMESERVERS and SEARCHLIST
* are lists and their widgets are suffixed.
*/
@@ -87,6 +92,8 @@
settings["NAMESERVER_2"] = DNS::nameservers[1]:"";
settings["NAMESERVER_3"] = DNS::nameservers[2]:"";
+ settings_orig = settings;
+
return settings;
}
@@ -94,6 +101,7 @@
* @param settings map of settings to be stored to DNS::
*/
define void StoreSettings (map settings) {
+
list<string> nameservers = [
settings["NAMESERVER_1"]:"",
settings["NAMESERVER_2"]:"",
@@ -110,8 +118,8 @@
DNS::write_hostname = settings["WRITE_HOSTNAME"]:true;
/* update modified flag */
- DNS::modified = true;
- y2milestone("modified DNS");
+ DNS::modified = DNS::modified || (settings != settings_orig);
+ y2milestone("Modified DNS: %1", DNS::modified );
}
/**
@@ -332,6 +340,7 @@
has_dhcp = Lan::AnyDHCPDevice ();
hn_settings = InitSettings ();
+
foreach(string key, (list<string>)Map::Keys(hn_settings),{
InitHnWidget(key);
});
@@ -401,7 +410,7 @@
"WRITE_HOSTNAME": $[
"widget": `checkbox,
/* checkbox label */
- "label": _("&Write Hostname to /etc/hosts"),
+ "label": _("&Assign Hostname to Loopback IP"),
"opt": [],
// help
"help": help["write_hostname"]:"",
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60555 - in /branches/SuSE-Code-11-SP1-Branch/storage: libstorage/src/ package/ storage/src/modules/
by aschnell@svn.opensuse.org 27 Jan '10
by aschnell@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: aschnell
Date: Wed Jan 27 15:12:50 2010
New Revision: 60555
URL: http://svn.opensuse.org/viewcvs/yast?rev=60555&view=rev
Log:
- allow to set driver for IMSM without callback (bnc #574270)
Modified:
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.cc
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.h
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.h
branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/StorageInterface.h
branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes
branches/SuSE-Code-11-SP1-Branch/storage/storage/src/modules/Storage.ycp
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.cc
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.cc (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.cc Wed Jan 27 15:12:50 2010
@@ -2319,8 +2319,6 @@
bool MdPartCo::active = false;
-bool MdPartCo::handlingMd = false;
-
void MdPartCo::logData( const string& Dir ) {}
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.h
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.h (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/MdPartCo.h Wed Jan 27 15:12:50 2010
@@ -58,7 +58,6 @@
virtual ~MdPartCo();
-
unsigned long long sizeK() const { return size_k; }
const string& labelName() const { return disk->labelName(); }
const string& udevPath() const { return udev_path; }
@@ -171,10 +170,6 @@
/* Return true if there is no Filesystem on device (it can contain partition table). */
static bool hasFileSystem(const string& name);
-
- static void setHandlingDev(bool val) { handlingMd = val; }
- static bool isHandlingDev() { return handlingMd; }
-
static bool isImsmPlatform();
static bool matchRegex( const string& dev );
@@ -390,7 +385,7 @@
mutable storage::MdPartCoInfo info;
static bool active;
- static bool handlingMd;
+
};
}
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.cc Wed Jan 27 15:12:50 2010
@@ -135,6 +135,8 @@
fstab = NULL;
raidtab = NULL;
+ imsm_driver = IMSM_UNDECIDED;
+
logSystemInfo();
}
@@ -244,7 +246,7 @@
DmraidCo::activate( true );
waitForDevice();
//If user said No then this is the way it was before.
- if( MdPartCo::isHandlingDev() == false )
+ if (getImsmDriver() != IMSM_MDADM)
{
MdPartCo::activate(true, tmpDir() );
waitForDevice();
@@ -529,11 +531,12 @@
if( yesnoPopupCb(txt) )
{
ret = true;
- MdPartCo::setHandlingDev(true);
+ setImsmDriver(IMSM_MDADM);
}
else
{
ret = false;
+ setImsmDriver(IMSM_DMRAID);
}
}
else
@@ -6547,7 +6550,7 @@
y2mil("val:" << val);
if (val)
{
- if( MdPartCo::isHandlingDev() == true)
+ if (getImsmDriver() == IMSM_MDADM)
{
MdPartCo::activate(val, tmpDir());
Dm::activate(val);
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.h
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.h (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/Storage.h Wed Jan 27 15:12:50 2010
@@ -476,11 +476,13 @@
int computeMdSize(MdType md_type, list<string> devices,
unsigned long long& sizeK);
+ void setImsmDriver(ImsmDriver val) { imsm_driver = val; }
+ ImsmDriver getImsmDriver() const { return imsm_driver; }
+
int getMdPartCoInfo( const string& name, MdPartCoInfo& info);
int getContMdPartCoInfo( const string& name, ContainerInfo& cinfo,
MdPartCoInfo& info);
int getMdPartCoStateInfo(const string& name, MdPartCoStateInfo& info);
- bool useMdForImsm() { return MdPartCo::isHandlingDev(); }
int removeMdPartCo(const string& devName, bool destroySb);
int addNfsDevice( const string& nfsDev, const string& opts,
@@ -1929,6 +1931,8 @@
EtcFstab *fstab;
EtcRaidtab *raidtab;
+ ImsmDriver imsm_driver;
+
CallbackProgressBar progress_bar_cb;
CallbackShowInstallInfo install_info_cb;
CallbackInfoPopup info_popup_cb;
Modified: branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/StorageInterface.h
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/StorageInterface.h (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/libstorage/src/StorageInterface.h Wed Jan 27 15:12:50 2010
@@ -143,6 +143,9 @@
enum CType { CUNKNOWN, DISK, MD, LOOP, LVM, DM, DMRAID, NFSC, DMMULTIPATH,
MDPART, COTYPE_LAST_ENTRY };
+ enum ImsmDriver { IMSM_UNDECIDED, IMSM_DMRAID, IMSM_MDADM };
+
+
/**
* typedef for a pointer to a function that is called on progress bar events
*/
@@ -884,21 +887,19 @@
virtual int getContMdPartCoInfo( const string& name, ContainerInfo& cinfo,
MdPartCoInfo& info) = 0;
+ /**
+ * Set which driver should be used for IMSM Software RAIDs.
+ *
+ * @param driver driver to use for IMSM Software RAIDs.
+ */
+ virtual void setImsmDriver(ImsmDriver driver) = 0;
+
/**
- * Checks if Md and MdPart are used for IMSM/ISW SW RAIDs.
- *
- * In 'normal mode' it will become true after first MdPart class is
- * created and it will true until such class exist.
- * In 'install mode' it will be true:
- * a) if clean or partitioned IMSM RAIDs were detected and no YesOrNo
- * callback was registered.
- * b) if clean or partitioned IMSM RAIDs were detected and user chose
- * 'yes' when asked to use Md classes for IMSM/ISW RAIDs.
+ * Query which driver is used for IMSM Software RAIDs.
*
- * @return true if IMSM/ISW SW RAIDa are handled by Md/MdPart classes.
- * False otherwise.
+ * @return driver used for IMSM Software RAIDs.
*/
- virtual bool useMdForImsm() = 0;
+ virtual ImsmDriver getImsmDriver() const = 0;
/**
* Query all volumes found in system
Modified: branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/package/yast2-storage.changes Wed Jan 27 15:12:50 2010
@@ -1,4 +1,9 @@
-------------------------------------------------------------------
+Wed Jan 27 15:09:27 CET 2010 - aschnell(a)suse.de
+
+- allow to set driver for IMSM without callback (bnc #574270)
+
+-------------------------------------------------------------------
Mon Jan 25 17:30:26 CET 2010 - aschnell(a)suse.de
- fixed default mount-by for multipath (bnc #572209)
Modified: branches/SuSE-Code-11-SP1-Branch/storage/storage/src/modules/Storage.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-SP1-Branch/stora…
==============================================================================
--- branches/SuSE-Code-11-SP1-Branch/storage/storage/src/modules/Storage.ycp (original)
+++ branches/SuSE-Code-11-SP1-Branch/storage/storage/src/modules/Storage.ycp Wed Jan 27 15:12:50 2010
@@ -164,6 +164,11 @@
"right_asymmetric" : LibStorage::RIGHT_ASYMMETRIC(),
"right_symmetric" : LibStorage::RIGHT_SYMMETRIC() ];
+map<symbol, integer> conv_imsm_driver =
+ $[ `IMSM_UNDECIDED : LibStorage::IMSM_UNDECIDED(),
+ `IMSM_DMRAID : LibStorage::IMSM_DMRAID(),
+ `IMSM_MDADM : LibStorage::IMSM_MDADM() ];
+
map DiskMapVersion = $[];
map DiskMap = $[];
map type_order = $[ `CT_DISK : 0, `CT_MD : 1, `CT_MDPART : 2, `CT_DMRAID : 3,
@@ -343,6 +348,14 @@
}
+symbol imsm_driver = `IMSM_UNDECIDED;
+
+global void SetImsmDriver(symbol val)
+{
+ imsm_driver = val;
+}
+
+
list<map> getContainers();
global boolean InitLibstorage(boolean readonly)
@@ -365,6 +378,8 @@
LibStorage::StorageInterface::setEfiBoot(sint, Partitions::EfiBoot());
+ LibStorage::StorageInterface::setImsmDriver(sint, conv_imsm_driver[imsm_driver]:LibStorage::IMSM_UNDECIDED());
+
conts = getContainers();
y2milestone("InitLibstorage conts:%1", conts);
FileSystems::InitSlib(sint);
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r60554 - /tags/branch-Code-11-SP1-2_17_118/network/
by kmachalkova@svn.opensuse.org 27 Jan '10
by kmachalkova@svn.opensuse.org 27 Jan '10
27 Jan '10
Author: kmachalkova
Date: Wed Jan 27 15:12:47 2010
New Revision: 60554
URL: http://svn.opensuse.org/viewcvs/yast?rev=60554&view=rev
Log:
Created tag branch-Code-11-SP1-2_17_118 for network
Added:
tags/branch-Code-11-SP1-2_17_118/network/ (props changed)
- copied from r60553, branches/SuSE-Code-11-SP1-Branch/network/
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0