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:
2025-11-09 17:07:34 +01:00
parent ea8203bfbd
commit e600985404

View File

@@ -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