gestion de liste de domaine ou de mél qui ne doivent par être dépolluer en emission ou réception.
This commit is contained in:
@@ -72,9 +72,13 @@ MAX_FINAL_SIZE=2097152 # 2Mi
|
|||||||
ARCHIVE_TITLE="archive_content"
|
ARCHIVE_TITLE="archive_content"
|
||||||
ARCHIVE_MIME="text/kaz_email_archive"
|
ARCHIVE_MIME="text/kaz_email_archive"
|
||||||
|
|
||||||
FILE_SKIP_DOMAINS="config/file_domaines_non_depollues.txt"
|
# skip_sender_domaine
|
||||||
|
FILE_DOMAINS_TO_SKIP_SRC="config/domaine_to_skip_src.txt"
|
||||||
|
# skip_destination_domaine
|
||||||
|
FILE_DOMAINS_TO_SKIP_DST="config/domaine_to_skip_dst.txt"
|
||||||
#on enlève les commentaires et les lignes vides
|
#on enlève les commentaires et les lignes vides
|
||||||
SKIP_DOMAINS="$(sed 's:#.*$::g' 's/[[:blank:]]//g' "${FILE_SKIP_DOMAINS}" 2>/dev/null)"
|
SKIP_DOMAINS_SRC="$(sed 's:#.*$::g' 's/[[:blank:]]//g' "${FILE_DOMAINS_TO_SKIP_SRC}" 2>/dev/null)"
|
||||||
|
SKIP_DOMAINS_DST="$(sed 's:#.*$::g' 's/[[:blank:]]//g' "${FILE_DOMAINS_TO_SKIP_DST}" 2>/dev/null)"
|
||||||
|
|
||||||
KEEP_FAILED=true
|
KEEP_FAILED=true
|
||||||
DEBUG=true
|
DEBUG=true
|
||||||
@@ -141,18 +145,19 @@ curlJirafeauSend () {
|
|||||||
echo "${OUTPUT}"
|
echo "${OUTPUT}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Définir une fonction pour vérifier si le domaine d'un email est dans la liste SKIP_DOMAINS
|
# Définir une fonction pour vérifier si le domaine d'un destinataire est dans la liste à ne pas dépolluer
|
||||||
function check_skip_domains() {
|
function check_domains() {
|
||||||
local SKIP_DOMAINS="$1"
|
local SKIP_DOMAINS="$1"
|
||||||
local LIST_EMAILS="$2"
|
local LIST_TO_TEST="$2"
|
||||||
|
|
||||||
for email in ${LIST_EMAILS}; do
|
for email_tst in ${LIST_TO_TEST}; do
|
||||||
# Extraire le domaine de l'email (partie après le "@")
|
# Extraire le domaine de l'email (partie après le "@")
|
||||||
local domain="${email##*@}"
|
# pour plus de précision on peut sauter ".gouv.fr" ou "martin@pref.gouv.fr"
|
||||||
|
# dst="${dst##*@}"
|
||||||
|
|
||||||
for domain in ${SKIP_DOMAINS}; do
|
for domain in ${SKIP_DOMAINS}; do
|
||||||
# vérification si le domaine est dans la liste des domaines à sauter
|
# vérification si le candidat est dans la liste des domaines à sauter
|
||||||
if [[ " ${email} " =~ "${domain} " ]] ; then
|
if [[ " ${email_tst} " =~ "${domain} " ]] ; then
|
||||||
echo "yes"
|
echo "yes"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
@@ -254,8 +259,14 @@ if [ "${MODE}" = "none" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ "$(check_skip_domains "${SKIP_DOMAINS}" "${LIST_DST_EMAILS}")" = "yes" ]; then
|
if [ "$(check_domains "${SKIP_DOMAINS_SRC}" "${MAIL_SOURCE}")" = "yes" ]; then
|
||||||
LOG_FIC " - ${GREEN}send without change (skip domain)${NC}"
|
LOG_FIC " - ${GREEN}send without change (skip sender domain)${NC}"
|
||||||
|
${SENDMAIL} "$@" < "${INSPECT_DIR}/in.$$"
|
||||||
|
quitFilter 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$(check_domains "${SKIP_DOMAINS_DST}" "${LIST_DST_EMAILS}")" = "yes" ]; then
|
||||||
|
LOG_FIC " - ${GREEN}send without change (skip destination domain)${NC}"
|
||||||
${SENDMAIL} "$@" < "${INSPECT_DIR}/in.$$"
|
${SENDMAIL} "$@" < "${INSPECT_DIR}/in.$$"
|
||||||
quitFilter 0
|
quitFilter 0
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user