File tree Expand file tree Collapse file tree 3 files changed +35
-3
lines changed
Expand file tree Collapse file tree 3 files changed +35
-3
lines changed Original file line number Diff line number Diff line change @@ -11,7 +11,7 @@ domain=$(idn -t --quiet -u "$2" )
1111domain_idn=$( idn -t --quiet -a " $domain " )
1212record=$( idn -t --quiet -u " $3 " )
1313rtype=$( echo " $4 " | tr ' [:lower:]' ' [:upper:]' )
14- value =$( idn -t --quiet -u " $5 " )
14+ dvalue =$( idn -t --quiet -u " $5 " )
1515id=" $6 "
1616
1717# Importing variables
@@ -28,7 +28,7 @@ source $V_FUNC/domain_func.sh
2828check_args ' 5' " $# " ' user domain record type value [id]'
2929
3030# Checking argument format
31- format_validation ' user' ' domain' ' record' ' rtype'
31+ format_validation ' user' ' domain' ' record' ' rtype' ' dvalue '
3232
3333# Checking web system is enabled
3434is_system_enabled ' dns'
@@ -65,7 +65,7 @@ is_dns_record_free
6565zone=" $V_USERS /$user /zones/$domain "
6666
6767# Adding record
68- dns_rec=" ID='$id ' RECORD='$record ' TYPE='$rtype ' VALUE='$value '"
68+ dns_rec=" ID='$id ' RECORD='$record ' TYPE='$rtype ' VALUE='$dvalue '"
6969dns_rec=" $dns_rec SUSPEND='no' DATE='$V_DATE '"
7070echo " $dns_rec " >> $zone
7171
Original file line number Diff line number Diff line change 88# Argument defenition
99user=" $1 "
1010domain=$( idn -t --quiet -u " $2 " )
11+ domain_idn=$( idn -t --quiet -a " $domain " )
1112id=" $3 "
1213
1314# Importing variables
Original file line number Diff line number Diff line change @@ -266,6 +266,11 @@ format_validation() {
266266 MX) known=' yes' ;;
267267 TXT) known=' yes' ;;
268268 SRV) known=' yes' ;;
269+ DNSKEY) known=' yes' ;;
270+ KEY) known=' yes' ;;
271+ IPSECKEY) known=' yes' ;;
272+ PTR) known=' yes' ;;
273+ SPF) known=' yes' ;;
269274 * ) known=' no' ;;
270275 esac
271276
@@ -288,6 +293,31 @@ format_validation() {
288293 fi
289294 }
290295
296+ # Defining format_dvl function
297+ format_dvl () {
298+ val=" $1 "
299+
300+ # Checking spaces
301+ check_spaces=" $( echo " $val " | grep ' ' ) "
302+ check_rtype=" $( echo " A AAAA NS CNAME" | grep -i -w " $rtype " ) "
303+ if [ ! -z " $check_spaces " ] && [ ! -z " $check_rtype " ]; then
304+ echo " Error: $var is out of range"
305+ log_event ' debug' " $E_OUTOFRANGE $V_EVENT "
306+ exit $E_OUTOFRANGE
307+ fi
308+
309+ # Checking ip
310+ if [ " $rtype " = ' A' ]; then
311+ format_ip " $val "
312+ fi
313+
314+ # Checking domain
315+ if [ " $rtype " = ' NS' ]; then
316+ format_dom " $val "
317+ fi
318+
319+ }
320+
291321 # Lopp on all variables
292322 for var in $* ; do
293323 # Parsing reference
@@ -302,6 +332,7 @@ format_validation() {
302332 domain) format_dom " $v " ;;
303333 database) format_db " $v " ;;
304334 db_user) format_dbu " $v " ;;
335+ dvalue) format_dvl " $v " ;;
305336 fname) format_usr " $v " ;;
306337 job) format_int " $v " ;;
307338 ns) format_dom " $v " ;;
You can’t perform that action at this time.
0 commit comments