Cdiff control_ids.ksh
*** /workspace/neilga/ohacds-ids/webrev/usr/src/cmd/ha-services/gds-agents/ids/control_ids.ksh- Tue May 27 03:22:48 2008
--- control_ids.ksh     Tue May 27 03:16:22 2008

*** 20,42 **** # CDDL HEADER END # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # ! #ident "@(#)control_ids.ksh 1.2 08/02/04 SMI" # # Usage GDS: <options> <parameter1> <parameter2> # - # Usage SMF: <parameter1> <parameter2> <parameter3> - # # <options>: -R <resource> -G <resourcegroup> etc. # parameter1: start | stop | probe | validate # parameter2: ids - # parameter3: <FMRI> ! MYNAME=`/usr/bin/basename $0` ! MYDIR=`/usr/bin/dirname $0` . ${MYDIR}/../etc/config typeset opt --- 20,39 ---- # CDDL HEADER END # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # ! #ident "@(#)control_ids.ksh 1.3 08/05/27 SMI" # # Usage GDS: <options> <parameter1> <parameter2> # # <options>: -R <resource> -G <resourcegroup> etc. # parameter1: start | stop | probe | validate # parameter2: ids ! MYNAME=$(/usr/bin/basename $0) ! MYDIR=$(/usr/bin/dirname $0) . ${MYDIR}/../etc/config typeset opt
*** 52,120 **** H) INFORMIXSQLHOSTS=${OPTARG};; *) exit 1;; esac done ! if [ "${OPTIND}" -gt 1 ] ! then ! # Called by GDS ! CALLER=GDS ! shift $((${OPTIND} -1)) ! else ! # Called by SMF ! CALLER=SMF ! . /lib/svc/share/smf_include.sh ! SMF_FMRI=${3} ! fi ! METHOD=${1} ! COMPONENT=${2} ! if [ "${CALLER}" = "GDS" ] then ! . ${MYDIR}/functions ! # Perform all the scha* calls ! TASK_COMMAND="" ! if [ "${METHOD}" = "start" ] ! then ! START_TIMEOUT=`/usr/cluster/bin/scha_resource_get -O START_TIMEOUT \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} ` ! fi ! if [ "${METHOD}" = "stop" ] ! then ! STOP_TIMEOUT=`/usr/cluster/bin/scha_resource_get -O STOP_TIMEOUT \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} ` ! fi ! # Retrieve the resource project name so that we can run any ! # Informix commands under the specified user's project. ! RESOURCE_PROJECT_NAME=`/usr/cluster/bin/scha_resource_get \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} -O RESOURCE_PROJECT_NAME` ! if [ -z "${RESOURCE_PROJECT_NAME}" -o "${RESOURCE_PROJECT_NAME}" = "default" ] ! then ! # Retrieve the resource group project name ! RESOURCE_PROJECT_NAME=`/usr/cluster/bin/scha_resourcegroup_get \ ! -G ${RESOURCEGROUP} -O RG_PROJECT_NAME` ! fi ! # Validate that ${USERID} belongs to the ${RESOURCE_PROJECT_NAME} ! if [ -n "${RESOURCE_PROJECT_NAME}" ] ! then ! PROJ_MEMBER=`/usr/bin/projects ${USERID} | /usr/bin/egrep "^${RESOURCE_PROJECT_NAME} | \ ! ${RESOURCE_PROJECT_NAME} | ${RESOURCE_PROJECT_NAME}$|^${RESOURCE_PROJECT_NAME}$"` ! fi ! if [ -z "${PROJ_MEMBER}" ] ! then # SCMSGS # @explanation # The userid does not belong to the specified project. # @user_action # Ensure the userid exists within the project. Check that --- 49,105 ---- H) INFORMIXSQLHOSTS=${OPTARG};; *) exit 1;; esac done ! shift $((${OPTIND} -1)) ! METHOD=${1} ! COMPONENT=${2} ! . ${MYDIR}/functions ! # Perform all the scha* calls ! TASK_COMMAND="" ! if [ "${METHOD}" = "start" ] then ! START_TIMEOUT=$(/usr/cluster/bin/scha_resource_get -O START_TIMEOUT \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} ) ! fi ! if [ "${METHOD}" = "stop" ] ! then ! STOP_TIMEOUT=$(/usr/cluster/bin/scha_resource_get -O STOP_TIMEOUT \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} ) ! fi ! # Retrieve the resource project name so that we can run any ! # Informix commands under the specified user's project. ! RESOURCE_PROJECT_NAME=$(/usr/cluster/bin/scha_resource_get \ ! -R ${RESOURCE} -G ${RESOURCEGROUP} -O RESOURCE_PROJECT_NAME) ! if [ -z "${RESOURCE_PROJECT_NAME}" -o "${RESOURCE_PROJECT_NAME}" = "default" ] ! then ! # Retrieve the resource group project name ! RESOURCE_PROJECT_NAME=$(/usr/cluster/bin/scha_resourcegroup_get \ ! -G ${RESOURCEGROUP} -O RG_PROJECT_NAME) ! fi ! # Validate that ${USERID} belongs to the ${RESOURCE_PROJECT_NAME} ! if [ -n "${RESOURCE_PROJECT_NAME}" ] ! then ! PROJ_MEMBER=$(/usr/bin/projects ${USERID} | /usr/bin/egrep "^${RESOURCE_PROJECT_NAME} | \ ! ${RESOURCE_PROJECT_NAME} | ${RESOURCE_PROJECT_NAME}$|^${RESOURCE_PROJECT_NAME}$") ! fi ! if [ -z "${PROJ_MEMBER}" ] ! then # SCMSGS # @explanation # The userid does not belong to the specified project. # @user_action # Ensure the userid exists within the project. Check that
*** 121,150 **** # you have the correct userid and project name. scds_syslog -p daemon.notice -t $(syslog_tag) -m \ "%s - The user %s does not belong to project %s" \ "${MYNAME}" "${USERID}" "${RESOURCE_PROJECT_NAME}" return 1 - else - TASK_COMMAND="/usr/bin/newtask -p ${RESOURCE_PROJECT_NAME}" - fi else ! for i in RESOURCE RESOURCEGROUP INFORMIXDIR ONCONFIG INFORMIXSERVER \ ! INFORMIXSQLHOSTS START_TIMEOUT STOP_TIMEOUT ! do ! export $i=`/usr/bin/svcprop -p parameters/$i ${SMF_FMRI}` ! done ! ! USERID=`/usr/bin/svcprop -p start/user ${SMF_FMRI}` ! PROJECT=`/usr/bin/svcprop -p start/project ${SMF_FMRI}` ! ! . ${MYDIR}/functions fi debug_message "Method: ${MYNAME} - Begin" ${SET_DEBUG} ! [ -x /sbin/zonename ] && ZONENAME=`/sbin/zonename` set_redirection case "${METHOD}" in start) --- 106,123 ---- # you have the correct userid and project name. scds_syslog -p daemon.notice -t $(syslog_tag) -m \ "%s - The user %s does not belong to project %s" \ "${MYNAME}" "${USERID}" "${RESOURCE_PROJECT_NAME}" return 1 else ! TASK_COMMAND="/usr/bin/newtask -p ${RESOURCE_PROJECT_NAME}" fi debug_message "Method: ${MYNAME} - Begin" ${SET_DEBUG} ! [ -x /sbin/zonename ] && ZONENAME=$(/sbin/zonename) set_redirection case "${METHOD}" in start)