| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- /** BEGIN COPYRIGHT BLOCK
- * Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
- * Copyright (C) 2005 Red Hat, Inc.
- * All rights reserved.
- *
- * License: GPL (version 3 or any later version).
- * See LICENSE for details.
- * END COPYRIGHT BLOCK **/
- #ifdef HAVE_CONFIG_H
- # include <config.h>
- #endif
- #ifndef __dnfstruct_h
- #define __dnfstruct_h
- /*
- * Description (dnfstruct_h)
- *
- * This file defines types and structures used to represent a DNS
- * name filter in memory. A DNS name filter contains specifications
- * of fully or partially qualified DNS names. Each of these
- * specifications can be associated with whatever information is
- * appropriate for a particular use of a DNS name filter.
- */
- #include "nspr.h"
- #include "plhash.h"
- NSPR_BEGIN_EXTERN_C
- /*
- * Description (DNSLeaf_t)
- *
- * This type describes the structure of information associated with
- * an entry in a DNS filter. The filter itself is implemented as a
- * hash table, keyed by the DNS name specification string. The
- * value associated with a key is a pointer to a DNSLeaf_t structure.
- */
- typedef struct DNSLeaf_s DNSLeaf_t;
- struct DNSLeaf_s {
- PLHashEntry dnl_he; /* NSPR hash table entry */
- };
- #define dnl_next dnl_he.next /* hash table collision link */
- #define dnl_keyhash dnl_he.keyHash /* symbol hash value */
- #define dnl_key dnl_he.key /* pointer to Symbol_t structure */
- #define dnl_ref dnl_he.value /* pointer to named structure */
- typedef struct DNSFilter_s DNSFilter_t;
- struct DNSFilter_s {
- DNSFilter_t * dnf_next; /* link to next filter */
- void * dnf_hash; /* pointer to constructed hash table */
- };
- NSPR_END_EXTERN_C
- #endif /* __dnfstruct_h */
|