#!/bin/bash # info: insert dns domain # options: USER DATA [SRC] [FLUSH] # # The function inserts raw record to the dns.conf #----------------------------------------------------------# # Variable&Function # #----------------------------------------------------------# # Argument defenition user=$1 data=$2 src=$3 flush=$4 # Includes source $VESTA/conf/vesta.conf source $VESTA/func/main.sh #----------------------------------------------------------# # Verifications # #----------------------------------------------------------# check_args '2' "$#" 'USER DATA [SRC]' validate_format 'user' 'data' is_system_enabled "$DNS_SYSTEM" is_object_valid 'user' 'USER' "$user" is_object_unsuspended 'user' 'USER' "$user" #----------------------------------------------------------# # Action # #----------------------------------------------------------# # Prepare values for the insert eval $data dns_rec="DOMAIN='$DOMAIN' IP='$IP' TPL='$TPL' TTL='$TTL' EXP='$EXP'" dns_rec="$dns_rec SOA='$SOA' SRC='$src' RECORDS='$RECORDS'" dns_rec="$dns_rec SUSPENDED='$SUSPENDED' TIME='$TIME' DATE='$DATE'" sed -i "/DOMAIN='$DOMAIN'/d" $USER_DATA/dns.conf 2> /dev/null echo "$dns_rec" >> $USER_DATA/dns.conf chmod 660 $USER_DATA/dns.conf # Flush dns records if [ "$flush" != 'no' ]; then rm -f $USER_DATA/dns/$DOMAIN.conf touch $USER_DATA/dns/$DOMAIN.conf chmod 660 $USER_DATA/dns/$DOMAIN.conf fi #----------------------------------------------------------# # Vesta # #----------------------------------------------------------# # Logging log_event "$OK" "$EVENT" exit