#!/bin/bash

# Utility for node name based ssh

FILENAME=/tmp/asr9k_ssh.$$
NODE_NAME=$1
HOST_FILE=/etc/hosts
node_reachable=0

NODE_NAME="$(echo $NODE_NAME | tr '[A-Z]' '[a-z]')"

grep -i ${NODE_NAME} ${HOST_FILE} > $FILENAME
while read -r line ; do
    IP_ADDRESS=`echo "$line" | cut -d ' ' -f 1`

    /bin/ping -c1 $IP_ADDRESS > /dev/null
    if [ $? -eq 0 ]
    then 
        node_reachable=1
        break 
    else 
        IP_ADDRESS=0.0.0.0    
    fi
     
done < $FILENAME

rm $FILENAME

if [ $node_reachable -eq 0 ]
then
    echo "$NODE_NAME is unreachable"
    exit 0
else 
    echo "logging on $IP_ADDRESS"
fi

ssh -t $IP_ADDRESS "${@:2}"
