#! /bin/bash
#
#  Copy a server address from a foreign name server to the local one.
#
quiet=0
if [ "$1" = "-q" ]; then
    quiet=1
    shift
fi
#
#
narg=$#
if [ $narg -lt 2 ]; then
    echo "Copy a server name from a foreign name sever to the local one"
    echo "Command syntax:"
    echo "    cpName [-q] <service> <name-server> [<new-name>]"
    exit 1
fi
name=$1
newname=$name
[ $narg -gt 2 ] && newname=$3
#
lclserver=$DMTNAMESERVER
export DMTNAMESERVER=$2
addr=`getName $name |& grep "Address:" | sed -e "s/Address: //" -e "s/\[.*\]//"`
if [ "x$addr" = "x" ]; then
    echo "Service: $name is not registered on name server: $DMTNAMESERVER"
    exit 2
fi
export DMTNAMESERVER=$lclserver
oldaddr=`getName $newname |& grep "Address:" | sed -e "s/Address: //" -e "s/\[.*\]//"`
if [ "$oldaddr" = "$addr" ]; then
    [ $quiet = 0 ] && echo "$newname address is already in $lclserver"
    exit 0
fi
if [ $quiet = 0 ]; then
    echo "Adding name $newname to server $lclserver with address $addr"
fi
addName -a "$addr" $newname
exit 0
