diff --git a/dhcp-agent/dhcp-agent.spec b/dhcp-agent/dhcp-agent.spec index 71d744a8e0..ac44147f16 100644 --- a/dhcp-agent/dhcp-agent.spec +++ b/dhcp-agent/dhcp-agent.spec @@ -35,7 +35,7 @@ Distribution: OpenPKG [JUNK] Group: Converter License: MIT-style Version: 0.41 -Release: 20030918 +Release: 20031020 # package options %option with_fsl yes @@ -146,3 +146,17 @@ AutoReqProv: no %clean rm -rf $RPM_BUILD_ROOT +%post + # after upgrade, restart service + [ $1 -eq 2 ] || exit 0 + eval `%{l_rc} dhcp-agent status 2>/dev/null` + [ ".$dhcp-agent_active" = .yes ] && %{l_rc} dhcp-agent restart + exit 0 + +%preun + # before erase, stop service + [ $1 -eq 0 ] || exit 0 + %{l_rc} dhcp-agent stop 2>/dev/null + rm -f $RPM_INSTALL_PREFIX/var/dhcp-agent/*.log* >/dev/null 2>&1 || true + exit 0 + diff --git a/dhcp-agent/fsl.dhcp-agent b/dhcp-agent/fsl.dhcp-agent index 8b020049b1..96cbcf1575 100644 --- a/dhcp-agent/fsl.dhcp-agent +++ b/dhcp-agent/fsl.dhcp-agent @@ -9,7 +9,7 @@ ident (dhcp-agent.*)/.+ q{ -> { debug: file( path="@l_prefix@/var/dhcp-agent/dhcp-agent.log", - perm=0644 + perm=0644, monitor=3600 ) } }; diff --git a/dhcp-agent/rc.dhcp-agent b/dhcp-agent/rc.dhcp-agent index f010cce317..a052d84abf 100644 --- a/dhcp-agent/rc.dhcp-agent +++ b/dhcp-agent/rc.dhcp-agent @@ -32,16 +32,19 @@ %start -p 90 -u @l_susr@ rcService dhcp_agent enable yes || exit 0 - rcVarIsYes dhcp_agent_usable && \ + rcService dhcp_agent active yes && exit 0 + rcService dhcp_agent usable && \ @l_prefix@/sbin/dhcp-client 2>/dev/null -i $dhcp_agent_interface %stop -p 90 -u @l_susr@ rcService dhcp_agent enable yes || exit 0 - rcVarIsYes dhcp_agent_usable && \ + rcService dhcp_agent active no && exit 0 + rcService dhcp_agent usable && \ @l_prefix@/sbin/dhcp-client 2>/dev/null -k -i $dhcp_agent_interface %restart -p 90 -u @l_susr@ rcService dhcp_agent enable yes || exit 0 + rcService dhcp_agent active no && exit 0 rc dhcp-agent stop sleep 2 rc dhcp-agent start