Source for file TSIG.php
Documentation is available at TSIG.php
* Net_DNS: A resolver library for PHP
* Copyright (c) 2002-2003 Eric Kilfoil eric@ypass.net
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
define('NET_DNS_DEFAULT_ALGORITHM', 'hmac-md5.sig-alg.reg.int');
define('NET_DNS_DEFAULT_FUDGE', 300 );
/* Net_DNS_RR_TSIG definition {{{ */
* A representation of a resource record of type <b>TSIG</b>
/* class variable definitions {{{ */
/* class constructor - RR(&$rro, $data, $offset = '') {{{ */
$this->name = $rro->name;
$this->type = $rro->type;
$this->class = $rro->class;
$this->rdata = $rro->rdata;
$d = unpack(" \@$offset/nth/Ntl/nfudge/nmac_size" , $data);
$this->fudge = $d['fudge'];
$d = unpack(" @$offset/noid/nerror/nolen" , $data);
$this->error = $d['error'];
$d = unpack('nodata_high/Nodata_low', $odata);
/* Net_DNS_RR_TSIG::rdatastr() {{{ */
if (strlen($this->algorithm)) {
$rdatastr = $this->algorithm . '. ' . $this->time_signed . ' ' .
/* Net_DNS_RR_TSIG::rr_rdata($packet, $offset) {{{ */
$newpacket->header ->arcount--;
$newpacket->compnames = array ();
* Add the request MAC if present (used to validate responses).
if (isset ($this->request_mac)) {
$sigdata .= pack('H*', $this->request_mac);
$sigdata .= $newpacket->data ();
* Don't compress the record (key) name.
* Don't compress the algorithm name.
$tmppacket->compnames = array ();
$sigdata .= $tmppacket->dn_comp (strtolower($this->algorithm), 0 );
$this->mac = mhash(MHASH_MD5 , $sigdata, $key);
* Don't compress the algorithm name.
$rdata .= $tmppacket->dn_comp (strtolower($this->algorithm), 0 );
$rdata .= pack('nnn',$packet->header ->id ,
/* Net_DNS_RR_TSIG::error() {{{ */
* vim600: sw=4 ts=4 sts=4 cindent fdm=marker et
Documentation generated on Mon, 11 Mar 2019 14:35:57 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.
|