adb.c revision 11fcc67616fac1bc6a28b3d4fed24641137888e7
/*
* Copyright (C) 1999 Internet Software Consortium.
*
* 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 INTERNET SOFTWARE CONSORTIUM DISCLAIMS
* ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
* CONSORTIUM 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.
*/
#include <config.h>
#include <isc/assertions.h>
typedef struct dns_adbname dns_adbname_t;
typedef struct dns_adbnamehook dns_adbnamehook_t;
typedef struct dns_adbzoneinfo dns_adbzoneinfo_t;
struct dns_adb {
unsigned int magic;
};
struct dns_adbname {
unsigned int magic;
};
/*
* dns_adbnamehook_t
*
* This is a small widget that dangles off a dns_adbname_t. It contains a
* pointer to the address information about this host, and a link to the next
* namehook that will contain the next address this host has.
*/
struct dns_adbnamehook {
unsigned int magic;
};
/*
* dns_adbzoneinfo_t
*
* This is a small widget that holds zone-specific information about an
* address. Currently limited to lameness, but could just as easily be
* extended to other types of information about zones.
*/
struct dns_adbzoneinfo {
unsigned int magic;
unsigned int lame_timer;
};
/*
* An address entry. It holds quite a bit of information about addresses,
* including edns state, rtt, and of course the address of the host.
*/
struct dns_adbentry {
unsigned int magic;
unsigned int lock_bucket;
unsigned int refcount;
unsigned int flags;
int goodness; /* bad <= 0 < good */
unsigned int srtt;
};
/*
* dns_adbhandle_t
*
* This is returned to the user, and contains all the state we need to do
* more fetches, return more information to the user, and to return the
* address list itself.
*/
struct dns_adbhandle {
unsigned int magic;
void *arg;
};
/*
* Internal functions.
*/
/*
* Public functions.
*/
{
return (ISC_R_NOTIMPLEMENTED);
}
void
{
INSIST(1 == 0);
}
{
}
return (ISC_R_NOTIMPLEMENTED);
}
void
{
INSIST(1 == 0);
}
void
{
INSIST(1 == 0);
}