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)