summaryrefslogtreecommitdiffstats
path: root/postfix_wizard
diff options
context:
space:
mode:
Diffstat (limited to 'postfix_wizard')
-rwxr-xr-xpostfix_wizard/scripts/check_masquerade.sh53
-rwxr-xr-xpostfix_wizard/scripts/check_relay.sh50
-rwxr-xr-xpostfix_wizard/scripts/compute_mail_relay.sh41
-rwxr-xr-xpostfix_wizard/scripts/compute_masquerade.sh41
-rwxr-xr-xpostfix_wizard/scripts/postfix_do_it.sh103
-rw-r--r--postfix_wizard/scripts/testlabel.pl15
6 files changed, 303 insertions, 0 deletions
diff --git a/postfix_wizard/scripts/check_masquerade.sh b/postfix_wizard/scripts/check_masquerade.sh
new file mode 100755
index 00000000..ad0559c6
--- /dev/null
+++ b/postfix_wizard/scripts/check_masquerade.sh
@@ -0,0 +1,53 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard postfix configuration
+#
+# checking if the provided domain value is correct :
+# strip the @, need at least a dot
+
+if [ -z "${wiz_mail_masquerade}" ] ;then
+ echo_debug "wiz_mail_masquerade is empty, should not."
+ exit 1
+fi
+
+test=`echo ${wiz_mail_masquerade} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' |grep "\."`
+echo_debug "test of masquerading domain : ${test}"
+
+if [ -z "${test}" ] ;then
+ echo_debug "domain empty, should not."
+ exit 1
+fi
+if `echo ${test}| grep -q ' '` ;then
+ echo_debug "bad domain : $test"
+ exit 1
+fi
+
+# all seems to be ok
+exit 10
+
+
+
+
diff --git a/postfix_wizard/scripts/check_relay.sh b/postfix_wizard/scripts/check_relay.sh
new file mode 100755
index 00000000..c7a2368f
--- /dev/null
+++ b/postfix_wizard/scripts/check_relay.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard postfix configuration
+#
+# checking if the provided hostname of relay value is correct
+#
+# at least a dot, strip @
+
+
+if [ -z "${wiz_ext_mail_relay}" ]; then
+ echo_debug "wiz_ext_mail_relay is empty, should not."
+ exit 1
+fi
+
+# (no need to skip white space), stripping @, need dot
+
+test=`echo ${wiz_ext_mail_relay} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}'|grep "\."`
+echo_debug "test of relay domain : ${test}"
+
+if [ -z "${test}" ] ;then
+ echo_debug "relay empty, should not."
+ exit 1
+fi
+
+# all seems to be ok
+exit 10
+
diff --git a/postfix_wizard/scripts/compute_mail_relay.sh b/postfix_wizard/scripts/compute_mail_relay.sh
new file mode 100755
index 00000000..b2fc35e6
--- /dev/null
+++ b/postfix_wizard/scripts/compute_mail_relay.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard postfix configuration
+#
+# echo on stdout the correct value of wiz_ext_mail_relay
+# (strip @)
+
+
+#stripping @, need dot
+
+test=`echo ${wiz_ext_mail_relay} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' -e 's! .*$!!'`
+echo_debug "relay domain : ${test}"
+
+echo ${test}
+
+# all seems to be ok
+exit 0
+
diff --git a/postfix_wizard/scripts/compute_masquerade.sh b/postfix_wizard/scripts/compute_masquerade.sh
new file mode 100755
index 00000000..a6f37111
--- /dev/null
+++ b/postfix_wizard/scripts/compute_masquerade.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard postfix configuration
+#
+# echo on stdout the correct value of wiz_mail_masquerade
+# (strip @)
+
+
+#stripping @
+
+test=`echo ${wiz_mail_masquerade} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' -e 's! .*$!!'`
+echo_debug "masquerade domain : ${test}"
+
+echo ${test}
+
+# all seems to be ok
+exit 0
+
diff --git a/postfix_wizard/scripts/postfix_do_it.sh b/postfix_wizard/scripts/postfix_do_it.sh
new file mode 100755
index 00000000..1fbaffd9
--- /dev/null
+++ b/postfix_wizard/scripts/postfix_do_it.sh
@@ -0,0 +1,103 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard network configuration
+#
+# install default postfix configuration for server
+# assuming all dependencies are ok
+
+
+echo_debug "now applying configuration for postfix"
+
+[ -d /etc/postfix ] || exit 1
+
+# first loading values
+. /etc/sysconfig/network
+
+# loading values from /etc/sysconfig/mdk_serv
+# wiz_host_name and wiz_domain_name
+wiz_host_name=`get_var wiz_host_name`
+wiz_domain_name=`get_var wiz_domain_name`
+
+wiz_device=`get_var wiz_device`
+
+
+file="/etc/sysconfig/network-scripts/ifcfg-${wiz_device}"
+echo_debug "device config : ${file}"
+[ -f ${file} ] || exit 1
+. ${file}
+
+# store the wiz_mail variable
+cfg_file=/etc/sysconfig/mdk_serv
+echo_debug "wiz_mail_masquerade ${wiz_mail_masquerade}"
+chg_val ${cfg_file} wiz_ext_mail_relay "${wiz_ext_mail_relay}" s
+chg_val ${cfg_file} wiz_mail_masquerade "${wiz_mail_masquerade}" s
+
+bck_file /etc/postfix/aliases
+bck_file /etc/postfix/canonical
+bck_file /etc/postfix/main.cf
+bck_file /etc/postfix/master.cf
+bck_file /etc/postfix/virtual
+
+# now configuring
+
+postconf -e "myhostname = ${wiz_host_name}"
+postconf -e 'myorigin = $mydomain'
+postconf -e 'inet_interfaces = all'
+postconf -e 'mydestination = $myhostname, localhost.$mydomain, $mydomain'
+
+if [ -n "${wiz_ext_mail_relay}" ]; then
+ postconf -e "relayhost = ${wiz_ext_mail_relay}"
+fi
+
+postconf -e 'masquerade_domains = $mydomain'
+
+postconf -e 'alias_maps = hash:/etc/postfix/aliases'
+postconf -e 'alias_database = hash:/etc/postfix/aliases'
+
+postconf -e 'virtual_maps = hash:/etc/postfix/virtual'
+postconf -e 'canonical_maps = hash:/etc/postfix/canonical'
+
+if [ -n "${wiz_mail_masquerade}" ]; then
+ if [ ! `grep "@${wiz_domain_name} @${wiz_mail_masquerade}" /etc/postfix/canonical` ]; then
+ echo "@${wiz_domain_name} @${wiz_mail_masquerade}" >> /etc/postfix/canonical
+ fi
+fi
+
+echo_debug "rebuilding hash"
+
+postmap /etc/postfix/canonical
+postmap /etc/postfix/virtual
+postalias /etc/postfix/aliases
+
+postfix check
+
+echo_debug "end of postfix configuration, restarting"
+
+service postfix restart
+service xinetd restart
+
+# all is ok
+exit 10
diff --git a/postfix_wizard/scripts/testlabel.pl b/postfix_wizard/scripts/testlabel.pl
new file mode 100644
index 00000000..c61d3cb0
--- /dev/null
+++ b/postfix_wizard/scripts/testlabel.pl
@@ -0,0 +1,15 @@
+$toto = "tutu";
+$tata = "titi";
+
+$file = "/home/logarno/toto";
+open(CANONICAL, "< $file");
+while (<CANONICAL>) {
+ if (/\@$toto\s*\@$tata/){
+ goto NOUPDATE;
+ }
+}
+close(CANONICAL);
+open(CANONICAL, ">> $file");
+print CANONICAL "\n\@$toto \@$tata";
+ NOUPDATE:
+ close(CANONICAL);