!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache. PHP/5.6.40 

uname -a: Linux cpanel06wh.bkk1.cloud.z.com 2.6.32-954.3.5.lve1.4.80.el6.x86_64 #1 SMP Thu Sep 24
01:42:00 EDT 2020 x86_64
 

uid=851(cp949260) gid=853(cp949260) groups=853(cp949260) 

Safe-mode: OFF (not secure)

/usr/include/dns/   drwxr-xr-x
Free 236.5 GB of 981.82 GB (24.09%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     dlz.h (10.89 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * Portions Copyright (C) 2005-2007, 2009-2011  Internet Systems Consortium, Inc. ("ISC")
 * Portions Copyright (C) 1999-2001  Internet Software Consortium.
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
 * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 * PERFORMANCE OF THIS SOFTWARE.
 */

/*
 * Copyright (C) 2002 Stichting NLnet, Netherlands, stichting@nlnet.nl.
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the
 * above copyright notice and this permission notice appear in all
 * copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND STICHTING NLNET
 * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
 * STICHTING NLNET BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
 * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE
 * USE OR PERFORMANCE OF THIS SOFTWARE.
 *
 * The development of Dynamically Loadable Zones (DLZ) for Bind 9 was
 * conceived and contributed by Rob Butler.
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the
 * above copyright notice and this permission notice appear in all
 * copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND ROB BUTLER
 * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
 * ROB BUTLER BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
 * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE
 * USE OR PERFORMANCE OF THIS SOFTWARE.
 */

/* $Id: dlz.h,v 1.12.14.2 2011-03-17 23:47:06 tbox Exp $ */

/*! \file dns/dlz.h */

#ifndef DLZ_H
#define DLZ_H 1

/*****
 ***** Module Info
 *****/

/*
 * DLZ Interface
 *
 * The DLZ interface allows zones to be looked up using a driver instead of
 * Bind's default in memory zone table.
 *
 *
 * Reliability:
 *    No anticipated impact.
 *
 * Resources:
 *
 * Security:
 *    No anticipated impact.
 *
 * Standards:
 *    None.
 */

/*****
 ***** Imports
 *****/

#include <dns/name.h>
#include <dns/types.h>
#include <dns/view.h>
#include <dst/dst.h>

#include <isc/lang.h>

ISC_LANG_BEGINDECLS

/***
 *** Types
 ***/

#define DNS_DLZ_MAGIC        ISC_MAGIC('D','L','Z','D')
#define DNS_DLZ_VALID(dlz)    ISC_MAGIC_VALID(dlz, DNS_DLZ_MAGIC)

typedef isc_result_t
(*dns_dlzallowzonexfr_t)(void *driverarg, void *dbdata, isc_mem_t *mctx,
             dns_rdataclass_t rdclass, dns_name_t *name,
             isc_sockaddr_t *clientaddr,
             dns_db_t **dbp);

/*%<
 * Method prototype.  Drivers implementing the DLZ interface MUST
 * supply an allow zone transfer method.  This method is called when
 * the DNS server is performing a zone transfer query.  The driver's
 * method should return ISC_R_SUCCESS and a database pointer to the
 * name server if the zone is supported by the database, and zone
 * transfer is allowed.  Otherwise it will return ISC_R_NOTFOUND if
 * the zone is not supported by the database, or ISC_R_NOPERM if zone
 * transfers are not allowed.  If an error occurs it should return a
 * result code indicating the type of error.
 */

typedef isc_result_t
(*dns_dlzcreate_t)(isc_mem_t *mctx, const char *dlzname, unsigned int argc,
           char *argv[], void *driverarg, void **dbdata);

/*%<
 * Method prototype.  Drivers implementing the DLZ interface MUST
 * supply a create method.  This method is called when the DNS server
 * is starting up and creating drivers for use later.
 */

typedef void
(*dns_dlzdestroy_t)(void *driverarg, void **dbdata);

/*%<
 * Method prototype.  Drivers implementing the DLZ interface MUST
 * supply a destroy method.  This method is called when the DNS server
 * is shutting down and no longer needs the driver.
 */

typedef isc_result_t
(*dns_dlzfindzone_t)(void *driverarg, void *dbdata, isc_mem_t *mctx,
             dns_rdataclass_t rdclass, dns_name_t *name,
             dns_db_t **dbp);

/*%<

 * Method prototype.  Drivers implementing the DLZ interface MUST
 * supply a find zone method.  This method is called when the DNS
 * server is performing a query.  The find zone method will be called
 * with the longest possible name first, and continue to be called
 * with successively shorter domain names, until any of the following
 * occur:
 *
 * \li    1) a match is found, and the function returns (ISC_R_SUCCESS)
 *
 * \li    2) a problem occurs, and the functions returns anything other
 *       than (ISC_R_NOTFOUND)
 * \li    3) we run out of domain name labels. I.E. we have tried the
 *       shortest domain name
 * \li    4) the number of labels in the domain name is less than
 *       min_labels for dns_dlzfindzone
 *
 * The driver's find zone method should return ISC_R_SUCCESS and a
 * database pointer to the name server if the zone is supported by the
 * database.  Otherwise it will return ISC_R_NOTFOUND, and a null
 * pointer if the zone is not supported.  If an error occurs it should
 * return a result code indicating the type of error.
 */


typedef isc_result_t
(*dns_dlzconfigure_t)(void *driverarg, void *dbdata, dns_view_t *view);
/*%<
 * Method prototype.  Drivers implementing the DLZ interface may
 * optionally supply a configure method. If supplied, this will be
 * called immediately after the create method is called. The driver
 * may call configuration functions during the configure call
 */


typedef isc_boolean_t (*dns_dlzssumatch_t)(dns_name_t *signer,
                       dns_name_t *name,
                       isc_netaddr_t *tcpaddr,
                       dns_rdatatype_t type,
                       const dst_key_t *key,
                       void *driverarg, void *dbdata);
/*%<
 * Method prototype.  Drivers implementing the DLZ interface may
 * optionally supply a ssumatch method. If supplied, this will be
 * called to authorize update requests
 */

/*% the methods supplied by a DLZ driver */
typedef struct dns_dlzmethods {
    dns_dlzcreate_t        create;
    dns_dlzdestroy_t    destroy;
    dns_dlzfindzone_t    findzone;
    dns_dlzallowzonexfr_t    allowzonexfr;
    dns_dlzconfigure_t    configure;
    dns_dlzssumatch_t    ssumatch;
} dns_dlzmethods_t;

/*% information about a DLZ driver */
struct dns_dlzimplementation {
    const char                *name;
    const dns_dlzmethods_t            *methods;
    isc_mem_t                *mctx;
    void                    *driverarg;
    ISC_LINK(dns_dlzimplementation_t)    link;
};

typedef isc_result_t (*dlzconfigure_callback_t)(dns_view_t *, dns_zone_t *);

/*% An instance of a DLZ driver */
struct dns_dlzdb {
    unsigned int        magic;
    isc_mem_t        *mctx;
    dns_dlzimplementation_t    *implementation;
    void            *dbdata;
    dlzconfigure_callback_t configure_callback;
#ifdef BIND9
    dns_ssutable_t         *ssutable;
#endif
};


/***
 *** Method declarations
 ***/

isc_result_t
dns_dlzallowzonexfr(dns_view_t *view, dns_name_t *name,
            isc_sockaddr_t *clientaddr, dns_db_t **dbp);

/*%<
 * This method is called when the DNS server is performing a zone
 * transfer query.  It will call the DLZ driver's allow zone transfer
 * method.
 */

isc_result_t
dns_dlzcreate(isc_mem_t *mctx, const char *dlzname,
          const char *drivername, unsigned int argc,
          char *argv[], dns_dlzdb_t **dbp);

/*%<
 * This method is called when the DNS server is starting up and
 * creating drivers for use later.  It will search the DLZ driver list
 * for 'drivername' and return a DLZ driver via dbp if a match is
 * found.  If the DLZ driver supplies a create method, this function
 * will call it.
 */

void
dns_dlzdestroy(dns_dlzdb_t **dbp);

/*%<
 * This method is called when the DNS server is shutting down and no
 * longer needs the driver.  If the DLZ driver supplies a destroy
 * methods, this function will call it.
 */

isc_result_t
dns_dlzfindzone(dns_view_t *view, dns_name_t *name,
        unsigned int minlabels, dns_db_t **dbp);

/*%<
 * This method is called when the DNS server is performing a query.
 * It will call the DLZ driver's find zone method.
 */

isc_result_t
dns_dlzregister(const char *drivername, const dns_dlzmethods_t *methods,
         void *driverarg, isc_mem_t *mctx,
        dns_dlzimplementation_t **dlzimp);

/*%<
 * Register a dynamically loadable zones (DLZ) driver for the database
 * type 'drivername', implemented by the functions in '*methods'.
 *
 * dlzimp must point to a NULL dlz_implementation_t pointer.  That is,
 * dlzimp != NULL && *dlzimp == NULL.  It will be assigned a value that
 * will later be used to identify the driver when deregistering it.
 */

isc_result_t
dns_dlzstrtoargv(isc_mem_t *mctx, char *s, unsigned int *argcp, char ***argvp);

/*%<
 * This method is called when the name server is starting up to parse
 * the DLZ driver command line from named.conf.  Basically it splits
 * up a string into and argc / argv.  The primary difference of this
 * method is items between braces { } are considered only 1 word.  for
 * example the command line "this is { one grouped phrase } and this
 * isn't" would be parsed into:
 *
 * \li    argv[0]: "this"
 * \li    argv[1]: "is"
 * \li    argv{2]: " one grouped phrase "
 * \li    argv[3]: "and"
 * \li    argv[4]: "this"
 * \li    argv{5}: "isn't"
 *
 * braces should NOT be nested, more than one grouping in the command
 * line is allowed.  Notice, argv[2] has an extra space at the
 * beginning and end.  Extra spaces are not stripped between a
 * grouping.  You can do so in your driver if needed, or be sure not
 * to put extra spaces before / after the braces.
 */

void
dns_dlzunregister(dns_dlzimplementation_t **dlzimp);

/*%<
 * Removes the dlz driver from the list of registered dlz drivers.
 * There must be no active dlz drivers of this type when this function
 * is called.
 */


typedef isc_result_t dns_dlz_writeablezone_t(dns_view_t *view,
                         const char *zone_name);
dns_dlz_writeablezone_t dns_dlz_writeablezone;
/*%<
 * creates a writeable DLZ zone. Must be called from within the
 * configure() method of a DLZ driver.
 */


isc_result_t
dns_dlzconfigure(dns_view_t *view, dlzconfigure_callback_t callback);
/*%<
 * call a DLZ drivers configure method, if supplied
 */

isc_boolean_t
dns_dlz_ssumatch(dns_dlzdb_t *dlzdatabase,
          dns_name_t *signer, dns_name_t *name, isc_netaddr_t *tcpaddr,
          dns_rdatatype_t type, const dst_key_t *key);
/*%<
 * call a DLZ drivers ssumatch method, if supplied. Otherwise return ISC_FALSE
 */

ISC_LANG_ENDDECLS

#endif /* DLZ_H */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.0853 ]--