OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Michael van Elst
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   22-Jul-2003 18:29:15
  Branch: HEAD                             Handle: 2003072217291400

  Modified files:
    openpkg-src/samhain     rc.samhain samhain.spec

  Log:
    %status and pidfile handling, no longer initializes db on installation

  Summary:
    Revision    Changes     Path
    1.14        +34 -3      openpkg-src/samhain/rc.samhain
    1.53        +13 -3      openpkg-src/samhain/samhain.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/samhain/rc.samhain
  ============================================================================
  $ cvs diff -u -r1.13 -r1.14 rc.samhain
  --- openpkg-src/samhain/rc.samhain    22 Jul 2003 08:11:09 -0000      1.13
  +++ openpkg-src/samhain/rc.samhain    22 Jul 2003 16:29:14 -0000      1.14
  @@ -11,15 +11,46 @@
       samhain_log_minsize="1M"
       samhain_log_complevel="9"
   
  +%common
  +    samhain_data="@l_prefix@/var/samhain/samhain.data"
  +    samhain_pidfile="@l_prefix@/var/samhain/samhain.pid"
  +    samhain_signal () {
  +        [ -f $samhain_pidfile ] && kill -$1 `cat $samhain_pidfile`
  +    }
  +    samhain_wait () {
  +        local i=0
  +        while [ $i -lt 60 -a -f $samhain_pidfile ]; do
  +            sleep 1
  +            i=`expr $i + 1`
  +        done
  +    }
  +
  +%status -u @l_susr@ -o
  +    samhain_usable="no"
  +    samhain_active="no"
  +    rcService samhain enable yes && \
  +        [ -f $samhain_data ] && samhain_usable="yes"
  +    rcService samhain enable yes && \
  +        rcVarIsYes samhain_usable && \
  +        samhain_signal 0 && samhain_active="yes"
  +    echo "samhain_enable=\"$samhain_enable\""
  +    echo "samhain_usable=\"$samhain_usable\""
  +    echo "samhain_active=\"$samhain_active\""
  +
   %start -u @l_susr@
       rcService samhain enable yes || exit 0
       @l_prefix@/sbin/samhain -t check -D
   
   %stop -u @l_susr@
       rcService samhain enable yes || exit 0
  -    if [ -f @l_prefix@/var/samhain/samhain.pid ]; then
  -        kill -TERM `cat @l_prefix@/var/samhain/samhain.pid`
  -    fi
  +    samhain_signal TERM
  +    samhain_wait
  +
  +%restart -u @l_susr@
  +    rcService samhain enable yes || exit 0
  +    rc samhain stop
  +    sleep 2
  +    rc samhain start
   
   %daily -u @l_susr@
       rcService samhain enable yes || exit 0
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/samhain/samhain.spec
  ============================================================================
  $ cvs diff -u -r1.52 -r1.53 samhain.spec
  --- openpkg-src/samhain/samhain.spec  22 Jul 2003 08:11:09 -0000      1.52
  +++ openpkg-src/samhain/samhain.spec  22 Jul 2003 16:29:14 -0000      1.53
  @@ -138,7 +138,17 @@
       rm -rf $RPM_BUILD_ROOT
   
   %post
  -    if [ $1 -eq 1 ]; then
  -        $RPM_INSTALL_PREFIX/sbin/samhain -t init
  -    fi
  +    #   after upgrade, restart service
  +    [ $1 -eq 2 ] || exit 0
  +    eval `%{l_rc} samhain status 2>/dev/null`
  +    [ ".$samhain_active" = .yes ] && %{l_rc} samhain restart
  +    exit 0
  +
  +%preun
  +    #   before erase, stop service and remove log files and database
  +    [ $1 -eq 0 ] || exit 0
  +    %{l_rc} samhain stop 2>/dev/null
  +    rm -f $RPM_INSTALL_PREFIX/var/samhain/samhain.data 2>/dev/null || true
  +    rm -f $RPM_INSTALL_PREFIX/var/samhain/samhain.log* 2>/dev/null || true
  +    exit 0
   
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [EMAIL PROTECTED]

Reply via email to