summaryrefslogtreecommitdiff
path: root/amavis/mklists.sh
blob: 7a5a37067472578930c18b45b2343fba33581d47 (plain)
  1. #!/bin/sh
  2. #
  3. # /etc/local-COMMON/amavis/mklists.sh
  4. # Copyright 2007 Jonas Smedegaard <dr@jones.dk>
  5. #
  6. # $Id: mklists.sh,v 1.1 2007-09-25 12:22:10 jonas Exp $
  7. #
  8. # Resolve own mail domains and MX backup domains
  9. set -e
  10. # Let's standardize sort
  11. export LC_ALL=C
  12. realmsdir='/etc/local-REDPILL'
  13. domainconfdir='/etc/local-ORG/amavis'
  14. if ! [ -d "$realmsdir" ]; then
  15. echo "WARNING: Realms directory \"$realmsdir\" does not exist."
  16. fi
  17. if ! [ -d "$domainconfdir" ]; then
  18. echo "WARNING: Domain config directory \"$domainconfdir\" does not exist."
  19. fi
  20. catfilefromownrealm() {
  21. file="$1"
  22. [ -d "$realmsdir" ] || exit 0
  23. thisrealm="$(cat /etc/local-ORG/realm || dnsdomainname | tr '[a-z]' '[A-Z]')"
  24. cat "$realmsdir/$thisrealm/$file"
  25. }
  26. catallfilesfromotherrealms() {
  27. file="$1"
  28. [ -d "$realmsdir" ] || exit 0
  29. [ -f "$realmsdir/realms" ] || exit 0
  30. realms="$(cat "$realmsdir/realms" | sed 's/#.*//')"
  31. thisrealm="$(cat /etc/local-ORG/realm || dnsdomainname | tr '[a-z]' '[A-Z]')"
  32. for realm in $realms; do
  33. if [ "$thisrealm" != "$realm" ]; then
  34. cat "$realmsdir/$realm/$file"
  35. fi
  36. done
  37. }
  38. catfilefromownrealm maildomains | sort > "$domainconfdir/local_domains"
  39. catallfilesfromotherrealms maildomains | sort > "$domainconfdir/nonlocal_domains"