Przeglądaj źródła

resurrect old way of rotation which includes a daemon restart

Ralf S. Engelschall 23 lat temu
rodzic
commit
2c7c2823b1
2 zmienionych plików z 26 dodań i 11 usunięć
  1. 25 10
      sendmail/rc.sendmail
  2. 1 1
      sendmail/sendmail.spec

+ 25 - 10
sendmail/rc.sendmail

@@ -91,14 +91,29 @@
     sendmail_start
 
 %daily -u @l_susr@
-    opServiceEnabled sendmail || exit 0
+    if opServiceEnabled sendmail; then
+        opTmpDirGen sendmail
+        opTmpDirFile sendmail hint hintfile
+        prolog="true"
+        if [ ".$sendmail_log_prolog" != . ]; then
+            prolog="$prolog; $sendmail_log_prolog"
+        fi
+        epilog="echo 'epilog' >$hintfile"
+        if [ ".$sendmail_log_epilog" != . ]; then
+            epilog="$epilog; $sendmail_log_epilog"
+        fi
+        shtool rotate -f \
+            -n${sendmail_log_numfiles} -s${sendmail_log_minsize} \
+            -d -z${sendmail_log_complevel} \
+            -o@l_musr@ -g@l_mgrp@ -m644 \
+            -P "$prolog" \
+            -E "$epilog" \
+            @l_prefix@/var/sendmail/sendmail.log
+        if [ ".`cat $hintfile`" = ".epilog" ]; then
+            sendmail_signal TERM KILL
+            sleep 2
+            sendmail_start
+        fi
+        opTmpDirDel sendmail
+    fi
 
-    #   rotate logfile
-    prolog="$sendmail_log_prolog"
-    epilog="$sendmail_log_epilog && @l_prefix@/etc/rc sendmail restart || true"
-    shtool rotate -f \
-        -n${sendmail_log_numfiles} -s${sendmail_log_minsize} -d \
-        -z${sendmail_log_complevel} -o@l_rusr@ -g@l_rgrp@ -m644 \
-        -P "${prolog}" \
-        -E "${epilog}" \
-        @l_prefix@/var/sendmail/sendmail.log

+ 1 - 1
sendmail/sendmail.spec

@@ -33,7 +33,7 @@ Distribution: OpenPKG [PLUS]
 Group:        Mail
 License:      BSD
 Version:      8.12.9
-Release:      20030624
+Release:      20030628
 
 #   package options
 %option       with_fsl      yes