--- a/oracle
+++ b/oracle
@@ -493,7 +493,11 @@
                test -x $AGENT_PROG && $CHECKPROC $AGENT_PROG  && echo -n "Shutting down Agent: " && ($AGENT_STOP > /dev/null; rc_status -v -r)
                ;;
          10gA)
-               test -x $AGENT_PROG && $CHECKPROC $AGENT_PROG  && echo -n "Shutting down Agent: " && ($AGENT_STOP > /dev/null; rc_status -v -r)
+               if [[ "$AGENT_PROG" == *emctl ]]; then
+                 test -x $AGENT_PROG && ($AGENT_PROG status agent > /dev/null) && echo -n "Shutting down Agent: " && ($AGENT_STOP > /dev/null; rc_status -v -r)
+               else
+                 test -x $AGENT_PROG && $CHECKPROC $AGENT_PROG  && echo -n "Shutting down Agent: " && ($AGENT_STOP > /dev/null; rc_status -v -r)
+               fi
                ;;
            *)
                echo "Oracle Agent undefinied or not properly set. Please check."
