return ($subnetid, $subnet);
}
-my $verify_dns_zone = sub {
+sub verify_dns_zone {
my ($zone, $dns) = @_;
return if !$zone || !$dns;
my $plugin_config = $dns_cfg->{ids}->{$dns};
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->verify_zone($plugin_config, $zone);
-};
+}
-my $get_reversedns_zone = sub {
+sub get_reversedns_zone {
my ($subnetid, $subnet, $dns, $ip) = @_;
return if !$subnetid || !$dns || !$ip;
my $plugin_config = $dns_cfg->{ids}->{$dns};
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->get_reversedns_zone($plugin_config, $subnetid, $subnet, $ip);
-};
+}
-my $add_dns_record = sub {
+sub add_dns_record {
my ($zone, $dns, $hostname, $ip) = @_;
return if !$zone || !$dns || !$hostname || !$ip;
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->add_a_record($plugin_config, $zone, $hostname, $ip);
-};
+}
-my $add_dns_ptr_record = sub {
+sub add_dns_ptr_record {
my ($reversezone, $zone, $dns, $hostname, $ip) = @_;
return if !$zone || !$reversezone || !$dns || !$hostname || !$ip;
my $plugin_config = $dns_cfg->{ids}->{$dns};
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->add_ptr_record($plugin_config, $reversezone, $hostname, $ip);
-};
+}
-my $del_dns_record = sub {
+sub del_dns_record {
my ($zone, $dns, $hostname, $ip) = @_;
return if !$zone || !$dns || !$hostname || !$ip;
my $plugin_config = $dns_cfg->{ids}->{$dns};
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->del_a_record($plugin_config, $zone, $hostname, $ip);
-};
+}
-my $del_dns_ptr_record = sub {
+sub del_dns_ptr_record {
my ($reversezone, $dns, $ip) = @_;
return if !$reversezone || !$dns || !$ip;
my $plugin_config = $dns_cfg->{ids}->{$dns};
my $plugin = PVE::Network::SDN::Dns::Plugin->lookup($plugin_config->{type});
$plugin->del_ptr_record($plugin_config, $reversezone, $ip);
-};
+}
sub next_free_ip {
my ($zone, $subnetid, $subnet, $hostname, $mac, $description) = @_;
$hostname .= ".$dnszoneprefix" if $dnszoneprefix;
#verify dns zones before ipam
- &$verify_dns_zone($dnszone, $dns);
+ verify_dns_zone($dnszone, $dns);
if($ipamid) {
my $ipam_cfg = PVE::Network::SDN::Ipams::config();
}
eval {
- my $reversednszone = &$get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
+ my $reversednszone = get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
#add dns
- &$add_dns_record($dnszone, $dns, $hostname, $ip);
+ add_dns_record($dnszone, $dns, $hostname, $ip);
#add reverse dns
- &$add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
+ add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
};
if ($@) {
#rollback
my $dns = $zone->{dns};
my $dnszone = $zone->{dnszone};
my $reversedns = $zone->{reversedns};
- my $reversednszone = &$get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
+ my $reversednszone = get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
my $dnszoneprefix = $subnet->{dnszoneprefix};
$hostname .= ".$dnszoneprefix" if $dnszoneprefix;
#verify dns zones before ipam
- &$verify_dns_zone($dnszone, $dns);
- &$verify_dns_zone($reversednszone, $reversedns);
+ verify_dns_zone($dnszone, $dns);
+ verify_dns_zone($reversednszone, $reversedns);
if ($ipamid) {
my $ipam_cfg = PVE::Network::SDN::Ipams::config();
eval {
#add dns
- &$add_dns_record($dnszone, $dns, $hostname, $ip);
+ add_dns_record($dnszone, $dns, $hostname, $ip);
#add reverse dns
- &$add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
+ add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
};
if ($@) {
#rollback
my $dns = $zone->{dns};
my $dnszone = $zone->{dnszone};
my $reversedns = $zone->{reversedns};
- my $reversednszone = &$get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
+ my $reversednszone = get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
my $dnszoneprefix = $subnet->{dnszoneprefix};
$hostname .= ".$dnszoneprefix" if $dnszoneprefix;
#verify dns zones before ipam
- &$verify_dns_zone($dnszone, $dns);
- &$verify_dns_zone($reversednszone, $reversedns);
+ verify_dns_zone($dnszone, $dns);
+ verify_dns_zone($reversednszone, $reversedns);
if ($ipamid) {
my $ipam_cfg = PVE::Network::SDN::Ipams::config();
eval {
#add dns
- &$del_dns_record($dnszone, $dns, $oldhostname, $ip);
- &$add_dns_record($dnszone, $dns, $hostname, $ip);
+ del_dns_record($dnszone, $dns, $oldhostname, $ip);
+ add_dns_record($dnszone, $dns, $hostname, $ip);
#add reverse dns
- &$del_dns_ptr_record($reversednszone, $reversedns, $ip);
- &$add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
+ del_dns_ptr_record($reversednszone, $reversedns, $ip);
+ add_dns_ptr_record($reversednszone, $dnszone, $reversedns, $hostname, $ip);
};
}
my $dns = $zone->{dns};
my $dnszone = $zone->{dnszone};
my $reversedns = $zone->{reversedns};
- my $reversednszone = &$get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
+ my $reversednszone = get_reversedns_zone($subnetid, $subnet, $reversedns, $ip);
my $dnszoneprefix = $subnet->{dnszoneprefix};
$hostname .= ".$dnszoneprefix" if $dnszoneprefix;
- &$verify_dns_zone($dnszone, $dns);
- &$verify_dns_zone($reversednszone, $reversedns);
+ verify_dns_zone($dnszone, $dns);
+ verify_dns_zone($reversednszone, $reversedns);
if ($ipamid) {
my $ipam_cfg = PVE::Network::SDN::Ipams::config();
}
eval {
- &$del_dns_record($dnszone, $dns, $hostname, $ip);
- &$del_dns_ptr_record($reversednszone, $reversedns, $ip);
+ del_dns_record($dnszone, $dns, $hostname, $ip);
+ del_dns_ptr_record($reversednszone, $reversedns, $ip);
};
if ($@) {
warn $@;