diff options
author | Phil Davis <phil@jankaritech.com> | 2017-05-21 09:49:27 +0545 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2017-05-23 13:40:25 -0300 |
commit | 14e90f2e5d34ca34cf226ece4f8fcb4fb6c943fa (patch) | |
tree | 3dc53dfa8dbfd062533de78dfce80560da0dddc3 /src/usr/local/www/diag_dns.php | |
parent | 2e7f67b274960210ef2d606f72b7bfee22c1b1c7 (diff) | |
download | pfsense-14e90f2e5d34ca34cf226ece4f8fcb4fb6c943fa.zip pfsense-14e90f2e5d34ca34cf226ece4f8fcb4fb6c943fa.tar.gz |
Diag DNS do not create an empty alias if name does not resolve
(cherry picked from commit f445385114c43cb46b8188a7cea425648f7647f2)
Diffstat (limited to 'src/usr/local/www/diag_dns.php')
-rw-r--r-- | src/usr/local/www/diag_dns.php | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/src/usr/local/www/diag_dns.php b/src/usr/local/www/diag_dns.php index b6082a6..502efa7 100644 --- a/src/usr/local/www/diag_dns.php +++ b/src/usr/local/www/diag_dns.php @@ -122,6 +122,7 @@ if (isset($_POST['create_alias']) && (is_hostname($host) || is_ipaddr($host))) { if ($resolved) { $resolved = resolve_host_addresses($host); $isfirst = true; + $addresses = ""; foreach ($resolved as $re) { if ($re['data'] != "") { if (!$isfirst) { @@ -139,18 +140,24 @@ if (isset($_POST['create_alias']) && (is_hostname($host) || is_ipaddr($host))) { $isfirst = false; } } - $newalias = array(); - $newalias['name'] = $aliasname; - $newalias['type'] = "network"; - $newalias['address'] = $addresses; - $newalias['descr'] = gettext("Created from Diagnostics-> DNS Lookup"); - if ($alias_exists) { - $a_aliases[$id] = $newalias; + if ($addresses == "") { + $couldnotcreatealias = true; } else { - $a_aliases[] = $newalias; + $newalias = array(); + $newalias['name'] = $aliasname; + $newalias['type'] = "network"; + $newalias['address'] = $addresses; + $newalias['descr'] = gettext("Created from Diagnostics-> DNS Lookup"); + if ($alias_exists) { + $a_aliases[$id] = $newalias; + } else { + $a_aliases[] = $newalias; + } + write_config(gettext("Created an alias from Diagnostics - DNS Lookup page.")); + $createdalias = true; } - write_config(); - $createdalias = true; + } else { + $couldnotcreatealias = true; } } @@ -246,6 +253,14 @@ if ($createdalias) { } } +if ($couldnotcreatealias) { + if ($alias_exists) { + print_info_box(sprintf(gettext("Could not update alias for %s"), $host), 'warning', false); + } else { + print_info_box(sprintf(gettext("Could not create alias for %s"), $host), 'warning', false); + } +} + $form = new Form(false); $section = new Form_Section('DNS Lookup'); |