Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

452 Commits   2 Branches   1 Tag
Index: rc.opendkim
===================================================================
--- rc.opendkim	(nonexistent)
+++ rc.opendkim	(revision 5)
@@ -0,0 +1,76 @@
+#!/bin/bash
+#
+# /etc/rc.d/rc.opendkim    Start and stop OpenDKIM.
+#
+# OpenDKIM startup script for Slackware 14.1 by Gerardo Zamudio
+# Modified from the  script by Steve Jenkins (SteveJenkins.com) - 10-29-2012
+# Based on a script by Andrew Colin Kissa (TopDog) for dkim-milter - 05-28-2009
+#
+
+USER="opendkim"
+PROGRAM=/usr/sbin/opendkim
+CONF_FILE=/etc/opendkim.conf
+PID_FILE=/var/run/opendkim/opendkim.pid
+KEYGEN=/usr/sbin/opendkim-genkey
+DKIM_KEYDIR=/etc/opendkim/keys
+DKIM_SELECTOR=default
+AUTOCREATE_DKIM_KEYS=yes
+
+do_dkim_keygen() {
+  if [ ! -s $DKIM_KEYDIR/$DKIM_SELECTOR.private ]; then
+    echo -n $"Generating default DKIM keys: "
+    if [ "x$(hostname -d)" = "x" ]; then
+      echo $"Cannot determine host's domain name, so skipping default key generation."
+    else
+      mkdir -p $DKIM_KEYDIR
+      $KEYGEN -b 2048 -D $DKIM_KEYDIR -s $DKIM_SELECTOR -d "$(hostname -d)"
+      chown root:$USER $DKIM_KEYDIR
+      chown $USER:$USER $DKIM_KEYDIR/$DKIM_SELECTOR.{private,txt}
+      chmod 600 $DKIM_KEYDIR/$DKIM_SELECTOR.private
+      chmod 644 $DKIM_KEYDIR/$DKIM_SELECTOR.txt
+      echo
+      echo Default DKIM keys for "$(hostname -d)" created in $DKIM_KEYDIR.
+    fi
+  fi
+}
+
+case "$1" in
+  start)
+    # Create keys if necessary
+    if [ "x${AUTOCREATE_DKIM_KEYS}" != xNO ]; then
+      do_dkim_keygen
+    fi
+
+    echo -n $"Starting OpenDKIM Milter... "
+    echo
+    if [ -f $PID_FILE ]; then
+      PID=$(cat $PID_FILE)
+      echo OpenDKIM already running as pid "$PID"
+      exit 2;
+    else
+      $PROGRAM -l -x $CONF_FILE -P $PID_FILE
+    fi
+    ;;
+  stop)
+    echo -n $"Stopping OpenDKIM Milter... "
+    echo
+    if [ ! -f $PID_FILE ]; then
+      echo OpenDKIM is not running!
+      exit 2;
+    else
+      kill -TERM "$(cat $PID_FILE)" && rm -rf $PID_FILE
+    fi
+    ;;
+  status)
+    if [ -f $PID_FILE ]; then
+      PID=$(cat $PID_FILE)
+      echo OpenDKIM already running as pid "$PID"
+      exit 2;
+    else
+      echo OpenDKIM is not running!
+    fi
+    ;;
+  *)
+    echo $"Usage: $0 {start|stop|status|}"
+    exit 1
+esac