- restore_config base-files 4 /etc/issue /etc/issue.net
- restore_config bind9 1:9.3.4 /etc/bind/named.conf.options
- restore_config dovecot-common 1.0 /etc/dovecot/dovecot.conf
- restore_config libapache-mod-php4 6:4.4.4 /etc/php4/apache/php.ini
- restore_config libapache2-mod-php4 6:4.4.4 /etc/php4/apache2/php.ini
- restore_config libpam-modules 0.79 /etc/security/limits.conf
- restore_config login 1:4.0.18.1 /etc/pam.d/login
- restore_config mysql-server 5.0.3 /etc/init.d/mysql \
- /etc/logrotate.d/mysql-server \
- /etc/mysql/my.cnf
- restore_config ntp 1:4.2.2 /etc/ntp.conf
- restore_config ntpdate 1:4.2.2 /etc/default/ntpdate
- restore_config oidentd 2.0.8 /etc/default/oidentd
- restore_config php4-cgi 6:4.4.4 /etc/php4/cgi/php.ini
- restore_config php4-cli 6:4.4.4 /etc/php4/cli/php.ini
- restore_config postgrey 1.27 /etc/default/postgrey \
- /etc/postgrey/whitelist_clients
- restore_config procps 1:3.2.7 /etc/sysctl.conf
- restore_config sasl2-bin 2.1.22 /etc/default/saslauthd
- restore_config slapd 2.3.30 /etc/default/slapd /etc/init.d/slapd
- restore_config squirrelmail 2:1.4.9a /etc/squirrelmail/apache.conf
- restore_config vsftpd 2.0.5 /etc/vsftpd.conf
- restore_config xinetd 1:2.3.14 /etc/xinetd.conf
-
- # orphaned config file - no owner
- if pkg logcheck-database lt 1.2.54; then
- rm -f /etc/logcheck/ignore.d.server/imap
- fi
-
- # aide switched to ucf, move old configs aside
- if pkg aide lt 0.13.1; then
- for file in /etc/aide/aide.conf \
- /etc/cron.daily/aide \
- /etc/default/aide;
- do
- if [ ! -e "$file.$backup_ext" ]; then
- mv "$file" "$file.$backup_ext"
- fi
-
- rm -f "$file"
- done
+ local hostname domain config_new memtotal memlimit
+
+ # restore simple configs
+ if pkg ntp-cn && pkg ntp lt 1:4.2.6.p2+dfsg-1+b1; then
+ if restore_file /etc/ntp.conf; then
+ postupgrade_reconfigure ntp-cn
+ fi
+ fi
+
+ if pkg kernel-2.6-cn && pkg procps lt 1:3.2.8-9; then
+ if restore_file /etc/sysctl.conf; then
+ postupgrade_reconfigure kernel-2.6-cn
+ fi
+ fi
+
+ if pkg kernel-2.6-cn && pkg libpam-modules lt 1.1.1-6.1; then
+ if restore_file /etc/security/limits.conf; then
+ postupgrade_reconfigure kernel-2.6-cn
+ fi
+ fi
+
+ if pkg vsftpd-cn && pkg vsftpd lt 2.3.2-3+squeeze2; then
+ if restore_file /etc/vsftpd.conf; then
+ postupgrade_reconfigure vsftpd-cn
+ fi
+ fi
+
+ if pkg squirrelmail-cn && pkg squirrelmail lt 2:1.4.21-2; then
+ if restore_file /etc/squirrelmail/apache.conf; then
+ postupgrade_reconfigure squirrelmail-cn
+ fi
+ fi
+
+ if pkg spamassassin-cn && pkg spamassassin lt 3.3.1-1; then
+ if restore_file /etc/spamassassin/v310.pre; then
+ postupgrade_reconfigure spamassassin-cn
+ fi
+ fi
+
+ if pkg amavisd-cn && pkg amavisd-new lt 1:2.6.4-3; then
+ if restore_file /etc/cron.daily/amavisd-new; then
+ rm -f /etc/cron.daily/amavisd-new.$backup_ext
+ postupgrade_reconfigure amavisd-cn
+ fi
+
+ if restore_file /etc/amavis/conf.d/15-av_scanners; then
+ rm -f /etc/amavis/conf.d/15-av_scanners.$backup_ext
+ postupgrade_reconfigure amavisd-cn
+ fi
+ fi
+
+ if pkg amavisd-cn lt 3:2.6.5; then
+ restore_file /etc/init.d/amavisd-cn
+ rm -f /etc/init.d/amavisd-cn.$backup_ext
+ fi
+
+ if pkg console-tools lt 1:0.2.3dbs-69.1; then
+ restore_file /etc/console-tools/config
+ fi
+
+ if pkg base-files lt 6.0squeeze2; then
+ restore_file /etc/issue
+ restore_file /etc/issue.net
+ fi
+
+ # dovecot won't start with these options
+ if pkg dovecot-cn && pkg dovecot-common lt 1:1.2.15-7; then
+ sed -i 's/^\( *\)\(sieve\(_storage\)\?=.*\)/\1#\2/' \
+ /etc/dovecot/dovecot.conf
+ fi
+
+ # check if monitrc is template based
+ if [ -e /etc/monit/monitrc ]; then # monit is removed at this point
+ # regenerate config from template
+ hostname=$(hostname)
+ domain=$(hostname --domain)
+ config_new=$(copy_template /etc/monit/monitrc)
+ check_and_sed "@localhost" \
+ "s/@localhost/@$hostname.$domain/g" $config_new || true
+ restore_file /etc/monit/monitrc $config_new
+ rm -f $config_new