summaryrefslogtreecommitdiffstats
path: root/postfix_wizard/scripts/Postfixconf.pm
diff options
context:
space:
mode:
Diffstat (limited to 'postfix_wizard/scripts/Postfixconf.pm')
-rw-r--r--postfix_wizard/scripts/Postfixconf.pm93
1 files changed, 0 insertions, 93 deletions
diff --git a/postfix_wizard/scripts/Postfixconf.pm b/postfix_wizard/scripts/Postfixconf.pm
deleted file mode 100644
index e34234d9..00000000
--- a/postfix_wizard/scripts/Postfixconf.pm
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/usr/bin/perl
-
-package Postfixconf;
-use lib '/usr/lib/libDrakX';
-require "__WIZ_HOME__/common/scripts/Vareqval.pm";
-require "__WIZ_HOME__/common/scripts/IFCFG.pm";
-use MDK::Common;
-use services;
-use strict;
-
-my $o = IFCFG->new();
-my $wiz_domain_name = $o->network_get("DOMAINNAME");
-my $wiz_host_name = $o->network_get("HOSTNAME");
-
-sub check_masquerade {
- $ENV{wiz_mail_masquerade} or return 1;
- $ENV{wiz_mail_masquerade} =~ /@(\S+)$/ or return 1;
- return 10
-}
-
-sub check_relay {
- $ENV{wiz_ext_mail_relay} or return 1;
- $ENV{wiz_ext_mail_relay} =~ /(\S+)\.(\S+)$/ or return 1;
- return 10;
-}
-
-sub get_mail_masquerade {
- my $login = `logname`;
- my $relayhost = `/usr/sbin/postconf -h relayhost`;
- chomp($relayhost);
- ($relayhost) = $relayhost =~ /.*\.(.*\..*)/;
- !length $relayhost and $relayhost = $wiz_domain_name;
- chomp($login);
- "$login\@$relayhost";
-}
-
-sub get_mail_relay {
- my $relayhost = `/usr/sbin/postconf -h relayhost`;
- chomp $relayhost;
- !length $relayhost and $relayhost = "smtp.$wiz_domain_name";
- $relayhost;
-}
-
-sub do_it {
- my @conf = qw(/etc/postfix/aliases
- /etc/postfix/canonical
- /etc/postfix/main.cf
- /etc/postfix/master.cf
- /etc/postfix/virtual);
- foreach (@conf) {
- (-f $_) and MDK::Common::cp_af($_, $_.".orig");
- }
- @conf = ("myhostname = $wiz_host_name",
- 'myorigin = $mydomain',
- 'inet_interfaces = all',
- 'mydestination = $myhostname, localhost.$mydomain',
- 'masquerade_domains = $mydomain',
- 'alias_maps = hash:/etc/postfix/aliases',
- 'alias_database = hash:/etc/postfix/aliases',
- 'virtual_maps = hash:/etc/postfix/virtual',
- 'canonical_maps = hash:/etc/postfix/canonical',
- "relayhost = $ENV{wiz_ext_mail_relay}"
- );
- foreach (@conf) {
- system("/usr/sbin/postconf -e \'$_\'");
- }
- if (defined $ENV{wiz_ext_mail_relay}) {
- my $file = "/etc/postfix/canonical";
- my $canon = "\n\@$wiz_domain_name $ENV{wiz_mail_masquerade}";
- my $t;
- foreach (cat_($file)) {
- if (/^\s*(?!\#)\s*\@$wiz_domain_name.*/) {
- $t = $_;
- last;
- }
- }
- if ($t) { substInFile { s|$t|\#$&$canon|} $file }
- else { append_to_file($file, $canon) }
- }
- system("/usr/sbin/postmap /etc/postfix/canonical");
- system("/usr/sbin/postmap /etc/postfix/virtual");
- system("/usr/sbin/postalias /etc/postfix/aliases");
- system("/usr/sbin/postfix check");
- if (services::is_service_running('postfix')) {
- services::restart('postfix')
- } else {
- services::start('postfix')
- }
- services::is_service_running('xinetd') and services::restart('xinetd');
- 10;
-}
-
-1;