#!/bin/bash if [ -z "$XCATDEST" ]; then XCATDEST=$1 fi echo " nextdestiny 300 " > /tmp/destreq.xml if [ -f /tmp/destiny.xml ]; then rm /tmp/destiny.xml; fi timer=0 while [ ! -f /tmp/destiny.xml ]; do while [ $timer -gt 0 ]; do echo -en "No destiny command received, retrying in $timer seconds \r" >&2 sleep 1 timer=$(($timer-1)); done echo " " >&2; if [ -f /etc/xcat/cert.pem -a -f /etc/xcat/certkey.pem ]; then #use client cert if available openssl s_client -key /etc/xcat/certkey.pem -cert /etc/xcat/cert.pem -connect "$XCATDEST" -quiet 2> /dev/null < /tmp/destreq.xml > /tmp/destiny.xml else openssl s_client -connect "$XCATDEST" -quiet 2> /dev/null < /tmp/destreq.xml > /tmp/destiny.xml fi timer=60 done rm /tmp/destreq.xml DESTINY="$(grep '' /tmp/destiny.xml | awk -F'>' '{print $2}'|awk -F'<' '{print $1}')" if [ -z "$DESTINY" ]; then ERROR="$(grep '' /tmp/destiny.xml | awk -F'>' '{print $2}'|awk -F'<' '{print $1}')" if [ ! -z "$ERROR" ]; then DESTINY="error=$ERROR" else DESTINY="error=No destiny command received" fi fi rm /tmp/destiny.xml echo "$DESTINY"