Annotation of embedaddon/dhcp/includes/minires/minires.h, revision 1.1

1.1     ! misho       1: /*
        !             2:  * Copyright (c) 2004,2007-2010 by Internet Systems Consortium, Inc. ("ISC")
        !             3:  * Copyright (c) 2001-2003 by Internet Software Consortium
        !             4:  *
        !             5:  * Permission to use, copy, modify, and distribute this software for any
        !             6:  * purpose with or without fee is hereby granted, provided that the above
        !             7:  * copyright notice and this permission notice appear in all copies.
        !             8:  *
        !             9:  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
        !            10:  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
        !            11:  * MERCHANTABILITY AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR
        !            12:  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
        !            13:  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
        !            14:  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
        !            15:  * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
        !            16:  *
        !            17:  *   Internet Systems Consortium, Inc.
        !            18:  *   950 Charter Street
        !            19:  *   Redwood City, CA 94063
        !            20:  *   <info@isc.org>
        !            21:  *   https://www.isc.org/
        !            22:  */
        !            23: #ifndef MINIRES_H
        !            24: #define MINIRES_H
        !            25: 
        !            26: #include "cdefs.h"
        !            27: #include "osdep.h"
        !            28: 
        !            29: #define _ns_flagdata MR_ns_flagdata
        !            30: 
        !            31: #include "minires/resolv.h"
        !            32: #include "minires/res_update.h"
        !            33: #include "isc-dhcp/result.h"
        !            34: 
        !            35: /*
        !            36:  * Based on the Dynamic DNS reference implementation by Viraj Bais
        !            37:  * <viraj_bais@ccm.fm.intel.com>
        !            38:  */
        !            39: 
        !            40: int minires_mkupdate (ns_updrec *, unsigned char *, unsigned);
        !            41: int minires_update (ns_updrec *);
        !            42: ns_updrec *minires_mkupdrec (int, const char *, unsigned int,
        !            43:                             unsigned int, unsigned long);
        !            44: void minires_freeupdrec (ns_updrec *);
        !            45: int minires_nmkupdate (res_state, ns_updrec *, double *, unsigned *);
        !            46: isc_result_t minires_nupdate (res_state, ns_updrec *);
        !            47: int minires_ninit (res_state);
        !            48: ns_rcode isc_rcode_to_ns (isc_result_t);
        !            49: 
        !            50: int MRns_name_compress(const char *, u_char *, size_t, const unsigned char **,
        !            51:                       const unsigned char **);
        !            52: int MRns_name_unpack(const unsigned char *, const unsigned char *,
        !            53:                     const unsigned char *, unsigned char *, size_t);
        !            54: int MRns_name_ntop(const unsigned char *, char *, size_t);
        !            55: int MRns_name_pton(const char *, u_char *, size_t);
        !            56: 
        !            57: #if defined (MINIRES_LIB)
        !            58: #define res_update minires_update
        !            59: #define res_mkupdate minires_mkupdate
        !            60: #define res_mkupdrec minires_mkupdrec
        !            61: #define res_freeupdrec minires_freeupdrec
        !            62: #define res_nmkupdate minires_nmkupdate
        !            63: #define res_nupdate minires_nupdate
        !            64: #define __p_type_syms MR__p_type_syms
        !            65: #define dn_comp MRdn_comp
        !            66: #define loc_aton MRloc_aton
        !            67: #define sym_ston MRsym_ston
        !            68: #define res_buildservicelist MRres_buildservicelist
        !            69: #define res_destroyservicelist MRres_destroyservicelist
        !            70: #define res_buildprotolist MRres_buildprotolist
        !            71: #define res_destroyprotolist MRres_destroyprotolist
        !            72: #define res_servicenumber MRres_servicenumber
        !            73: #define res_protocolnumber MRres_protocolnumber
        !            74: #define res_protocolname MRres_protocolname
        !            75: #define res_servicename MRres_servicename
        !            76: #define ns_datetosecs MRns_datetosecs
        !            77: #define b64_pton MRb64_pton
        !            78: #define res_ninit minires_ninit
        !            79: #define res_randomid MRres_randomid
        !            80: #define res_findzonecut MRres_findzonecut
        !            81: #define res_nsend MRres_nsend
        !            82: #define res_nsendsigned MRres_nsendsigned
        !            83: #define ns_samename MRns_samename
        !            84: #define res_nameinquery MRres_nameinquery
        !            85: #define res_queriesmatch MRres_queriesmatch
        !            86: #define dn_expand MRdn_expand
        !            87: #define ns_get16 MRns_get16
        !            88: #define res_close MRres_close
        !            89: #define res_nclose MRres_nclose
        !            90: #define res_ourserver_p MRres_ourserver_p
        !            91: #define ns_sign MRns_sign
        !            92: #define p_class MRp_class
        !            93: #define p_section MRp_section
        !            94: #define ns_makecanon MRns_makecanon
        !            95: #define ns_parserr MRns_parserr
        !            96: #define ns_samedomain MRns_samedomain
        !            97: #define ns_name_uncompress MRns_name_uncompress
        !            98: #define res_nmkquery MRres_nmkquery
        !            99: #define ns_initparse MRns_initparse
        !           100: #define res_nquery MRres_nquery
        !           101: #define res_nsearch MRres_nsearch
        !           102: #define res_hostalias MRres_hostalias
        !           103: #define res_nquerydomain MRres_nquerydomain
        !           104: #define ns_skiprr MRns_skiprr
        !           105: #define dn_skipname MRdn_skipname
        !           106: #define ns_name_ntol MRns_name_ntol
        !           107: #define ns_sign_tcp_init MRns_sign_tcp_init
        !           108: #define ns_sign_tcp MRns_sign_tcp
        !           109: #define ns_name_ntop MRns_name_ntop
        !           110: #define ns_name_pton MRns_name_pton
        !           111: #define ns_name_unpack MRns_name_unpack
        !           112: #define ns_name_pack MRns_name_pack
        !           113: #define ns_name_compress MRns_name_compress
        !           114: #define ns_name_skip MRns_name_skip
        !           115: #define ns_subdomain MRns_subdomain
        !           116: #define ns_find_tsig MRns_find_tsig
        !           117: #define ns_verify MRns_verify
        !           118: #define ns_verify_tcp_init MRns_verify_tcp_init
        !           119: #define ns_verify_tcp MRns_verify_tcp
        !           120: #define b64_ntop MRb64_ntop
        !           121: 
        !           122: extern const struct res_sym __p_type_syms[];
        !           123: extern struct timeval cur_tv;
        !           124: #define cur_time cur_tv.tv_sec
        !           125: 
        !           126: int dn_comp (const char *,
        !           127:             unsigned char *, unsigned, unsigned char **, unsigned char **);
        !           128: int loc_aton (const char *, u_char *);
        !           129: int sym_ston (const struct res_sym *, const char *, int *);
        !           130: void  res_buildservicelist (void);
        !           131: void res_destroyservicelist (void);
        !           132: void res_buildprotolist(void);
        !           133: void res_destroyprotolist(void);
        !           134: const char *res_protocolname(int);
        !           135: const char *res_servicename(u_int16_t, const char *);
        !           136: u_int32_t ns_datetosecs (const char *cp, int *errp);
        !           137: int b64_pton (char const *, unsigned char *, size_t);
        !           138: u_int res_randomid(void);
        !           139: isc_result_t res_findzonecut (res_state, const char *, ns_class, int, char *,
        !           140:                              size_t, struct in_addr *, int, int *, void *);
        !           141: isc_result_t res_nsend (res_state,
        !           142:                        double *, unsigned, double *, unsigned, unsigned *);
        !           143: isc_result_t res_nsendsigned (res_state, double *, unsigned, ns_tsig_key *,
        !           144:                              double *, unsigned, unsigned *);
        !           145: int ns_samename (const char *, const char *);
        !           146: int res_nameinquery (const char *, int, int,
        !           147:                     const unsigned char *, const unsigned char *);
        !           148: int res_queriesmatch (const unsigned char *, const unsigned char *,
        !           149:                      const unsigned char *, const unsigned char *);
        !           150: int dn_expand (const unsigned char *,
        !           151:               const unsigned char *, const unsigned char *, char *, unsigned);
        !           152: unsigned int ns_get16 (const unsigned char *);
        !           153: void res_close (void);
        !           154: void res_nclose (res_state);
        !           155: int res_ourserver_p (const res_state, const struct sockaddr_in *);
        !           156: isc_result_t ns_sign (unsigned char *, unsigned *,
        !           157:                      unsigned, int, void *, const unsigned char *,
        !           158:                      unsigned, unsigned char *, unsigned *, time_t);
        !           159: const char *p_class (int);
        !           160: const char *p_section (int section, int opcode);
        !           161: isc_result_t ns_makecanon (const char *, char *, size_t);
        !           162: isc_result_t ns_parserr (ns_msg *, ns_sect, int, ns_rr *);
        !           163: int ns_samedomain (const char *, const char *);
        !           164: int ns_name_uncompress (const u_char *, const u_char *,
        !           165:                            const u_char *, char *, size_t);
        !           166: isc_result_t res_nmkquery (res_state, int, const char *, ns_class, ns_type,
        !           167:                           const unsigned char *, unsigned,
        !           168:                           const unsigned char *, double *,
        !           169:                           unsigned, unsigned *);
        !           170: isc_result_t ns_initparse (const unsigned char *, unsigned, ns_msg *);
        !           171: isc_result_t res_nquery(res_state, const char *,
        !           172:                        ns_class, ns_type, double *, unsigned, unsigned *);
        !           173: isc_result_t res_nsearch(res_state, const char *,
        !           174:                         ns_class, ns_type, double *, unsigned, unsigned *);
        !           175: const char *res_hostalias (const res_state, const char *, char *, size_t);
        !           176: isc_result_t res_nquerydomain(res_state, const char *, const char *,
        !           177:                              ns_class class, ns_type type,
        !           178:                              double *, unsigned, unsigned *);
        !           179: 
        !           180: isc_result_t ns_skiprr(const unsigned char *,
        !           181:                       const unsigned char *, ns_sect, int, int *);
        !           182: int dn_skipname (const unsigned char *, const unsigned char *);
        !           183: u_int32_t getULong (const unsigned char *);
        !           184: int32_t getLong (const unsigned char *);
        !           185: u_int32_t getUShort (const unsigned char *);
        !           186: int32_t getShort (const unsigned char *);
        !           187: u_int32_t getUChar (const unsigned char *);
        !           188: void putULong (unsigned char *, u_int32_t);
        !           189: void putLong (unsigned char *, int32_t);
        !           190: void putUShort (unsigned char *, u_int32_t);
        !           191: void putShort (unsigned char *, int32_t);
        !           192: void putUChar (unsigned char *, u_int32_t);
        !           193: int ns_name_ntol (const unsigned char *, unsigned char *, size_t);
        !           194: isc_result_t ns_sign_tcp_init (void *, const unsigned char *,
        !           195:                               unsigned, ns_tcp_tsig_state *);
        !           196: isc_result_t ns_sign_tcp (unsigned char *,
        !           197:                          unsigned *, unsigned, int, ns_tcp_tsig_state *, int);
        !           198: int ns_name_pack (const unsigned char *, unsigned char *,
        !           199:                  unsigned, const unsigned char **, const unsigned char **);
        !           200: int ns_name_skip (const unsigned char **, const unsigned char *);
        !           201: int ns_subdomain (const char *, const char *);
        !           202: unsigned char *ns_find_tsig (unsigned char *, unsigned char *);
        !           203: isc_result_t ns_verify (unsigned char *, unsigned *, void *,
        !           204:                        const unsigned char *,
        !           205:                        unsigned, unsigned char *, unsigned *, time_t *, int);
        !           206: isc_result_t ns_verify_tcp_init (void *, const unsigned char *, unsigned,
        !           207:                                 ns_tcp_tsig_state *);
        !           208: isc_result_t ns_verify_tcp (unsigned char *, unsigned *,
        !           209:                            ns_tcp_tsig_state *, int);
        !           210: int b64_ntop (unsigned char const *, size_t, char *, size_t);
        !           211: 
        !           212: isc_result_t find_cached_zone (const char *, ns_class, char *,
        !           213:                           size_t, struct in_addr *, int, int *, void *);
        !           214: int find_tsig_key (ns_tsig_key **, const char *, void *);
        !           215: int forget_zone (void *);
        !           216: int repudiate_zone (void *);
        !           217: void cache_found_zone (ns_class, char *, struct in_addr *, int);
        !           218: isc_result_t uerr2isc (int);
        !           219: isc_result_t ns_rcode_to_isc (int);
        !           220: 
        !           221: #define DprintQ(a,b,c,d)
        !           222: #define Dprint(a,b)
        !           223: #define Perror(a, b, c, d)
        !           224: #define Aerror(a, b, c, d, e)
        !           225: #define DPRINTF(x)
        !           226: 
        !           227: #define USE_MD5
        !           228: #endif
        !           229: 
        !           230: #if defined (TRACING)
        !           231: void trace_mr_statp_setup (res_state);
        !           232: #endif
        !           233: 
        !           234: #endif /* MINIRES_H */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>