function axfr($args) { foreach (array("zone", "key-name", "key-type", "key", "server") as $val) { if (empty($args[$val])) { output_error('Invalid request, "' . $val . '" field is mandatory', 400); } } $r = new Net_DNS2_Resolver(array('nameservers' => array($args['server']))); $r->signTSIG($args['key-name'], $args['key'], $args['key-type']); $data = resolve($r, $args['zone'], 'AXFR'); $records = array_map(function ($r) { return array('name' => $r->name, 'ttl' => $r->ttl, 'type' => $r->type, 'data' => implode(' ', array_slice(explode(' ', $r), 4))); }, $data->answer); output(array("records" => $records)); }
<input name="domain" value="<?php echo $domain; ?> " type="hidden" /> <input name="command" style="font-weight: bold;" value="Delete" type="submit" /> <small><a href="javascript:PrintId('exampleCommand');">View</a>/<a href="javascript:HideId('exampleCommand');">hide</a> example command</small> </p> </form> </div> <?php $r = new Net_DNS2_Resolver(array('nameservers' => array(NS1))); // add a authenticate the request if (AUTH_SIGO != NULL) { $r->signSIG0(AUTH_SIGO_NAME, AUTH_SIGO); } else { if (AUTH_TSIG != NULL) { $r->signTSIG(AUTH_TSIG_NAME, AUTH_TSIG); } } try { $result = $r->query($domain, 'AXFR'); } catch (Net_DNS2_Exception $e) { echo '<p class="error">Failed: ' . $e->getMessage() . '</p>'; } // Sort object sort($result->answer->name); ?> <form method="get" action="./dnsupdate2.php" name="DynamicDNSUpdate"> <table border="1" cellpadding="3" cellspacing="0"> <tr> <td>Action</td> <td width="200">Domain</td> <td width="120">TTL (Time-To-Live)</td>