!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

C:\dmz\php\pear\Net\   drwxrwxrwx
Free 3.24 GB of 39.52 GB (8.2%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     DNS.php (14.57 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
* Class to provide IPv4 calculations
*
* Module written/ported by Eric Kilfoil <eric@ypass.net>
*
* This is the copyright notice from the PERL Net::DNS module:
*
* Copyright (c) 1997-2000 Michael Fuhr.  All rights reserved.  This
* program is free software; you can redistribute it and/or modify it
* under the same terms as Perl itself.
*
* The majority of this is _NOT_ my code.  I simply ported it from the
* PERL Net::DNS module.
*
* The author of the Net::DNS module is Michael Fuhr <mike@fuhr.org>
* http://www.fuhr.org/~mfuhr/perldns/
*
* Michael Fuhr has nothing to with the porting of this code to PHP.
* Any questions directly related to this class library should be directed
* to the maintainer.
*
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.01 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_01.txt.  If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category   Net
* @package    Net_IPv4
* @author     Eric Kilfoil <edk@ypass.net>
* @author     Marco Kaiser <bate@php.net>
* @author     Florian Anderiasch <fa@php.net>
* @copyright  The PHP Group
* @license    http://www.php.net/license/3_01.txt  PHP License 3.01
* @version    CVS: $Id: DNS.php 302014 2010-08-09 06:17:29Z bate $
* @link       http://pear.php.net/package/Net_DNS
*/

/* Include information {{{ */

    
require_once("Net/DNS/Header.php");
    require_once(
"Net/DNS/Question.php");
    require_once(
"Net/DNS/Packet.php");
    require_once(
"Net/DNS/Resolver.php");
    require_once(
"Net/DNS/RR.php");

/* }}} */
/* GLOBAL VARIABLE definitions {{{ */

// Used by the Net_DNS_Resolver object to generate an ID

$GLOBALS['_Net_DNS_packet_id'] = mt_rand(065535);

/* }}} */
/* Net_DNS object definition (incomplete) {{{ */
/**
 * Initializes a resolver object
 *
 * Net_DNS allows you to query a nameserver for DNS  lookups.  It bypasses the
 * system resolver library  entirely, which allows you to query any nameserver,
 * set your own values for retries, timeouts, recursion,  etc.
 *
 * @author Eric Kilfoil <eric@ypass.net>
 * @package Net_DNS
 * @version 0.01alpha
 */
class Net_DNS
{
    
/* class variable definitions {{{ */
    /**
     * A default resolver object created on instantiation
     *
     * @var Net_DNS_Resolver object
     */
    
var $resolver;
    var 
$VERSION '1.00b2'// This should probably be a define :(
    
var $PACKETSZ 512;
    var 
$HFIXEDSZ 12;
    var 
$QFIXEDSZ 4;
    var 
$RRFIXEDSZ 10;
    var 
$INT32SZ 4;
    var 
$INT16SZ 2;
    
/* }}} */
    /* class constructor - Net_DNS() {{{ */

    /**
     * Initializes a resolver object
     *
     * @see Net_DNS_Resolver
     * @param array $defaults
     * @return Net_DNS
     */
    
function Net_DNS($defaults = array())
    {
        
$this->resolver = new Net_DNS_Resolver($defaults);
    }
    
/* }}} */
    /* Net_DNS::opcodesbyname() {{{ */
    /**
     * Translates opcode names to integers
     *
     * Translates the name of a DNS OPCODE into it's assigned  number
     * listed in RFC1035, RFC1996, or RFC2136. Valid  OPCODES are:
     * <ul>
     *   <li>QUERY
     *   <li>IQUERY
     *   <li>STATUS
     *   <li>NS_NOTIFY_OP
     *   <li>UPDATE
     * <ul>
     *
     * @param   string  $opcode A DNS Packet OPCODE name
     * @return  integer The integer value of an OPCODE
     * @see     Net_DNS::opcodesbyval()
     */
    
function opcodesbyname($opcode)
    {
        
$op = array(
                
'QUERY'        => 0,   // RFC 1035
                
'IQUERY'       => 1,   // RFC 1035
                
'STATUS'       => 2,   // RFC 1035
                
'NS_NOTIFY_OP' => 4,   // RFC 1996
                
'UPDATE'       => 5,   // RFC 2136
                
);
        if (! 
strlen($op[$opcode])) {
            
$op[$opcode] = null;
        }
        return 
$op[$opcode];
    }

    
/* }}} */
    /* Net_DNS::opcodesbyval() {{{*/
    /**
     * Translates opcode integers into names
     *
     * Translates the integer value of an opcode into it's name
     *
     * @param   integer $opcodeval  A DNS packet opcode integer
     * @return  string  The name of the OPCODE
     * @see     Net_DNS::opcodesbyname()
     */
    
function opcodesbyval($opcodeval)
    {
        
$opval = array(
                
=> 'QUERY',
                
=> 'IQUERY',
                
=> 'STATUS',
                
=> 'NS_NOTIFY_OP',
                
=> 'UPDATE',
                );
        if (! 
strlen($opval[$opcodeval])) {
            
$opval[$opcodeval] = null;
        }
        return 
$opval[$opcodeval];
    }

    
/*}}}*/
    /* Net_DNS::rcodesbyname() {{{*/
    /**
     * Translates rcode names to integers
     *
     * Translates the name of a DNS RCODE (result code) into it's assigned number.
     * <ul>
     *   <li>NOERROR
     *   <li>FORMERR
     *   <li>SERVFAIL
     *   <li>NXDOMAIN
     *   <li>NOTIMP
     *   <li>REFUSED
     *   <li>YXDOMAIN
     *   <li>YXRRSET
     *   <li>NXRRSET
     *   <li>NOTAUTH
     *   <li>NOTZONE
     * <ul>
     *
     * @param   string  $rcode  A DNS Packet RCODE name
     * @return  integer The integer value of an RCODE
     * @see     Net_DNS::rcodesbyval()
     */
    
function rcodesbyname($rcode)
    {
        
$rc = array(
                
'NOERROR'   => 0,   // RFC 1035
                
'FORMERR'   => 1,   // RFC 1035
                
'SERVFAIL'  => 2,   // RFC 1035
                
'NXDOMAIN'  => 3,   // RFC 1035
                
'NOTIMP'    => 4,   // RFC 1035
                
'REFUSED'   => 5,   // RFC 1035
                
'YXDOMAIN'  => 6,   // RFC 2136
                
'YXRRSET'   => 7,   // RFC 2136
                
'NXRRSET'   => 8,   // RFC 2136
                
'NOTAUTH'   => 9,   // RFC 2136
                
'NOTZONE'   => 10,    // RFC 2136
                
);
        if (! 
strlen($rc[$rcode])) {
            
$rc[$rcode] = null;
        }
        return 
$rc[$rcode];
    }

    
/*}}}*/
    /* Net_DNS::rcodesbyval() {{{*/
    /**
     * Translates rcode integers into names
     *
     * Translates the integer value of an rcode into it's name
     *
     * @param   integer $rcodeval   A DNS packet rcode integer
     * @return  string  The name of the RCODE
     * @see     Net_DNS::rcodesbyname()
     */
    
function rcodesbyval($rcodeval)
    {
        
$rc = array(
                
=> 'NOERROR',
                
=> 'FORMERR',
                
=> 'SERVFAIL',
                
=> 'NXDOMAIN',
                
=> 'NOTIMP',
                
=> 'REFUSED',
                
=> 'YXDOMAIN',
                
=> 'YXRRSET',
                
=> 'NXRRSET',
                
=> 'NOTAUTH',
                
10 => 'NOTZONE',
                );
        if (! 
strlen($rc[$rcodeval])) {
            
$rc[$rcodeval] = null;
        }
        return 
$rc[$rcodeval];
    }

    
/*}}}*/
    /* Net_DNS::typesbyname() {{{*/
    /**
     * Translates RR type names into integers
     *
     * Translates a Resource Record from it's name to it's  integer value.
     * Valid resource record types are:
     *
     * <ul>
     *   <li>A
     *   <li>NS
     *   <li>MD
     *   <li>MF
     *   <li>CNAME
     *   <li>SOA
     *   <li>MB
     *   <li>MG
     *   <li>MR
     *   <li>NULL
     *   <li>WKS
     *   <li>PTR
     *   <li>HINFO
     *   <li>MINFO
     *   <li>MX
     *   <li>TXT
     *   <li>RP
     *   <li>AFSDB
     *   <li>X25
     *   <li>ISDN
     *   <li>RT
     *   <li>NSAP
     *   <li>NSAP_PTR
     *   <li>SIG
     *   <li>KEY
     *   <li>PX
     *   <li>GPOS
     *   <li>AAAA
     *   <li>LOC
     *   <li>NXT
     *   <li>EID
     *   <li>NIMLOC
     *   <li>SRV
     *   <li>ATMA
     *   <li>NAPTR
     *   <li>TSIG
     *   <li>SPF
     *   <li>UINFO
     *   <li>UID
     *   <li>GID
     *   <li>UNSPEC
     *   <li>IXFR
     *   <li>AXFR
     *   <li>MAILB
     *   <li>MAILA
     *   <li>ANY
     * <ul>
     *
     * @param   string  $rrtype A DNS packet RR type name
     * @return  integer The integer value of an RR type
     * @see     Net_DNS::typesbyval()
     */
    
function typesbyname($rrtype)
    {
        
$rc = array(
                
'A'             => 1,
                
'NS'            => 2,
                
'MD'            => 3,
                
'MF'            => 4,
                
'CNAME'         => 5,
                
'SOA'           => 6,
                
'MB'            => 7,
                
'MG'            => 8,
                
'MR'            => 9,
                
'NULL'          => 10,
                
'WKS'           => 11,
                
'PTR'           => 12,
                
'HINFO'         => 13,
                
'MINFO'         => 14,
                
'MX'            => 15,
                
'TXT'           => 16,
                
'RP'            => 17,
                
'AFSDB'         => 18,
                
'X25'           => 19,
                
'ISDN'          => 20,
                
'RT'            => 21,
                
'NSAP'          => 22,
                
'NSAP_PTR'      => 23,
                
'SIG'           => 24,
                
'KEY'           => 25,
                
'PX'            => 26,
                
'GPOS'          => 27,
                
'AAAA'          => 28,
                
'LOC'           => 29,
                
'NXT'           => 30,
                
'EID'           => 31,
                
'NIMLOC'        => 32,
                
'SRV'           => 33,
                
'ATMA'          => 34,
                
'NAPTR'         => 35,
                
'SPF'           => 99,
                
'UINFO'         => 100,
                
'UID'           => 101,
                
'GID'           => 102,
                
'UNSPEC'        => 103,
                
'TSIG'          => 250,
                
'IXFR'          => 251,
                
'AXFR'          => 252,
                
'MAILB'         => 253,
                
'MAILA'         => 254,
                
'ANY'           => 255,
                );
        if (empty(
$rc[$rrtype])) {
            
$rc[$rrtype] = null;
        }
        return 
$rc[$rrtype];
    }

    
/*}}}*/
    /* Net_DNS::typesbyval() {{{*/
    /**
     * Translates RR type integers into names
     *
     * Translates the integer value of an RR type into it's name
     *
     * @param   integer $rrtypeval  A DNS packet RR type integer
     * @return  string  The name of the RR type
     * @see     Net_DNS::typesbyname()
     */
    
function typesbyval($rrtypeval)
    {
        
$rc = array(
                
=> 'A',
                
=> 'NS',
                
=> 'MD',
                
=> 'MF',
                
=> 'CNAME',
                
=> 'SOA',
                
=> 'MB',
                
=> 'MG',
                
=> 'MR',
                
10 => 'NULL',
                
11 => 'WKS',
                
12 => 'PTR',
                
13 => 'HINFO',
                
14 => 'MINFO',
                
15 => 'MX',
                
16 => 'TXT',
                
17 => 'RP',
                
18 => 'AFSDB',
                
19 => 'X25',
                
20 => 'ISDN',
                
21 => 'RT',
                
22 => 'NSAP',
                
23 => 'NSAP_PTR',
                
24 => 'SIG',
                
25 => 'KEY',
                
26 => 'PX',
                
27 => 'GPOS',
                
28 => 'AAAA',
                
29 => 'LOC',
                
30 => 'NXT',
                
31 => 'EID',
                
32 => 'NIMLOC',
                
33 => 'SRV',
                
34 => 'ATMA',
                
35 => 'NAPTR',
                
99 => 'SPF',
                
100 => 'UINFO',
                
101 => 'UID',
                
102 => 'GID',
                
103 => 'UNSPEC',
                
250 => 'TSIG',
                
251 => 'IXFR',
                
252 => 'AXFR',
                
253 => 'MAILB',
                
254 => 'MAILA',
                
255 => 'ANY',
                );
        
$rrtypeval preg_replace(array('/\s*/',' /^0*/'), ''$rrtypeval);
        if (empty(
$rc[$rrtypeval])) {
            
$rc[$rrtypeval] = null;
        }
        return 
$rc[$rrtypeval];
    }

    
/*}}}*/
    /* Net_DNS::classesbyname() {{{*/
    /**
     * translates a DNS class from it's name to it's  integer value. Valid
     * class names are:
     * <ul>
     *   <li>IN
     *   <li>CH
     *   <li>HS
     *   <li>NONE
     *   <li>ANY
     * </ul>
     *
     * @param   string  $class  A DNS packet class type
     * @return  integer The integer value of an class type
     * @see     Net_DNS::classesbyval()
     */
    
function classesbyname($class)
    {
        
$rc = array(
                
'IN'   => 1,   // RFC 1035
                
'CH'   => 3,   // RFC 1035
                
'HS'   => 4,   // RFC 1035
                
'NONE' => 254// RFC 2136
                
'ANY'  => 255  // RFC 1035
                
);
        if (!isset(
$rc[$class])) {
            
$rc[$class] = null;
        }
        return 
$rc[$class];
    }

    
/*}}}*/
    /* Net_DNS::classesbyval() {{{*/
    /**
     * Translates RR class integers into names
     *
     * Translates the integer value of an RR class into it's name
     *
     * @param   integer $classval   A DNS packet RR class integer
     * @return  string  The name of the RR class
     * @see     Net_DNS::classesbyname()
     */
    
function classesbyval($classval)
    {
        
$rc = array(
                
=> 'IN',
                
=> 'CH',
                
=> 'HS',
                
254 => 'NONE',
                
255 => 'ANY'
                
);
        
$classval preg_replace(array('/\s*/',' /^0*/'), ''$classval);
        if (empty(
$rc[$classval])) {
            
$rc[$classval] = null;
        }
        return 
$rc[$classval];
    }

    
/*}}}*/
    /* not completed - Net_DNS::mx() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::yxrrset() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::nxrrset() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::yxdomain() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::nxdomain() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::rr_add() {{{*/
    /*}}}*/
    /* not completed - Net_DNS::rr_del() {{{*/
    /*}}}*/
}
/* }}} */
/* VIM Settings {{{
 * Local variables:
 * tab-width: 4
 * c-basic-offset: 4
 * soft-stop-width: 4
 * c indent on
 * End:
 * vim600: sw=4 ts=4 sts=4 cindent fdm=marker et
 * vim<600: sw=4 ts=4
 * }}} */
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0312 ]--